Followup-For: Bug #1039738

here comes the forgotten diff
diff --git a/debian/README.source b/debian/README.source
index 05196920..f12ec8c5 100644
--- a/debian/README.source
+++ b/debian/README.source
@@ -33,7 +33,7 @@ Upstream support timeframes
     Tesla 460 (PB)      01/2022 EoL
     Tesla 470 (LTSB)    07/2024
     Tesla 510 (PB)      01/2023 EoL
-    Tesla 515 (PB)      05/2023
+    Tesla 515 (PB)      05/2023 EoL
     Tesla 525 (PB)      12/2023
 
 
@@ -67,20 +67,12 @@ The branch structure in the GIT repository
     460-tesla           EoL   (bullseye)          470-tesla, tesla-460/main
     tesla-460/main      EoL   (bullseye),(sid)    tesla-470/main, 
tesla-460/transition-470
     tesla-460/transition-470  bullseye,sid
-    470                       bullseye            510, 470-tesla
-    470-tesla                 (bullseye)          510-tesla, tesla-470/main
-    tesla-470/main            bullseye,bookworm,sid tesla-510/main
-    510                 EoL   (bookworm),sid      515, 510-tesla
-    510-tesla           EoL   (bookworm)          515-tesla, tesla-510/main
-    tesla-510/main      EoL   (bookworm),(sid)    tesla/510, 
tesla-510/transition
-    tesla-510/transition      sid
-    tesla/510           EoL   (bookworm),sid      tesla/515
-    515                       (bookworm),sid      525, 515-tesla
-    515-tesla                 (bookworm)          525-tesla, tesla/515
-    tesla/515                 (bookworm),sid      tesla/525
-    525                       (bookworm),sid      YYY, 525-tesla
+    470                       bullseye            525, 470-tesla
+    470-tesla                 (bullseye)          525-tesla, tesla-470/main
+    tesla-470/main            bullseye,bookworm,sid tesla/525
+    525                       bookworm,sid        YYY, 525-tesla
     525-tesla                 (bookworm)          ZZZ-tesla, tesla/525
-    tesla/525                 (bookworm),sid      tesla/ZZZ
+    tesla/525                 bookworm,sid        tesla/ZZZ
     main                      sid                 YYY
     tesla/main                sid
     YYY                       experimental        ZZZ, (main)
