Skip to content

Expand cudacompat hook to always inspect libcuda.so ELF header if available#1784

Merged
cdesiniotis merged 4 commits into
NVIDIA:mainfrom
cdesiniotis:fwd-compat-elf-header
Jul 6, 2026
Merged

Expand cudacompat hook to always inspect libcuda.so ELF header if available#1784
cdesiniotis merged 4 commits into
NVIDIA:mainfrom
cdesiniotis:fwd-compat-elf-header

Conversation

@cdesiniotis

Copy link
Copy Markdown
Contributor

This commit reverts 08bf583 which made it so that the libcuda.so ELF header was only ever inspected on certain Tegra systems, like Orin. We now leverage the libcuda.so ELF header in all cases (if available) to determine if the CUDA compat libraries bundled in the container should be used in favor of the host driver libraries. This allows us to support CUDA minor version compatibility.

@coveralls

coveralls commented Apr 17, 2026

Copy link
Copy Markdown

Coverage Report for CI Build 24748865496

Coverage increased (+0.2%) to 43.481%

Details

  • Coverage increased (+0.2%) from the base build.
  • Patch coverage: 3 uncovered changes across 1 file (31 of 34 lines covered, 91.18%).
  • No coverage regressions found.

Uncovered Changes

File Changed Covered %
cmd/nvidia-cdi-hook/cudacompat/cuda-elf-header.go 26 23 88.46%

Coverage Regressions

No coverage regressions found.


Coverage Stats

Coverage Status
Relevant Lines: 14880
Covered Lines: 6470
Line Coverage: 43.48%
Coverage Strength: 0.48 hits per line

💛 - Coveralls

Comment thread cmd/nvidia-cdi-hook/cudacompat/cuda-elf-header.go Outdated
Comment thread cmd/nvidia-cdi-hook/cudacompat/cuda-elf-header.go Outdated
@cdesiniotis cdesiniotis force-pushed the fwd-compat-elf-header branch 3 times, most recently from d3cd1df to ee08e9a Compare April 21, 2026 15:51
@cdesiniotis cdesiniotis self-assigned this Apr 21, 2026
@cdesiniotis cdesiniotis force-pushed the fwd-compat-elf-header branch 2 times, most recently from 0a99c5a to d8b823d Compare April 21, 2026 22:06
@cdesiniotis cdesiniotis added this to the next-minor milestone Apr 22, 2026
@cdesiniotis cdesiniotis marked this pull request as ready for review April 22, 2026 01:01
Comment thread cmd/nvidia-cdi-hook/cudacompat/cuda-elf-header.go Outdated
Comment thread cmd/nvidia-cdi-hook/cudacompat/cudacompat.go Outdated
Comment thread cmd/nvidia-cdi-hook/cudacompat/cudacompat.go Outdated
Comment thread cmd/nvidia-cdi-hook/cudacompat/cuda-elf-header.go Outdated
Comment thread cmd/nvidia-cdi-hook/cudacompat/cuda-elf-header.go Outdated
…ilable

This commit reverts  NVIDIA@08bf583
which made it so that the libcuda.so ELF header was only ever inspected
on certain Tegra systems, like Orin. We now leverage the libcuda.so
ELF header in all cases (if available) to determine if the CUDA compat
libraries bundled in the container should be used in favor of the host
driver libraries. This allows us to support CUDA minor version compatibility.

Signed-off-by: Christopher Desiniotis <cdesiniotis@nvidia.com>
…n version strings

Any version string passed as an argument to semver.Compare() must be a valid semantic
version. It is common for NVIDIA driver versions to have leading zeros in the MINOR or
PATCH portion of a version string, e.g. 575.57.08. As a result, a call to
semver.Compare("575.57.08", "575.10.10") would incorrectly return -1 because the first
argument is not a valid semantic version.

And from https://pkg.go.dev/golang.org/x/mod/semver#Compare:

'''
An invalid semantic version string is considered less than a valid one.
All invalid semantic version strings compare equal to each other.
'''

Signed-off-by: Christopher Desiniotis <cdesiniotis@nvidia.com>
@cdesiniotis cdesiniotis force-pushed the fwd-compat-elf-header branch 2 times, most recently from 0a695d6 to 4d240d2 Compare July 4, 2026 00:34
Comment thread cmd/nvidia-cdi-hook/cudacompat/cudacompat.go
Comment thread cmd/nvidia-cdi-hook/cudacompat/cuda-elf-header.go Outdated
Comment thread cmd/nvidia-cdi-hook/cudacompat/cuda-elf-header.go Outdated
@tariq1890

Copy link
Copy Markdown
Contributor

Thanks @cdesiniotis, added one more comment.

Signed-off-by: Christopher Desiniotis <cdesiniotis@nvidia.com>
Signed-off-by: Christopher Desiniotis <cdesiniotis@nvidia.com>
@cdesiniotis cdesiniotis force-pushed the fwd-compat-elf-header branch from e129775 to e20df13 Compare July 6, 2026 17:12
@cdesiniotis cdesiniotis merged commit 8807d7c into NVIDIA:main Jul 6, 2026
20 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants