Skip to content

Allow LDCache to be used to discover libcuda.so in CDI spec generation #735

@elezar

Description

@elezar

On systems where driver libraries are not installed at "standard" library paths the nvidia-ctk cdi generate --mode=nvml command fails with output similar to:

# nvidia-ctk cdi generate --output=/etc/cdi/nvidia.yaml
WARN[0000] Failed to locate nvidia-cdi-hook: pattern nvidia-cdi-hook not found
INFO[0000] Using /var/lib/nvidia/lib64/libnvidia-ml.so.535.183.06
INFO[0000] Auto-detected mode as 'nvml'                
INFO[0000] Selecting /dev/nvidia0 as /dev/nvidia0      
INFO[0000] Selecting /dev/dri/card0 as /dev/dri/card0  
INFO[0000] Selecting /dev/dri/renderD128 as /dev/dri/renderD128
WARN[0000] failed to locate libcuda.so: pattern libcuda.so.*.* not found
64-bit library libcuda.so.*.*: not found; using *.*
INFO[0000] Using driver version 535.183.06              
ERRO[0000] failed to generate CDI spec: failed to create edits common for entities: failed to create discoverer for common entities: failed to create discoverer for driver files: failed to create discoverer for driver libraries: failed to get libraries for driver version: failed to locate libcuda.so.535.183.06: pattern libcuda.so.535.183.06 not found
64-bit library libcuda.so.535.183.06: not found

This can be rectified by running:

nvidia-ctk cdi generate --mode=nvml --library-search-path=/var/lib/nvidia/lib64

In the past the LDCache could be used on such systems allowing libcuda.so to be discovered successfully.

This was reported in v1.16.2

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions