reverted: --- linux-hwe-6.5-6.5.0/block/ioctl.c +++ linux-hwe-6.5-6.5.0.orig/block/ioctl.c @@ -20,8 +20,6 @@ struct blkpg_partition p; long long start, length; - if (disk->flags & GENHD_FL_NO_PART) - return -EINVAL; if (!capable(CAP_SYS_ADMIN)) return -EACCES; if (copy_from_user(&p, upart, sizeof(struct blkpg_partition))) diff -u linux-hwe-6.5-6.5.0/debian.hwe-6.5/abi/abiname linux-hwe-6.5-6.5.0/debian.hwe-6.5/abi/abiname --- linux-hwe-6.5-6.5.0/debian.hwe-6.5/abi/abiname +++ linux-hwe-6.5-6.5.0/debian.hwe-6.5/abi/abiname @@ -1 +1 @@ -17 +18 diff -u linux-hwe-6.5-6.5.0/debian.hwe-6.5/abi/version linux-hwe-6.5-6.5.0/debian.hwe-6.5/abi/version --- linux-hwe-6.5-6.5.0/debian.hwe-6.5/abi/version +++ linux-hwe-6.5-6.5.0/debian.hwe-6.5/abi/version @@ -1 +1 @@ -6.5.0-17.17~22.04.1 +6.5.0-18.18~22.04.1 diff -u linux-hwe-6.5-6.5.0/debian.hwe-6.5/changelog linux-hwe-6.5-6.5.0/debian.hwe-6.5/changelog --- linux-hwe-6.5-6.5.0/debian.hwe-6.5/changelog +++ linux-hwe-6.5-6.5.0/debian.hwe-6.5/changelog @@ -1,3 +1,31 @@ +linux-hwe-6.5 (6.5.0-21.21~22.04.1) jammy; urgency=medium + + * jammy/linux-hwe-6.5: 6.5.0-21.21~22.04.1 -proposed tracker (LP: #2052287) + + [ Ubuntu: 6.5.0-21.21 ] + + * mantic/linux: 6.5.0-21.21 -proposed tracker (LP: #2052603) + * The display becomes frozen after some time when a HDMI device is connected. + (LP: #2049027) + - drm/i915/dmc: Don't enable any pipe DMC events + * partproke is broken on empty loopback device (LP: #2049689) + - block: Move checking GENHD_FL_NO_PART to bdev_add_partition() + * CVE-2023-51781 + - appletalk: Fix Use-After-Free in atalk_ioctl + * CVE-2023-51780 + - atm: Fix Use-After-Free in do_vcc_ioctl + * CVE-2023-6915 + - ida: Fix crash in ida_free when the bitmap is empty + * CVE-2024-0565 + - smb: client: fix OOB in receive_encrypted_standard() + * CVE-2024-0582 + - io_uring: enable io_mem_alloc/free to be used in other parts + - io_uring/kbuf: defer release of mapped buffer rings + * CVE-2024-0646 + - net: tls, update curr on splice as well + + -- Roxana Nicolescu Fri, 09 Feb 2024 11:46:11 +0100 + linux-hwe-6.5 (6.5.0-18.18~22.04.1) jammy; urgency=medium * jammy/linux-hwe-6.5: 6.5.0-18.18~22.04.1 -proposed tracker (LP: #2052595) diff -u linux-hwe-6.5-6.5.0/debian.hwe-6.5/tracking-bug linux-hwe-6.5-6.5.0/debian.hwe-6.5/tracking-bug --- linux-hwe-6.5-6.5.0/debian.hwe-6.5/tracking-bug +++ linux-hwe-6.5-6.5.0/debian.hwe-6.5/tracking-bug @@ -1 +1 @@ -2052595 2024.01.08-11 +2052287 s2024.01.08-1 diff -u linux-hwe-6.5-6.5.0/debian.master/abi/abiname linux-hwe-6.5-6.5.0/debian.master/abi/abiname --- linux-hwe-6.5-6.5.0/debian.master/abi/abiname +++ linux-hwe-6.5-6.5.0/debian.master/abi/abiname @@ -1 +1 @@ -16 +17 diff -u linux-hwe-6.5-6.5.0/debian.master/abi/s390x/generic.modules.builtin linux-hwe-6.5-6.5.0/debian.master/abi/s390x/generic.modules.builtin --- linux-hwe-6.5-6.5.0/debian.master/abi/s390x/generic.modules.builtin +++ linux-hwe-6.5-6.5.0/debian.master/abi/s390x/generic.modules.builtin @@ -127,6 +127,7 @@ tun unix utf8data +uvdevice vfat virtio virtio_balloon diff -u linux-hwe-6.5-6.5.0/debian.master/abi/version linux-hwe-6.5-6.5.0/debian.master/abi/version --- linux-hwe-6.5-6.5.0/debian.master/abi/version +++ linux-hwe-6.5-6.5.0/debian.master/abi/version @@ -1 +1 @@ -6.5.0-16.16 +6.5.0-17.17 diff -u linux-hwe-6.5-6.5.0/debian.master/changelog linux-hwe-6.5-6.5.0/debian.master/changelog --- linux-hwe-6.5-6.5.0/debian.master/changelog +++ linux-hwe-6.5-6.5.0/debian.master/changelog @@ -1,3 +1,35 @@ +linux (6.5.0-21.21) mantic; urgency=medium + + * mantic/linux: 6.5.0-21.21 -proposed tracker (LP: #2052603) + + * The display becomes frozen after some time when a HDMI device is connected. + (LP: #2049027) + - drm/i915/dmc: Don't enable any pipe DMC events + + * partproke is broken on empty loopback device (LP: #2049689) + - block: Move checking GENHD_FL_NO_PART to bdev_add_partition() + + * CVE-2023-51781 + - appletalk: Fix Use-After-Free in atalk_ioctl + + * CVE-2023-51780 + - atm: Fix Use-After-Free in do_vcc_ioctl + + * CVE-2023-6915 + - ida: Fix crash in ida_free when the bitmap is empty + + * CVE-2024-0565 + - smb: client: fix OOB in receive_encrypted_standard() + + * CVE-2024-0582 + - io_uring: enable io_mem_alloc/free to be used in other parts + - io_uring/kbuf: defer release of mapped buffer rings + + * CVE-2024-0646 + - net: tls, update curr on splice as well + + -- Manuel Diewald Wed, 07 Feb 2024 13:06:01 +0100 + linux (6.5.0-17.17) mantic; urgency=medium * mantic/linux: 6.5.0-17.17 -proposed tracker (LP: #2049026) diff -u linux-hwe-6.5-6.5.0/debian.master/tracking-bug linux-hwe-6.5-6.5.0/debian.master/tracking-bug --- linux-hwe-6.5-6.5.0/debian.master/tracking-bug +++ linux-hwe-6.5-6.5.0/debian.master/tracking-bug @@ -1 +1 @@ -2049026 2024.01.08-3 +2052603 s2024.01.08-2 diff -u linux-hwe-6.5-6.5.0/debian/changelog linux-hwe-6.5-6.5.0/debian/changelog --- linux-hwe-6.5-6.5.0/debian/changelog +++ linux-hwe-6.5-6.5.0/debian/changelog @@ -1,3 +1,31 @@ +linux-hwe-6.5 (6.5.0-21.21~22.04.1) jammy; urgency=medium + + * jammy/linux-hwe-6.5: 6.5.0-21.21~22.04.1 -proposed tracker (LP: #2052287) + + [ Ubuntu: 6.5.0-21.21 ] + + * mantic/linux: 6.5.0-21.21 -proposed tracker (LP: #2052603) + * The display becomes frozen after some time when a HDMI device is connected. + (LP: #2049027) + - drm/i915/dmc: Don't enable any pipe DMC events + * partproke is broken on empty loopback device (LP: #2049689) + - block: Move checking GENHD_FL_NO_PART to bdev_add_partition() + * CVE-2023-51781 + - appletalk: Fix Use-After-Free in atalk_ioctl + * CVE-2023-51780 + - atm: Fix Use-After-Free in do_vcc_ioctl + * CVE-2023-6915 + - ida: Fix crash in ida_free when the bitmap is empty + * CVE-2024-0565 + - smb: client: fix OOB in receive_encrypted_standard() + * CVE-2024-0582 + - io_uring: enable io_mem_alloc/free to be used in other parts + - io_uring/kbuf: defer release of mapped buffer rings + * CVE-2024-0646 + - net: tls, update curr on splice as well + + -- Roxana Nicolescu Fri, 09 Feb 2024 11:46:11 +0100 + linux-hwe-6.5 (6.5.0-18.18~22.04.1) jammy; urgency=medium * jammy/linux-hwe-6.5: 6.5.0-18.18~22.04.1 -proposed tracker (LP: #2052595) diff -u linux-hwe-6.5-6.5.0/debian/control linux-hwe-6.5-6.5.0/debian/control --- linux-hwe-6.5-6.5.0/debian/control +++ linux-hwe-6.5-6.5.0/debian/control @@ -88,7 +88,7 @@ you do not want this package. Install the appropriate linux-headers package instead. -Package: linux-hwe-6.5-headers-6.5.0-18 +Package: linux-hwe-6.5-headers-6.5.0-21 Build-Profiles: Architecture: all Multi-Arch: foreign @@ -98,7 +98,7 @@ Description: Header files related to Linux kernel version 6.5.0 This package provides kernel header files for version 6.5.0, for sites that want the latest kernel headers. Please read - /usr/share/doc/linux-hwe-6.5-headers-6.5.0-18/debian.README.gz for details + /usr/share/doc/linux-hwe-6.5-headers-6.5.0-21/debian.README.gz for details Package: linux-hwe-6.5-tools-common Build-Profiles: @@ -113,18 +113,18 @@ version locked tools (such as perf and x86_energy_perf_policy) for version 6.5.0. -Package: linux-hwe-6.5-tools-6.5.0-18 +Package: linux-hwe-6.5-tools-6.5.0-21 Build-Profiles: Architecture: amd64 armhf arm64 ppc64el s390x Section: devel Priority: optional Depends: ${misc:Depends}, ${shlibs:Depends}, linux-tools-common -Description: Linux kernel version specific tools for version 6.5.0-18 +Description: Linux kernel version specific tools for version 6.5.0-21 This package provides the architecture dependant parts for kernel version locked tools (such as perf and x86_energy_perf_policy) for - version 6.5.0-18 on + version 6.5.0-21 on 64 bit x86. - You probably want to install linux-tools-6.5.0-18-. + You probably want to install linux-tools-6.5.0-21-. Package: linux-hwe-6.5-cloud-tools-common Build-Profiles: @@ -137,17 +137,17 @@ This package provides the architecture independent parts for kernel version locked tools for cloud tools for version 6.5.0. -Package: linux-hwe-6.5-cloud-tools-6.5.0-18 +Package: linux-hwe-6.5-cloud-tools-6.5.0-21 Build-Profiles: Architecture: amd64 armhf Section: devel Priority: optional Depends: ${misc:Depends}, ${shlibs:Depends}, linux-cloud-tools-common -Description: Linux kernel version specific cloud tools for version 6.5.0-18 +Description: Linux kernel version specific cloud tools for version 6.5.0-21 This package provides the architecture dependant parts for kernel - version locked tools for cloud tools for version 6.5.0-18 on + version locked tools for cloud tools for version 6.5.0-21 on 64 bit x86. - You probably want to install linux-cloud-tools-6.5.0-18-. + You probably want to install linux-cloud-tools-6.5.0-21-. Package: linux-hwe-6.5-tools-host Build-Profiles: @@ -161,17 +161,17 @@ -Package: linux-image-unsigned-6.5.0-18-generic +Package: linux-image-unsigned-6.5.0-21-generic Build-Profiles: Architecture: amd64 armhf arm64 ppc64el s390x Section: kernel Priority: optional Provides: linux-image, fuse-module, kvm-api-4, redhat-cluster-modules, ivtv-modules, virtualbox-guest-modules [amd64], ${linux:rprovides} -Depends: ${misc:Depends}, ${shlibs:Depends}, kmod, linux-base (>= 4.5ubuntu1~16.04.1), linux-modules-6.5.0-18-generic +Depends: ${misc:Depends}, ${shlibs:Depends}, kmod, linux-base (>= 4.5ubuntu1~16.04.1), linux-modules-6.5.0-21-generic Recommends: grub-pc [amd64] | grub-efi-amd64 [amd64] | grub-efi-ia32 [amd64] | grub [amd64] | lilo [amd64] | flash-kernel [armhf arm64] | grub-efi-arm64 [arm64] | grub-efi-arm [armhf] | grub-ieee1275 [ppc64el], initramfs-tools | linux-initramfs-tool Breaks: flash-kernel (<< 3.90ubuntu2) [arm64 armhf], s390-tools (<< 2.3.0-0ubuntu3) [s390x] -Conflicts: linux-image-6.5.0-18-generic -Suggests: fdutils, linux-doc | linux-hwe-6.5-source-6.5.0, linux-hwe-6.5-tools, linux-headers-6.5.0-18-generic, linux-modules-extra-6.5.0-18-generic +Conflicts: linux-image-6.5.0-21-generic +Suggests: fdutils, linux-doc | linux-hwe-6.5-source-6.5.0, linux-hwe-6.5-tools, linux-headers-6.5.0-21-generic, linux-modules-extra-6.5.0-21-generic Description: Linux kernel image for version 6.5.0 on 64 bit x86 SMP This package contains the unsigned Linux kernel image for version 6.5.0 on 64 bit x86 SMP. @@ -184,7 +184,7 @@ the linux-generic meta-package, which will ensure that upgrades work correctly, and that supporting packages are also installed. -Package: linux-modules-6.5.0-18-generic +Package: linux-modules-6.5.0-21-generic Build-Profiles: Architecture: amd64 armhf arm64 ppc64el s390x Section: kernel @@ -204,12 +204,12 @@ the linux-generic meta-package, which will ensure that upgrades work correctly, and that supporting packages are also installed. -Package: linux-modules-extra-6.5.0-18-generic +Package: linux-modules-extra-6.5.0-21-generic Build-Profiles: Architecture: amd64 armhf arm64 ppc64el s390x Section: kernel Priority: optional -Depends: ${misc:Depends}, ${shlibs:Depends}, linux-modules-6.5.0-18-generic, wireless-regdb +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-modules-6.5.0-21-generic, wireless-regdb Description: Linux kernel extra modules for version 6.5.0 on 64 bit x86 SMP This package contains the Linux kernel extra modules for version 6.5.0 on 64 bit x86 SMP. @@ -226,21 +226,21 @@ the linux-generic meta-package, which will ensure that upgrades work correctly, and that supporting packages are also installed. -Package: linux-headers-6.5.0-18-generic +Package: linux-headers-6.5.0-21-generic Build-Profiles: Architecture: amd64 armhf arm64 ppc64el s390x Section: devel Priority: optional -Depends: ${misc:Depends}, linux-hwe-6.5-headers-6.5.0-18, ${shlibs:Depends} +Depends: ${misc:Depends}, linux-hwe-6.5-headers-6.5.0-21, ${shlibs:Depends} Provides: linux-headers, linux-headers-3.0 Description: Linux kernel headers for version 6.5.0 on 64 bit x86 SMP This package provides kernel header files for version 6.5.0 on 64 bit x86 SMP. . This is for sites that want the latest kernel headers. Please read - /usr/share/doc/linux-headers-6.5.0-18/debian.README.gz for details. + /usr/share/doc/linux-headers-6.5.0-21/debian.README.gz for details. -Package: linux-hwe-6.5-lib-rust-6.5.0-18-generic +Package: linux-hwe-6.5-lib-rust-6.5.0-21-generic Build-Profiles: Architecture: amd64 Multi-Arch: foreign @@ -251,7 +251,7 @@ This package provides kernel library files for version 6.5.0, that allow to compile out-of-tree kernel modules written in Rust. -Package: linux-image-unsigned-6.5.0-18-generic-dbgsym +Package: linux-image-unsigned-6.5.0-21-generic-dbgsym Build-Profiles: Architecture: amd64 armhf arm64 ppc64el s390x Section: devel @@ -268,31 +268,31 @@ is uncompressed, and unstripped. This package also includes the unstripped modules. -Package: linux-tools-6.5.0-18-generic +Package: linux-tools-6.5.0-21-generic Build-Profiles: Architecture: amd64 armhf arm64 ppc64el s390x Section: devel Priority: optional -Depends: ${misc:Depends}, linux-hwe-6.5-tools-6.5.0-18 -Description: Linux kernel version specific tools for version 6.5.0-18 +Depends: ${misc:Depends}, linux-hwe-6.5-tools-6.5.0-21 +Description: Linux kernel version specific tools for version 6.5.0-21 This package provides the architecture dependant parts for kernel version locked tools (such as perf and x86_energy_perf_policy) for - version 6.5.0-18 on + version 6.5.0-21 on 64 bit x86. -Package: linux-cloud-tools-6.5.0-18-generic +Package: linux-cloud-tools-6.5.0-21-generic Build-Profiles: Architecture: amd64 armhf arm64 ppc64el s390x Section: devel Priority: optional -Depends: ${misc:Depends}, linux-hwe-6.5-cloud-tools-6.5.0-18 -Description: Linux kernel version specific cloud tools for version 6.5.0-18 +Depends: ${misc:Depends}, linux-hwe-6.5-cloud-tools-6.5.0-21 +Description: Linux kernel version specific cloud tools for version 6.5.0-21 This package provides the architecture dependant parts for kernel - version locked tools for cloud for version 6.5.0-18 on + version locked tools for cloud for version 6.5.0-21 on 64 bit x86. -Package: linux-buildinfo-6.5.0-18-generic +Package: linux-buildinfo-6.5.0-21-generic Build-Profiles: Architecture: amd64 armhf arm64 ppc64el s390x Section: kernel @@ -306,18 +306,18 @@ You likely do not want to install this package. -Package: linux-modules-ipu6-6.5.0-18-generic +Package: linux-modules-ipu6-6.5.0-21-generic Build-Profiles: Architecture: amd64 armhf arm64 ppc64el s390x Section: kernel Priority: optional Depends: ${misc:Depends}, - linux-image-6.5.0-18-generic | linux-image-unsigned-6.5.0-18-generic, + linux-image-6.5.0-21-generic | linux-image-unsigned-6.5.0-21-generic, Built-Using: ${linux:BuiltUsing} -Description: Linux kernel ipu6 modules for version 6.5.0-18 +Description: Linux kernel ipu6 modules for version 6.5.0-21 This package provides the Linux kernel ipu6 modules for version - 6.5.0-18. + 6.5.0-21. . You likely do not want to install this package directly. Instead, install the one of the linux-modules-ipu6-generic* meta-packages, @@ -325,18 +325,18 @@ also installed. -Package: linux-modules-ivsc-6.5.0-18-generic +Package: linux-modules-ivsc-6.5.0-21-generic Build-Profiles: Architecture: amd64 armhf arm64 ppc64el s390x Section: kernel Priority: optional Depends: ${misc:Depends}, - linux-image-6.5.0-18-generic | linux-image-unsigned-6.5.0-18-generic, + linux-image-6.5.0-21-generic | linux-image-unsigned-6.5.0-21-generic, Built-Using: ${linux:BuiltUsing} -Description: Linux kernel ivsc modules for version 6.5.0-18 +Description: Linux kernel ivsc modules for version 6.5.0-21 This package provides the Linux kernel ivsc modules for version - 6.5.0-18. + 6.5.0-21. . You likely do not want to install this package directly. Instead, install the one of the linux-modules-ivsc-generic* meta-packages, @@ -344,18 +344,18 @@ also installed. -Package: linux-modules-iwlwifi-6.5.0-18-generic +Package: linux-modules-iwlwifi-6.5.0-21-generic Build-Profiles: Architecture: amd64 armhf arm64 ppc64el s390x Section: kernel Priority: optional Depends: ${misc:Depends}, - linux-image-6.5.0-18-generic | linux-image-unsigned-6.5.0-18-generic, + linux-image-6.5.0-21-generic | linux-image-unsigned-6.5.0-21-generic, Built-Using: ${linux:BuiltUsing} -Description: Linux kernel iwlwifi modules for version 6.5.0-18 +Description: Linux kernel iwlwifi modules for version 6.5.0-21 This package provides the Linux kernel iwlwifi modules for version - 6.5.0-18. + 6.5.0-21. . You likely do not want to install this package directly. Instead, install the one of the linux-modules-iwlwifi-generic* meta-packages, @@ -363,17 +363,17 @@ also installed. -Package: linux-image-unsigned-6.5.0-18-generic-64k +Package: linux-image-unsigned-6.5.0-21-generic-64k Build-Profiles: Architecture: arm64 Section: kernel Priority: optional Provides: linux-image, fuse-module, kvm-api-4, redhat-cluster-modules, ivtv-modules, ${linux:rprovides} -Depends: ${misc:Depends}, ${shlibs:Depends}, kmod, linux-base (>= 4.5ubuntu1~16.04.1), linux-modules-6.5.0-18-generic-64k +Depends: ${misc:Depends}, ${shlibs:Depends}, kmod, linux-base (>= 4.5ubuntu1~16.04.1), linux-modules-6.5.0-21-generic-64k Recommends: grub-efi-arm64 [arm64] | flash-kernel [arm64], initramfs-tools | linux-initramfs-tool Breaks: flash-kernel (<< 3.90ubuntu2) [arm64 armhf], s390-tools (<< 2.3.0-0ubuntu3) [s390x] -Conflicts: linux-image-6.5.0-18-generic-64k -Suggests: fdutils, linux-doc | linux-hwe-6.5-source-6.5.0, linux-hwe-6.5-tools, linux-headers-6.5.0-18-generic-64k, linux-modules-extra-6.5.0-18-generic-64k +Conflicts: linux-image-6.5.0-21-generic-64k +Suggests: fdutils, linux-doc | linux-hwe-6.5-source-6.5.0, linux-hwe-6.5-tools, linux-headers-6.5.0-21-generic-64k, linux-modules-extra-6.5.0-21-generic-64k Description: Linux kernel image for version 6.5.0 on 64 bit x86 SMP This package contains the unsigned Linux kernel image for version 6.5.0 on 64 bit x86 SMP. @@ -386,7 +386,7 @@ the linux-generic-64k meta-package, which will ensure that upgrades work correctly, and that supporting packages are also installed. -Package: linux-modules-6.5.0-18-generic-64k +Package: linux-modules-6.5.0-21-generic-64k Build-Profiles: Architecture: arm64 Section: kernel @@ -406,12 +406,12 @@ the linux-generic-64k meta-package, which will ensure that upgrades work correctly, and that supporting packages are also installed. -Package: linux-modules-extra-6.5.0-18-generic-64k +Package: linux-modules-extra-6.5.0-21-generic-64k Build-Profiles: Architecture: arm64 Section: kernel Priority: optional -Depends: ${misc:Depends}, ${shlibs:Depends}, linux-modules-6.5.0-18-generic-64k, wireless-regdb +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-modules-6.5.0-21-generic-64k, wireless-regdb Description: Linux kernel extra modules for version 6.5.0 on 64 bit x86 SMP This package contains the Linux kernel extra modules for version 6.5.0 on 64 bit x86 SMP. @@ -428,21 +428,21 @@ the linux-generic-64k meta-package, which will ensure that upgrades work correctly, and that supporting packages are also installed. -Package: linux-headers-6.5.0-18-generic-64k +Package: linux-headers-6.5.0-21-generic-64k Build-Profiles: Architecture: arm64 Section: devel Priority: optional -Depends: ${misc:Depends}, linux-hwe-6.5-headers-6.5.0-18, ${shlibs:Depends} +Depends: ${misc:Depends}, linux-hwe-6.5-headers-6.5.0-21, ${shlibs:Depends} Provides: linux-headers, linux-headers-3.0 Description: Linux kernel headers for version 6.5.0 on 64 bit x86 SMP This package provides kernel header files for version 6.5.0 on 64 bit x86 SMP. . This is for sites that want the latest kernel headers. Please read - /usr/share/doc/linux-headers-6.5.0-18/debian.README.gz for details. + /usr/share/doc/linux-headers-6.5.0-21/debian.README.gz for details. -Package: linux-hwe-6.5-lib-rust-6.5.0-18-generic-64k +Package: linux-hwe-6.5-lib-rust-6.5.0-21-generic-64k Build-Profiles: Architecture: amd64 Multi-Arch: foreign @@ -453,7 +453,7 @@ This package provides kernel library files for version 6.5.0, that allow to compile out-of-tree kernel modules written in Rust. -Package: linux-image-unsigned-6.5.0-18-generic-64k-dbgsym +Package: linux-image-unsigned-6.5.0-21-generic-64k-dbgsym Build-Profiles: Architecture: arm64 Section: devel @@ -470,31 +470,31 @@ is uncompressed, and unstripped. This package also includes the unstripped modules. -Package: linux-tools-6.5.0-18-generic-64k +Package: linux-tools-6.5.0-21-generic-64k Build-Profiles: Architecture: arm64 Section: devel Priority: optional -Depends: ${misc:Depends}, linux-hwe-6.5-tools-6.5.0-18 -Description: Linux kernel version specific tools for version 6.5.0-18 +Depends: ${misc:Depends}, linux-hwe-6.5-tools-6.5.0-21 +Description: Linux kernel version specific tools for version 6.5.0-21 This package provides the architecture dependant parts for kernel version locked tools (such as perf and x86_energy_perf_policy) for - version 6.5.0-18 on + version 6.5.0-21 on 64 bit x86. -Package: linux-cloud-tools-6.5.0-18-generic-64k +Package: linux-cloud-tools-6.5.0-21-generic-64k Build-Profiles: Architecture: arm64 Section: devel Priority: optional -Depends: ${misc:Depends}, linux-hwe-6.5-cloud-tools-6.5.0-18 -Description: Linux kernel version specific cloud tools for version 6.5.0-18 +Depends: ${misc:Depends}, linux-hwe-6.5-cloud-tools-6.5.0-21 +Description: Linux kernel version specific cloud tools for version 6.5.0-21 This package provides the architecture dependant parts for kernel - version locked tools for cloud for version 6.5.0-18 on + version locked tools for cloud for version 6.5.0-21 on 64 bit x86. -Package: linux-buildinfo-6.5.0-18-generic-64k +Package: linux-buildinfo-6.5.0-21-generic-64k Build-Profiles: Architecture: arm64 Section: kernel @@ -508,18 +508,18 @@ You likely do not want to install this package. -Package: linux-modules-ipu6-6.5.0-18-generic-64k +Package: linux-modules-ipu6-6.5.0-21-generic-64k Build-Profiles: Architecture: arm64 Section: kernel Priority: optional Depends: ${misc:Depends}, - linux-image-6.5.0-18-generic-64k | linux-image-unsigned-6.5.0-18-generic-64k, + linux-image-6.5.0-21-generic-64k | linux-image-unsigned-6.5.0-21-generic-64k, Built-Using: ${linux:BuiltUsing} -Description: Linux kernel ipu6 modules for version 6.5.0-18 +Description: Linux kernel ipu6 modules for version 6.5.0-21 This package provides the Linux kernel ipu6 modules for version - 6.5.0-18. + 6.5.0-21. . You likely do not want to install this package directly. Instead, install the one of the linux-modules-ipu6-generic-64k* meta-packages, @@ -527,18 +527,18 @@ also installed. -Package: linux-modules-ivsc-6.5.0-18-generic-64k +Package: linux-modules-ivsc-6.5.0-21-generic-64k Build-Profiles: Architecture: arm64 Section: kernel Priority: optional Depends: ${misc:Depends}, - linux-image-6.5.0-18-generic-64k | linux-image-unsigned-6.5.0-18-generic-64k, + linux-image-6.5.0-21-generic-64k | linux-image-unsigned-6.5.0-21-generic-64k, Built-Using: ${linux:BuiltUsing} -Description: Linux kernel ivsc modules for version 6.5.0-18 +Description: Linux kernel ivsc modules for version 6.5.0-21 This package provides the Linux kernel ivsc modules for version - 6.5.0-18. + 6.5.0-21. . You likely do not want to install this package directly. Instead, install the one of the linux-modules-ivsc-generic-64k* meta-packages, @@ -546,18 +546,18 @@ also installed. -Package: linux-modules-iwlwifi-6.5.0-18-generic-64k +Package: linux-modules-iwlwifi-6.5.0-21-generic-64k Build-Profiles: Architecture: arm64 Section: kernel Priority: optional Depends: ${misc:Depends}, - linux-image-6.5.0-18-generic-64k | linux-image-unsigned-6.5.0-18-generic-64k, + linux-image-6.5.0-21-generic-64k | linux-image-unsigned-6.5.0-21-generic-64k, Built-Using: ${linux:BuiltUsing} -Description: Linux kernel iwlwifi modules for version 6.5.0-18 +Description: Linux kernel iwlwifi modules for version 6.5.0-21 This package provides the Linux kernel iwlwifi modules for version - 6.5.0-18. + 6.5.0-21. . You likely do not want to install this package directly. Instead, install the one of the linux-modules-iwlwifi-generic-64k* meta-packages, @@ -565,17 +565,17 @@ also installed. -Package: linux-image-unsigned-6.5.0-18-generic-lpae +Package: linux-image-unsigned-6.5.0-21-generic-lpae Build-Profiles: Architecture: armhf Section: kernel Priority: optional Provides: linux-image, fuse-module, kvm-api-4, redhat-cluster-modules, ivtv-modules, ${linux:rprovides} -Depends: ${misc:Depends}, ${shlibs:Depends}, kmod, linux-base (>= 4.5ubuntu1~16.04.1), linux-modules-6.5.0-18-generic-lpae +Depends: ${misc:Depends}, ${shlibs:Depends}, kmod, linux-base (>= 4.5ubuntu1~16.04.1), linux-modules-6.5.0-21-generic-lpae Recommends: flash-kernel [armhf] | grub-efi-arm [armhf], initramfs-tools | linux-initramfs-tool Breaks: flash-kernel (<< 3.90ubuntu2) [arm64 armhf], s390-tools (<< 2.3.0-0ubuntu3) [s390x] -Conflicts: linux-image-6.5.0-18-generic-lpae -Suggests: fdutils, linux-doc | linux-hwe-6.5-source-6.5.0, linux-hwe-6.5-tools, linux-headers-6.5.0-18-generic-lpae, linux-modules-extra-6.5.0-18-generic-lpae +Conflicts: linux-image-6.5.0-21-generic-lpae +Suggests: fdutils, linux-doc | linux-hwe-6.5-source-6.5.0, linux-hwe-6.5-tools, linux-headers-6.5.0-21-generic-lpae, linux-modules-extra-6.5.0-21-generic-lpae Description: Linux kernel image for version 6.5.0 on 64 bit x86 SMP This package contains the unsigned Linux kernel image for version 6.5.0 on 64 bit x86 SMP. @@ -588,7 +588,7 @@ the linux-generic-lpae meta-package, which will ensure that upgrades work correctly, and that supporting packages are also installed. -Package: linux-modules-6.5.0-18-generic-lpae +Package: linux-modules-6.5.0-21-generic-lpae Build-Profiles: Architecture: armhf Section: kernel @@ -608,12 +608,12 @@ the linux-generic-lpae meta-package, which will ensure that upgrades work correctly, and that supporting packages are also installed. -Package: linux-modules-extra-6.5.0-18-generic-lpae +Package: linux-modules-extra-6.5.0-21-generic-lpae Build-Profiles: Architecture: armhf Section: kernel Priority: optional -Depends: ${misc:Depends}, ${shlibs:Depends}, linux-modules-6.5.0-18-generic-lpae, wireless-regdb +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-modules-6.5.0-21-generic-lpae, wireless-regdb Description: Linux kernel extra modules for version 6.5.0 on 64 bit x86 SMP This package contains the Linux kernel extra modules for version 6.5.0 on 64 bit x86 SMP. @@ -630,21 +630,21 @@ the linux-generic-lpae meta-package, which will ensure that upgrades work correctly, and that supporting packages are also installed. -Package: linux-headers-6.5.0-18-generic-lpae +Package: linux-headers-6.5.0-21-generic-lpae Build-Profiles: Architecture: armhf Section: devel Priority: optional -Depends: ${misc:Depends}, linux-hwe-6.5-headers-6.5.0-18, ${shlibs:Depends} +Depends: ${misc:Depends}, linux-hwe-6.5-headers-6.5.0-21, ${shlibs:Depends} Provides: linux-headers, linux-headers-3.0 Description: Linux kernel headers for version 6.5.0 on 64 bit x86 SMP This package provides kernel header files for version 6.5.0 on 64 bit x86 SMP. . This is for sites that want the latest kernel headers. Please read - /usr/share/doc/linux-headers-6.5.0-18/debian.README.gz for details. + /usr/share/doc/linux-headers-6.5.0-21/debian.README.gz for details. -Package: linux-hwe-6.5-lib-rust-6.5.0-18-generic-lpae +Package: linux-hwe-6.5-lib-rust-6.5.0-21-generic-lpae Build-Profiles: Architecture: amd64 Multi-Arch: foreign @@ -655,7 +655,7 @@ This package provides kernel library files for version 6.5.0, that allow to compile out-of-tree kernel modules written in Rust. -Package: linux-image-unsigned-6.5.0-18-generic-lpae-dbgsym +Package: linux-image-unsigned-6.5.0-21-generic-lpae-dbgsym Build-Profiles: Architecture: armhf Section: devel @@ -672,31 +672,31 @@ is uncompressed, and unstripped. This package also includes the unstripped modules. -Package: linux-tools-6.5.0-18-generic-lpae +Package: linux-tools-6.5.0-21-generic-lpae Build-Profiles: Architecture: armhf Section: devel Priority: optional -Depends: ${misc:Depends}, linux-hwe-6.5-tools-6.5.0-18 -Description: Linux kernel version specific tools for version 6.5.0-18 +Depends: ${misc:Depends}, linux-hwe-6.5-tools-6.5.0-21 +Description: Linux kernel version specific tools for version 6.5.0-21 This package provides the architecture dependant parts for kernel version locked tools (such as perf and x86_energy_perf_policy) for - version 6.5.0-18 on + version 6.5.0-21 on 64 bit x86. -Package: linux-cloud-tools-6.5.0-18-generic-lpae +Package: linux-cloud-tools-6.5.0-21-generic-lpae Build-Profiles: Architecture: armhf Section: devel Priority: optional -Depends: ${misc:Depends}, linux-hwe-6.5-cloud-tools-6.5.0-18 -Description: Linux kernel version specific cloud tools for version 6.5.0-18 +Depends: ${misc:Depends}, linux-hwe-6.5-cloud-tools-6.5.0-21 +Description: Linux kernel version specific cloud tools for version 6.5.0-21 This package provides the architecture dependant parts for kernel - version locked tools for cloud for version 6.5.0-18 on + version locked tools for cloud for version 6.5.0-21 on 64 bit x86. -Package: linux-buildinfo-6.5.0-18-generic-lpae +Package: linux-buildinfo-6.5.0-21-generic-lpae Build-Profiles: Architecture: armhf Section: kernel @@ -710,18 +710,18 @@ You likely do not want to install this package. -Package: linux-modules-ipu6-6.5.0-18-generic-lpae +Package: linux-modules-ipu6-6.5.0-21-generic-lpae Build-Profiles: Architecture: armhf Section: kernel Priority: optional Depends: ${misc:Depends}, - linux-image-6.5.0-18-generic-lpae | linux-image-unsigned-6.5.0-18-generic-lpae, + linux-image-6.5.0-21-generic-lpae | linux-image-unsigned-6.5.0-21-generic-lpae, Built-Using: ${linux:BuiltUsing} -Description: Linux kernel ipu6 modules for version 6.5.0-18 +Description: Linux kernel ipu6 modules for version 6.5.0-21 This package provides the Linux kernel ipu6 modules for version - 6.5.0-18. + 6.5.0-21. . You likely do not want to install this package directly. Instead, install the one of the linux-modules-ipu6-generic-lpae* meta-packages, @@ -729,18 +729,18 @@ also installed. -Package: linux-modules-ivsc-6.5.0-18-generic-lpae +Package: linux-modules-ivsc-6.5.0-21-generic-lpae Build-Profiles: Architecture: armhf Section: kernel Priority: optional Depends: ${misc:Depends}, - linux-image-6.5.0-18-generic-lpae | linux-image-unsigned-6.5.0-18-generic-lpae, + linux-image-6.5.0-21-generic-lpae | linux-image-unsigned-6.5.0-21-generic-lpae, Built-Using: ${linux:BuiltUsing} -Description: Linux kernel ivsc modules for version 6.5.0-18 +Description: Linux kernel ivsc modules for version 6.5.0-21 This package provides the Linux kernel ivsc modules for version - 6.5.0-18. + 6.5.0-21. . You likely do not want to install this package directly. Instead, install the one of the linux-modules-ivsc-generic-lpae* meta-packages, @@ -748,18 +748,18 @@ also installed. -Package: linux-modules-iwlwifi-6.5.0-18-generic-lpae +Package: linux-modules-iwlwifi-6.5.0-21-generic-lpae Build-Profiles: Architecture: armhf Section: kernel Priority: optional Depends: ${misc:Depends}, - linux-image-6.5.0-18-generic-lpae | linux-image-unsigned-6.5.0-18-generic-lpae, + linux-image-6.5.0-21-generic-lpae | linux-image-unsigned-6.5.0-21-generic-lpae, Built-Using: ${linux:BuiltUsing} -Description: Linux kernel iwlwifi modules for version 6.5.0-18 +Description: Linux kernel iwlwifi modules for version 6.5.0-21 This package provides the Linux kernel iwlwifi modules for version - 6.5.0-18. + 6.5.0-21. . You likely do not want to install this package directly. Instead, install the one of the linux-modules-iwlwifi-generic-lpae* meta-packages, diff -u linux-hwe-6.5-6.5.0/fs/smb/client/smb2ops.c linux-hwe-6.5-6.5.0/fs/smb/client/smb2ops.c --- linux-hwe-6.5-6.5.0/fs/smb/client/smb2ops.c +++ linux-hwe-6.5-6.5.0/fs/smb/client/smb2ops.c @@ -5045,6 +5045,7 @@ struct smb2_hdr *shdr; unsigned int pdu_length = server->pdu_size; unsigned int buf_size; + unsigned int next_cmd; struct mid_q_entry *mid_entry; int next_is_large; char *next_buffer = NULL; @@ -5073,14 +5074,15 @@ next_is_large = server->large_buf; one_more: shdr = (struct smb2_hdr *)buf; - if (shdr->NextCommand) { + next_cmd = le32_to_cpu(shdr->NextCommand); + if (next_cmd) { + if (WARN_ON_ONCE(next_cmd > pdu_length)) + return -1; if (next_is_large) next_buffer = (char *)cifs_buf_get(); else next_buffer = (char *)cifs_small_buf_get(); - memcpy(next_buffer, - buf + le32_to_cpu(shdr->NextCommand), - pdu_length - le32_to_cpu(shdr->NextCommand)); + memcpy(next_buffer, buf + next_cmd, pdu_length - next_cmd); } mid_entry = smb2_find_mid(server, buf); @@ -5104,8 +5106,8 @@ else ret = cifs_handle_standard(server, mid_entry); - if (ret == 0 && shdr->NextCommand) { - pdu_length -= le32_to_cpu(shdr->NextCommand); + if (ret == 0 && next_cmd) { + pdu_length -= next_cmd; server->large_buf = next_is_large; if (next_is_large) server->bigbuf = buf = next_buffer; diff -u linux-hwe-6.5-6.5.0/include/linux/io_uring_types.h linux-hwe-6.5-6.5.0/include/linux/io_uring_types.h --- linux-hwe-6.5-6.5.0/include/linux/io_uring_types.h +++ linux-hwe-6.5-6.5.0/include/linux/io_uring_types.h @@ -327,6 +327,9 @@ struct list_head io_buffers_cache; + /* deferred free list, protected by ->uring_lock */ + struct hlist_head io_buf_list; + /* Keep this last, we don't need it for the fast path */ struct wait_queue_head poll_wq; struct io_restriction restrictions; diff -u linux-hwe-6.5-6.5.0/io_uring/io_uring.c linux-hwe-6.5-6.5.0/io_uring/io_uring.c --- linux-hwe-6.5-6.5.0/io_uring/io_uring.c +++ linux-hwe-6.5-6.5.0/io_uring/io_uring.c @@ -323,6 +323,7 @@ INIT_LIST_HEAD(&ctx->sqd_list); INIT_LIST_HEAD(&ctx->cq_overflow_list); INIT_LIST_HEAD(&ctx->io_buffers_cache); + INIT_HLIST_HEAD(&ctx->io_buf_list); io_alloc_cache_init(&ctx->rsrc_node_cache, IO_NODE_ALLOC_CACHE_MAX, sizeof(struct io_rsrc_node)); io_alloc_cache_init(&ctx->apoll_cache, IO_ALLOC_CACHE_MAX, @@ -2659,7 +2660,7 @@ return READ_ONCE(rings->cq.head) == READ_ONCE(rings->cq.tail) ? ret : 0; } -static void io_mem_free(void *ptr) +void io_mem_free(void *ptr) { if (!ptr) return; @@ -2768,7 +2769,7 @@ } } -static void *io_mem_alloc(size_t size) +void *io_mem_alloc(size_t size) { gfp_t gfp = GFP_KERNEL_ACCOUNT | __GFP_ZERO | __GFP_NOWARN | __GFP_COMP; void *ret; @@ -2939,6 +2940,7 @@ ctx->mm_account = NULL; } io_rings_free(ctx); + io_kbuf_mmap_list_free(ctx); percpu_ref_exit(&ctx->refs); free_uid(ctx->user); diff -u linux-hwe-6.5-6.5.0/io_uring/io_uring.h linux-hwe-6.5-6.5.0/io_uring/io_uring.h --- linux-hwe-6.5-6.5.0/io_uring/io_uring.h +++ linux-hwe-6.5-6.5.0/io_uring/io_uring.h @@ -86,6 +86,9 @@ bool io_match_task_safe(struct io_kiocb *head, struct task_struct *task, bool cancel_all); +void *io_mem_alloc(size_t size); +void io_mem_free(void *ptr); + #if defined(CONFIG_PROVE_LOCKING) static inline void io_lockdep_assert_cq_locked(struct io_ring_ctx *ctx) { diff -u linux-hwe-6.5-6.5.0/io_uring/kbuf.c linux-hwe-6.5-6.5.0/io_uring/kbuf.c --- linux-hwe-6.5-6.5.0/io_uring/kbuf.c +++ linux-hwe-6.5-6.5.0/io_uring/kbuf.c @@ -28,6 +28,11 @@ __u16 bid; }; +struct io_buf_free { + struct hlist_node list; + void *mem; +}; + static inline struct io_buffer_list *io_buffer_get_list(struct io_ring_ctx *ctx, unsigned int bgid) { @@ -218,7 +223,10 @@ if (bl->is_mapped) { i = bl->buf_ring->tail - bl->head; if (bl->is_mmap) { - folio_put(virt_to_folio(bl->buf_ring)); + /* + * io_kbuf_list_free() will free the page(s) at + * ->release() time. + */ bl->buf_ring = NULL; bl->is_mmap = 0; } else if (bl->buf_nr_pages) { @@ -523,18 +531,28 @@ return -EINVAL; } -static int io_alloc_pbuf_ring(struct io_uring_buf_reg *reg, +static int io_alloc_pbuf_ring(struct io_ring_ctx *ctx, + struct io_uring_buf_reg *reg, struct io_buffer_list *bl) { - gfp_t gfp = GFP_KERNEL_ACCOUNT | __GFP_ZERO | __GFP_NOWARN | __GFP_COMP; + struct io_buf_free *ibf; size_t ring_size; void *ptr; ring_size = reg->ring_entries * sizeof(struct io_uring_buf_ring); - ptr = (void *) __get_free_pages(gfp, get_order(ring_size)); + ptr = io_mem_alloc(ring_size); if (!ptr) return -ENOMEM; + /* Allocate and store deferred free entry */ + ibf = kmalloc(sizeof(*ibf), GFP_KERNEL_ACCOUNT); + if (!ibf) { + io_mem_free(ptr); + return -ENOMEM; + } + ibf->mem = ptr; + hlist_add_head(&ibf->list, &ctx->io_buf_list); + bl->buf_ring = ptr; bl->is_mapped = 1; bl->is_mmap = 1; @@ -591,7 +609,7 @@ if (!(reg.flags & IOU_PBUF_RING_MMAP)) ret = io_pin_pbuf_ring(®, bl); else - ret = io_alloc_pbuf_ring(®, bl); + ret = io_alloc_pbuf_ring(ctx, ®, bl); if (!ret) { bl->nr_entries = reg.ring_entries; @@ -643,0 +662,16 @@ + +/* + * Called at or after ->release(), free the mmap'ed buffers that we used + * for memory mapped provided buffer rings. + */ +void io_kbuf_mmap_list_free(struct io_ring_ctx *ctx) +{ + struct io_buf_free *ibf; + struct hlist_node *tmp; + + hlist_for_each_entry_safe(ibf, tmp, &ctx->io_buf_list, list) { + hlist_del(&ibf->list); + io_mem_free(ibf->mem); + kfree(ibf); + } +} diff -u linux-hwe-6.5-6.5.0/lib/idr.c linux-hwe-6.5-6.5.0/lib/idr.c --- linux-hwe-6.5-6.5.0/lib/idr.c +++ linux-hwe-6.5-6.5.0/lib/idr.c @@ -508,7 +508,7 @@ goto delete; xas_store(&xas, xa_mk_value(v)); } else { - if (!test_bit(bit, bitmap->bitmap)) + if (!bitmap || !test_bit(bit, bitmap->bitmap)) goto err; __clear_bit(bit, bitmap->bitmap); xas_set_mark(&xas, XA_FREE_MARK); diff -u linux-hwe-6.5-6.5.0/net/tls/tls_sw.c linux-hwe-6.5-6.5.0/net/tls/tls_sw.c --- linux-hwe-6.5-6.5.0/net/tls/tls_sw.c +++ linux-hwe-6.5-6.5.0/net/tls/tls_sw.c @@ -952,6 +952,8 @@ } sk_msg_page_add(msg_pl, page, part, off); + msg_pl->sg.copybreak = 0; + msg_pl->sg.curr = msg_pl->sg.end; sk_mem_charge(sk, part); *copied += part; try_to_copy -= part; only in patch2: unchanged: --- linux-hwe-6.5-6.5.0.orig/block/partitions/core.c +++ linux-hwe-6.5-6.5.0/block/partitions/core.c @@ -461,6 +461,11 @@ goto out; } + if (disk->flags & GENHD_FL_NO_PART) { + ret = -EINVAL; + goto out; + } + if (partition_overlaps(disk, start, length, -1)) { ret = -EBUSY; goto out; only in patch2: unchanged: --- linux-hwe-6.5-6.5.0.orig/drivers/gpu/drm/i915/display/intel_dmc.c +++ linux-hwe-6.5-6.5.0/drivers/gpu/drm/i915/display/intel_dmc.c @@ -389,7 +389,7 @@ enum intel_dmc_id dmc_id; /* TODO: check if the following applies to all D13+ platforms. */ - if (!IS_DG2(i915) && !IS_TIGERLAKE(i915)) + if (!IS_TIGERLAKE(i915)) return; for_each_dmc_id(dmc_id) { @@ -493,6 +493,45 @@ intel_de_rmw(i915, PIPEDMC_CONTROL(pipe), PIPEDMC_ENABLE, 0); } +static bool is_dmc_evt_ctl_reg(struct drm_i915_private *i915, + enum intel_dmc_id dmc_id, i915_reg_t reg) +{ + u32 offset = i915_mmio_reg_offset(reg); + u32 start = i915_mmio_reg_offset(DMC_EVT_CTL(i915, dmc_id, 0)); + u32 end = i915_mmio_reg_offset(DMC_EVT_CTL(i915, dmc_id, DMC_EVENT_HANDLER_COUNT_GEN12)); + + return offset >= start && offset < end; +} + +static bool disable_dmc_evt(struct drm_i915_private *i915, + enum intel_dmc_id dmc_id, + i915_reg_t reg, u32 data) +{ + if (!is_dmc_evt_ctl_reg(i915, dmc_id, reg)) + return false; + + /* keep all pipe DMC events disabled by default */ + if (dmc_id != DMC_FW_MAIN) + return true; + + return false; +} + +static u32 dmc_mmiodata(struct drm_i915_private *i915, + struct intel_dmc *dmc, + enum intel_dmc_id dmc_id, int i) +{ + if (disable_dmc_evt(i915, dmc_id, + dmc->dmc_info[dmc_id].mmioaddr[i], + dmc->dmc_info[dmc_id].mmiodata[i])) + return REG_FIELD_PREP(DMC_EVT_CTL_TYPE_MASK, + DMC_EVT_CTL_TYPE_EDGE_0_1) | + REG_FIELD_PREP(DMC_EVT_CTL_EVENT_ID_MASK, + DMC_EVT_CTL_EVENT_ID_FALSE); + else + return dmc->dmc_info[dmc_id].mmiodata[i]; +} + /** * intel_dmc_load_program() - write the firmware from memory to register. * @i915: i915 drm device. @@ -532,7 +571,7 @@ for_each_dmc_id(dmc_id) { for (i = 0; i < dmc->dmc_info[dmc_id].mmio_count; i++) { intel_de_write(i915, dmc->dmc_info[dmc_id].mmioaddr[i], - dmc->dmc_info[dmc_id].mmiodata[i]); + dmc_mmiodata(i915, dmc, dmc_id, i)); } } only in patch2: unchanged: --- linux-hwe-6.5-6.5.0.orig/io_uring/kbuf.h +++ linux-hwe-6.5-6.5.0/io_uring/kbuf.h @@ -51,6 +51,8 @@ int io_register_pbuf_ring(struct io_ring_ctx *ctx, void __user *arg); int io_unregister_pbuf_ring(struct io_ring_ctx *ctx, void __user *arg); +void io_kbuf_mmap_list_free(struct io_ring_ctx *ctx); + unsigned int __io_put_kbuf(struct io_kiocb *req, unsigned issue_flags); void io_kbuf_recycle_legacy(struct io_kiocb *req, unsigned issue_flags); only in patch2: unchanged: --- linux-hwe-6.5-6.5.0.orig/lib/test_ida.c +++ linux-hwe-6.5-6.5.0/lib/test_ida.c @@ -150,6 +150,45 @@ IDA_BUG_ON(ida, !ida_is_empty(ida)); } +/* + * Check various situations where we attempt to free an ID we don't own. + */ +static void ida_check_bad_free(struct ida *ida) +{ + unsigned long i; + + printk("vvv Ignore \"not allocated\" warnings\n"); + /* IDA is empty; all of these will fail */ + ida_free(ida, 0); + for (i = 0; i < 31; i++) + ida_free(ida, 1 << i); + + /* IDA contains a single value entry */ + IDA_BUG_ON(ida, ida_alloc_min(ida, 3, GFP_KERNEL) != 3); + ida_free(ida, 0); + for (i = 0; i < 31; i++) + ida_free(ida, 1 << i); + + /* IDA contains a single bitmap */ + IDA_BUG_ON(ida, ida_alloc_min(ida, 1023, GFP_KERNEL) != 1023); + ida_free(ida, 0); + for (i = 0; i < 31; i++) + ida_free(ida, 1 << i); + + /* IDA contains a tree */ + IDA_BUG_ON(ida, ida_alloc_min(ida, (1 << 20) - 1, GFP_KERNEL) != (1 << 20) - 1); + ida_free(ida, 0); + for (i = 0; i < 31; i++) + ida_free(ida, 1 << i); + printk("^^^ \"not allocated\" warnings over\n"); + + ida_free(ida, 3); + ida_free(ida, 1023); + ida_free(ida, (1 << 20) - 1); + + IDA_BUG_ON(ida, !ida_is_empty(ida)); +} + static DEFINE_IDA(ida); static int ida_checks(void) @@ -162,6 +201,7 @@ ida_check_leaf(&ida, 1024 * 64); ida_check_max(&ida); ida_check_conv(&ida); + ida_check_bad_free(&ida); printk("IDA: %u of %u tests passed\n", tests_passed, tests_run); return (tests_run != tests_passed) ? 0 : -EINVAL; only in patch2: unchanged: --- linux-hwe-6.5-6.5.0.orig/net/appletalk/ddp.c +++ linux-hwe-6.5-6.5.0/net/appletalk/ddp.c @@ -1811,15 +1811,14 @@ break; } case TIOCINQ: { - /* - * These two are safe on a single CPU system as only - * user tasks fiddle here - */ - struct sk_buff *skb = skb_peek(&sk->sk_receive_queue); + struct sk_buff *skb; long amount = 0; + spin_lock_irq(&sk->sk_receive_queue.lock); + skb = skb_peek(&sk->sk_receive_queue); if (skb) amount = skb->len - sizeof(struct ddpehdr); + spin_unlock_irq(&sk->sk_receive_queue.lock); rc = put_user(amount, (int __user *)argp); break; } only in patch2: unchanged: --- linux-hwe-6.5-6.5.0.orig/net/atm/ioctl.c +++ linux-hwe-6.5-6.5.0/net/atm/ioctl.c @@ -73,14 +73,17 @@ case SIOCINQ: { struct sk_buff *skb; + int amount; if (sock->state != SS_CONNECTED) { error = -EINVAL; goto done; } + spin_lock_irq(&sk->sk_receive_queue.lock); skb = skb_peek(&sk->sk_receive_queue); - error = put_user(skb ? skb->len : 0, - (int __user *)argp) ? -EFAULT : 0; + amount = skb ? skb->len : 0; + spin_unlock_irq(&sk->sk_receive_queue.lock); + error = put_user(amount, (int __user *)argp) ? -EFAULT : 0; goto done; } case ATM_SETSC: