Skip to content

Commit fd99379

Browse files
committed
Skip graphics modifier in CSV mode
In CSV mode the CSV files at /etc/nvidia-container-runtime/host-files-for-container.d/ should be the source of truth for container modifications. This change skips graphics modifications to a container. This prevents conflicts when handling files such as vulkan icd files which are already defined in the CSV file. Signed-off-by: Evan Lezar <elezar@nvidia.com>
1 parent d75b1ad commit fd99379

File tree

1 file changed

+12
-8
lines changed

1 file changed

+12
-8
lines changed

internal/runtime/runtime_factory.go

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -84,22 +84,26 @@ func newSpecModifier(logger logger.Interface, cfg *config.Config, ociSpec oci.Sp
8484
return modeModifier, nil
8585
}
8686

87-
graphicsModifier, err := modifier.NewGraphicsModifier(logger, cfg, image, driver)
88-
if err != nil {
89-
return nil, err
87+
modifiers := []oci.SpecModifier{modeModifier}
88+
// We ignore graphics modifiers in "csv" mode.
89+
if mode != "csv" {
90+
graphicsModifier, err := modifier.NewGraphicsModifier(logger, cfg, image, driver)
91+
if err != nil {
92+
return nil, err
93+
}
94+
modifiers = append(modifiers, graphicsModifier)
9095
}
9196

9297
featureModifier, err := modifier.NewFeatureGatedModifier(logger, cfg, image)
9398
if err != nil {
9499
return nil, err
95100
}
101+
modifiers = append(modifiers, featureModifier)
96102

97-
modifiers := modifier.Merge(
98-
modeModifier,
99-
graphicsModifier,
100-
featureModifier,
103+
m := modifier.Merge(
104+
modifiers...,
101105
)
102-
return modifiers, nil
106+
return m, nil
103107
}
104108

105109
func newModeModifier(logger logger.Interface, mode string, cfg *config.Config, ociSpec oci.Spec, image image.CUDA) (oci.SpecModifier, error) {

0 commit comments

Comments
 (0)