Merge branch 'locate-ipc-sockets-at-run' into 'main'

Locate persistenced and fabricmanager sockets at /run instead of /var/run

See merge request nvidia/container-toolkit/container-toolkit!347
This commit is contained in:
Evan Lezar 2023-03-20 08:08:59 +00:00
commit 1962fd68df
2 changed files with 24 additions and 4 deletions

View File

@ -2,6 +2,8 @@
## v1.13.0-rc.3
* Prefer /run over /var/run when locating nvidia-persistenced and nvidia-fabricmanager sockets.
## v1.13.0-rc.2
* Don't fail chmod hook if paths are not injected

View File

@ -25,21 +25,39 @@ type ipcMounts mounts
// NewIPCDiscoverer creats a discoverer for NVIDIA IPC sockets.
func NewIPCDiscoverer(logger *logrus.Logger, driverRoot string) (Discover, error) {
d := newMounts(
sockets := newMounts(
logger,
lookup.NewFileLocator(
lookup.WithLogger(logger),
lookup.WithRoot(driverRoot),
lookup.WithSearchPaths("/run", "/var/run"),
lookup.WithCount(1),
),
driverRoot,
[]string{
"/nvidia-persistenced/socket",
"/nvidia-fabricmanager/socket",
},
)
mps := newMounts(
logger,
lookup.NewFileLocator(
lookup.WithLogger(logger),
lookup.WithRoot(driverRoot),
lookup.WithCount(1),
),
driverRoot,
[]string{
"/var/run/nvidia-persistenced/socket",
"/var/run/nvidia-fabricmanager/socket",
"/tmp/nvidia-mps",
},
)
return (*ipcMounts)(d), nil
d := Merge(
(*ipcMounts)(sockets),
(*ipcMounts)(mps),
)
return d, nil
}
// Mounts returns the discovered mounts with "noexec" added to the mount options.