Bug#1039738: bullseye-pu: package nvidia-graphics-drivers-tesla-450/450.248.02-1~deb11u1
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 <anbe@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 <anbe@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 <anbe@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 <anbe@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 <anbe@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 <anbe@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 <anbe@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 <anbe@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 <anbe@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 <anbe@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 <anbe@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 <anbe@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 to: