What's Changed
NOTE: This release is a unified release of the NVIDIA Container Toolkit that consists of the following packages:
The packages for this release are published to the libnvidia-container package repositories.
This is a feature release and includes the following high-level changes:
- Report errors when unknown OCI runtime spec fields are detected.
- Added support for IGX 2.0 Thor-based systems including those with dGPUs installed.
- Added support for CUDA Forward Compatibility on Tegra-based systems. On Orin-based systems, this requires specific compat libraries in the container.
- Added support for running containers as a user that may not have explicit access to a device node without requiring that additional groups be explicitly specified.
- Improve triggering of systemd service that ensures that CDI specifications are up-to-date.
- Add support for read-only root filesystems such as those on an initramfs.
Changes since v1.19.0-rc.7
v1.19.0-rc.7
- build(deps): Bump actions/download-artifact from 7 to 8 by @dependabot[bot] in #1683
- build(deps): Bump actions/upload-artifact from 6 to 7 by @dependabot[bot] in #1684
- stop marking PRs as stale by @rahulait in #1675
- fix: Ensure that CUDA Compat Container path is set by default by @elezar in #1690
- fix: Use correct version when updating versions.mk by @elezar in #1681
- chore: Run goimports on mocks by @elezar in #1692
- chore: Rename isIntegratedGPUID function to isOrinGPUID by @elezar in #1674
- Use automatic CDI spec generation to generate CDI specs for other modifiers by @elezar in #1667
- fix: Don't use driver version in ELF header for compat check by @elezar in #1697
- fix: Reuse instantiated editsFactory in CDI by @elezar in #1666
- Bump version for v1.19.0-rc.7 release by @elezar in #1698
v1.19.0-rc.6
- Use host CUDA version for all CSV compat checks by @elezar in #1679
- Bump version for v1.19.0-rc.6 release by @elezar in #1680
v1.19.0-rc.5
- Separate nvcdi construction options from runtime options by @elezar in #1659
- build(deps): Bump nvidia/distroless/go from v4.0.1-dev to v4.0.2-dev in /deployments/container by @dependabot[bot] in #1672
- chore: Fix release tooling to support annotated tags by @elezar in #1669
- allow stale cache to be deleted by @rahulait in #1670
- Remove dlopen locator by @elezar in #1676
- Bump version for v1.19.0-rc.5 release by @elezar in #1678
v1.19.0-rc.4
- build(deps): Bump golang from 1.25.6 to 1.25.7 in /deployments/devel by @dependabot[bot] in #1640
- build(deps): Bump golang.org/x/mod from 0.32.0 to 0.33.0 by @dependabot[bot] in #1642
- build(deps): Bump github.com/onsi/ginkgo/v2 from 2.27.5 to 2.28.1 in /tests by @dependabot[bot] in #1619
- build(deps): Bump golang from 1.25.7 to 1.26.0 in /deployments/devel by @dependabot[bot] in #1647
- build(deps): Bump golang.org/x/crypto from 0.47.0 to 0.48.0 in /tests by @dependabot[bot] in #1644
- build(deps): Bump golang.org/x/sys from 0.40.0 to 0.41.0 by @dependabot[bot] in #1641
- Refactor device node tests by @elezar in #1637
- Add debug-level log option for ctk-installer by @jactor-sue in #1551
- build(deps): Bump golang.org/x/mod from 0.32.0 to 0.33.0 in /tests by @dependabot[bot] in #1643
- fix: Correct container compat path for orin by @elezar in #1649
- Refactor ldcache locator by @elezar in #1648
- test: Add to package with Ptr function by @elezar in #1653
- chore: Rename management receiver from m to l by @elezar in #1654
- test: Don't use modifier to add test runtime hook by @elezar in #1656
- refactor: Move update-ldcache argument processing into hook creator by @elezar in #1651
- Add a modifier factory by @elezar in #1655
- refactor: Prefer cdilib methods over functions by @elezar in #1658
- Fix golangci-lint errors by @elezar in #1662
- fix: Fix support for nvswitch mode by @elezar in #1661
- refactor: Move NormalizeSearchPaths into lookup package by @elezar in #1660
- Allow Orin CUDA forward compat root to be specified by @elezar in #1614
- fix: Fix typo due to merge conflict by @elezar in #1664
- refactor: Add AsOptional wrapper for lookup.Locator by @elezar in #1645
- Generate CDI specification including additional GIDs by @elezar in #630
- Add dev root to driver by @elezar in #1652
- Add dlopen library locator by @elezar in #1646
- Bump version for v1.19.0-rc.4 release by @elezar in #1668
v1.19.0-rc.3
- [CI] : add github issue templates by @rahulait in #1613
- test: Adjust e2e test for Docker 29.2.0 by @elezar in #1615
- Use rpmrebuild instead of fpm to rebuild rpm packages by @elezar in #1612
- build(deps): Bump third_party/libnvidia-container from
a83ddc0tofe0d8e5by @dependabot[bot] in #1622 - build(deps): Bump nvidia/distroless/go from v4.0.0-dev to v4.0.1-dev in /deployments/container by @dependabot[bot] in #1618
- build(deps): Bump third_party/libnvidia-container from
fe0d8e5to7585946by @dependabot[bot] in #1623 - build(deps): Bump github.com/onsi/gomega from 1.39.0 to 1.39.1 in /tests by @dependabot[bot] in #1620
- fix: Allow config options to be set to default values by @elezar in #1629
- Expose internal packages for external consumption by @elezar in #1577
- fix: Log actual CDI spec version by @elezar in #1633
- fix: Set device node GID in CDI specs by @elezar in #1631
- Bump version for v1.19.0-rc.3 release by @elezar in #1636
- Remove restart logic from nvidia-cdi-refresh.service by @elezar in #1638
v1.19.0-rc.2
- [no-relnote] Fix typo in release script by @elezar in #1529
- Bump github.com/onsi/gomega from 1.38.2 to 1.38.3 in /tests by @dependabot[bot] in #1533
- trim extraneous whitespaces when parsing comma-separated config sources by @tariq1890 in #1535
- Bump nvidia/distroless/go from v3.2.1-dev to v3.2.2-dev in /deployments/container by @dependabot[bot] in #1547
- fix: Return error on JIT CDI spec generation failure by @elezar in #1538
- Bump tags.cncf.io/container-device-interface from 1.0.2-0.20251114135136-1b24d969689f to 1.1.0 by @dependabot[bot] in #1536
- Bump github.com/opencontainers/runc from 1.3.3 to 1.4.0 by @dependabot[bot] in #1504
- Bump actions/download-artifact from 6 to 7 by @dependabot[bot] in #1549
- Bump actions/upload-artifact from 5 to 6 by @dependabot[bot] in #1548
- Fix library driver library resolution in musl-based containers by @elezar in #1530
- Bump github.com/onsi/gomega from 1.38.3 to 1.39.0 in /tests by @dependabot[bot] in #1566
- Bump golang.org/x/sys from 0.39.0 to 0.40.0 by @dependabot[bot] in #1564
- fix: Fix arguments when creating DRM device symlinks by @elezar in #1563
- Bump github.com/onsi/ginkgo/v2 from 2.27.3 to 2.27.4 in /tests by @dependabot[bot] in #1565
- fix: Don't inject device nodes when NVIDIA_VISIBLE_DEVICES=none by @elezar in #1562
- Bump golang.org/x/mod from 0.31.0 to 0.32.0 by @dependabot[bot] in #1572
- Bump golang.org/x/crypto from 0.46.0 to 0.47.0 in /tests by @dependabot[bot] in #1575
- Bump github.com/onsi/ginkgo/v2 from 2.27.4 to 2.27.5 in /tests by @dependabot[bot] in #1574
- Bump nvidia/distroless/go from v3.2.2-dev to v4.0.0-dev in /deployments/container by @dependabot[bot] in #1576
- implement NRI plugin server to inject management CDI devices by @tariq1890 in #1498
- Bump github.com/urfave/cli/v3 from 3.6.1 to 3.6.2 by @dependabot[bot] in #1590
- Ensure that IPC sockets are not mounted read-only by @faganihajizada in #1593
- Simplify logger.Interface by @elezar in #1591
- fix: Allow nvidia-cdi-refresh.service to be restarted by @elezar in #1586
- fix: Ensure consistent device permissions for CDI devices by @oOraph in #1539
- Bump golang from 1.25.5 to 1.25.6 in /deployments/devel by @dependabot[bot] in #1592
- Bump github.com/sirupsen/logrus from 1.9.3 to 1.9.4 by @dependabot[bot] in #1584
- Add no-runtime-configure option to the toolkit installer by @elezar in #1521
- Add basic test for CSV CDI spec generation by @elezar in #1604
- [no-relnote] Set golang version when building libnvidia-container by @elezar in #1597
- restrict NRI injection of CDI devices to pods in the toolkit's namespace by @tariq1890 in #1601
- Ensure that the CSV files define the required devices when only a iGPU is present by @elezar in #1556
- Query CUDA forward compatibility elf note if available by @elezar in #1598
- fix: Add docker swarm support to jit-cdi mode by @elezar in #1600
- fix: Include /dev/nvidia2 in container requesting iGPU if required by @elezar in #1561
- Bump version for v1.19.0-rc.2 release by @elezar in #1609
- [no-relnote] Fix version bump by @elezar in #1610
v1.19.0-rc.1
- Fix bug in create-dev-char-symlinks command by @elezar in #1373
- Don't read cdi generate mode from runtime mode by @elezar in #1377
- Fix handling of existing imports in containerd by @elezar in #1382
- Redirect log message to stderr in nvidia runtime wrapper script by @cdesiniotis in #1400
- Fix containerd drop-in config path by @elezar in #1407
- Enable arm64 testing for contianer toolkit by @elezar in #1432
- Update rpm package to have 256bit digests by @elezar in #1411
- Fix trigger of CDI refresh service by @elezar in #1409
- Allow nvcdi feature flags to be set for the
jit-cdimode by @elezar in #1419 - Fix duplicate CDI spec generation in jit-cdi mode by @elezar in #1431
- Filter already tracked directories from ldcache update by @elezar in #1403
- Use requested devices for CSV CDI spec generation by @elezar in #1464
- ldconfig: Create ld.so.conf file if missing by @jfroy in #1459
- Fix typo in nvidia-container-runtime's README by @waltforme in #1257
- Also consider libnvidia-ml.so for extracting driver version by @elezar in #1451
- Use enable-cuda-compat hook when ldcache does not exist by @elezar in #1471
- Fix ldcache update when host and container distributions do not match by @elezar in #1444
- Extract FileMode from host path if possible by @elezar in #960
- Allow update-ldcache hook to work when pivot-root is not supported by @elezar in #1174
- Default to strict decoding of OCI runtime spec by @elezar in #1491
- Fix trigger of CDI refresh service by @EdSwarthout in #1518
- Add --no-all-device option to nvidia-ctk cd generate by @elezar in #1511
- Add --device-id flag to nvidia-ctk cdi generate command by @elezar in #1512
- Handle multiple GPUs in CDI spec generation from CSV by @elezar in #1461
- Add enable-cuda-compat on Tegra-based systems by @elezar in #1515
Changes in the toolkit container
- Bump nvidia/distroless/go from v3.1.13-dev to v3.2.0-dev in /deployments/container by @dependabot[bot] in #1387
Full Changelog: v1.18.2...v1.19.0