Package: release.debian.org
Severity: normal
Tags: bookworm
User: release.debian....@packages.debian.org
Usertags: pu

[ Reason ]
To finish the update series of the nvidia 535 driver series and fix a
few new CVEs we need to update src:nvidia-open-gpu-kernel-modules to a
new upstream release, too.
There are no additional packaging changes besides refreshing the
patches.

[ Impact ]
A graphics driver with open CVEs.

[ Tests ]
Only building the module has been tested, everything else would require
usage of nvidia GPUs and drivers.

[ Risks ]
Updating to a new upstream release from the same series is an
established procedure in stable.

[ Checklist ]
  [*] *all* changes are documented in the d/changelog
  [.] I reviewed all changes and I approve them
      only the debian part, the upstream part is partly firmware blobs
      as hexdump and otherwise full of new features and reorganizations
  [.] attach debdiff against the package in (old)stable
      The full debdiff for debian/* is attached, for the upstream part
      (i.e. what is equivalent to the blob in
      src:nvidia-graphics-drivers/non-free I'm only attaching the diffstat.
  [*] the issue is verified as fixed in unstable

[ Changes ]
+nvidia-open-gpu-kernel-modules (535.183.01-1~deb12u1) bookworm; urgency=medium
+
+  * Rebuild for bookworm.
+
+ -- Andreas Beckmann <a...@debian.org>  Wed, 19 Jun 2024 09:17:48 +0200
+
+nvidia-open-gpu-kernel-modules (535.183.01-1) unstable; urgency=medium
+
+  * New upstream LTS and Tesla branch release 535.183.01 (2024-06-04).
+    * Fixed CVE-2024-0090, CVE-2024-0092.  (Closes: #1072800)
+      https://nvidia.custhelp.com/app/answers/detail/a_id/5551
+  * New upstream long term support branch release 535.179 (2024-05-09).
+  * New upstream long term support branch release 535.171.04 (2024-03-21).
+  * Sync with src:nvidia-graphics-drivers.
+  * Refresh patches.
+
+ -- Andreas Beckmann <a...@debian.org>  Wed, 19 Jun 2024 04:56:43 +0200

 README.md                                          |   12 +-
 debian/changelog                                   |   18 +
 debian/patches/hmm.patch                           |   10 +-
 ...-remove-empty-lines-from-uts_release-outp.patch |    6 +-
 debian/patches/module/0034-fix-typos.patch         |    6 +-
 debian/patches/module/bashisms.patch               |    2 +-
 debian/patches/module/cc_version_check-gcc5.patch  |    2 +-
 debian/patches/module/conftest-verbose.patch       |   14 +-
 debian/patches/module/series.in                    |    2 +-
 debian/patches/module/use-kbuild-flags.patch       |   12 +-
 kernel-open/Kbuild                                 |    4 +-
 kernel-open/common/inc/nv-linux.h                  |   27 +-
 kernel-open/conftest.sh                            |   60 +-
 kernel-open/nvidia-modeset/nvidia-modeset-linux.c  |    6 +-
 kernel-open/nvidia-uvm/uvm_ats.h                   |   10 -
 kernel-open/nvidia-uvm/uvm_ats_faults.c            |  174 +++-
 kernel-open/nvidia-uvm/uvm_ats_faults.h            |   20 +
 kernel-open/nvidia-uvm/uvm_gpu.h                   |   20 +-
 kernel-open/nvidia-uvm/uvm_gpu_access_counters.c   |  193 +++-
 kernel-open/nvidia-uvm/uvm_gpu_replayable_faults.c |   10 +-
 kernel-open/nvidia-uvm/uvm_linux.h                 |   10 +
 kernel-open/nvidia-uvm/uvm_test.c                  |   28 +-
 kernel-open/nvidia-uvm/uvm_test_ioctl.h            |    2 -
 kernel-open/nvidia-uvm/uvm_va_space_mm.c           |    4 +-
 kernel-open/nvidia/nv-pci.c                        |    9 +
 kernel-open/nvidia/nv.c                            |    6 +-
 kernel-open/nvidia/nvidia.Kbuild                   |    2 +
 kernel-open/nvidia/os-interface.c                  |  151 ++-
 kernel-open/nvidia/os-mlock.c                      |   67 +-
 src/common/displayport/inc/dp_connectorimpl.h      |    3 +-
 src/common/displayport/inc/dp_regkeydatabase.h     |   10 +-
 src/common/displayport/src/dp_connectorimpl.cpp    |    6 +-
 src/common/displayport/src/dp_evoadapter.cpp       |    5 +-
 src/common/inc/nvBldVer.h                          |   20 +-
 src/common/inc/nvUnixVersion.h                     |    2 +-
 .../inc/swref/published/ampere/ga100/dev_runlist.h |   62 +-
 src/common/nvlink/interface/nvlink.h               |    4 +-
 .../nvswitch/kernel/inc/soe/bin/g_soeuc_lr10_dbg.h | 1098 ++++++++++----------
 .../nvswitch/kernel/inc/soe/bin/g_soeuc_lr10_prd.h | 1098 ++++++++++----------
 .../nvidia/inc/ctrl/ctrl2080/ctrl2080internal.h    |   13 +
 src/common/sdk/nvidia/inc/nvos.h                   |    1 +
 .../uproc/os/common/include/nv-crashcat-decoder.h  |    7 +
 src/common/uproc/os/common/include/nv-crashcat.h   |   27 +-
 src/nvidia-modeset/Makefile                        |    1 +
 src/nvidia-modeset/include/nvkms-hdmi.h            |    2 +-
 src/nvidia-modeset/src/nvkms-dpy.c                 |   23 +-
 src/nvidia-modeset/src/nvkms-evo.c                 |    6 +-
 src/nvidia-modeset/src/nvkms-evo3.c                |   27 +-
 src/nvidia-modeset/src/nvkms-hdmi.c                |    4 +-
 src/nvidia/Makefile                                |    1 +
 .../arch/nvalloc/common/inc/dev_ctrl_defines.h     |    5 +-
 src/nvidia/arch/nvalloc/common/inc/nvcst.h         |    3 +-
 src/nvidia/arch/nvalloc/common/inc/oob/smbpbi.h    |   14 +-
 src/nvidia/generated/g_crashcat_report_nvoc.c      |   10 +
 src/nvidia/generated/g_crashcat_report_nvoc.h      |   13 +
 src/nvidia/generated/g_gpu_nvoc.h                  |    3 +
 src/nvidia/generated/g_kernel_fifo_nvoc.c          |   22 +
 src/nvidia/generated/g_kernel_fifo_nvoc.h          |   27 +
 .../generated/g_kernel_graphics_context_nvoc.h     |    6 +-
 src/nvidia/generated/g_kernel_graphics_nvoc.c      |   47 +
 src/nvidia/generated/g_kernel_graphics_nvoc.h      |   75 ++
 src/nvidia/generated/g_kernel_gsp_nvoc.h           |   10 +
 src/nvidia/generated/g_nv_name_released.h          |    4 +
 src/nvidia/generated/g_profiler_v2_nvoc.h          |    2 +-
 src/nvidia/generated/g_subdevice_nvoc.c            |  781 +++++++-------
 src/nvidia/generated/g_subdevice_nvoc.h            |    8 +
 src/nvidia/generated/g_vgpuconfigapi_nvoc.c        |    8 +-
 src/nvidia/generated/g_vgpuconfigapi_nvoc.h        |    2 +-
 src/nvidia/inc/kernel/gpu/gsp/gsp_static_config.h  |    1 +
 src/nvidia/inc/kernel/gpu/gsp/message_queue_priv.h |   20 +
 src/nvidia/interface/nvrm_registry.h               |    8 +
 src/nvidia/kernel/vgpu/nv/rpc.c                    |    4 +
 src/nvidia/src/kernel/gpu/device.c                 |    2 +-
 .../gpu/fifo/arch/ampere/kernel_fifo_ga100.c       |   91 ++
 src/nvidia/src/kernel/gpu/fifo/kernel_channel.c    |   11 +-
 src/nvidia/src/kernel/gpu/fsp/kern_fsp.c           |   38 +-
 .../kernel/gpu/gr/arch/turing/kgraphics_tu102.c    |  333 ++++++
 src/nvidia/src/kernel/gpu/gr/kernel_graphics.c     |   52 +-
 .../src/kernel/gpu/gr/kernel_graphics_context.c    |    9 +-
 .../kernel/gpu/gsp/arch/turing/kernel_gsp_tu102.c  |   28 +-
 src/nvidia/src/kernel/gpu/gsp/kernel_gsp.c         |   75 ++
 src/nvidia/src/kernel/gpu/gsp/message_queue_cpu.c  |   47 +-
 src/nvidia/src/kernel/gpu/mem_mgr/mem_desc.c       |    2 +
 src/nvidia/src/kernel/gpu/mem_mgr/vaspace_api.c    |    3 +-
 src/nvidia/src/kernel/mem_mgr/video_mem.c          |   12 +-
 src/nvidia/src/kernel/rmapi/mapping_cpu.c          |    5 +-
 src/nvidia/src/kernel/rmapi/nv_gpu_ops.c           |    5 +-
 .../crashcat/v1/impl/crashcat_report_v1_libos3.c   |    5 +
 version.mk                                         |    2 +-
 89 files changed, 3277 insertions(+), 1823 deletions(-)

[ Other info ]
This is a rebuild of the package from sid with no further changes.


Andreas
diff --git a/debian/changelog b/debian/changelog
index e6ad910b..b68879ea 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,21 @@
+nvidia-open-gpu-kernel-modules (535.183.01-1~deb12u1) bookworm; urgency=medium
+
+  * Rebuild for bookworm.
+
+ -- Andreas Beckmann <a...@debian.org>  Wed, 19 Jun 2024 09:17:48 +0200
+
+nvidia-open-gpu-kernel-modules (535.183.01-1) unstable; urgency=medium
+
+  * New upstream LTS and Tesla branch release 535.183.01 (2024-06-04).
+    * Fixed CVE-2024-0090, CVE-2024-0092.  (Closes: #1072800)
+      https://nvidia.custhelp.com/app/answers/detail/a_id/5551
+  * New upstream long term support branch release 535.179 (2024-05-09).
+  * New upstream long term support branch release 535.171.04 (2024-03-21).
+  * Sync with src:nvidia-graphics-drivers.
+  * Refresh patches.
+
+ -- Andreas Beckmann <a...@debian.org>  Wed, 19 Jun 2024 04:56:43 +0200
+
 nvidia-open-gpu-kernel-modules (535.161.08-1~deb12u1) bookworm; urgency=medium
 
   * Rebuild for bookworm.
diff --git a/debian/patches/hmm.patch b/debian/patches/hmm.patch
index e7ee7b30..eb92335f 100644
--- a/debian/patches/hmm.patch
+++ b/debian/patches/hmm.patch
@@ -2,9 +2,9 @@ Author: Andreas Beckmann <a...@debian.org>
 Description: some hmm bits are not always available
  hmm_pfn_to_page() was introduced in Linux 5.8
 
---- a/kernel-open/nvidia-uvm/uvm_ats.h
-+++ b/kernel-open/nvidia-uvm/uvm_ats.h
-@@ -38,7 +38,9 @@
+--- a/kernel-open/nvidia-uvm/uvm_linux.h
++++ b/kernel-open/nvidia-uvm/uvm_linux.h
+@@ -118,7 +118,9 @@ static inline const struct cpumask *uvm_
  // hmm_range_fault() needs CONFIG_HMM_MIRROR. To detect racing CPU invalidates
  // of memory regions while hmm_range_fault() is being called, MMU interval
  // notifiers are needed.
@@ -12,6 +12,6 @@ Description: some hmm bits are not always available
 +// hmm_pfn_to_page() was added in Linux 5.8 (2733ea144dcce)
 +    #if defined(CONFIG_HMM_MIRROR) && defined(NV_MMU_INTERVAL_NOTIFIER) && \
 +          LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0)
-         #define UVM_ATS_PREFETCH_SUPPORTED() 1
+         #define UVM_HMM_RANGE_FAULT_SUPPORTED() 1
      #else
-         #define UVM_ATS_PREFETCH_SUPPORTED() 0
+         #define UVM_HMM_RANGE_FAULT_SUPPORTED() 0
diff --git 
a/debian/patches/module/0002-conftest.sh-remove-empty-lines-from-uts_release-outp.patch
 
b/debian/patches/module/0002-conftest.sh-remove-empty-lines-from-uts_release-outp.patch
index 3fd14e72..ae1828fc 100644
--- 
a/debian/patches/module/0002-conftest.sh-remove-empty-lines-from-uts_release-outp.patch
+++ 
b/debian/patches/module/0002-conftest.sh-remove-empty-lines-from-uts_release-outp.patch
@@ -1,4 +1,4 @@
-From a1133243e871c1932499e29193c8afbd4349c915 Mon Sep 17 00:00:00 2001
+From 172858a78f62259bcb6d4436c2051c3645fb2f7e Mon Sep 17 00:00:00 2001
 From: Andreas Beckmann <a...@debian.org>
 Date: Mon, 31 Oct 2022 14:40:42 +0100
 Subject: [PATCH] conftest.sh: remove empty lines from uts_release output
@@ -8,10 +8,10 @@ Subject: [PATCH] conftest.sh: remove empty lines from 
uts_release output
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/conftest.sh b/conftest.sh
-index e883f3e..962b418 100755
+index fcfa9d5..376b227 100755
 --- a/conftest.sh
 +++ b/conftest.sh
-@@ -5856,7 +5856,7 @@ compile_test() {
+@@ -5912,7 +5912,7 @@ compile_test() {
              echo "#include <generated/utsrelease.h>
              UTS_RELEASE" > conftest$$.c
  
diff --git a/debian/patches/module/0034-fix-typos.patch 
b/debian/patches/module/0034-fix-typos.patch
index 22ceafa0..cd2724ea 100644
--- a/debian/patches/module/0034-fix-typos.patch
+++ b/debian/patches/module/0034-fix-typos.patch
@@ -1,4 +1,4 @@
-From 73d99e0834961ad70a90963d42a8a1d8d225e87d Mon Sep 17 00:00:00 2001
+From 7c6f49a47ddff074f6926997f2d37f57396fd2fb Mon Sep 17 00:00:00 2001
 From: Andreas Beckmann <a...@debian.org>
 Date: Wed, 31 Jan 2024 03:06:19 +0100
 Subject: [PATCH] fix typos
@@ -31,10 +31,10 @@ index ee5eef4..3032615 100644
          (g_uvm_perf_thrashing_lapse_usec == 
UVM_PERF_THRASHING_LAPSE_USEC_DEFAULT)) {
          va_space_thrashing->params.lapse_ns  = 
UVM_PERF_THRASHING_LAPSE_USEC_DEFAULT_EMULATION * 1000;
 diff --git a/nvidia/nv.c b/nvidia/nv.c
-index 5a43c52..592a228 100644
+index 76d1ef3..4fc7966 100644
 --- a/nvidia/nv.c
 +++ b/nvidia/nv.c
-@@ -4485,7 +4485,7 @@ NvU64 NV_API_CALL nv_get_dma_start_address(
+@@ -4489,7 +4489,7 @@ NvU64 NV_API_CALL nv_get_dma_start_address(
       * Otherwise, the DMA start address only needs to be set once, and it
       * won't change afterward. Just return the cached value if asked again,
       * to avoid the kernel printing redundant messages to the kernel
diff --git a/debian/patches/module/bashisms.patch 
b/debian/patches/module/bashisms.patch
index b8d0ddab..55fc9ced 100644
--- a/debian/patches/module/bashisms.patch
+++ b/debian/patches/module/bashisms.patch
@@ -3,7 +3,7 @@ Description: fix bashisms in conftest.sh
 
 --- a/conftest.sh
 +++ b/conftest.sh
-@@ -6696,7 +6696,7 @@ case "$5" in
+@@ -6752,7 +6752,7 @@ case "$5" in
  
          if [ -n "$VGX_BUILD" ]; then
              if [ -f /proc/xen/capabilities ]; then
diff --git a/debian/patches/module/cc_version_check-gcc5.patch 
b/debian/patches/module/cc_version_check-gcc5.patch
index 2e7f529a..84788805 100644
--- a/debian/patches/module/cc_version_check-gcc5.patch
+++ b/debian/patches/module/cc_version_check-gcc5.patch
@@ -5,7 +5,7 @@ Description: ignore __GNUC_MINOR__ from GCC 5 onwards
 
 --- a/conftest.sh
 +++ b/conftest.sh
-@@ -6530,7 +6530,7 @@ case "$5" in
+@@ -6586,7 +6586,7 @@ case "$5" in
          kernel_cc_minor=`echo ${kernel_cc_version} | cut -d '.' -f 2`
  
          echo "
diff --git a/debian/patches/module/conftest-verbose.patch 
b/debian/patches/module/conftest-verbose.patch
index 1e7dbd60..9689e189 100644
--- a/debian/patches/module/conftest-verbose.patch
+++ b/debian/patches/module/conftest-verbose.patch
@@ -3,7 +3,7 @@ Description: dump the generated conftest headers
 
 --- a/Kbuild
 +++ b/Kbuild
-@@ -170,6 +170,16 @@ NV_CONFTEST_HEADERS += $(obj)/conftest/h
+@@ -166,6 +166,16 @@ NV_CONFTEST_HEADERS += $(obj)/conftest/h
  NV_CONFTEST_HEADERS += $(NV_CONFTEST_COMPILE_TEST_HEADERS)
  
  
@@ -20,7 +20,7 @@ Description: dump the generated conftest headers
  #
  # Generate a header file for a single conftest compile test. Each compile test
  # header depends on conftest.sh, as well as the generated conftest/headers.h
-@@ -194,6 +204,8 @@ define NV_GENERATE_COMPILE_TEST_HEADER
+@@ -190,6 +200,8 @@ define NV_GENERATE_COMPILE_TEST_HEADER
        @mkdir -p $(obj)/conftest
        @# concatenate /dev/null to prevent cat from hanging when $$^ is empty
        @cat $$^ /dev/null > $$@
@@ -29,7 +29,7 @@ Description: dump the generated conftest headers
  endef
  
  #
-@@ -213,9 +225,11 @@ $(eval $(call NV_GENERATE_COMPILE_TEST_H
+@@ -209,9 +221,11 @@ $(eval $(call NV_GENERATE_COMPILE_TEST_H
  $(eval $(call 
NV_GENERATE_COMPILE_TEST_HEADER,symbols,$(NV_CONFTEST_SYMBOL_COMPILE_TESTS)))
  $(eval $(call 
NV_GENERATE_COMPILE_TEST_HEADER,types,$(NV_CONFTEST_TYPE_COMPILE_TESTS)))
  
@@ -42,7 +42,7 @@ Description: dump the generated conftest headers
  
  
  # Each of these headers is checked for presence with a test #include; a
-@@ -322,6 +336,7 @@ NV_HEADER_PRESENCE_PART = $(addprefix $(
+@@ -318,6 +332,7 @@ NV_HEADER_PRESENCE_PART = $(addprefix $(
  define NV_HEADER_PRESENCE_CHECK
   $$(call NV_HEADER_PRESENCE_PART,$(1)): $$(NV_CONFTEST_SCRIPT) 
$(obj)/conftest/uts_release
        @mkdir -p $$(dir $$@)
@@ -50,7 +50,7 @@ Description: dump the generated conftest headers
        @$$(NV_CONFTEST_CMD) test_kernel_header '$$(NV_CONFTEST_CFLAGS)' '$(1)' 
> $$@
  endef
  
-@@ -331,6 +346,8 @@ $(foreach header,$(NV_HEADER_PRESENCE_TE
+@@ -327,6 +342,8 @@ $(foreach header,$(NV_HEADER_PRESENCE_TE
  # Concatenate all of the parts into headers.h.
  $(obj)/conftest/headers.h: $(call 
NV_HEADER_PRESENCE_PART,$(NV_HEADER_PRESENCE_TESTS))
        @cat $^ > $@
@@ -59,7 +59,7 @@ Description: dump the generated conftest headers
  
  clean-dirs := $(obj)/conftest
  
-@@ -351,7 +368,8 @@ BUILD_SANITY_CHECKS = \
+@@ -347,7 +364,8 @@ BUILD_SANITY_CHECKS = \
  
  .PHONY: $(BUILD_SANITY_CHECKS)
  
@@ -69,7 +69,7 @@ Description: dump the generated conftest headers
        @$(NV_CONFTEST_CMD) $@ full_output
  
  # Perform all sanity checks before generating the conftest headers
-@@ -360,11 +378,13 @@ $(NV_CONFTEST_HEADERS): | $(BUILD_SANITY
+@@ -356,11 +374,13 @@ $(NV_CONFTEST_HEADERS): | $(BUILD_SANITY
  
  # Make the conftest headers depend on the kernel version string
  
diff --git a/debian/patches/module/series.in b/debian/patches/module/series.in
index ee350f34..c892b7ac 100644
--- a/debian/patches/module/series.in
+++ b/debian/patches/module/series.in
@@ -8,7 +8,7 @@ bashisms.patch
 
 # build system updates
 fragile-ARCH.patch
+conftest-verbose.patch
 use-kbuild-compiler.patch
 use-kbuild-flags.patch
-conftest-verbose.patch
 conftest-prefer-arch-headers.patch
diff --git a/debian/patches/module/use-kbuild-flags.patch 
b/debian/patches/module/use-kbuild-flags.patch
index de295518..38619210 100644
--- a/debian/patches/module/use-kbuild-flags.patch
+++ b/debian/patches/module/use-kbuild-flags.patch
@@ -13,16 +13,20 @@ Description: use KBUILD_CFLAGS and (KBUILD_)LDFLAGS
 
 --- a/Kbuild
 +++ b/Kbuild
-@@ -152,6 +152,12 @@ NV_CONFTEST_CMD := /bin/sh $(NV_CONFTEST
- NV_CFLAGS_FROM_CONFTEST := $(shell $(NV_CONFTEST_CMD) build_cflags)
- 
+@@ -154,6 +154,16 @@ NV_CFLAGS_FROM_CONFTEST := $(shell $(NV_
  NV_CONFTEST_CFLAGS = $(NV_CFLAGS_FROM_CONFTEST) $(EXTRA_CFLAGS) -fno-pie
+ NV_CONFTEST_CFLAGS += $(call cc-disable-warning,pointer-sign)
+ NV_CONFTEST_CFLAGS += $(call cc-option,-fshort-wchar,)
 +NV_CONFTEST_CFLAGS += \
 +      $(patsubst -DARM64_ASM_ARCH=%,-DARM64_ASM_ARCH="%",\
-+      $(filter-out -Werror% $(GCC_PLUGINS_CFLAGS),\
++      $(filter-out $(GCC_PLUGINS_CFLAGS),\
 +      $(KBUILD_CFLAGS)\
 +      )\
 +      )
++NV_CONFTEST_CFLAGS += $(call 
cc-option,-Wno-error=implicit-function-declaration,)
++NV_CONFTEST_CFLAGS += $(call cc-option,-Wno-error=incompatible-pointer-types,)
++NV_CONFTEST_CFLAGS += $(call cc-option,-Wno-error=return-type,)
++NV_CONFTEST_CFLAGS += $(call cc-option,-Wno-error=strict-prototypes,)
  
  NV_CONFTEST_COMPILE_TEST_HEADERS := $(obj)/conftest/macros.h
  NV_CONFTEST_COMPILE_TEST_HEADERS += $(obj)/conftest/functions.h

Reply via email to