fix(sandbox): restore GPU procfs baseline#1522
Conversation
|
🌿 Preview your docs: https://nvidia-preview-pr-1522.docs.buildwithfern.com/openshell |
96a1caa to
59e399a
Compare
12bde4d to
d73e6de
Compare
pimlock
left a comment
There was a problem hiding this comment.
LGTM with a few nits and questions.
2f3b5b2 to
a0171ff
Compare
|
Thanks for your initial review @pimlock. After the initial back and forth, I realised that there were a number of edge cases that I was not considering. I believe I was trying to detect user intent with insufficient signal and as such have updated this PR to ALWAYS promote |
Signed-off-by: Evan Lezar <elezar@nvidia.com>
a0171ff to
c828f23
Compare
Thanks! I took a first pass at #1629 and I like the approach. I think it's great for the mechanism to be more explicit and exposing it through the policy makes sense, so the full picture of what's allowed is in the policy. |
Summary
Restore CUDA GPU startup compatibility by promoting
/procfromfilesystem_policy.read_onlytofilesystem_policy.read_writewhen/procis part of the active GPU runtime baseline.
This keeps the change intentionally narrow. The existing baseline enrichment
already places
/procin the GPU read-write baseline because CUDA writes/proc/<pid>/task/<tid>/commduring initialization. The missing behavior wasthat an existing read-only
/procentry caused enrichment to skip theread-write baseline path. This PR restores that promotion and emits an
informational log message when it happens.
Broader handling for user-supplied policy conflicts and explicit baseline
conflict controls is left to follow-up work such as #1629.
Related Issue
Fixes #1486
Related follow-up: #1629
Changes
/procfromread_onlytoread_writewhen the GPU read-writebaseline requires it.
/procis promoted for GPU runtimecompatibility.
policy.
Testing
mise exec -- cargo fmt --allmise exec -- cargo test -p openshell-sandbox --lib baseline_tests -- --nocapturemise run pre-commitcompleted Helm lint, Rust format, Rust check, Rust clippy, markdown lint, and license checks;python:protofailed in the parallel run becausegrpc_toolswas missing after.venvrecreation.mise run python:protoChecklist