diff --git a/debian/changelog b/debian/changelog
index 3e8acfbf..5f41b72d 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,35 @@
+nvidia-graphics-drivers-tesla-450 (450.248.02-1~deb11u1) bullseye; 
urgency=medium
+
+  * Rebuild for bullseye.
+
+ -- Andreas Beckmann <a...@debian.org>  Wed, 28 Jun 2023 20:20:39 +0200
+
+nvidia-graphics-drivers-tesla-450 (450.248.02-1) unstable; urgency=medium
+
+  * New upstream Tesla release 450.248.02 (2023-06-26).
+    * Fixed CVE-2023-25515, CVE-2023-25516.  (Closes: #1039682)
+      https://nvidia.custhelp.com/app/answers/detail/a_id/5468
+    * Improved compatibility with recent Linux kernels.
+
+  [ Andreas Beckmann ]
+  * Refresh patches.
+
+ -- Andreas Beckmann <a...@debian.org>  Wed, 28 Jun 2023 20:01:45 +0200
+
+nvidia-graphics-drivers-tesla-450 (450.236.01-3) UNRELEASED; urgency=medium
+
+  * Backport drm_driver_has_dumb_destroy changes from 525.116.03 to fix kernel
+    module build for Linux 6.4.
+
+ -- Andreas Beckmann <a...@debian.org>  Fri, 16 Jun 2023 18:29:09 +0200
+
+nvidia-graphics-drivers-tesla-450 (450.236.01-2) unstable; urgency=medium
+
+  * Backport vm_area_struct_has_const_vm_flags changes from 470.199.02 to fix
+    kernel module build for Linux 6.3.
+
+ -- Andreas Beckmann <a...@debian.org>  Fri, 16 Jun 2023 10:54:54 +0200
+
 nvidia-graphics-drivers-tesla-450 (450.236.01-1~deb11u1) bullseye; 
urgency=medium
 
   * Rebuild for bullseye.
@@ -1072,6 +1104,20 @@ nvidia-graphics-drivers (430.14-1) experimental; 
urgency=medium
 
  -- Andreas Beckmann <a...@debian.org>  Sat, 25 May 2019 13:49:09 +0200
 
+nvidia-graphics-drivers-tesla-418 (418.226.00-12) UNRELEASED; urgency=medium
+
+  * Backport drm_driver_has_dumb_destroy changes from 525.116.03 to fix kernel
+    module build for Linux 6.4.
+
+ -- Andreas Beckmann <a...@debian.org>  Fri, 16 Jun 2023 17:43:27 +0200
+
+nvidia-graphics-drivers-tesla-418 (418.226.00-11) unstable; urgency=medium
+
+  * Backport vm_area_struct_has_const_vm_flags changes from 470.199.02 to fix
+    kernel module build for Linux 6.3.
+
+ -- Andreas Beckmann <a...@debian.org>  Thu, 15 Jun 2023 14:07:08 +0200
+
 nvidia-graphics-drivers-tesla-418 (418.226.00-10) unstable; urgency=medium
 
   * Backport acpi_op_remove changes from 470.182.03 to fix kernel module build
@@ -2014,6 +2060,20 @@ nvidia-graphics-drivers (396.18-1) experimental; 
urgency=medium
 
  -- Andreas Beckmann <a...@debian.org>  Sun, 22 Apr 2018 13:59:45 +0200
 
+nvidia-graphics-drivers (390.157-4) UNRELEASED; urgency=medium
+
+  * Backport drm_driver_has_dumb_destroy changes from 525.116.03 to fix kernel
+    module build for Linux 6.4.
+
+ -- Andreas Beckmann <a...@debian.org>  Fri, 16 Jun 2023 17:29:02 +0200
+
+nvidia-graphics-drivers (390.157-3) UNRELEASED; urgency=medium
+
+  * Backport vm_area_struct_has_const_vm_flags changes from 470.199.02 to fix
+    kernel module build for Linux 6.3.
+
+ -- Andreas Beckmann <a...@debian.org>  Thu, 15 Jun 2023 10:01:34 +0200
+
 nvidia-graphics-drivers (390.157-2) UNRELEASED; urgency=medium
 
   * Backport acpi_op_remove changes from 470.182.03 to fix kernel module build
@@ -4805,6 +4865,9 @@ nvidia-graphics-drivers (343.22-1) experimental; 
urgency=medium
 
 nvidia-graphics-drivers (340.108-2) UNRELEASED; urgency=medium
 
+  * Backport vm_area_struct_has_const_vm_flags changes from 470.199.02 to fix
+    kernel module build for Linux 6.3.
+
   * Backport acpi_op_remove changes from 470.182.03 to fix kernel module build
     for Linux 6.2.
 
diff --git a/debian/control.md5sum b/debian/control.md5sum
index bb6e412b..0d1857fe 100644
--- a/debian/control.md5sum
+++ b/debian/control.md5sum
@@ -2,4 +2,4 @@
 6abdae87c561590eed426f1294b444ed  debian/control.in
 8489c83cfe0171c9de6d052c01a6d19b  debian/gen-control.pl
 55764e43f1aeebd8c8e589a227cad550  debian/rules
-6a42730ab7a453a8a02c5ae4f885cdd0  debian/rules.defs
+ad1e27dd2789bdc3bd72b1a7efcd82e8  debian/rules.defs
diff --git 
a/debian/module/debian/patches/0023-backport-vm_area_struct_has_const_vm_flags-changes-f.patch
 
b/debian/module/debian/patches/0023-backport-vm_area_struct_has_const_vm_flags-changes-f.patch
new file mode 100644
index 00000000..5151ea69
--- /dev/null
+++ 
b/debian/module/debian/patches/0023-backport-vm_area_struct_has_const_vm_flags-changes-f.patch
@@ -0,0 +1,160 @@
+From a887b0c0b81c1d6739e3789f51a8a60514393e90 Mon Sep 17 00:00:00 2001
+From: Andreas Beckmann <a...@debian.org>
+Date: Tue, 27 Jun 2023 22:26:21 +0200
+Subject: [PATCH] backport vm_area_struct_has_const_vm_flags changes from
+ 470.199.02
+
+---
+ common/inc/nv-mm.h                      | 22 ++++++++++++++++++++++
+ conftest.sh                             | 19 +++++++++++++++++++
+ nvidia-drm/nvidia-drm-gem-user-memory.c |  6 +++---
+ nvidia-drm/nvidia-drm.Kbuild            |  1 +
+ nvidia/nv-mmap.c                        | 12 ++++++------
+ nvidia/nvidia.Kbuild                    |  1 +
+ 6 files changed, 52 insertions(+), 9 deletions(-)
+
+diff --git a/common/inc/nv-mm.h b/common/inc/nv-mm.h
+index 54f6f60..46d09ca 100644
+--- a/common/inc/nv-mm.h
++++ b/common/inc/nv-mm.h
+@@ -270,4 +270,26 @@ static inline struct rw_semaphore 
*nv_mmap_get_lock(struct mm_struct *mm)
+ #endif
+ }
+ 
++#if defined(NV_VM_AREA_STRUCT_HAS_CONST_VM_FLAGS)
++static inline void nv_vm_flags_set(struct vm_area_struct *vma, vm_flags_t 
flags)
++{
++    vm_flags_set(vma, flags);
++}
++
++static inline void nv_vm_flags_clear(struct vm_area_struct *vma, vm_flags_t 
flags)
++{
++    vm_flags_clear(vma, flags);
++}
++#else
++static inline void nv_vm_flags_set(struct vm_area_struct *vma, unsigned long 
flags)
++{
++    vma->vm_flags |= flags;
++}
++
++static inline void nv_vm_flags_clear(struct vm_area_struct *vma, unsigned 
long flags)
++{
++    vma->vm_flags &= ~flags;
++}
++#endif
++
+ #endif // __NV_MM_H__
+diff --git a/conftest.sh b/conftest.sh
+index 173eb54..2a65e39 100755
+--- a/conftest.sh
++++ b/conftest.sh
+@@ -4429,6 +4429,25 @@ compile_test() {
+             compile_check_conftest "$CODE" 
"NV_DRM_CONNECTOR_HAS_OVERRIDE_EDID" "" "types"
+         ;;
+ 
++        vm_area_struct_has_const_vm_flags)
++            #
++            # Determine if the 'vm_area_struct' structure has
++            # const 'vm_flags'.
++            #
++            # A union of '__vm_flags' and 'const vm_flags' was added 
++            # by commit bc292ab00f6c ("mm: introduce vma->vm_flags
++            # wrapper functions") in mm-stable branch (2023-02-09)
++            # of the akpm/mm maintainer tree.
++            #
++            CODE="
++            #include <linux/mm_types.h>
++            int conftest_vm_area_struct_has_const_vm_flags(void) {
++                return offsetof(struct vm_area_struct, __vm_flags);
++            }"
++
++            compile_check_conftest "$CODE" 
"NV_VM_AREA_STRUCT_HAS_CONST_VM_FLAGS" "" "types"
++        ;;
++
+         drm_driver_has_dumb_destroy)
+             #
+             # Determine if the 'drm_driver' structure has a 'dumb_destroy'
+diff --git a/nvidia-drm/nvidia-drm-gem-user-memory.c 
b/nvidia-drm/nvidia-drm-gem-user-memory.c
+index 4229459..9f0b99e 100644
+--- a/nvidia-drm/nvidia-drm-gem-user-memory.c
++++ b/nvidia-drm/nvidia-drm-gem-user-memory.c
+@@ -95,9 +95,9 @@ static bool __nv_drm_gem_user_memory_adjust_mmap_flags(
+         return false;
+     }
+ 
+-    vma->vm_flags &= ~VM_PFNMAP;
+-    vma->vm_flags &= ~VM_IO;
+-    vma->vm_flags |= VM_MIXEDMAP;
++    nv_vm_flags_clear(vma, VM_PFNMAP);
++    nv_vm_flags_clear(vma, VM_IO);
++    nv_vm_flags_set(vma, VM_MIXEDMAP);
+ 
+     return true;
+ }
+diff --git a/nvidia-drm/nvidia-drm.Kbuild b/nvidia-drm/nvidia-drm.Kbuild
+index d520d4f..a5e2eed 100644
+--- a/nvidia-drm/nvidia-drm.Kbuild
++++ b/nvidia-drm/nvidia-drm.Kbuild
+@@ -108,4 +108,5 @@ NV_CONFTEST_TYPE_COMPILE_TESTS += dma_resv_add_fence
+ NV_CONFTEST_TYPE_COMPILE_TESTS += dma_resv_reserve_fences
+ NV_CONFTEST_TYPE_COMPILE_TESTS += 
reservation_object_reserve_shared_has_num_fences_arg
+ NV_CONFTEST_TYPE_COMPILE_TESTS += drm_connector_has_override_edid
++NV_CONFTEST_TYPE_COMPILE_TESTS += vm_area_struct_has_const_vm_flags
+ NV_CONFTEST_TYPE_COMPILE_TESTS += drm_driver_has_dumb_destroy
+diff --git a/nvidia/nv-mmap.c b/nvidia/nv-mmap.c
+index 0dc2396..c56b5c6 100644
+--- a/nvidia/nv-mmap.c
++++ b/nvidia/nv-mmap.c
+@@ -450,7 +450,7 @@ static int nvidia_mmap_numa(
+     }
+ 
+     // Needed for the linux kernel for mapping compound pages
+-    vma->vm_flags |= VM_MIXEDMAP;
++    nv_vm_flags_set(vma, VM_MIXEDMAP);
+ 
+     for (i = 0, addr = mmap_context->page_array[0]; i < pages;
+          addr = mmap_context->page_array[++i], start += PAGE_SIZE)
+@@ -599,7 +599,7 @@ int nvidia_mmap_helper(
+         }
+         up(&nvl->mmap_lock);
+ 
+-        vma->vm_flags |= VM_IO | VM_PFNMAP | VM_DONTEXPAND;
++        nv_vm_flags_set(vma, VM_IO | VM_PFNMAP | VM_DONTEXPAND);
+     }
+     else
+     {
+@@ -666,15 +666,15 @@ int nvidia_mmap_helper(
+ 
+         NV_PRINT_AT(NV_DBG_MEMINFO, at);
+ 
+-        vma->vm_flags |= (VM_IO | VM_LOCKED | VM_RESERVED);
+-        vma->vm_flags |= (VM_DONTEXPAND | VM_DONTDUMP);
++        nv_vm_flags_set(vma, VM_IO | VM_LOCKED | VM_RESERVED);
++        nv_vm_flags_set(vma, VM_DONTEXPAND | VM_DONTDUMP);
+     }
+ 
+     if ((prot & NV_PROTECT_WRITEABLE) == 0)
+     {
+         vma->vm_page_prot = NV_PGPROT_READ_ONLY(vma->vm_page_prot);
+-        vma->vm_flags &= ~VM_WRITE;
+-        vma->vm_flags &= ~VM_MAYWRITE;
++        nv_vm_flags_clear(vma, VM_WRITE);
++        nv_vm_flags_clear(vma, VM_MAYWRITE);
+     }
+ 
+     vma->vm_ops = &nv_vm_ops;
+diff --git a/nvidia/nvidia.Kbuild b/nvidia/nvidia.Kbuild
+index 160c2f8..1b98d85 100644
+--- a/nvidia/nvidia.Kbuild
++++ b/nvidia/nvidia.Kbuild
+@@ -198,6 +198,7 @@ NV_CONFTEST_TYPE_COMPILE_TESTS += timeval
+ NV_CONFTEST_TYPE_COMPILE_TESTS += timespec64
+ NV_CONFTEST_TYPE_COMPILE_TESTS += mm_has_mmap_lock
+ NV_CONFTEST_TYPE_COMPILE_TESTS += pci_channel_state
++NV_CONFTEST_TYPE_COMPILE_TESTS += vm_area_struct_has_const_vm_flags
+ 
+ NV_CONFTEST_GENERIC_COMPILE_TESTS += dom0_kernel_present
+ NV_CONFTEST_GENERIC_COMPILE_TESTS += nvidia_vgpu_kvm_build
+-- 
+2.20.1
+
diff --git 
a/debian/module/debian/patches/0024-backport-vm_area_struct_has_const_vm_flags-changes-f.patch
 
b/debian/module/debian/patches/0024-backport-vm_area_struct_has_const_vm_flags-changes-f.patch
new file mode 100644
index 00000000..c0c63bf3
--- /dev/null
+++ 
b/debian/module/debian/patches/0024-backport-vm_area_struct_has_const_vm_flags-changes-f.patch
@@ -0,0 +1,36 @@
+From f1c8ea717aac9b4b7863ff598dc36d024ceb4b37 Mon Sep 17 00:00:00 2001
+From: Andreas Beckmann <a...@debian.org>
+Date: Wed, 31 May 2023 12:25:55 +0200
+Subject: [PATCH 2/2] backport vm_area_struct_has_const_vm_flags changes from
+ 525.105.17 (uvm part)
+
+---
+ nvidia-uvm/nvidia-uvm.Kbuild | 1 +
+ nvidia-uvm/uvm8.c            | 2 +-
+ 2 files changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/nvidia-uvm/nvidia-uvm.Kbuild b/nvidia-uvm/nvidia-uvm.Kbuild
+index 0fe5f5e..7134784 100644
+--- a/nvidia-uvm/nvidia-uvm.Kbuild
++++ b/nvidia-uvm/nvidia-uvm.Kbuild
+@@ -127,3 +127,4 @@ NV_CONFTEST_TYPE_COMPILE_TESTS += proc_ops
+ NV_CONFTEST_TYPE_COMPILE_TESTS += timeval
+ NV_CONFTEST_TYPE_COMPILE_TESTS += timespec64
+ NV_CONFTEST_TYPE_COMPILE_TESTS += mm_has_mmap_lock
++NV_CONFTEST_TYPE_COMPILE_TESTS += vm_area_struct_has_const_vm_flags
+diff --git a/nvidia-uvm/uvm8.c b/nvidia-uvm/uvm8.c
+index 14289f8..b541320 100644
+--- a/nvidia-uvm/uvm8.c
++++ b/nvidia-uvm/uvm8.c
+@@ -812,7 +812,7 @@ static int uvm_mmap(struct file *filp, struct 
vm_area_struct *vma)
+     // Using VM_DONTCOPY would be nice, but madvise(MADV_DOFORK) can reset 
that
+     // so we have to handle vm_open on fork anyway. We could disable 
MADV_DOFORK
+     // with VM_IO, but that causes other mapping issues.
+-    vma->vm_flags |= VM_MIXEDMAP | VM_DONTEXPAND;
++    nv_vm_flags_set(vma, VM_MIXEDMAP | VM_DONTEXPAND);
+ 
+     vma->vm_ops = &uvm_vm_ops_managed;
+ 
+-- 
+2.20.1
+
diff --git a/debian/module/debian/patches/bashisms.patch 
b/debian/module/debian/patches/bashisms.patch
index 9f13871d..bc38653a 100644
--- a/debian/module/debian/patches/bashisms.patch
+++ b/debian/module/debian/patches/bashisms.patch
@@ -3,7 +3,7 @@ Description: fix bashisms in conftest.sh
 
 --- a/conftest.sh
 +++ b/conftest.sh
-@@ -4687,7 +4687,7 @@ case "$5" in
+@@ -4711,7 +4711,7 @@ case "$5" in
  
          if [ -n "$VGX_BUILD" ]; then
              if [ -f /proc/xen/capabilities ]; then
diff --git a/debian/module/debian/patches/cc_version_check-gcc5.patch 
b/debian/module/debian/patches/cc_version_check-gcc5.patch
index 5dc407ca..b87ed7fa 100644
--- a/debian/module/debian/patches/cc_version_check-gcc5.patch
+++ b/debian/module/debian/patches/cc_version_check-gcc5.patch
@@ -5,7 +5,7 @@ Description: ignore __GNUC_MINOR__ from GCC 5 onwards
 
 --- a/conftest.sh
 +++ b/conftest.sh
-@@ -4517,7 +4517,7 @@ case "$5" in
+@@ -4541,7 +4541,7 @@ case "$5" in
          kernel_cc_minor=`echo ${kernel_cc_version} | cut -d '.' -f 2`
  
          echo "
diff --git a/debian/module/debian/patches/series.in 
b/debian/module/debian/patches/series.in
index 1426ccbd..e095f345 100644
--- a/debian/module/debian/patches/series.in
+++ b/debian/module/debian/patches/series.in
@@ -4,6 +4,8 @@ bashisms.patch
 # kernel support
 0010-backport-pci-dma-changes-for-ppc64el.patch
 0021-backport-acpi_op_remove-changes-from-470.182.03.patch
+0023-backport-vm_area_struct_has_const_vm_flags-changes-f.patch
+0024-backport-vm_area_struct_has_const_vm_flags-changes-f.patch
 ppc64el.patch
 
 # build system updates
diff --git a/debian/rules.defs b/debian/rules.defs
index 095c4aa1..caf94d8a 100644
--- a/debian/rules.defs
+++ b/debian/rules.defs
@@ -8,7 +8,7 @@ NVIDIA_TESLA             = $(TESLA_MAJOR)
 XORG_ABI_LIST           = 25 24 23 20 19 18 15 14 13 12 11 10 8 6.0
 XORG_BOUND              = (<< 2:21.99)
 
-LINUX_KMOD_TESTED       = 6.2
+LINUX_KMOD_TESTED       = 6.4
 
 ARCH_LIST               = amd64
 ARCH_LIST              += i386

Reply via email to