-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
support seccomp flags such as SECCOMP_FILTER_FLAG_SPEC_ALLOW (OCI Runtime Spec v1.0.2) #2430
Comments
cc @KentaTada |
@AkihiroSuda In addition to that, we may need to consider disabling IBPB/STIBP if the goal of this issue is to improve the performance impact on bytecode interpreters.Below is the related commit from enroot. |
libseccomp v2.4.3 which is the latest release does not include |
FYI:
I quickly confirmed the impact of disabling IBPB/STIBP using modified runc which added unix.Prctl() before unix.Exec() from libcontainer/standard_init_linux.go.
We can improve the performance when disables IBPB/STIBP. |
AllowSpeculation disables spectre mitigations for container. For more information about that, please refer to: opencontainers/runc#2430 Signed-off-by: Kenta Tada <Kenta.Tada@sony.com>
AllowSpeculation disables speculative execution mitigations in the container. For more information about that, please refer to: opencontainers/runc#2430 Signed-off-by: Kenta Tada <Kenta.Tada@sony.com>
It disables speculative execution mitigations in the container. For more information about that, please refer to: opencontainers/runc#2430 Signed-off-by: Kenta Tada <Kenta.Tada@sony.com>
It disables speculative execution mitigations in the container. For more information about that, please refer to: opencontainers/runc#2430 Signed-off-by: Kenta Tada <Kenta.Tada@sony.com>
It disables speculative execution mitigations in the container. For more information about that, please refer to: opencontainers/runc#2430 Co-Authored-By: Aleksa Sarai <cyphar@cyphar.com> Signed-off-by: Kenta Tada <Kenta.Tada@sony.com>
It disables speculative execution mitigations in the container. For more information about that, please refer to: opencontainers/runc#2430 Co-Authored-By: Aleksa Sarai <cyphar@cyphar.com> Signed-off-by: Kenta Tada <Kenta.Tada@sony.com>
It disables speculative execution mitigations in the container. For more information about that, please refer to: opencontainers/runc#2430 Co-Authored-By: Aleksa Sarai <cyphar@cyphar.com> Signed-off-by: Kenta Tada <Kenta.Tada@sony.com>
libseccomp 2.5.0 was released. |
I came here to file an issue to support seccomp flags specified in the seccomp profile (particulary SECCOMP_FILTER_FLAG_SPEC_ALLOW). Support for these flags in the profiles was just added to moby in response to moby/moby#42619. Is this the right issue, or should I make a new one? |
Yes. I have already implemented SCMP_FLTATR_CTL_SSB support of libseccomp-golang. |
@KentaTada since you're working on other issues which are prerequisites for this, does this issue (for runc) look like a candidate for community contributions once you're done? I'd like to work on this. Thanks cc/ @AkihiroSuda |
@danishprakash In addition to that, SCMP_FLTATR_CTL_SSB support of libseccomp-golang was merged. |
@KentaTada thanks for clearing it up :) I wasn't able to find a linked PR and hence thought I'd ping here. |
OCI Runtime Spec v1.0.2 supports specifying three seccomp flags:
SECCOMP_FILTER_FLAG_TSYNC
,SECCOMP_FILTER_FLAG_LOG
, andSECCOMP_FILTER_FLAG_SPEC_ALLOW
(opencontainers/runtime-spec@d1ef109).However, these flags are currently unimplemented by runc (but implemented by crun).
Notably we should support
SECCOMP_FILTER_FLAG_SPEC_ALLOW
(Disable Speculative Store Bypass mitigation, since Linux 4.17).The mitigation is enabled by default when a seccomp profile is specified and has serious performance impact on bytecode interpreters including Ruby and Python.
http://mamememo.blogspot.com/2020/05/cpu-intensive-rubypython-code-runs.html
The text was updated successfully, but these errors were encountered: