ALT-BU-2025-11027-9
Branch sisyphus update bulletin.
Closed vulnerabilities
Modified: 2025-10-23
BDU:2025-12592
Уязвимость библиотеки регулярных выражений PCRE2, связанная с чтением за границами буфера в памяти, позволяющая нарушителю получить доступ к конфиденциальной информации
Modified: 2025-09-09
CVE-2025-58050
The PCRE2 library is a set of C functions that implement regular expression pattern matching. In version 10.45, a heap-buffer-overflow read vulnerability exists in the PCRE2 regular expression matching engine, specifically within the handling of the (*scs:...) (Scan SubString) verb when combined with (*ACCEPT) in src/pcre2_match.c. This vulnerability may potentially lead to information disclosure if the out-of-bounds data read during the memcmp affects the final match result in a way observable by the attacker. This issue has been resolved in version 10.46.
- https://github.com/PCRE2Project/pcre2/commit/a141712e5967d448c7ce13090ab530c8e3d82254
- https://github.com/PCRE2Project/pcre2/releases/tag/pcre2-10.46
- https://github.com/PCRE2Project/pcre2/security/advisories/GHSA-c2gv-xgf5-5cc2
- https://github.com/PCRE2Project/pcre2/security/advisories/GHSA-c2gv-xgf5-5cc2
Closed bugs
systray-x несовместимо с thunderbird
Closed bugs
Опции для улучшения безопасности для сменных носителей
Package kernel-image-6.16 updated to version 6.16.4-alt1 for branch sisyphus in task 393458.
Closed vulnerabilities
Modified: 2026-04-15
BDU:2025-12706
Уязвимость функции io_futex_wait() в модуле io_uring/futex.c интерфейса асинхронного ввода/вывода ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на конфиденциальность, целостность и доступность защищаемой информации
Modified: 2026-02-17
BDU:2025-12988
Уязвимость функции recvmsg() ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-14996
Уязвимость компонента drivers/md/dm-crypt.c ядра операционной системы Linux, позволяющая нарушителю нарушить оказать воздействие на целостность и доступность защищаемой информации
Modified: 2026-02-17
BDU:2025-15002
Уязвимость компонента net/vmw_vsock/virtio_transport.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2025-12-26
BDU:2025-15005
Уязвимость компонента media/i2c/mt9m114.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15023
Уязвимость компонента drivers/iommu/amd/init.c ядра операционной системы Linux, позволяющая нарушителю нарушить оказать воздействие на целостность и доступность защищаемой информации
Modified: 2026-04-14
BDU:2025-15028
Уязвимость компонента x86/cpu/hygon ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15191
Уязвимость компонента fs/smb/client/smb2ops.c ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на конфиденциальность, целостность и доступность защищаемой информации
Modified: 2026-04-14
BDU:2025-15192
Уязвимость драйвера comedi ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15193
Уязвимость компонента iio/light/as73211.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15194
Уязвимость компонента kernel/trace/ftrace.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15196
Уязвимость компонента fs/buffer.c ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на целостность и доступность защищаемой информации
Modified: 2026-02-16
BDU:2025-15201
Уязвимость компонента qcom/venus/core.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2025-12-26
BDU:2025-15207
Уязвимость драйвера ivsc ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15209
Уязвимость компонента media/usb/usbtv/usbtv-video.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2025-15214
Уязвимость компонента kernel/sched/ext.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15220
Уязвимость функции jbd2_log_do_checkpoint() компонента fs/jbd2/checkpoint.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15223
Уязвимость функции pci_epf_remove_cfs() компонента drivers/pci/endpoint/pci-epf-core.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15226
Уязвимость компонента drivers/soc/qcom/mdt_loader.c ядра операционной системы Linux, позволяющая нарушителю получить несанкционированный доступ к защищаемой информации
Modified: 2026-02-16
BDU:2025-15248
Уязвимость функции btrfs_copy_root() компонента btrfs ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15544
Уязвимость компонента arch/parisc/include/asm/uaccess.h ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на конфиденциальность и целостность защищаемой информации
Modified: 2026-02-16
BDU:2025-15545
Уязвимость компонента arch/parisc/kernel/syscall.S ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на конфиденциальность и целостность защищаемой информации
Modified: 2026-04-14
BDU:2025-15546
Уязвимость драйвера gve ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15687
Уязвимость компонента dwc3 ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15690
Уязвимость компонента drivers/bus ядра операционной системы Linux, позволяющая нарушителю получить доступ к конфиденциальным данным, нарушить их целостность, а также вызвать отказ в обслуживании
Modified: 2026-03-11
BDU:2025-15692
Уязвимость компонента ufs-exynos.c ядра операционной системы Linux, позволяющая нарушителю получить доступ к конфиденциальным данным, нарушить их целостность, а также вызвать отказ в обслуживании
Modified: 2026-03-11
BDU:2025-15693
Уязвимость функции destroy_args() компонента mm/debug_vm_pgtable.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15694
Уязвимость функции br_multicast_query_expired() компонента net/bridge/br_multicast.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15695
Уязвимость компонента drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15696
Уязвимость компонента net/sched ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15697
Уязвимость функции snd_utimer_create() компонента sound/core/timer.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15708
Уязвимость компонента drivers/tty/serial/8250 ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2025-15709
Уязвимость компонента netfs ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2025-15710
Уязвимость компонента drivers/crypto/caam ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15711
Уязвимость компонента iio/imu/bno055/bno055.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15712
Уязвимость драйвера rainshadow-cec ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15713
Уязвимость компонента qcom/venus/hfi_venus.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15714
Уязвимость компонента drm/amdkfd ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-03-11
BDU:2025-15715
Уязвимость компонента net/hsr/hsr_slave.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-15
BDU:2025-15716
Уязвимость компонента net/ipv6/seg6_hmac.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-15
BDU:2025-15717
Уязвимость драйвера acpi/pfr_update.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2025-15718
Уязвимость компонента mm/damon/ops-common.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-15
BDU:2025-15724
Уязвимость компонента NFS ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2025-15726
Уязвимость компонентов infiniband/sw/rxe ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15728
Уязвимость компонента s390/char/sclp.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15729
Уязвимость компонента amdgpu_dm.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15730
Уязвимость модуля smb ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15731
Уязвимость драйвера comedi ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15732
Уязвимость компонента comedi/drivers/pcl726.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15733
Уязвимость компонента trace ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2025-12-26
BDU:2025-15738
Уязвимость драйвера drm/nouveau/nvif ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15739
Уязвимость функции qla4xxx_get_ep_fwdb() драйвера qla4xxx ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15740
Уязвимость компонента drm/amd/display ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15741
Уязвимость драйвера ppp ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15742
Уязвимость компонента arch/s390/boot/vmem.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15743
Уязвимость компонента netfilter ядра операционной системы Linux, позволяющая нарушителю получить доступ к конфиденциальным данным, нарушить их целостность, а также вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15767
Уязвимость ядра операционной системы Linux, связанная с чтением за границами буфера памяти, позволяющая нарушителю нарушить целостность данных, а также вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15830
Уязвимость компонента net ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2026-01372
Уязвимость функции flush_cache_vmap() модуля arch/parisc/kernel/cache.c поддержки архитектуры PARISC ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-03-12
BDU:2026-02726
Уязвимость функции ax88772_init_mdio() в модуле drivers/net/usb/asix_devices.c драйвера сетевых адаптеров USB ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2026-02753
Уязвимость компонента platform/x86/amd/hsmp ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2026-02828
Уязвимость функции rtl9300_i2c_smbus_xfer() модуля drivers/i2c/busses/i2c-rtl9300.c драйвера аппаратной шины I2C ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2026-02851
Уязвимость функции smc_listen_work() модуля net/smc/af_smc.c реализации семейства протоколов сокетов SMC ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2026-02852
Уязвимость функции ufs_qcom_config_esi() модуля drivers/ufs/host/ufs-qcom.c поддержки хост-контроллеров UFS (Universal Flash Storage) ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2026-02857
Уязвимость функции qdisc_dequeue_internal() модуля include/net/sch_generic.h ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на конфиденциальность, целостность и доступность защищаемой информации
BDU:2026-02858
Уязвимость функции __do_sys_open_tree_attr() модуля fs/namespace.c файловой системы ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на конфиденциальность, целостность и доступность защищаемой информации
BDU:2026-02859
Уязвимость функции adf_dev_shutdown() модуля drivers/crypto/intel/qat/qat_common/adf_init.c ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на конфиденциальность, целостность и доступность защищаемой информации
BDU:2026-03063
Уязвимость функции xe_vm_bind_ioctl() модуля drivers/gpu/drm/xe/xe_vm.c драйвера инфраструктуры прямого рендеринга (DRI) ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на конфиденциальность, целостность и доступность защищаемой информации
BDU:2026-03088
Уязвимость функции capabilities_show() модуля drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c драйвера инфраструктуры прямого рендеринга (DRI) видеокарт AMD ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2026-03089
Уязвимость функции iris_hfi_gen2_handle_system_error() модуля drivers/media/platform/qcom/iris/iris_hfi_gen2_response.c драйвера мультимедийных устройств ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2026-03090
Уязвимость функций smb_send_parent_lease_break_noti() и smb_lazy_parent_lease_break_close() модуля fs/smb/server/oplock.c поддержки сервера SMB ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2026-03096
Уязвимость функции sca3300_trigger_handler() модуля drivers/iio/accel/sca3300.c драйвера различных типов встроенных датчиков ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2026-03097
Уязвимость функции tas2563_save_calibration() модуля sound/hda/codecs/side-codecs/tas2781_hda_i2c.c звуковой подсистемы ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2026-03098
Уязвимость функции riscv_iommu_iova_to_phys() модуля drivers/iommu/riscv/iommu.c драйвера IOMMU ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2026-03099
Уязвимость функции send_ipi_data() модуля arch/loongarch/kvm/intc/ipi.c поддержки архитектуры LoongArch ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2026-03100
Уязвимость функции dc_destruct() модуля drivers/gpu/drm/amd/display/dc/core/dc.c драйвера инфраструктуры прямого рендеринга (DRI) видеокарт AMD ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2026-06108
Уязвимость макроопределений PCIE_LNKCAP_SLS2SPEED и PCIE_LNKCTL2_TLS2SPEED в модуле drivers/pci/pci.h ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-01-08
CVE-2025-38676
In the Linux kernel, the following vulnerability has been resolved: iommu/amd: Avoid stack buffer overflow from kernel cmdline While the kernel command line is considered trusted in most environments, avoid writing 1 byte past the end of "acpiid" if the "str" argument is maximum length.
- https://git.kernel.org/stable/c/0ad8509b468fa1058f4f400a1829f29e4ccc4de8
- https://git.kernel.org/stable/c/4bdb0f78bddbfa77d3ab458a21dd9cec495d317a
- https://git.kernel.org/stable/c/736db11c86f03e717fc4bf771d05efdf10d23acb
- https://git.kernel.org/stable/c/8503d0fcb1086a7cfe26df67ca4bd9bd9e99bdec
- https://git.kernel.org/stable/c/8f80c633cba144f721d38d9380f23d23ab7db10e
- https://git.kernel.org/stable/c/9ff52d3af0ef286535749e14e3fe9eceb39a8349
- https://git.kernel.org/stable/c/a732502bf3bbe859613b6d7b2b0313b11f0474ac
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-38677
In the Linux kernel, the following vulnerability has been resolved:
f2fs: fix to avoid out-of-boundary access in dnode page
As Jiaming Zhang reported:
- https://git.kernel.org/stable/c/6b7784ea07e6aa044f74b39d6b5af5e28746fc81
- https://git.kernel.org/stable/c/77de19b6867f2740cdcb6c9c7e50d522b47847a4
- https://git.kernel.org/stable/c/888aa660144bcb6ec07839da756ee46bfcf7fc53
- https://git.kernel.org/stable/c/901f62efd6e855f93d8b1175540f29f4dc45ba55
- https://git.kernel.org/stable/c/92ef491b506a0f4dd971a3a76f86f2d8f5370180
- https://git.kernel.org/stable/c/a650654365c57407413e9b1f6ff4d539bf2e99ca
- https://git.kernel.org/stable/c/ee4d13f5407cbdf1216cc258f45492075713889a
- https://git.kernel.org/stable/c/f1d5093d9fe9f3c74c123741c88666cc853b79c5
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-38731
In the Linux kernel, the following vulnerability has been resolved:
drm/xe: Fix vm_bind_ioctl double free bug
If the argument check during an array bind fails, the bind_ops are freed
twice as seen below. Fix this by setting bind_ops to NULL after freeing.
==================================================================
BUG: KASAN: double-free in xe_vm_bind_ioctl+0x1b2/0x21f0 [xe]
Free of addr ffff88813bb9b800 by task xe_vm/14198
CPU: 5 UID: 0 PID: 14198 Comm: xe_vm Not tainted 6.16.0-xe-eudebug-cmanszew+ #520 PREEMPT(full)
Hardware name: Intel Corporation Alder Lake Client Platform/AlderLake-P DDR5 RVP, BIOS ADLPFWI1.R00.2411.A02.2110081023 10/08/2021
Call Trace:
Modified: 2026-01-09
CVE-2025-38732
In the Linux kernel, the following vulnerability has been resolved: netfilter: nf_reject: don't leak dst refcount for loopback packets recent patches to add a WARN() when replacing skb dst entry found an old bug: WARNING: include/linux/skbuff.h:1165 skb_dst_check_unset include/linux/skbuff.h:1164 [inline] WARNING: include/linux/skbuff.h:1165 skb_dst_set include/linux/skbuff.h:1210 [inline] WARNING: include/linux/skbuff.h:1165 nf_reject_fill_skb_dst+0x2a4/0x330 net/ipv4/netfilter/nf_reject_ipv4.c:234 [..] Call Trace: nf_send_unreach+0x17b/0x6e0 net/ipv4/netfilter/nf_reject_ipv4.c:325 nft_reject_inet_eval+0x4bc/0x690 net/netfilter/nft_reject_inet.c:27 expr_call_ops_eval net/netfilter/nf_tables_core.c:237 [inline] .. This is because blamed commit forgot about loopback packets. Such packets already have a dst_entry attached, even at PRE_ROUTING stage. Instead of checking hook just check if the skb already has a route attached to it.
- https://git.kernel.org/stable/c/51e8531371f90bee742c63775c9a568e5d6bf3c5
- https://git.kernel.org/stable/c/7b8b503c06274ef3c6c1a107743f1ec0d0a53ef8
- https://git.kernel.org/stable/c/82ef97abf22790182f7d433c74960dfd61b99c33
- https://git.kernel.org/stable/c/91a79b792204313153e1bdbbe5acbfc28903b3a5
- https://git.kernel.org/stable/c/a0a3ace2a57887dac1e7c9a724846040c3e31868
- https://git.kernel.org/stable/c/b32e1590a8d22cf7d7f965e46d5576051acf8e42
- https://git.kernel.org/stable/c/b7a885ba25960c91db237c3f83b4285156789bce
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-38733
In the Linux kernel, the following vulnerability has been resolved: s390/mm: Do not map lowcore with identity mapping Since the identity mapping is pinned to address zero the lowcore is always also mapped to address zero, this happens regardless of the relocate_lowcore command line option. If the option is specified the lowcore is mapped twice, instead of only once. This means that NULL pointer accesses will succeed instead of causing an exception (low address protection still applies, but covers only parts). To fix this never map the first two pages of physical memory with the identity mapping.
Modified: 2025-11-25
CVE-2025-38734
In the Linux kernel, the following vulnerability has been resolved:
net/smc: fix UAF on smcsk after smc_listen_out()
BPF CI testing report a UAF issue:
[ 16.446633] BUG: kernel NULL pointer dereference, address: 000000000000003 0
[ 16.447134] #PF: supervisor read access in kernel mod e
[ 16.447516] #PF: error_code(0x0000) - not-present pag e
[ 16.447878] PGD 0 P4D 0
[ 16.448063] Oops: Oops: 0000 [#1] PREEMPT SMP NOPT I
[ 16.448409] CPU: 0 UID: 0 PID: 9 Comm: kworker/0:1 Tainted: G OE 6.13.0-rc3-g89e8a75fda73-dirty #4 2
[ 16.449124] Tainted: [O]=OOT_MODULE, [E]=UNSIGNED_MODUL E
[ 16.449502] Hardware name: QEMU Ubuntu 24.04 PC (i440FX + PIIX, 1996), BIOS 1.16.3-debian-1.16.3-2 04/01/201 4
[ 16.450201] Workqueue: smc_hs_wq smc_listen_wor k
[ 16.450531] RIP: 0010:smc_listen_work+0xc02/0x159 0
[ 16.452158] RSP: 0018:ffffb5ab40053d98 EFLAGS: 0001024 6
[ 16.452526] RAX: 0000000000000001 RBX: 0000000000000002 RCX: 000000000000030 0
[ 16.452994] RDX: 0000000000000280 RSI: 00003513840053f0 RDI: 000000000000000 0
[ 16.453492] RBP: ffffa097808e3800 R08: ffffa09782dba1e0 R09: 000000000000000 5
[ 16.453987] R10: 0000000000000000 R11: 0000000000000000 R12: ffffa0978274640 0
[ 16.454497] R13: 0000000000000000 R14: 0000000000000000 R15: ffffa09782d4092 0
[ 16.454996] FS: 0000000000000000(0000) GS:ffffa097bbc00000(0000) knlGS:000000000000000 0
[ 16.455557] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003 3
[ 16.455961] CR2: 0000000000000030 CR3: 0000000102788004 CR4: 0000000000770ef 0
[ 16.456459] PKRU: 5555555 4
[ 16.456654] Call Trace :
[ 16.456832]
Modified: 2026-01-08
CVE-2025-38735
In the Linux kernel, the following vulnerability has been resolved: gve: prevent ethtool ops after shutdown A crash can occur if an ethtool operation is invoked after shutdown() is called. shutdown() is invoked during system shutdown to stop DMA operations without performing expensive deallocations. It is discouraged to unregister the netdev in this path, so the device may still be visible to userspace and kernel helpers. In gve, shutdown() tears down most internal data structures. If an ethtool operation is dispatched after shutdown(), it will dereference freed or NULL pointers, leading to a kernel panic. While graceful shutdown normally quiesces userspace before invoking the reboot syscall, forced shutdowns (as observed on GCP VMs) can still trigger this path. Fix by calling netif_device_detach() in shutdown(). This marks the device as detached so the ethtool ioctl handler will skip dispatching operations to the driver.
- https://git.kernel.org/stable/c/48a4e89d50e8ea52e800bc7865970b92fcf4647c
- https://git.kernel.org/stable/c/75a9a46d67f46d608205888f9b34e315c1786345
- https://git.kernel.org/stable/c/9d8a41e9a4ff83ff666de811e7f012167cdc00e9
- https://git.kernel.org/stable/c/a7efffeecb881b4649fdc30de020ef910f35d646
- https://git.kernel.org/stable/c/ba51d73408edf815cbaeab148625576c2dd90192
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-38736
In the Linux kernel, the following vulnerability has been resolved: net: usb: asix_devices: Fix PHY address mask in MDIO bus initialization Syzbot reported shift-out-of-bounds exception on MDIO bus initialization. The PHY address should be masked to 5 bits (0-31). Without this mask, invalid PHY addresses could be used, potentially causing issues with MDIO bus operations. Fix this by masking the PHY address with 0x1f (31 decimal) to ensure it stays within the valid range.
- https://git.kernel.org/stable/c/22042ffedd8c2c6db08ccdd6d4273068eddd3c5c
- https://git.kernel.org/stable/c/24ef2f53c07f273bad99173e27ee88d44d135b1c
- https://git.kernel.org/stable/c/523eab02fce458fa6d3c51de5bb055800986953e
- https://git.kernel.org/stable/c/748da80831221ae24b4bc8d7ffb22acd5712a341
- https://git.kernel.org/stable/c/8f141f2a4f2ef8ca865d5921574c3d6535e00a49
- https://git.kernel.org/stable/c/fcb4ce9f729c1d08e53abf9d449340e24c3edee6
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-38737
In the Linux kernel, the following vulnerability has been resolved: cifs: Fix oops due to uninitialised variable Fix smb3_init_transform_rq() to initialise buffer to NULL before calling netfs_alloc_folioq_buffer() as netfs assumes it can append to the buffer it is given. Setting it to NULL means it should start a fresh buffer, but the value is currently undefined.
Modified: 2026-01-07
CVE-2025-39673
In the Linux kernel, the following vulnerability has been resolved: ppp: fix race conditions in ppp_fill_forward_path ppp_fill_forward_path() has two race conditions: 1. The ppp->channels list can change between list_empty() and list_first_entry(), as ppp_lock() is not held. If the only channel is deleted in ppp_disconnect_channel(), list_first_entry() may access an empty head or a freed entry, and trigger a panic. 2. pch->chan can be NULL. When ppp_unregister_channel() is called, pch->chan is set to NULL before pch is removed from ppp->channels. Fix these by using a lockless RCU approach: - Use list_first_or_null_rcu() to safely test and access the first list entry. - Convert list modifications on ppp->channels to their RCU variants and add synchronize_net() after removal. - Check for a NULL pch->chan before dereferencing it.
- https://git.kernel.org/stable/c/0417adf367a0af11adf7ace849af4638cfb573f7
- https://git.kernel.org/stable/c/0f1630be6fcca3f0c63e4b242ad202e5cde28a40
- https://git.kernel.org/stable/c/94731cc551e29511d85aa8dec61a6c071b1f2430
- https://git.kernel.org/stable/c/9a1969fbffc1f1900d92d7594b1b7d8d72ef3dc7
- https://git.kernel.org/stable/c/ca18d751bcc9faf5b7e82e9fae1223d103928181
- https://git.kernel.org/stable/c/f97f6475fdcb3c28ff3c55cc4b7bde632119ec08
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39674
In the Linux kernel, the following vulnerability has been resolved: scsi: ufs: ufs-qcom: Fix ESI null pointer dereference ESI/MSI is a performance optimization feature that provides dedicated interrupts per MCQ hardware queue. This is optional feature and UFS MCQ should work with and without ESI feature. Commit e46a28cea29a ("scsi: ufs: qcom: Remove the MSI descriptor abuse") brings a regression in ESI (Enhanced System Interrupt) configuration that causes a null pointer dereference when Platform MSI allocation fails. The issue occurs in when platform_device_msi_init_and_alloc_irqs() in ufs_qcom_config_esi() fails (returns -EINVAL) but the current code uses __free() macro for automatic cleanup free MSI resources that were never successfully allocated. Unable to handle kernel NULL pointer dereference at virtual address 0000000000000008 Call trace: mutex_lock+0xc/0x54 (P) platform_device_msi_free_irqs_all+0x1c/0x40 ufs_qcom_config_esi+0x1d0/0x220 [ufs_qcom] ufshcd_config_mcq+0x28/0x104 ufshcd_init+0xa3c/0xf40 ufshcd_pltfrm_init+0x504/0x7d4 ufs_qcom_probe+0x20/0x58 [ufs_qcom] Fix by restructuring the ESI configuration to try MSI allocation first, before any other resource allocation and instead use explicit cleanup instead of __free() macro to avoid cleanup of unallocated resources. Tested on SM8750 platform with MCQ enabled, both with and without Platform ESI support.
Modified: 2026-01-07
CVE-2025-39675
In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: Add null pointer check in mod_hdcp_hdcp1_create_session() The function mod_hdcp_hdcp1_create_session() calls the function get_first_active_display(), but does not check its return value. The return value is a null pointer if the display list is empty. This will lead to a null pointer dereference. Add a null pointer check for get_first_active_display() and return MOD_HDCP_STATUS_DISPLAY_NOT_FOUND if the function return null. This is similar to the commit c3e9826a2202 ("drm/amd/display: Add null pointer check for get_first_active_display()"). (cherry picked from commit 5e43eb3cd731649c4f8b9134f857be62a416c893)
- https://git.kernel.org/stable/c/2af45aadb7b5d3852c76e2d1e985289ada6f48bf
- https://git.kernel.org/stable/c/2ee86b764c54e0d6a5464fb023b630fdf20869cd
- https://git.kernel.org/stable/c/7a2ca2ea64b1b63c8baa94a8f5deb70b2248d119
- https://git.kernel.org/stable/c/857b8387a9777e42b36e0400be99b54c251eaf9a
- https://git.kernel.org/stable/c/97fc94c5fd3c6ac5a13e457d38ee247737b8c4bd
- https://git.kernel.org/stable/c/ee0373b20bb67b1f00a1b25ccd24c8ac996b6446
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39676
In the Linux kernel, the following vulnerability has been resolved: scsi: qla4xxx: Prevent a potential error pointer dereference The qla4xxx_get_ep_fwdb() function is supposed to return NULL on error, but qla4xxx_ep_connect() returns error pointers. Propagating the error pointers will lead to an Oops in the caller, so change the error pointers to NULL.
- https://git.kernel.org/stable/c/325bf7d57c4e2a341e381c5805e454fb69dd78c3
- https://git.kernel.org/stable/c/46288d12d1c30d08fbeffd05abc079f57a43a2d4
- https://git.kernel.org/stable/c/9dcf111dd3e7ed5fce82bb108e3a3fc001c07225
- https://git.kernel.org/stable/c/ad8a9d38d30c691a77c456e72b78f7932d4f234d
- https://git.kernel.org/stable/c/d0225f41ee70611ca88ccb22c8542ecdfa7faea8
- https://git.kernel.org/stable/c/f1424c830d6ce840341aac33fe99c8ac45447ac1
- https://git.kernel.org/stable/c/f4bc3cdfe95115191e24592bbfc15f1d4a705a75
- https://git.kernel.org/stable/c/f5ad0819f902b4b33591791b92a0350fb3692a6b
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39677
In the Linux kernel, the following vulnerability has been resolved: net/sched: Fix backlog accounting in qdisc_dequeue_internal This issue applies for the following qdiscs: hhf, fq, fq_codel, and fq_pie, and occurs in their change handlers when adjusting to the new limit. The problem is the following in the values passed to the subsequent qdisc_tree_reduce_backlog call given a tbf parent: When the tbf parent runs out of tokens, skbs of these qdiscs will be placed in gso_skb. Their peek handlers are qdisc_peek_dequeued, which accounts for both qlen and backlog. However, in the case of qdisc_dequeue_internal, ONLY qlen is accounted for when pulling from gso_skb. This means that these qdiscs are missing a qdisc_qstats_backlog_dec when dropping packets to satisfy the new limit in their change handlers. One can observe this issue with the following (with tc patched to support a limit of 0): export TARGET=fq tc qdisc del dev lo root tc qdisc add dev lo root handle 1: tbf rate 8bit burst 100b latency 1ms tc qdisc replace dev lo handle 3: parent 1:1 $TARGET limit 1000 echo ''; echo 'add child'; tc -s -d qdisc show dev lo ping -I lo -f -c2 -s32 -W0.001 127.0.0.1 2>&1 >/dev/null echo ''; echo 'after ping'; tc -s -d qdisc show dev lo tc qdisc change dev lo handle 3: parent 1:1 $TARGET limit 0 echo ''; echo 'after limit drop'; tc -s -d qdisc show dev lo tc qdisc replace dev lo handle 2: parent 1:1 sfq echo ''; echo 'post graft'; tc -s -d qdisc show dev lo The second to last show command shows 0 packets but a positive number (74) of backlog bytes. The problem becomes clearer in the last show command, where qdisc_purge_queue triggers qdisc_tree_reduce_backlog with the positive backlog and causes an underflow in the tbf parent's backlog (4096 Mb instead of 0). To fix this issue, the codepath for all clients of qdisc_dequeue_internal has been simplified: codel, pie, hhf, fq, fq_pie, and fq_codel. qdisc_dequeue_internal handles the backlog adjustments for all cases that do not directly use the dequeue handler. The old fq_codel_change limit adjustment loop accumulated the arguments to the subsequent qdisc_tree_reduce_backlog call through the cstats field. However, this is confusing and error prone as fq_codel_dequeue could also potentially mutate this field (which qdisc_dequeue_internal calls in the non gso_skb case), so we have unified the code here with other qdiscs.
Modified: 2025-11-25
CVE-2025-39678
In the Linux kernel, the following vulnerability has been resolved: platform/x86/amd/hsmp: Ensure sock->metric_tbl_addr is non-NULL If metric table address is not allocated, accessing metrics_bin will result in a NULL pointer dereference, so add a check.
Modified: 2025-11-25
CVE-2025-39679
In the Linux kernel, the following vulnerability has been resolved: drm/nouveau/nvif: Fix potential memory leak in nvif_vmm_ctor(). When the nvif_vmm_type is invalid, we will return error directly without freeing the args in nvif_vmm_ctor(), which leading a memory leak. Fix it by setting the ret -EINVAL and goto done.
Modified: 2025-11-25
CVE-2025-39680
In the Linux kernel, the following vulnerability has been resolved: i2c: rtl9300: Fix out-of-bounds bug in rtl9300_i2c_smbus_xfer The data->block[0] variable comes from user. Without proper check, the variable may be very large to cause an out-of-bounds bug. Fix this bug by checking the value of data->block[0] first. 1. commit 39244cc75482 ("i2c: ismt: Fix an out-of-bounds bug in ismt_access()") 2. commit 92fbb6d1296f ("i2c: xgene-slimpro: Fix out-of-bounds bug in xgene_slimpro_i2c_xfer()")
Modified: 2026-01-08
CVE-2025-39681
In the Linux kernel, the following vulnerability has been resolved: x86/cpu/hygon: Add missing resctrl_cpu_detect() in bsp_init helper Since 923f3a2b48bd ("x86/resctrl: Query LLC monitoring properties once during boot") resctrl_cpu_detect() has been moved from common CPU initialization code to the vendor-specific BSP init helper, while Hygon didn't put that call in their code. This triggers a division by zero fault during early booting stage on our machines with X86_FEATURE_CQM* supported, where get_rdt_mon_resources() tries to calculate mon_l3_config with uninitialized boot_cpu_data.x86_cache_occ_scale. Add the missing resctrl_cpu_detect() in the Hygon BSP init helper. [ bp: Massage commit message. ]
- https://git.kernel.org/stable/c/62f12cde10118253348a7540e85606869bd69432
- https://git.kernel.org/stable/c/7207923d8453ebfb35667c1736169f2dd796772e
- https://git.kernel.org/stable/c/873f32201df8876bdb2563e3187e79149427cab4
- https://git.kernel.org/stable/c/a9e5924daa954c9f585c1ca00358afe71d6781c4
- https://git.kernel.org/stable/c/d23264c257a70dbe021b43b3bc2ee16134cd2c69
- https://git.kernel.org/stable/c/d8df126349dad855cdfedd6bbf315bad2e901c2f
- https://git.kernel.org/stable/c/fb81222c1559f89bfe3aa1010f6d112531d55353
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-03-17
CVE-2025-39682
In the Linux kernel, the following vulnerability has been resolved: tls: fix handling of zero-length records on the rx_list Each recvmsg() call must process either - only contiguous DATA records (any number of them) - one non-DATA record If the next record has different type than what has already been processed we break out of the main processing loop. If the record has already been decrypted (which may be the case for TLS 1.3 where we don't know type until decryption) we queue the pending record to the rx_list. Next recvmsg() will pick it up from there. Queuing the skb to rx_list after zero-copy decrypt is not possible, since in that case we decrypted directly to the user space buffer, and we don't have an skb to queue (darg.skb points to the ciphertext skb for access to metadata like length). Only data records are allowed zero-copy, and we break the processing loop after each non-data record. So we should never zero-copy and then find out that the record type has changed. The corner case we missed is when the initial record comes from rx_list, and it's zero length.
- https://git.kernel.org/stable/c/2902c3ebcca52ca845c03182000e8d71d3a5196f
- https://git.kernel.org/stable/c/29c0ce3c8cdb6dc5d61139c937f34cb888a6f42e
- https://git.kernel.org/stable/c/3439c15ae91a517cf3c650ea15a8987699416ad9
- https://git.kernel.org/stable/c/62708b9452f8eb77513115b17c4f8d1a22ebf843
- https://git.kernel.org/stable/c/c09dd3773b5950e9cfb6c9b9a5f6e36d06c62677
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39683
In the Linux kernel, the following vulnerability has been resolved: tracing: Limit access to parser->buffer when trace_get_user failed When the length of the string written to set_ftrace_filter exceeds FTRACE_BUFF_MAX, the following KASAN alarm will be triggered: BUG: KASAN: slab-out-of-bounds in strsep+0x18c/0x1b0 Read of size 1 at addr ffff0000d00bd5ba by task ash/165 CPU: 1 UID: 0 PID: 165 Comm: ash Not tainted 6.16.0-g6bcdbd62bd56-dirty Hardware name: linux,dummy-virt (DT) Call trace: show_stack+0x34/0x50 (C) dump_stack_lvl+0xa0/0x158 print_address_description.constprop.0+0x88/0x398 print_report+0xb0/0x280 kasan_report+0xa4/0xf0 __asan_report_load1_noabort+0x20/0x30 strsep+0x18c/0x1b0 ftrace_process_regex.isra.0+0x100/0x2d8 ftrace_regex_release+0x484/0x618 __fput+0x364/0xa58 ____fput+0x28/0x40 task_work_run+0x154/0x278 do_notify_resume+0x1f0/0x220 el0_svc+0xec/0xf0 el0t_64_sync_handler+0xa0/0xe8 el0t_64_sync+0x1ac/0x1b0 The reason is that trace_get_user will fail when processing a string longer than FTRACE_BUFF_MAX, but not set the end of parser->buffer to 0. Then an OOB access will be triggered in ftrace_regex_release-> ftrace_process_regex->strsep->strpbrk. We can solve this problem by limiting access to parser->buffer when trace_get_user failed.
- https://git.kernel.org/stable/c/3079517a5ba80901fe828a06998da64b9b8749be
- https://git.kernel.org/stable/c/418b448e1d7470da9d4d4797f71782595ee69c49
- https://git.kernel.org/stable/c/41b838420457802f21918df66764b6fbf829d330
- https://git.kernel.org/stable/c/58ff8064cb4c7eddac4da1a59da039ead586950a
- https://git.kernel.org/stable/c/6a909ea83f226803ea0e718f6e88613df9234d58
- https://git.kernel.org/stable/c/b842ef39c2ad6156c13afdec25ecc6792a9b67b9
- https://git.kernel.org/stable/c/d0c68045b8b0f3737ed7bd6b8c83b7887014adee
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39684
In the Linux kernel, the following vulnerability has been resolved: comedi: Fix use of uninitialized memory in do_insn_ioctl() and do_insnlist_ioctl() syzbot reports a KMSAN kernel-infoleak in `do_insn_ioctl()`. A kernel buffer is allocated to hold `insn->n` samples (each of which is an `unsigned int`). For some instruction types, `insn->n` samples are copied back to user-space, unless an error code is being returned. The problem is that not all the instruction handlers that need to return data to userspace fill in the whole `insn->n` samples, so that there is an information leak. There is a similar syzbot report for `do_insnlist_ioctl()`, although it does not have a reproducer for it at the time of writing. One culprit is `insn_rw_emulate_bits()` which is used as the handler for `INSN_READ` or `INSN_WRITE` instructions for subdevices that do not have a specific handler for that instruction, but do have an `INSN_BITS` handler. For `INSN_READ` it only fills in at most 1 sample, so if `insn->n` is greater than 1, the remaining `insn->n - 1` samples copied to userspace will be uninitialized kernel data. Another culprit is `vm80xx_ai_insn_read()` in the "vm80xx" driver. It never returns an error, even if it fails to fill the buffer. Fix it in `do_insn_ioctl()` and `do_insnlist_ioctl()` by making sure that uninitialized parts of the allocated buffer are zeroed before handling each instruction. Thanks to Arnaud Lecomte for their fix to `do_insn_ioctl()`. That fix replaced the call to `kmalloc_array()` with `kcalloc()`, but it is not always necessary to clear the whole buffer.
- https://git.kernel.org/stable/c/3cd212e895ca2d58963fdc6422502b10dd3966bb
- https://git.kernel.org/stable/c/868a1b68dcd9f2805bb86aa64862402f785d8c4a
- https://git.kernel.org/stable/c/aecf0d557ddd95ce68193a5ee1dc4c87415ff08a
- https://git.kernel.org/stable/c/d84f6e77ebe3359394df32ecd97e0d76a25283dc
- https://git.kernel.org/stable/c/f3b0c9ec54736f3b8118f93a473d22e11ee65743
- https://git.kernel.org/stable/c/ff4a7c18799c7fe999fa56c5cf276e13866b8c1a
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39685
In the Linux kernel, the following vulnerability has been resolved: comedi: pcl726: Prevent invalid irq number The reproducer passed in an irq number(0x80008000) that was too large, which triggered the oob. Added an interrupt number check to prevent users from passing in an irq number that was too large. If `it->options[1]` is 31, then `1 << it->options[1]` is still invalid because it shifts a 1-bit into the sign bit (which is UB in C). Possible solutions include reducing the upper bound on the `it->options[1]` value to 30 or lower, or using `1U << it->options[1]`. The old code would just not attempt to request the IRQ if the `options[1]` value were invalid. And it would still configure the device without interrupts even if the call to `request_irq` returned an error. So it would be better to combine this test with the test below.
- https://git.kernel.org/stable/c/0eb4ed2aa261dee228f1668dbfa6d87353e8162d
- https://git.kernel.org/stable/c/5a33d07c94ba91306093e823112a7aa9727549f6
- https://git.kernel.org/stable/c/96cb948408b3adb69df7e451ba7da9d21f814d00
- https://git.kernel.org/stable/c/a3cfcd0c78c80ca7cd80372dc28f77d01be57bf6
- https://git.kernel.org/stable/c/bab220b0bb5af652007e278e8e8357f952b0e1ea
- https://git.kernel.org/stable/c/d8992c9a01f81128f36acb7c5755530e21fcd059
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39686
In the Linux kernel, the following vulnerability has been resolved: comedi: Make insn_rw_emulate_bits() do insn->n samples The `insn_rw_emulate_bits()` function is used as a default handler for `INSN_READ` instructions for subdevices that have a handler for `INSN_BITS` but not for `INSN_READ`. Similarly, it is used as a default handler for `INSN_WRITE` instructions for subdevices that have a handler for `INSN_BITS` but not for `INSN_WRITE`. It works by emulating the `INSN_READ` or `INSN_WRITE` instruction handling with a constructed `INSN_BITS` instruction. However, `INSN_READ` and `INSN_WRITE` instructions are supposed to be able read or write multiple samples, indicated by the `insn->n` value, but `insn_rw_emulate_bits()` currently only handles a single sample. For `INSN_READ`, the comedi core will copy `insn->n` samples back to user-space. (That triggered KASAN kernel-infoleak errors when `insn->n` was greater than 1, but that is being fixed more generally elsewhere in the comedi core.) Make `insn_rw_emulate_bits()` either handle `insn->n` samples, or return an error, to conform to the general expectation for `INSN_READ` and `INSN_WRITE` handlers.
- https://git.kernel.org/stable/c/7afba9221f70d4cbce0f417c558879cba0eb5e66
- https://git.kernel.org/stable/c/842f307a1d115b24f2bcb2415c4e344f11f55930
- https://git.kernel.org/stable/c/92352ed2f9ac422181e381c2430c2d0dfb46faa0
- https://git.kernel.org/stable/c/ab77e85bd3bc006ef40738f26f446a660813da44
- https://git.kernel.org/stable/c/ae8bc1f07bcb31b8636420e03d1f9c3df6219a2b
- https://git.kernel.org/stable/c/dc0a2f142d655700db43de90cb6abf141b73d908
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-03-17
CVE-2025-39687
In the Linux kernel, the following vulnerability has been resolved: iio: light: as73211: Ensure buffer holes are zeroed Given that the buffer is copied to a kfifo that ultimately user space can read, ensure we zero it.
- https://git.kernel.org/stable/c/433b99e922943efdfd62b9a8e3ad1604838181f2
- https://git.kernel.org/stable/c/83f14c4ca1ad78fcfb3e0de07d6d8a0c59550fc2
- https://git.kernel.org/stable/c/8acd9a0eaa8c9a28e385c0a6a56bb821cb549771
- https://git.kernel.org/stable/c/99b508340d0d1b9de0856c48c77898b14c0df7cf
- https://git.kernel.org/stable/c/cce55ca4e7a221d5eb2c0b757a868eacd6344e4a
- https://git.kernel.org/stable/c/d8c5d87a431596e0e02bd7fe3bff952b002a03bb
- https://git.kernel.org/stable/c/fd441fd972067f80861a0b66605c0febb0d038dd
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39689
In the Linux kernel, the following vulnerability has been resolved: ftrace: Also allocate and copy hash for reading of filter files Currently the reader of set_ftrace_filter and set_ftrace_notrace just adds the pointer to the global tracer hash to its iterator. Unlike the writer that allocates a copy of the hash, the reader keeps the pointer to the filter hashes. This is problematic because this pointer is static across function calls that release the locks that can update the global tracer hashes. This can cause UAF and similar bugs. Allocate and copy the hash for reading the filter files like it is done for the writers. This not only fixes UAF bugs, but also makes the code a bit simpler as it doesn't have to differentiate when to free the iterator's hash between writers and readers.
- https://git.kernel.org/stable/c/12064e1880fc9202be75ff668205b1703d92f74f
- https://git.kernel.org/stable/c/3b114a3282ab1a12cb4618a8f45db5d7185e784a
- https://git.kernel.org/stable/c/64db338140d2bad99a0a8c6a118dd60b3e1fb8cb
- https://git.kernel.org/stable/c/a40c69f4f1ed96acbcd62e9b5ff3a596f0a91309
- https://git.kernel.org/stable/c/bfb336cf97df7b37b2b2edec0f69773e06d11955
- https://git.kernel.org/stable/c/c4cd93811e038d19f961985735ef7bb128078dfb
- https://git.kernel.org/stable/c/c591ba1acd081d4980713e47869dd1cc3d963d19
- https://git.kernel.org/stable/c/e0b6b223167e1edde5c82edf38e393c06eda1f13
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39690
In the Linux kernel, the following vulnerability has been resolved: iio: accel: sca3300: fix uninitialized iio scan data Fix potential leak of uninitialized stack data to userspace by ensuring that the `channels` array is zeroed before use.
Modified: 2026-01-08
CVE-2025-39691
In the Linux kernel, the following vulnerability has been resolved:
fs/buffer: fix use-after-free when call bh_read() helper
There's issue as follows:
BUG: KASAN: stack-out-of-bounds in end_buffer_read_sync+0xe3/0x110
Read of size 8 at addr ffffc9000168f7f8 by task swapper/3/0
CPU: 3 UID: 0 PID: 0 Comm: swapper/3 Not tainted 6.16.0-862.14.0.6.x86_64
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996)
Call Trace:
- https://git.kernel.org/stable/c/03b40bf5d0389ca23ae6857ee25789f0e0b47ce8
- https://git.kernel.org/stable/c/042cf48ecf67f72c8b3846c7fac678f472712ff3
- https://git.kernel.org/stable/c/3169edb8945c295cf89120fc6b2c35cfe3ad4c9e
- https://git.kernel.org/stable/c/70a09115da586bf662c3bae9c0c4a1b99251fad9
- https://git.kernel.org/stable/c/7375f22495e7cd1c5b3b5af9dcc4f6dffe34ce49
- https://git.kernel.org/stable/c/90b5193edb323fefbee0e4e5bc39ed89dcc37719
- https://git.kernel.org/stable/c/c58c6b532b7b69537cfd9ef701c7e37cdcf79dc4
- https://git.kernel.org/stable/c/c5aa6ba1127307ab5dc3773eaf40d73a3423841f
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39692
In the Linux kernel, the following vulnerability has been resolved: smb: server: split ksmbd_rdma_stop_listening() out of ksmbd_rdma_destroy() We can't call destroy_workqueue(smb_direct_wq); before stop_sessions()! Otherwise already existing connections try to use smb_direct_wq as a NULL pointer.
- https://git.kernel.org/stable/c/003e6a3150299f681f34cb189aa068018cef6a45
- https://git.kernel.org/stable/c/212eb86f75b4d7b82f3d94aed95ba61103bccb93
- https://git.kernel.org/stable/c/524e90e58a267dad11e23351d9e4b1f941490976
- https://git.kernel.org/stable/c/bac7b996d42e458a94578f4227795a0d4deef6fa
- https://git.kernel.org/stable/c/e41e33400516702427603f8fbbec43c91ede09c0
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39693
In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: Avoid a NULL pointer dereference [WHY] Although unlikely drm_atomic_get_new_connector_state() or drm_atomic_get_old_connector_state() can return NULL. [HOW] Check returns before dereference. (cherry picked from commit 1e5e8d672fec9f2ab352be121be971877bff2af9)
- https://git.kernel.org/stable/c/07b93a5704b0b72002f0c4bd1076214af67dc661
- https://git.kernel.org/stable/c/0c1a486cbe6f9cb194e3c4a8ade4af2a642ba165
- https://git.kernel.org/stable/c/36a6b43573d152736eaf2557fe60580dd73e9350
- https://git.kernel.org/stable/c/6f860abff89417c0354b6ee5bbca188a233c5762
- https://git.kernel.org/stable/c/9c92d12b5cb9d9d88c12ae71794d3a7382fcdec0
- https://git.kernel.org/stable/c/f653dd30839eb4f573a7539e90b8a58ff9bedf2f
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39694
In the Linux kernel, the following vulnerability has been resolved: s390/sclp: Fix SCCB present check Tracing code called by the SCLP interrupt handler contains early exits if the SCCB address associated with an interrupt is NULL. This check is performed after physical to virtual address translation. If the kernel identity mapping does not start at address zero, the resulting virtual address is never zero, so that the NULL checks won't work. Subsequently this may result in incorrect accesses to the first page of the identity mapping. Fix this by introducing a function that handles the NULL case before address translation.
- https://git.kernel.org/stable/c/430fa71027b6ac9bb0ce5532b8d0676777d4219a
- https://git.kernel.org/stable/c/61605c847599fbfdfafe638607841c7d73719081
- https://git.kernel.org/stable/c/86c2825791c3836a8f77a954b9c5ebe6fab410c5
- https://git.kernel.org/stable/c/aa5073ac1a2a274812f3b04c278992e68ff67cc7
- https://git.kernel.org/stable/c/bf83ae3537359af088d6577812ed93113dfbcb7b
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39695
In the Linux kernel, the following vulnerability has been resolved: RDMA/rxe: Flush delayed SKBs while releasing RXE resources When skb packets are sent out, these skb packets still depends on the rxe resources, for example, QP, sk, when these packets are destroyed. If these rxe resources are released when the skb packets are destroyed, the call traces will appear. To avoid skb packets hang too long time in some network devices, a timestamp is added when these skb packets are created. If these skb packets hang too long time in network devices, these network devices can free these skb packets to release rxe resources.
Modified: 2025-11-25
CVE-2025-39696
In the Linux kernel, the following vulnerability has been resolved: ALSA: hda: tas2781: Fix wrong reference of tasdevice_priv During the conversion to unify the calibration data management, the reference to tasdevice_priv was wrongly set to h->hda_priv instead of h->priv. This resulted in memory corruption and crashes eventually. Unfortunately it's a void pointer, hence the compiler couldn't know that it's wrong.
Modified: 2026-01-08
CVE-2025-39697
In the Linux kernel, the following vulnerability has been resolved: NFS: Fix a race when updating an existing write After nfs_lock_and_join_requests() tests for whether the request is still attached to the mapping, nothing prevents a call to nfs_inode_remove_request() from succeeding until we actually lock the page group. The reason is that whoever called nfs_inode_remove_request() doesn't necessarily have a lock on the page group head. So in order to avoid races, let's take the page group lock earlier in nfs_lock_and_join_requests(), and hold it across the removal of the request in nfs_inode_remove_request().
- https://git.kernel.org/stable/c/0ff42a32784e0f2cb46a46da8e9f473538c13e1b
- https://git.kernel.org/stable/c/181feb41f0b268e6288bf9a7b984624d7fe2031d
- https://git.kernel.org/stable/c/202a3432d21ac060629a760fff3b0a39859da3ea
- https://git.kernel.org/stable/c/76d2e3890fb169168c73f2e4f8375c7cc24a765e
- https://git.kernel.org/stable/c/92278ae36935a54e65fef9f8ea8efe7e80481ace
- https://git.kernel.org/stable/c/c32e3c71aaa1c1ba05da88605e2ddd493c58794f
- https://git.kernel.org/stable/c/f230d40147cc37eb3aef4d50e2e2c06ea73d9a77
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39698
In the Linux kernel, the following vulnerability has been resolved: io_uring/futex: ensure io_futex_wait() cleans up properly on failure The io_futex_data is allocated upfront and assigned to the io_kiocb async_data field, but the request isn't marked with REQ_F_ASYNC_DATA at that point. Those two should always go together, as the flag tells io_uring whether the field is valid or not. Additionally, on failure cleanup, the futex handler frees the data but does not clear ->async_data. Clear the data and the flag in the error path as well. Thanks to Trend Micro Zero Day Initiative and particularly ReDress for reporting this.
Modified: 2025-11-25
CVE-2025-39699
In the Linux kernel, the following vulnerability has been resolved: iommu/riscv: prevent NULL deref in iova_to_phys The riscv_iommu_pte_fetch() function returns either NULL for unmapped/never-mapped iova, or a valid leaf pte pointer that requires no further validation. riscv_iommu_iova_to_phys() failed to handle NULL returns. Prevent null pointer dereference in riscv_iommu_iova_to_phys(), and remove the pte validation.
Modified: 2025-11-25
CVE-2025-39700
In the Linux kernel, the following vulnerability has been resolved:
mm/damon/ops-common: ignore migration request to invalid nodes
damon_migrate_pages() tries migration even if the target node is invalid.
If users mistakenly make such invalid requests via
DAMOS_MIGRATE_{HOT,COLD} action, the below kernel BUG can happen.
[ 7831.883495] BUG: unable to handle page fault for address: 0000000000001f48
[ 7831.884160] #PF: supervisor read access in kernel mode
[ 7831.884681] #PF: error_code(0x0000) - not-present page
[ 7831.885203] PGD 0 P4D 0
[ 7831.885468] Oops: Oops: 0000 [#1] SMP PTI
[ 7831.885852] CPU: 31 UID: 0 PID: 94202 Comm: kdamond.0 Not tainted 6.16.0-rc5-mm-new-damon+ #93 PREEMPT(voluntary)
[ 7831.886913] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.3-4.el9 04/01/2014
[ 7831.887777] RIP: 0010:__alloc_frozen_pages_noprof (include/linux/mmzone.h:1724 include/linux/mmzone.h:1750 mm/page_alloc.c:4936 mm/page_alloc.c:5137)
[...]
[ 7831.895953] Call Trace:
[ 7831.896195]
Modified: 2026-01-08
CVE-2025-39701
In the Linux kernel, the following vulnerability has been resolved: ACPI: pfr_update: Fix the driver update version check The security-version-number check should be used rather than the runtime version check for driver updates. Otherwise, the firmware update would fail when the update binary had a lower runtime version number than the current one. [ rjw: Changelog edits ]
- https://git.kernel.org/stable/c/79300ff532bccbbf654992c7c0863b49a6c3973c
- https://git.kernel.org/stable/c/8151320c747efb22d30b035af989fed0d502176e
- https://git.kernel.org/stable/c/908094681f645d3a78e18ef90561a97029e2df7b
- https://git.kernel.org/stable/c/b00219888c11519ef75d988fa8a780da68ff568e
- https://git.kernel.org/stable/c/cf0a88124e357bffda487cbf3cb612bb97eb97e4
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-03-17
CVE-2025-39702
In the Linux kernel, the following vulnerability has been resolved: ipv6: sr: Fix MAC comparison to be constant-time To prevent timing attacks, MACs need to be compared in constant time. Use the appropriate helper function for this.
- https://git.kernel.org/stable/c/3b348c9c8d2ca2c67559ffd0e258ae7e1107d4f0
- https://git.kernel.org/stable/c/3ddd55cf19ed6cc62def5e3af10c2a9df1b861c3
- https://git.kernel.org/stable/c/86b6d34717fe0570afce07ee79b8eeb40341f831
- https://git.kernel.org/stable/c/a458b2902115b26a25d67393b12ddd57d1216aaa
- https://git.kernel.org/stable/c/b3967c493799e63f648e9c7b6cb063aa2aed04e7
- https://git.kernel.org/stable/c/f7878d47560d61e3f370aca3cebb8f42a55b990a
- https://git.kernel.org/stable/c/ff55a452d56490047f5233cc48c5d933f8586884
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39703
In the Linux kernel, the following vulnerability has been resolved:
net, hsr: reject HSR frame if skb can't hold tag
Receiving HSR frame with insufficient space to hold HSR tag in the skb
can result in a crash (kernel BUG):
[ 45.390915] skbuff: skb_under_panic: text:ffffffff86f32cac len:26 put:14 head:ffff888042418000 data:ffff888042417ff4 tail:0xe end:0x180 dev:bridge_slave_1
[ 45.392559] ------------[ cut here ]------------
[ 45.392912] kernel BUG at net/core/skbuff.c:211!
[ 45.393276] Oops: invalid opcode: 0000 [#1] SMP DEBUG_PAGEALLOC KASAN NOPTI
[ 45.393809] CPU: 1 UID: 0 PID: 2496 Comm: reproducer Not tainted 6.15.0 #12 PREEMPT(undef)
[ 45.394433] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014
[ 45.395273] RIP: 0010:skb_panic+0x15b/0x1d0
- https://git.kernel.org/stable/c/3ae272ab523dd6bdc26e879027ed79feac9dd1b3
- https://git.kernel.org/stable/c/61009439e4bd8d74e705ee15940760321be91d8a
- https://git.kernel.org/stable/c/7af76e9d18a9fd6f8611b3313c86c190f9b6a5a7
- https://git.kernel.org/stable/c/8d9bc4a375a1ba05f7dfa0407de8e510ab9bd14d
- https://git.kernel.org/stable/c/acd69b597bd3f76d3b3d322b84082226c00eeaa4
- https://git.kernel.org/stable/c/b117c41b00902c1a7e24347c405cb82504aeae0b
- https://git.kernel.org/stable/c/b640188b8a6690e685939053c7efdbc7818b5f4e
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39704
In the Linux kernel, the following vulnerability has been resolved:
LoongArch: KVM: Fix stack protector issue in send_ipi_data()
Function kvm_io_bus_read() is called in function send_ipi_data(), buffer
size of parameter *val should be at least 8 bytes. Since some emulation
functions like loongarch_ipi_readl() and kvm_eiointc_read() will write
the buffer *val with 8 bytes signed extension regardless parameter len.
Otherwise there will be buffer overflow issue when CONFIG_STACKPROTECTOR
is enabled. The bug report is shown as follows:
Kernel panic - not syncing: stack-protector: Kernel stack is corrupted in: send_ipi_data+0x194/0x1a0 [kvm]
CPU: 11 UID: 107 PID: 2692 Comm: CPU 0/KVM Not tainted 6.17.0-rc1+ #102 PREEMPT(full)
Stack : 9000000005901568 0000000000000000 9000000003af371c 900000013c68c000
900000013c68f850 900000013c68f858 0000000000000000 900000013c68f998
900000013c68f990 900000013c68f990 900000013c68f6c0 fffffffffffdb058
fffffffffffdb0e0 900000013c68f858 911e1d4d39cf0ec2 9000000105657a00
0000000000000001 fffffffffffffffe 0000000000000578 282049464555206e
6f73676e6f6f4c20 0000000000000001 00000000086b4000 0000000000000000
0000000000000000 0000000000000000 9000000005709968 90000000058f9000
900000013c68fa68 900000013c68fab4 90000000029279f0 900000010153f940
900000010001f360 0000000000000000 9000000003af3734 000000004390000c
00000000000000b0 0000000000000004 0000000000000000 0000000000071c1d
...
Call Trace:
[<9000000003af3734>] show_stack+0x5c/0x180
[<9000000003aed168>] dump_stack_lvl+0x6c/0x9c
[<9000000003ad0ab0>] vpanic+0x108/0x2c4
[<9000000003ad0ca8>] panic+0x3c/0x40
[<9000000004eb0a1c>] __stack_chk_fail+0x14/0x18
[
Modified: 2025-11-25
CVE-2025-39705
In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: fix a Null pointer dereference vulnerability [Why] A null pointer dereference vulnerability exists in the AMD display driver's (DC module) cleanup function dc_destruct(). When display control context (dc->ctx) construction fails (due to memory allocation failure), this pointer remains NULL. During subsequent error handling when dc_destruct() is called, there's no NULL check before dereferencing the perf_trace member (dc->ctx->perf_trace), causing a kernel null pointer dereference crash. [How] Check if dc->ctx is non-NULL before dereferencing. (Updated commit text and removed unnecessary error message) (cherry picked from commit 9dd8e2ba268c636c240a918e0a31e6feaee19404)
Modified: 2026-01-08
CVE-2025-39706
In the Linux kernel, the following vulnerability has been resolved:
drm/amdkfd: Destroy KFD debugfs after destroy KFD wq
Since KFD proc content was moved to kernel debugfs, we can't destroy KFD
debugfs before kfd_process_destroy_wq. Move kfd_process_destroy_wq prior
to kfd_debugfs_fini to fix a kernel NULL pointer problem. It happens
when /sys/kernel/debug/kfd was already destroyed in kfd_debugfs_fini but
kfd_process_destroy_wq calls kfd_debugfs_remove_process. This line
debugfs_remove_recursive(entry->proc_dentry);
tries to remove /sys/kernel/debug/kfd/proc/
- https://git.kernel.org/stable/c/2e58401a24e7b2d4ec619104e1a76590c1284a4c
- https://git.kernel.org/stable/c/74ee7445c3b61c3bd899a54bd82c1982cb3a8206
- https://git.kernel.org/stable/c/910735ded17cc306625e7e1cdcc8102f7ac60994
- https://git.kernel.org/stable/c/96609a51e6134542bf90e053c2cd2fe4f61ebce3
- https://git.kernel.org/stable/c/fc35c955da799ba62f6f977d58e0866d0251e3f8
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39707
In the Linux kernel, the following vulnerability has been resolved: drm/amdgpu: check if hubbub is NULL in debugfs/amdgpu_dm_capabilities HUBBUB structure is not initialized on DCE hardware, so check if it is NULL to avoid null dereference while accessing amdgpu_dm_capabilities file in debugfs.
Modified: 2025-11-25
CVE-2025-39708
In the Linux kernel, the following vulnerability has been resolved: media: iris: Fix NULL pointer dereference A warning reported by smatch indicated a possible null pointer dereference where one of the arguments to API "iris_hfi_gen2_handle_system_error" could sometimes be null. To fix this, add a check to validate that the argument passed is not null before accessing its members.
Modified: 2026-01-08
CVE-2025-39709
In the Linux kernel, the following vulnerability has been resolved: media: venus: protect against spurious interrupts during probe Make sure the interrupt handler is initialized before the interrupt is registered. If the IRQ is registered before hfi_create(), it's possible that an interrupt fires before the handler setup is complete, leading to a NULL dereference. This error condition has been observed during system boot on Rb3Gen2.
- https://git.kernel.org/stable/c/18c2b2bd982b8546312c9a7895515672169f28e0
- https://git.kernel.org/stable/c/3200144a2fa4209dc084a19941b9b203b43580f0
- https://git.kernel.org/stable/c/37cc0ac889b018097c217c5929fd6dc2aed636a1
- https://git.kernel.org/stable/c/639eb587f977c02423f4762467055b23902b4131
- https://git.kernel.org/stable/c/88cf63c2599761c48dec8f618d57dccf8f6f4b53
- https://git.kernel.org/stable/c/9db6a78bc5e418e0064e2248c8f3b9b9e8418646
- https://git.kernel.org/stable/c/e796028b4835af00d9a38ebbb208ec3a6634702a
- https://git.kernel.org/stable/c/f54be97bc69b1096198b6717c150dec69f2a1b4d
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-12
CVE-2025-39710
In the Linux kernel, the following vulnerability has been resolved: media: venus: Add a check for packet size after reading from shared memory Add a check to ensure that the packet size does not exceed the number of available words after reading the packet header from shared memory. This ensures that the size provided by the firmware is safe to process and prevent potential out-of-bounds memory access.
- https://git.kernel.org/stable/c/0520c89f6280d2b60ab537d5743601185ee7d8ab
- https://git.kernel.org/stable/c/2d8cea8310a245730816a1fd0c9fa4a5a3bdc68c
- https://git.kernel.org/stable/c/49befc830daa743e051a65468c05c2ff9e8580e6
- https://git.kernel.org/stable/c/7638bae4539dcebc3f68fda74ac35d73618ec440
- https://git.kernel.org/stable/c/ba567c2e52fbcf0e20502746bdaa79e911c2e8cf
- https://git.kernel.org/stable/c/ef09b96665f16f3f0bac4e111160e6f24f1f8791
- https://git.kernel.org/stable/c/f0cbd9386f974d310a0d20a02e4a1323e95ea654
- https://git.kernel.org/stable/c/f5b7a943055a4a106d40a03bacd940e28cc1955f
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39711
In the Linux kernel, the following vulnerability has been resolved:
media: ivsc: Fix crash at shutdown due to missing mei_cldev_disable() calls
Both the ACE and CSI driver are missing a mei_cldev_disable() call in
their remove() function.
This causes the mei_cl client to stay part of the mei_device->file_list
list even though its memory is freed by mei_cl_bus_dev_release() calling
kfree(cldev->cl).
This leads to a use-after-free when mei_vsc_remove() runs mei_stop()
which first removes all mei bus devices calling mei_ace_remove() and
mei_csi_remove() followed by mei_cl_bus_dev_release() and then calls
mei_cl_all_disconnect() which walks over mei_device->file_list dereferecing
the just freed cldev->cl.
And mei_vsc_remove() it self is run at shutdown because of the
platform_device_unregister(tp->pdev) in vsc_tp_shutdown()
When building a kernel with KASAN this leads to the following KASAN report:
[ 106.634504] ==================================================================
[ 106.634623] BUG: KASAN: slab-use-after-free in mei_cl_set_disconnected (drivers/misc/mei/client.c:783) mei
[ 106.634683] Read of size 4 at addr ffff88819cb62018 by task systemd-shutdow/1
[ 106.634729]
[ 106.634767] Tainted: [E]=UNSIGNED_MODULE
[ 106.634770] Hardware name: Dell Inc. XPS 16 9640/09CK4V, BIOS 1.12.0 02/10/2025
[ 106.634773] Call Trace:
[ 106.634777]
Modified: 2025-11-25
CVE-2025-39712
In the Linux kernel, the following vulnerability has been resolved: media: mt9m114: Fix deadlock in get_frame_interval/set_frame_interval Getting / Setting the frame interval using the V4L2 subdev pad ops get_frame_interval/set_frame_interval causes a deadlock, as the subdev state is locked in the [1] but also in the driver itself. In [2] it's described that the caller is responsible to acquire and release the lock in this case. Therefore, acquiring the lock in the driver is wrong. Remove the lock acquisitions/releases from mt9m114_ifp_get_frame_interval() and mt9m114_ifp_set_frame_interval(). [1] drivers/media/v4l2-core/v4l2-subdev.c - line 1129 [2] Documentation/driver-api/media/v4l2-subdev.rst
Modified: 2026-01-07
CVE-2025-39713
In the Linux kernel, the following vulnerability has been resolved: media: rainshadow-cec: fix TOCTOU race condition in rain_interrupt() In the interrupt handler rain_interrupt(), the buffer full check on rain->buf_len is performed before acquiring rain->buf_lock. This creates a Time-of-Check to Time-of-Use (TOCTOU) race condition, as rain->buf_len is concurrently accessed and modified in the work handler rain_irq_work_handler() under the same lock. Multiple interrupt invocations can race, with each reading buf_len before it becomes full and then proceeding. This can lead to both interrupts attempting to write to the buffer, incrementing buf_len beyond its capacity (DATA_SIZE) and causing a buffer overflow. Fix this bug by moving the spin_lock() to before the buffer full check. This ensures that the check and the subsequent buffer modification are performed atomically, preventing the race condition. An corresponding spin_unlock() is added to the overflow path to correctly release the lock. This possible bug was found by an experimental static analysis tool developed by our team.
- https://git.kernel.org/stable/c/1c2769dc80255824542ea5a4ff1a07dcdeb1603f
- https://git.kernel.org/stable/c/2964dbe631fd21ad7873b1752b895548d3c12496
- https://git.kernel.org/stable/c/3c3e33b7edca7a2d6a96801f287f9faeb684d655
- https://git.kernel.org/stable/c/6aaef1a75985865d8c6c5b65fb54152060faba48
- https://git.kernel.org/stable/c/7af160aea26c7dc9e6734d19306128cce156ec40
- https://git.kernel.org/stable/c/ed905fe7cba03cf22ae0b84cf1b73cd1c070423a
- https://git.kernel.org/stable/c/fbc81e78d75bf28972bc22b1599559557b1a1b83
- https://git.kernel.org/stable/c/ff9dd3db6cd4c6b54a2ecbc58151bea4ec63bc59
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-12
CVE-2025-39714
In the Linux kernel, the following vulnerability has been resolved: media: usbtv: Lock resolution while streaming When an program is streaming (ffplay) and another program (qv4l2) changes the TV standard from NTSC to PAL, the kernel crashes due to trying to copy to unmapped memory. Changing from NTSC to PAL increases the resolution in the usbtv struct, but the video plane buffer isn't adjusted, so it overflows. [hverkuil: call vb2_is_busy instead of vb2_is_streaming]
- https://git.kernel.org/stable/c/3d83d0b5ae5045a7a246ed116b5f6c688a12f9e9
- https://git.kernel.org/stable/c/5427dda195d6baf23028196fd55a0c90f66ffa61
- https://git.kernel.org/stable/c/7e40e0bb778907b2441bff68d73c3eb6b6cd319f
- https://git.kernel.org/stable/c/9f886d21e235c4bd038cb20f6696084304197ab3
- https://git.kernel.org/stable/c/c35e7c7a004ef379a1ae7c7486d4829419acad1d
- https://git.kernel.org/stable/c/c3d75524e10021aa5c223d94da4996640aed46c0
- https://git.kernel.org/stable/c/ee7bade8b9244834229b12b6e1e724939bedd484
- https://git.kernel.org/stable/c/ef9b3c22405192afaa279077ddd45a51db90b83d
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39715
In the Linux kernel, the following vulnerability has been resolved: parisc: Revise gateway LWS calls to probe user read access We use load and stbys,e instructions to trigger memory reference interruptions without writing to memory. Because of the way read access support is implemented, read access interruptions are only triggered at privilege levels 2 and 3. The kernel and gateway page execute at privilege level 0, so this code never triggers a read access interruption. Thus, it is currently possible for user code to execute a LWS compare and swap operation at an address that is read protected at privilege level 3 (PRIV_USER). Fix this by probing read access rights at privilege level 3 and branching to lws_fault if access isn't allowed.
- https://git.kernel.org/stable/c/8bccf47adbf658293528e86960e6d6f736b1c9f7
- https://git.kernel.org/stable/c/9b6af875baba9c4679b55f4561e201485451305f
- https://git.kernel.org/stable/c/bc0a24c24ceebabb5ba65900e332233d79e625e6
- https://git.kernel.org/stable/c/e8b496c52aa0c6572d88db7cab85aeea6f9c194d
- https://git.kernel.org/stable/c/f6334f4ae9a4e962ba74b026e1d965dfdf8cbef8
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39716
In the Linux kernel, the following vulnerability has been resolved: parisc: Revise __get_user() to probe user read access Because of the way read access support is implemented, read access interruptions are only triggered at privilege levels 2 and 3. The kernel executes at privilege level 0, so __get_user() never triggers a read access interruption (code 26). Thus, it is currently possible for user code to access a read protected address via a system call. Fix this by probing read access rights at privilege level 3 (PRIV_USER) and setting __gu_err to -EFAULT (-14) if access isn't allowed. Note the cmpiclr instruction does a 32-bit compare because COND macro doesn't work inside asm.
- https://git.kernel.org/stable/c/28a9b71671fb4a2993ef85b8ef6f117ea63894fe
- https://git.kernel.org/stable/c/4c981077255acc2ed5b3df6e8dd0125c81b626a9
- https://git.kernel.org/stable/c/741b163e440683195b8fd4fc8495fcd0105c6ab7
- https://git.kernel.org/stable/c/89f686a0fb6e473a876a9a60a13aec67a62b9a7e
- https://git.kernel.org/stable/c/f410ef9a032caf98117256b22139c31342d7bb06
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39717
In the Linux kernel, the following vulnerability has been resolved: open_tree_attr: do not allow id-mapping changes without OPEN_TREE_CLONE As described in commit 7a54947e727b ('Merge patch series "fs: allow changing idmappings"'), open_tree_attr(2) was necessary in order to allow for a detached mount to be created and have its idmappings changed without the risk of any racing threads operating on it. For this reason, mount_setattr(2) still does not allow for id-mappings to be changed. However, there was a bug in commit 2462651ffa76 ("fs: allow changing idmappings") which allowed users to bypass this restriction by calling open_tree_attr(2) *without* OPEN_TREE_CLONE. can_idmap_mount() prevented this bug from allowing an attached mountpoint's id-mapping from being modified (thanks to an is_anon_ns() check), but this still allows for detached (but visible) mounts to have their be id-mapping changed. This risks the same UAF and locking issues as described in the merge commit, and was likely unintentional.
Modified: 2026-01-07
CVE-2025-39718
In the Linux kernel, the following vulnerability has been resolved: vsock/virtio: Validate length in packet header before skb_put() When receiving a vsock packet in the guest, only the virtqueue buffer size is validated prior to virtio_vsock_skb_rx_put(). Unfortunately, virtio_vsock_skb_rx_put() uses the length from the packet header as the length argument to skb_put(), potentially resulting in SKB overflow if the host has gone wonky. Validate the length as advertised by the packet header before calling virtio_vsock_skb_rx_put().
- https://git.kernel.org/stable/c/0dab92484474587b82e8e0455839eaf5ac7bf894
- https://git.kernel.org/stable/c/676f03760ca1d69c2470cef36c44dc152494b47c
- https://git.kernel.org/stable/c/969b06bd8b7560efb100a34227619e7d318fbe05
- https://git.kernel.org/stable/c/ee438c492b2e0705d819ac0e25d04fae758d8f8f
- https://git.kernel.org/stable/c/faf332a10372390ce65d0b803888f4b25a388335
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39719
In the Linux kernel, the following vulnerability has been resolved: iio: imu: bno055: fix OOB access of hw_xlate array Fix a potential out-of-bounds array access of the hw_xlate array in bno055.c. In bno055_get_regmask(), hw_xlate was iterated over the length of the vals array instead of the length of the hw_xlate array. In the case of bno055_gyr_scale, the vals array is larger than the hw_xlate array, so this could result in an out-of-bounds access. In practice, this shouldn't happen though because a match should always be found which breaks out of the for loop before it iterates beyond the end of the hw_xlate array. By adding a new hw_xlate_len field to the bno055_sysfs_attr, we can be sure we are iterating over the correct length.
- https://git.kernel.org/stable/c/399b883ec828e436f1a721bf8551b4da8727e65b
- https://git.kernel.org/stable/c/4808ca3aa30ae857454d0b41d2d0bf161a312b45
- https://git.kernel.org/stable/c/50e823a23816b792daf6e8405f8d6045952bb90e
- https://git.kernel.org/stable/c/5c2b601922c064f7be70ae8621277f18d1ffec59
- https://git.kernel.org/stable/c/a0691ab6334f1769acc64ea9e319414a682ff45d
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39720
In the Linux kernel, the following vulnerability has been resolved: ksmbd: fix refcount leak causing resource not released When ksmbd_conn_releasing(opinfo->conn) returns true,the refcount was not decremented properly, causing a refcount leak that prevents the count from reaching zero and the memory from being released.
Modified: 2026-03-17
CVE-2025-39721
In the Linux kernel, the following vulnerability has been resolved: crypto: qat - flush misc workqueue during device shutdown Repeated loading and unloading of a device specific QAT driver, for example qat_4xxx, in a tight loop can lead to a crash due to a use-after-free scenario. This occurs when a power management (PM) interrupt triggers just before the device-specific driver (e.g., qat_4xxx.ko) is unloaded, while the core driver (intel_qat.ko) remains loaded. Since the driver uses a shared workqueue (`qat_misc_wq`) across all devices and owned by intel_qat.ko, a deferred routine from the device-specific driver may still be pending in the queue. If this routine executes after the driver is unloaded, it can dereference freed memory, resulting in a page fault and kernel crash like the following: BUG: unable to handle page fault for address: ffa000002e50a01c #PF: supervisor read access in kernel mode RIP: 0010:pm_bh_handler+0x1d2/0x250 [intel_qat] Call Trace: pm_bh_handler+0x1d2/0x250 [intel_qat] process_one_work+0x171/0x340 worker_thread+0x277/0x3a0 kthread+0xf0/0x120 ret_from_fork+0x2d/0x50 To prevent this, flush the misc workqueue during device shutdown to ensure that all pending work items are completed before the driver is unloaded. Note: This approach may slightly increase shutdown latency if the workqueue contains jobs from other devices, but it ensures correctness and stability.
- https://git.kernel.org/stable/c/3d4df408ba9bad2b205c7fb8afc1836a6a4ca88a
- https://git.kernel.org/stable/c/5858448a6c65d8ee3f8600570d3ce19febcb33be
- https://git.kernel.org/stable/c/e59a52e429e13df3feb34f4853a8e36d121ed937
- https://git.kernel.org/stable/c/fa4c14a82747886d333d8baef0d26da86ba1ccf7
- https://git.kernel.org/stable/c/fe546f5c50fc474daca6bee72caa7ab68a74c33d
Modified: 2025-11-25
CVE-2025-39722
In the Linux kernel, the following vulnerability has been resolved: crypto: caam - Prevent crash on suspend with iMX8QM / iMX8ULP Since the CAAM on these SoCs is managed by another ARM core, called the SECO (Security Controller) on iMX8QM and Secure Enclave on iMX8ULP, which also reserves access to register page 0 suspend operations cannot touch this page. This is similar to when running OPTEE, where OPTEE will reserve page 0. Track this situation using a new state variable no_page0, reflecting if page 0 is reserved elsewhere, either by other management cores in SoC or by OPTEE. Replace the optee_en check in suspend/resume with the new check. optee_en cannot go away as it's needed elsewhere to gate OPTEE specific situations. Fixes the following splat at suspend: Internal error: synchronous external abort: 0000000096000010 [#1] SMP Hardware name: Freescale i.MX8QXP ACU6C (DT) pstate: 60400005 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : readl+0x0/0x18 lr : rd_reg32+0x18/0x3c sp : ffffffc08192ba20 x29: ffffffc08192ba20 x28: ffffff8025190000 x27: 0000000000000000 x26: ffffffc0808ae808 x25: ffffffc080922338 x24: ffffff8020e89090 x23: 0000000000000000 x22: ffffffc080922000 x21: ffffff8020e89010 x20: ffffffc080387ef8 x19: ffffff8020e89010 x18: 000000005d8000d5 x17: 0000000030f35963 x16: 000000008f785f3f x15: 000000003b8ef57c x14: 00000000c418aef8 x13: 00000000f5fea526 x12: 0000000000000001 x11: 0000000000000002 x10: 0000000000000001 x9 : 0000000000000000 x8 : ffffff8025190870 x7 : ffffff8021726880 x6 : 0000000000000002 x5 : ffffff80217268f0 x4 : ffffff8021726880 x3 : ffffffc081200000 x2 : 0000000000000001 x1 : ffffff8020e89010 x0 : ffffffc081200004 Call trace: readl+0x0/0x18 caam_ctrl_suspend+0x30/0xdc dpm_run_callback.constprop.0+0x24/0x5c device_suspend+0x170/0x2e8 dpm_suspend+0xa0/0x104 dpm_suspend_start+0x48/0x50 suspend_devices_and_enter+0x7c/0x45c pm_suspend+0x148/0x160 state_store+0xb4/0xf8 kobj_attr_store+0x14/0x24 sysfs_kf_write+0x38/0x48 kernfs_fop_write_iter+0xb4/0x178 vfs_write+0x118/0x178 ksys_write+0x6c/0xd0 __arm64_sys_write+0x14/0x1c invoke_syscall.constprop.0+0x64/0xb0 do_el0_svc+0x90/0xb0 el0_svc+0x18/0x44 el0t_64_sync_handler+0x88/0x124 el0t_64_sync+0x150/0x154 Code: 88dffc21 88dffc21 5ac00800 d65f03c0 (b9400000)
Modified: 2025-11-25
CVE-2025-39723
In the Linux kernel, the following vulnerability has been resolved: netfs: Fix unbuffered write error handling If all the subrequests in an unbuffered write stream fail, the subrequest collector doesn't update the stream->transferred value and it retains its initial LONG_MAX value. Unfortunately, if all active streams fail, then we take the smallest value of { LONG_MAX, LONG_MAX, ... } as the value to set in wreq->transferred - which is then returned from ->write_iter(). LONG_MAX was chosen as the initial value so that all the streams can be quickly assessed by taking the smallest value of all stream->transferred - but this only works if we've set any of them. Fix this by adding a flag to indicate whether the value in stream->transferred is valid and checking that when we integrate the values. stream->transferred can then be initialised to zero. This was found by running the generic/750 xfstest against cifs with cache=none. It splices data to the target file. Once (if) it has used up all the available scratch space, the writes start failing with ENOSPC. This causes ->write_iter() to fail. However, it was returning wreq->transferred, i.e. LONG_MAX, rather than an error (because it thought the amount transferred was non-zero) and iter_file_splice_write() would then try to clean up that amount of pipe bufferage - leading to an oops when it overran. The kernel log showed: CIFS: VFS: Send error in write = -28 followed by: BUG: kernel NULL pointer dereference, address: 0000000000000008 with: RIP: 0010:iter_file_splice_write+0x3a4/0x520 do_splice+0x197/0x4e0 or: RIP: 0010:pipe_buf_release (include/linux/pipe_fs_i.h:282) iter_file_splice_write (fs/splice.c:755) Also put a warning check into splice to announce if ->write_iter() returned that it had written more than it was asked to.
Modified: 2026-01-12
CVE-2025-39724
In the Linux kernel, the following vulnerability has been resolved: serial: 8250: fix panic due to PSLVERR When the PSLVERR_RESP_EN parameter is set to 1, the device generates an error response if an attempt is made to read an empty RBR (Receive Buffer Register) while the FIFO is enabled. In serial8250_do_startup(), calling serial_port_out(port, UART_LCR, UART_LCR_WLEN8) triggers dw8250_check_lcr(), which invokes dw8250_force_idle() and serial8250_clear_and_reinit_fifos(). The latter function enables the FIFO via serial_out(p, UART_FCR, p->fcr). Execution proceeds to the serial_port_in(port, UART_RX). This satisfies the PSLVERR trigger condition. When another CPU (e.g., using printk()) is accessing the UART (UART is busy), the current CPU fails the check (value & ~UART_LCR_SPAR) == (lcr & ~UART_LCR_SPAR) in dw8250_check_lcr(), causing it to enter dw8250_force_idle(). Put serial_port_out(port, UART_LCR, UART_LCR_WLEN8) under the port->lock to fix this issue. Panic backtrace: [ 0.442336] Oops - unknown exception [#1] [ 0.442343] epc : dw8250_serial_in32+0x1e/0x4a [ 0.442351] ra : serial8250_do_startup+0x2c8/0x88e ... [ 0.442416] console_on_rootfs+0x26/0x70
- https://git.kernel.org/stable/c/0b882f00655afefbc7729c6b5aec86f7a5473a3d
- https://git.kernel.org/stable/c/38c0ea484dedb58cb3a4391229933e16be0d1031
- https://git.kernel.org/stable/c/68c4613e89f000e8198f9ace643082c697921c9f
- https://git.kernel.org/stable/c/7f8fdd4dbffc05982b96caf586f77a014b2a9353
- https://git.kernel.org/stable/c/8e2739478c164147d0774802008528d9e03fb802
- https://git.kernel.org/stable/c/b8ca8e3f75ede308b4d49a6ca5081460be01bdb5
- https://git.kernel.org/stable/c/c826943abf473a3f7260fbadfad65e44db475460
- https://git.kernel.org/stable/c/cb7b3633ed749db8e56f475f43c960652cbd6882
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39765
In the Linux kernel, the following vulnerability has been resolved:
ALSA: timer: fix ida_free call while not allocated
In the snd_utimer_create() function, if the kasprintf() function return
NULL, snd_utimer_put_id() will be called, finally use ida_free()
to free the unallocated id 0.
the syzkaller reported the following information:
------------[ cut here ]------------
ida_free called for id=0 which is not allocated.
WARNING: CPU: 1 PID: 1286 at lib/idr.c:592 ida_free+0x1fd/0x2f0 lib/idr.c:592
Modules linked in:
CPU: 1 UID: 0 PID: 1286 Comm: syz-executor164 Not tainted 6.15.8 #3 PREEMPT(lazy)
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.3-4.fc42 04/01/2014
RIP: 0010:ida_free+0x1fd/0x2f0 lib/idr.c:592
Code: f8 fc 41 83 fc 3e 76 69 e8 70 b2 f8 (...)
RSP: 0018:ffffc900007f79c8 EFLAGS: 00010282
RAX: 0000000000000000 RBX: 1ffff920000fef3b RCX: ffffffff872176a5
RDX: ffff88800369d200 RSI: 0000000000000000 RDI: ffff88800369d200
RBP: 0000000000000000 R08: ffffffff87ba60a5 R09: 0000000000000000
R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000000
R13: 0000000000000002 R14: 0000000000000000 R15: 0000000000000000
FS: 00007f6f1abc1740(0000) GS:ffff8880d76a0000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f6f1ad7a784 CR3: 000000007a6e2000 CR4: 00000000000006f0
Call Trace:
Modified: 2026-01-09
CVE-2025-39766
In the Linux kernel, the following vulnerability has been resolved: net/sched: Make cake_enqueue return NET_XMIT_CN when past buffer_limit The following setup can trigger a WARNING in htb_activate due to the condition: !cl->leaf.q->q.qlen tc qdisc del dev lo root tc qdisc add dev lo root handle 1: htb default 1 tc class add dev lo parent 1: classid 1:1 \ htb rate 64bit tc qdisc add dev lo parent 1:1 handle f: \ cake memlimit 1b ping -I lo -f -c1 -s64 -W0.001 127.0.0.1 This is because the low memlimit leads to a low buffer_limit, which causes packet dropping. However, cake_enqueue still returns NET_XMIT_SUCCESS, causing htb_enqueue to call htb_activate with an empty child qdisc. We should return NET_XMIT_CN when packets are dropped from the same tin and flow. I do not believe return value of NET_XMIT_CN is necessary for packet drops in the case of ack filtering, as that is meant to optimize performance, not to signal congestion.
- https://git.kernel.org/stable/c/0dacfc5372e314d1219f03e64dde3ab495a5a25e
- https://git.kernel.org/stable/c/15de71d06a400f7fdc15bf377a2552b0ec437cf5
- https://git.kernel.org/stable/c/62d591dde4defb1333d202410609c4ddeae060b3
- https://git.kernel.org/stable/c/710866fc0a64eafcb8bacd91bcb1329eb7e5035f
- https://git.kernel.org/stable/c/7689ab22de36f8db19095f6bdf11f28cfde92f5c
- https://git.kernel.org/stable/c/aa12ee1c1bd260943fd6ab556d8635811c332eeb
- https://git.kernel.org/stable/c/de04ddd2980b48caa8d7e24a7db2742917a8b280
- https://git.kernel.org/stable/c/ff57186b2cc39766672c4c0332323933e5faaa88
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39767
In the Linux kernel, the following vulnerability has been resolved: LoongArch: Optimize module load time by optimizing PLT/GOT counting When enabling CONFIG_KASAN, CONFIG_PREEMPT_VOLUNTARY_BUILD and CONFIG_PREEMPT_VOLUNTARY at the same time, there will be soft deadlock, the relevant logs are as follows: rcu: INFO: rcu_sched self-detected stall on CPU ... Call Trace: [<900000000024f9e4>] show_stack+0x5c/0x180 [<90000000002482f4>] dump_stack_lvl+0x94/0xbc [<9000000000224544>] rcu_dump_cpu_stacks+0x1fc/0x280 [<900000000037ac80>] rcu_sched_clock_irq+0x720/0xf88 [<9000000000396c34>] update_process_times+0xb4/0x150 [<90000000003b2474>] tick_nohz_handler+0xf4/0x250 [<9000000000397e28>] __hrtimer_run_queues+0x1d0/0x428 [<9000000000399b2c>] hrtimer_interrupt+0x214/0x538 [<9000000000253634>] constant_timer_interrupt+0x64/0x80 [<9000000000349938>] __handle_irq_event_percpu+0x78/0x1a0 [<9000000000349a78>] handle_irq_event_percpu+0x18/0x88 [<9000000000354c00>] handle_percpu_irq+0x90/0xf0 [<9000000000348c74>] handle_irq_desc+0x94/0xb8 [<9000000001012b28>] handle_cpu_irq+0x68/0xa0 [<9000000001def8c0>] handle_loongarch_irq+0x30/0x48 [<9000000001def958>] do_vint+0x80/0xd0 [<9000000000268a0c>] kasan_mem_to_shadow.part.0+0x2c/0x2a0 [<90000000006344f4>] __asan_load8+0x4c/0x120 [<900000000025c0d0>] module_frob_arch_sections+0x5c8/0x6b8 [<90000000003895f0>] load_module+0x9e0/0x2958 [<900000000038b770>] __do_sys_init_module+0x208/0x2d0 [<9000000001df0c34>] do_syscall+0x94/0x190 [<900000000024d6fc>] handle_syscall+0xbc/0x158 After analysis, this is because the slow speed of loading the amdgpu module leads to the long time occupation of the cpu and then the soft deadlock. When loading a module, module_frob_arch_sections() tries to figure out the number of PLTs/GOTs that will be needed to handle all the RELAs. It will call the count_max_entries() to find in an out-of-order date which counting algorithm has O(n^2) complexity. To make it faster, we sort the relocation list by info and addend. That way, to check for a duplicate relocation, it just needs to compare with the previous entry. This reduces the complexity of the algorithm to O(n log n), as done in commit d4e0340919fb ("arm64/module: Optimize module load time by optimizing PLT counting"). This gives sinificant reduction in module load time for modules with large number of relocations. After applying this patch, the soft deadlock problem has been solved, and the kernel starts normally without "Call Trace". Using the default configuration to test some modules, the results are as follows: Module Size ip_tables 36K fat 143K radeon 2.5MB amdgpu 16MB Without this patch: Module Module load time (ms) Count(PLTs/GOTs) ip_tables 18 59/6 fat 0 162/14 radeon 54 1221/84 amdgpu 1411 4525/1098 With this patch: Module Module load time (ms) Count(PLTs/GOTs) ip_tables 18 59/6 fat 0 162/14 radeon 22 1221/84 amdgpu 45 4525/1098
Modified: 2025-11-25
CVE-2025-39768
In the Linux kernel, the following vulnerability has been resolved: net/mlx5: HWS, fix complex rules rehash error flow Moving rules from matcher to matcher should not fail. However, if it does fail due to various reasons, the error flow should allow the kernel to continue functioning (albeit with broken steering rules) instead of going into series of soft lock-ups or some other problematic behaviour. Similar to the simple rules, complex rules rehash logic suffers from the same problems. This patch fixes the error flow for moving complex rules: - If new rule creation fails before it was even enqeued, do not poll for completion - If TIMEOUT happened while moving the rule, no point trying to poll for completions for other rules. Something is broken, completion won't come, just abort the rehash sequence. - If some other completion with error received, don't give up. Continue handling rest of the rules to minimize the damage. - Make sure that the first error code that was received will be actually returned to the caller instead of replacing it with the generic error code. All the aforementioned issues stem from the same bad error flow, so no point fixing them one by one and leaving partially broken code - fixing them in one patch.
Modified: 2025-11-25
CVE-2025-39769
In the Linux kernel, the following vulnerability has been resolved:
bnxt_en: Fix lockdep warning during rmmod
The commit under the Fixes tag added a netdev_assert_locked() in
bnxt_free_ntp_fltrs(). The lock should be held during normal run-time
but the assert will be triggered (see below) during bnxt_remove_one()
which should not need the lock. The netdev is already unregistered by
then. Fix it by calling netdev_assert_locked_or_invisible() which will
not assert if the netdev is unregistered.
WARNING: CPU: 5 PID: 2241 at ./include/net/netdev_lock.h:17 bnxt_free_ntp_fltrs+0xf8/0x100 [bnxt_en]
Modules linked in: rpcrdma rdma_cm iw_cm ib_cm configfs ib_core bnxt_en(-) bridge stp llc x86_pkg_temp_thermal xfs tg3 [last unloaded: bnxt_re]
CPU: 5 UID: 0 PID: 2241 Comm: rmmod Tainted: G S W 6.16.0 #2 PREEMPT(voluntary)
Tainted: [S]=CPU_OUT_OF_SPEC, [W]=WARN
Hardware name: Dell Inc. PowerEdge R730/072T6D, BIOS 2.4.3 01/17/2017
RIP: 0010:bnxt_free_ntp_fltrs+0xf8/0x100 [bnxt_en]
Code: 41 5c 41 5d 41 5e 41 5f c3 cc cc cc cc 48 8b 47 60 be ff ff ff ff 48 8d b8 28 0c 00 00 e8 d0 cf 41 c3 85 c0 0f 85 2e ff ff ff <0f> 0b e9 27 ff ff ff 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90
RSP: 0018:ffffa92082387da0 EFLAGS: 00010246
RAX: 0000000000000000 RBX: ffff9e5b593d8000 RCX: 0000000000000001
RDX: 0000000000000001 RSI: ffffffff83dc9a70 RDI: ffffffff83e1a1cf
RBP: ffff9e5b593d8c80 R08: 0000000000000000 R09: ffffffff8373a2b3
R10: 000000008100009f R11: 0000000000000001 R12: 0000000000000001
R13: ffffffffc01c4478 R14: dead000000000122 R15: dead000000000100
FS: 00007f3a8a52c740(0000) GS:ffff9e631ad1c000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 000055bb289419c8 CR3: 000000011274e001 CR4: 00000000003706f0
Call Trace:
Modified: 2026-01-16
CVE-2025-39770
In the Linux kernel, the following vulnerability has been resolved:
net: gso: Forbid IPv6 TSO with extensions on devices with only IPV6_CSUM
When performing Generic Segmentation Offload (GSO) on an IPv6 packet that
contains extension headers, the kernel incorrectly requests checksum offload
if the egress device only advertises NETIF_F_IPV6_CSUM feature, which has
a strict contract: it supports checksum offload only for plain TCP or UDP
over IPv6 and explicitly does not support packets with extension headers.
The current GSO logic violates this contract by failing to disable the feature
for packets with extension headers, such as those used in GREoIPv6 tunnels.
This violation results in the device being asked to perform an operation
it cannot support, leading to a `skb_warn_bad_offload` warning and a collapse
of network throughput. While device TSO/USO is correctly bypassed in favor
of software GSO for these packets, the GSO stack must be explicitly told not
to request checksum offload.
Mask NETIF_F_IPV6_CSUM, NETIF_F_TSO6 and NETIF_F_GSO_UDP_L4
in gso_features_check if the IPv6 header contains extension headers to compute
checksum in software.
The exception is a BIG TCP extension, which, as stated in commit
68e068cabd2c6c53 ("net: reenable NETIF_F_IPV6_CSUM offload for BIG TCP packets"):
"The feature is only enabled on devices that support BIG TCP TSO.
The header is only present for PF_PACKET taps like tcpdump,
and not transmitted by physical devices."
kernel log output (truncated):
WARNING: CPU: 1 PID: 5273 at net/core/dev.c:3535 skb_warn_bad_offload+0x81/0x140
...
Call Trace:
- https://git.kernel.org/stable/c/041e2f945f82fdbd6fff577b79c33469430297aa
- https://git.kernel.org/stable/c/2156d9e9f2e483c8c3906c0ea57ea312c1424235
- https://git.kernel.org/stable/c/794ddbb7b63b6828c75967b9bcd43b086716e7a1
- https://git.kernel.org/stable/c/864e3396976ef41de6cc7bc366276bf4e084fff2
- https://git.kernel.org/stable/c/a0478d7e888028f85fa7785ea838ce0ca09398e2
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39771
In the Linux kernel, the following vulnerability has been resolved: regulator: pca9450: Use devm_register_sys_off_handler With module test, there is error dump: ------------[ cut here ]------------ notifier callback pca9450_i2c_restart_handler already registered WARNING: kernel/notifier.c:23 at notifier_chain_register+0x5c/0x88, CPU#0: kworker/u16:3/50 Call trace: notifier_chain_register+0x5c/0x88 (P) atomic_notifier_chain_register+0x30/0x58 register_restart_handler+0x1c/0x28 pca9450_i2c_probe+0x418/0x538 i2c_device_probe+0x220/0x3d0 really_probe+0x114/0x410 __driver_probe_device+0xa0/0x150 driver_probe_device+0x40/0x114 __device_attach_driver+0xd4/0x12c So use devm_register_sys_off_handler to let kernel handle the resource free to avoid kernel dump.
Modified: 2026-01-16
CVE-2025-39772
In the Linux kernel, the following vulnerability has been resolved: drm/hisilicon/hibmc: fix the hibmc loaded failed bug When hibmc loaded failed, the driver use hibmc_unload to free the resource, but the mutexes in mode.config are not init, which will access an NULL pointer. Just change goto statement to return, because hibnc_hw_init() doesn't need to free anything.
- https://git.kernel.org/stable/c/93a08f856fcc5aaeeecad01f71bef3088588216a
- https://git.kernel.org/stable/c/a4f1b9c57092c48bdc7958abd23403ccaed437b2
- https://git.kernel.org/stable/c/c950e1be3a24d021475b56efdb49daa7fbba63a9
- https://git.kernel.org/stable/c/d3e774266c28aefab3e9db334fdf568f936cae04
- https://git.kernel.org/stable/c/ddf1691f25345699296e642f0f59f2d464722fa3
- https://git.kernel.org/stable/c/f93032e5d68f459601c701f6ab087b5feb3382e8
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-16
CVE-2025-39773
In the Linux kernel, the following vulnerability has been resolved:
net: bridge: fix soft lockup in br_multicast_query_expired()
When set multicast_query_interval to a large value, the local variable
'time' in br_multicast_send_query() may overflow. If the time is smaller
than jiffies, the timer will expire immediately, and then call mod_timer()
again, which creates a loop and may trigger the following soft lockup
issue.
watchdog: BUG: soft lockup - CPU#1 stuck for 221s! [rb_consumer:66]
CPU: 1 UID: 0 PID: 66 Comm: rb_consumer Not tainted 6.16.0+ #259 PREEMPT(none)
Call Trace:
- https://git.kernel.org/stable/c/34171b9e53bd1dc264f5556579f2b04f04435c73
- https://git.kernel.org/stable/c/43e281fde5e76a866a4d10780c35023f16c0e432
- https://git.kernel.org/stable/c/5bf5fce8a0c2a70d063af778fdb5b27238174cdd
- https://git.kernel.org/stable/c/96476b043efb86a94f2badd260f7f99c97bd5893
- https://git.kernel.org/stable/c/bdb19cd0de739870bb3494c815138b9dc30875c4
- https://git.kernel.org/stable/c/d1547bf460baec718b3398365f8de33d25c5f36f
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39774
In the Linux kernel, the following vulnerability has been resolved: iio: adc: rzg2l_adc: Set driver data before enabling runtime PM When stress-testing the system by repeatedly unbinding and binding the ADC device in a loop, and the ADC is a supplier for another device (e.g., a thermal hardware block that reads temperature through the ADC), it may happen that the ADC device is runtime-resumed immediately after runtime PM is enabled, triggered by its consumer. At this point, since drvdata is not yet set and the driver's runtime PM callbacks rely on it, a crash can occur. To avoid this, set drvdata just after it was allocated.
Modified: 2025-11-25
CVE-2025-39775
In the Linux kernel, the following vulnerability has been resolved:
mm/mremap: fix WARN with uffd that has remap events disabled
Registering userfaultd on a VMA that spans at least one PMD and then
mremap()'ing that VMA can trigger a WARN when recovering from a failed
page table move due to a page table allocation error.
The code ends up doing the right thing (recurse, avoiding moving actual
page tables), but triggering that WARN is unpleasant:
WARNING: CPU: 2 PID: 6133 at mm/mremap.c:357 move_normal_pmd mm/mremap.c:357 [inline]
WARNING: CPU: 2 PID: 6133 at mm/mremap.c:357 move_pgt_entry mm/mremap.c:595 [inline]
WARNING: CPU: 2 PID: 6133 at mm/mremap.c:357 move_page_tables+0x3832/0x44a0 mm/mremap.c:852
Modules linked in:
CPU: 2 UID: 0 PID: 6133 Comm: syz.0.19 Not tainted 6.17.0-rc1-syzkaller-00004-g53e760d89498 #0 PREEMPT(full)
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014
RIP: 0010:move_normal_pmd mm/mremap.c:357 [inline]
RIP: 0010:move_pgt_entry mm/mremap.c:595 [inline]
RIP: 0010:move_page_tables+0x3832/0x44a0 mm/mremap.c:852
Code: ...
RSP: 0018:ffffc900037a76d8 EFLAGS: 00010293
RAX: 0000000000000000 RBX: 0000000032930007 RCX: ffffffff820c6645
RDX: ffff88802e56a440 RSI: ffffffff820c7201 RDI: 0000000000000007
RBP: ffff888037728fc0 R08: 0000000000000007 R09: 0000000000000000
R10: 0000000032930007 R11: 0000000000000000 R12: 0000000000000000
R13: ffffc900037a79a8 R14: 0000000000000001 R15: dffffc0000000000
FS: 000055556316a500(0000) GS:ffff8880d68bc000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000001b30863fff CR3: 0000000050171000 CR4: 0000000000352ef0
Call Trace:
Modified: 2026-01-16
CVE-2025-39776
In the Linux kernel, the following vulnerability has been resolved:
mm/debug_vm_pgtable: clear page table entries at destroy_args()
The mm/debug_vm_pagetable test allocates manually page table entries for
the tests it runs, using also its manually allocated mm_struct. That in
itself is ok, but when it exits, at destroy_args() it fails to clear those
entries with the *_clear functions.
The problem is that leaves stale entries. If another process allocates an
mm_struct with a pgd at the same address, it may end up running into the
stale entry. This is happening in practice on a debug kernel with
CONFIG_DEBUG_VM_PGTABLE=y, for example this is the output with some extra
debugging I added (it prints a warning trace if pgtables_bytes goes
negative, in addition to the warning at check_mm() function):
[ 2.539353] debug_vm_pgtable: [get_random_vaddr ]: random_vaddr is 0x7ea247140000
[ 2.539366] kmem_cache info
[ 2.539374] kmem_cachep 0x000000002ce82385 - freelist 0x0000000000000000 - offset 0x508
[ 2.539447] debug_vm_pgtable: [init_args ]: args->mm is 0x000000002267cc9e
(...)
[ 2.552800] WARNING: CPU: 5 PID: 116 at include/linux/mm.h:2841 free_pud_range+0x8bc/0x8d0
[ 2.552816] Modules linked in:
[ 2.552843] CPU: 5 UID: 0 PID: 116 Comm: modprobe Not tainted 6.12.0-105.debug_vm2.el10.ppc64le+debug #1 VOLUNTARY
[ 2.552859] Hardware name: IBM,9009-41A POWER9 (architected) 0x4e0202 0xf000005 of:IBM,FW910.00 (VL910_062) hv:phyp pSeries
[ 2.552872] NIP: c0000000007eef3c LR: c0000000007eef30 CTR: c0000000003d8c90
[ 2.552885] REGS: c0000000622e73b0 TRAP: 0700 Not tainted (6.12.0-105.debug_vm2.el10.ppc64le+debug)
[ 2.552899] MSR: 800000000282b033
- https://git.kernel.org/stable/c/47d2a149611b8a94d24add9868c442a4af278658
- https://git.kernel.org/stable/c/561171db3b3eb759ba3f284dba7a76f4476ade03
- https://git.kernel.org/stable/c/61a9f2e5c49f05e3ea2c16674540a075a1b4be6f
- https://git.kernel.org/stable/c/63962ff932ef359925b94be2a88df6b4fd4fed0a
- https://git.kernel.org/stable/c/7bf57a0709cd7c9088cea8de023d6f4fbf2518b0
- https://git.kernel.org/stable/c/dde30854bddfb5d69f30022b53c5955a41088b33
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39777
In the Linux kernel, the following vulnerability has been resolved: crypto: acomp - Fix CFI failure due to type punning To avoid a crash when control flow integrity is enabled, make the workspace ("stream") free function use a consistent type, and call it through a function pointer that has that same type.
Modified: 2025-11-25
CVE-2025-39779
In the Linux kernel, the following vulnerability has been resolved:
btrfs: subpage: keep TOWRITE tag until folio is cleaned
btrfs_subpage_set_writeback() calls folio_start_writeback() the first time
a folio is written back, and it also clears the PAGECACHE_TAG_TOWRITE tag
even if there are still dirty blocks in the folio. This can break ordering
guarantees, such as those required by btrfs_wait_ordered_extents().
That ordering breakage leads to a real failure. For example, running
generic/464 on a zoned setup will hit the following ASSERT. This happens
because the broken ordering fails to flush existing dirty pages before the
file size is truncated.
assertion failed: !list_empty(&ordered->list) :: 0, in fs/btrfs/zoned.c:1899
------------[ cut here ]------------
kernel BUG at fs/btrfs/zoned.c:1899!
Oops: invalid opcode: 0000 [#1] SMP NOPTI
CPU: 2 UID: 0 PID: 1906169 Comm: kworker/u130:2 Kdump: loaded Not tainted 6.16.0-rc6-BTRFS-ZNS+ #554 PREEMPT(voluntary)
Hardware name: Supermicro Super Server/H12SSL-NT, BIOS 2.0 02/22/2021
Workqueue: btrfs-endio-write btrfs_work_helper [btrfs]
RIP: 0010:btrfs_finish_ordered_zoned.cold+0x50/0x52 [btrfs]
RSP: 0018:ffffc9002efdbd60 EFLAGS: 00010246
RAX: 000000000000004c RBX: ffff88811923c4e0 RCX: 0000000000000000
RDX: 0000000000000000 RSI: ffffffff827e38b1 RDI: 00000000ffffffff
RBP: ffff88810005d000 R08: 00000000ffffdfff R09: ffffffff831051c8
R10: ffffffff83055220 R11: 0000000000000000 R12: ffff8881c2458c00
R13: ffff88811923c540 R14: ffff88811923c5e8 R15: ffff8881c1bd9680
FS: 0000000000000000(0000) GS:ffff88a04acd0000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f907c7a918c CR3: 0000000004024000 CR4: 0000000000350ef0
Call Trace:
Modified: 2025-11-25
CVE-2025-39780
In the Linux kernel, the following vulnerability has been resolved:
sched/ext: Fix invalid task state transitions on class switch
When enabling a sched_ext scheduler, we may trigger invalid task state
transitions, resulting in warnings like the following (which can be
easily reproduced by running the hotplug selftest in a loop):
sched_ext: Invalid task state transition 0 -> 3 for fish[770]
WARNING: CPU: 18 PID: 787 at kernel/sched/ext.c:3862 scx_set_task_state+0x7c/0xc0
...
RIP: 0010:scx_set_task_state+0x7c/0xc0
...
Call Trace:
Modified: 2025-11-25
CVE-2025-39781
In the Linux kernel, the following vulnerability has been resolved: parisc: Drop WARN_ON_ONCE() from flush_cache_vmap I have observed warning to occassionally trigger.
Modified: 2026-01-16
CVE-2025-39782
In the Linux kernel, the following vulnerability has been resolved: jbd2: prevent softlockup in jbd2_log_do_checkpoint() Both jbd2_log_do_checkpoint() and jbd2_journal_shrink_checkpoint_list() periodically release j_list_lock after processing a batch of buffers to avoid long hold times on the j_list_lock. However, since both functions contend for j_list_lock, the combined time spent waiting and processing can be significant. jbd2_journal_shrink_checkpoint_list() explicitly calls cond_resched() when need_resched() is true to avoid softlockups during prolonged operations. But jbd2_log_do_checkpoint() only exits its loop when need_resched() is true, relying on potentially sleeping functions like __flush_batch() or wait_on_buffer() to trigger rescheduling. If those functions do not sleep, the kernel may hit a softlockup. watchdog: BUG: soft lockup - CPU#3 stuck for 156s! [kworker/u129:2:373] CPU: 3 PID: 373 Comm: kworker/u129:2 Kdump: loaded Not tainted 6.6.0+ #10 Hardware name: Huawei TaiShan 2280 /BC11SPCD, BIOS 1.27 06/13/2017 Workqueue: writeback wb_workfn (flush-7:2) pstate: 20000005 (nzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : native_queued_spin_lock_slowpath+0x358/0x418 lr : jbd2_log_do_checkpoint+0x31c/0x438 [jbd2] Call trace: native_queued_spin_lock_slowpath+0x358/0x418 jbd2_log_do_checkpoint+0x31c/0x438 [jbd2] __jbd2_log_wait_for_space+0xfc/0x2f8 [jbd2] add_transaction_credits+0x3bc/0x418 [jbd2] start_this_handle+0xf8/0x560 [jbd2] jbd2__journal_start+0x118/0x228 [jbd2] __ext4_journal_start_sb+0x110/0x188 [ext4] ext4_do_writepages+0x3dc/0x740 [ext4] ext4_writepages+0xa4/0x190 [ext4] do_writepages+0x94/0x228 __writeback_single_inode+0x48/0x318 writeback_sb_inodes+0x204/0x590 __writeback_inodes_wb+0x54/0xf8 wb_writeback+0x2cc/0x3d8 wb_do_writeback+0x2e0/0x2f8 wb_workfn+0x80/0x2a8 process_one_work+0x178/0x3e8 worker_thread+0x234/0x3b8 kthread+0xf0/0x108 ret_from_fork+0x10/0x20 So explicitly call cond_resched() in jbd2_log_do_checkpoint() to avoid softlockup.
- https://git.kernel.org/stable/c/26cb9aad94cb1811d8fae115594cc71fa3d91ab0
- https://git.kernel.org/stable/c/3faac5e1d14c63260fd1bf789d96bde3ab3d9e54
- https://git.kernel.org/stable/c/41f40038de62e8306897cf6840791b268996432a
- https://git.kernel.org/stable/c/429d50cbaff45090d52a1ea850d5de8c14881ee7
- https://git.kernel.org/stable/c/84ff98c1ea19acd3f9389e4bb6061364e943f85e
- https://git.kernel.org/stable/c/9d98cf4632258720f18265a058e62fde120c0151
- https://git.kernel.org/stable/c/f683d611518d30334813eecf9a8c687453e2800e
- https://git.kernel.org/stable/c/f7ee8fd689e6d534f9fd2494b9266f7998082e65
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-16
CVE-2025-39783
In the Linux kernel, the following vulnerability has been resolved: PCI: endpoint: Fix configfs group list head handling Doing a list_del() on the epf_group field of struct pci_epf_driver in pci_epf_remove_cfs() is not correct as this field is a list head, not a list entry. This list_del() call triggers a KASAN warning when an endpoint function driver which has a configfs attribute group is torn down: ================================================================== BUG: KASAN: slab-use-after-free in pci_epf_remove_cfs+0x17c/0x198 Write of size 8 at addr ffff00010f4a0d80 by task rmmod/319 CPU: 3 UID: 0 PID: 319 Comm: rmmod Not tainted 6.16.0-rc2 #1 NONE Hardware name: Radxa ROCK 5B (DT) Call trace: show_stack+0x2c/0x84 (C) dump_stack_lvl+0x70/0x98 print_report+0x17c/0x538 kasan_report+0xb8/0x190 __asan_report_store8_noabort+0x20/0x2c pci_epf_remove_cfs+0x17c/0x198 pci_epf_unregister_driver+0x18/0x30 nvmet_pci_epf_cleanup_module+0x24/0x30 [nvmet_pci_epf] __arm64_sys_delete_module+0x264/0x424 invoke_syscall+0x70/0x260 el0_svc_common.constprop.0+0xac/0x230 do_el0_svc+0x40/0x58 el0_svc+0x48/0xdc el0t_64_sync_handler+0x10c/0x138 el0t_64_sync+0x198/0x19c ... Remove this incorrect list_del() call from pci_epf_remove_cfs().
- https://git.kernel.org/stable/c/0758862386f114d9ab1e23181461bd1e2e9ec4c6
- https://git.kernel.org/stable/c/409af8b9f7b4f23cd0464e71c6cd6fe13c076ae2
- https://git.kernel.org/stable/c/6cf65505523224cab1449d726d2ce8180c2941ee
- https://git.kernel.org/stable/c/80ea6e6904fb2ba4ccb5d909579988466ec65358
- https://git.kernel.org/stable/c/a302bd89db35d8b7e279de4d2b41c16c7f191069
- https://git.kernel.org/stable/c/d5aecddc3452371d9da82cdbb0c715812524b54b
- https://git.kernel.org/stable/c/d79123d79a8154b4318529b7b2ff7e15806f480b
- https://git.kernel.org/stable/c/dc4ffbd571716ff3b171418fb03abe80e720a7b1
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39784
In the Linux kernel, the following vulnerability has been resolved: PCI: Fix link speed calculation on retrain failure When pcie_failed_link_retrain() fails to retrain, it tries to revert to the previous link speed. However it calculates that speed from the Link Control 2 register without masking out non-speed bits first. PCIE_LNKCTL2_TLS2SPEED() converts such incorrect values to PCI_SPEED_UNKNOWN (0xff), which in turn causes a WARN splat in pcie_set_target_speed(): pci 0000:00:01.1: [1022:14ed] type 01 class 0x060400 PCIe Root Port pci 0000:00:01.1: broken device, retraining non-functional downstream link at 2.5GT/s pci 0000:00:01.1: retraining failed WARNING: CPU: 1 PID: 1 at drivers/pci/pcie/bwctrl.c:168 pcie_set_target_speed RDX: 0000000000000001 RSI: 00000000000000ff RDI: ffff9acd82efa000 pcie_failed_link_retrain pci_device_add pci_scan_single_device Mask out the non-speed bits in PCIE_LNKCTL2_TLS2SPEED() and PCIE_LNKCAP_SLS2SPEED() so they don't incorrectly return PCI_SPEED_UNKNOWN. [bhelgaas: commit log, add details from https://lore.kernel.org/r/1c92ef6bcb314ee6977839b46b393282e4f52e74.1750684771.git.lukas@wunner.de]
Modified: 2025-11-25
CVE-2025-39785
In the Linux kernel, the following vulnerability has been resolved: drm/hisilicon/hibmc: fix irq_request()'s irq name variable is local The local variable is passed in request_irq (), and there will be use after free problem, which will make request_irq failed. Using the global irq name instead of it to fix.
Modified: 2025-11-25
CVE-2025-39786
In the Linux kernel, the following vulnerability has been resolved: iio: adc: ad7173: fix channels index for syscalib_mode Fix the index used to look up the channel when accessing the syscalib_mode attribute. The address field is a 0-based index (same as scan_index) that it used to access the channel in the ad7173_channels array throughout the driver. The channels field, on the other hand, may not match the address field depending on the channel configuration specified in the device tree and could result in an out-of-bounds access.
Modified: 2026-01-16
CVE-2025-39787
In the Linux kernel, the following vulnerability has been resolved: soc: qcom: mdt_loader: Ensure we don't read past the ELF header When the MDT loader is used in remoteproc, the ELF header is sanitized beforehand, but that's not necessary the case for other clients. Validate the size of the firmware buffer to ensure that we don't read past the end as we iterate over the header. e_phentsize and e_shentsize are validated as well, to ensure that the assumptions about step size in the traversal are valid.
- https://git.kernel.org/stable/c/0d59ce2bfc3bb13abe6240335a1bf7b96536d022
- https://git.kernel.org/stable/c/1096eb63ecfc8df90b70cd068e6de0c2ff204dfd
- https://git.kernel.org/stable/c/43d26997d88c4056fce0324e72f62556bc7e8e8d
- https://git.kernel.org/stable/c/81278be4eb5f08ba2c68c3055893e61cc03727fe
- https://git.kernel.org/stable/c/87bfabb3b2f46827639173f143aa43f7cfc0a7e6
- https://git.kernel.org/stable/c/981c845f29838e468a9bfa87f784307193a31297
- https://git.kernel.org/stable/c/9f9967fed9d066ed3dae9372b45ffa4f6fccfeef
- https://git.kernel.org/stable/c/e1720eb32acf411c328af6a8c8f556c94535808e
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-16
CVE-2025-39788
In the Linux kernel, the following vulnerability has been resolved: scsi: ufs: exynos: Fix programming of HCI_UTRL_NEXUS_TYPE On Google gs101, the number of UTP transfer request slots (nutrs) is 32, and in this case the driver ends up programming the UTRL_NEXUS_TYPE incorrectly as 0. This is because the left hand side of the shift is 1, which is of type int, i.e. 31 bits wide. Shifting by more than that width results in undefined behaviour. Fix this by switching to the BIT() macro, which applies correct type casting as required. This ensures the correct value is written to UTRL_NEXUS_TYPE (0xffffffff on gs101), and it also fixes a UBSAN shift warning: UBSAN: shift-out-of-bounds in drivers/ufs/host/ufs-exynos.c:1113:21 shift exponent 32 is too large for 32-bit type 'int' For consistency, apply the same change to the nutmrs / UTMRL_NEXUS_TYPE write.
- https://git.kernel.org/stable/c/01510a9e8222f11cce064410f3c2fcf0756c0a08
- https://git.kernel.org/stable/c/01aad16c2257ab8ff33b152b972c9f2e1af47912
- https://git.kernel.org/stable/c/098b2c8ee208c77126839047b9e6e1925bb35baa
- https://git.kernel.org/stable/c/5b9f1ef293428ea9c0871d96fcec2a87c4445832
- https://git.kernel.org/stable/c/6d53b2a134da77eb7fe65c5c7c7a3c193539a78a
- https://git.kernel.org/stable/c/c1f025da8f370a015e412b55cbcc583f91de8316
- https://git.kernel.org/stable/c/dc8fb963742f1a38d284946638f9358bdaa0ddee
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39789
In the Linux kernel, the following vulnerability has been resolved: crypto: x86/aegis - Add missing error checks The skcipher_walk functions can allocate memory and can fail, so checking for errors is necessary.
Modified: 2026-01-16
CVE-2025-39790
In the Linux kernel, the following vulnerability has been resolved: bus: mhi: host: Detect events pointing to unexpected TREs When a remote device sends a completion event to the host, it contains a pointer to the consumed TRE. The host uses this pointer to process all of the TREs between it and the host's local copy of the ring's read pointer. This works when processing completion for chained transactions, but can lead to nasty results if the device sends an event for a single-element transaction with a read pointer that is multiple elements ahead of the host's read pointer. For instance, if the host accesses an event ring while the device is updating it, the pointer inside of the event might still point to an old TRE. If the host uses the channel's xfer_cb() to directly free the buffer pointed to by the TRE, the buffer will be double-freed. This behavior was observed on an ep that used upstream EP stack without 'commit 6f18d174b73d ("bus: mhi: ep: Update read pointer only after buffer is written")'. Where the device updated the events ring pointer before updating the event contents, so it left a window where the host was able to access the stale data the event pointed to, before the device had the chance to update them. The usual pattern was that the host received an event pointing to a TRE that is not immediately after the last processed one, so it got treated as if it was a chained transaction, processing all of the TREs in between the two read pointers. This commit aims to harden the host by ensuring transactions where the event points to a TRE that isn't local_rp + 1 are chained. [mani: added stable tag and reworded commit message]
- https://git.kernel.org/stable/c/2ec99b922f4661521927eeada76f431eebfbabc4
- https://git.kernel.org/stable/c/4079c6c59705b96285219b9efc63cab870d757b7
- https://git.kernel.org/stable/c/44e1a079e18f78d6594a715b0c6d7e18c656f7b9
- https://git.kernel.org/stable/c/5bd398e20f0833ae8a1267d4f343591a2dd20185
- https://git.kernel.org/stable/c/5e17429679a8545afe438ce7a82a13a54e8ceabb
- https://git.kernel.org/stable/c/7b3f0e3b60c27f4fcb69927d84987e5fd6240530
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39791
In the Linux kernel, the following vulnerability has been resolved: dm: dm-crypt: Do not partially accept write BIOs with zoned targets Read and write operations issued to a dm-crypt target may be split according to the dm-crypt internal limits defined by the max_read_size and max_write_size module parameters (default is 128 KB). The intent is to improve processing time of large BIOs by splitting them into smaller operations that can be parallelized on different CPUs. For zoned dm-crypt targets, this BIO splitting is still done but without the parallel execution to ensure that the issuing order of write operations to the underlying devices remains sequential. However, the splitting itself causes other problems: 1) Since dm-crypt relies on the block layer zone write plugging to handle zone append emulation using regular write operations, the reminder of a split write BIO will always be plugged into the target zone write plugged. Once the on-going write BIO finishes, this reminder BIO is unplugged and issued from the zone write plug work. If this reminder BIO itself needs to be split, the reminder will be re-issued and plugged again, but that causes a call to a blk_queue_enter(), which may block if a queue freeze operation was initiated. This results in a deadlock as DM submission still holds BIOs that the queue freeze side is waiting for. 2) dm-crypt relies on the emulation done by the block layer using regular write operations for processing zone append operations. This still requires to properly return the written sector as the BIO sector of the original BIO. However, this can be done correctly only and only if there is a single clone BIO used for processing the original zone append operation issued by the user. If the size of a zone append operation is larger than dm-crypt max_write_size, then the orginal BIO will be split and processed as a chain of regular write operations. Such chaining result in an incorrect written sector being returned to the zone append issuer using the original BIO sector. This in turn results in file system data corruptions using xfs or btrfs. Fix this by modifying get_max_request_size() to always return the size of the BIO to avoid it being split with dm_accpet_partial_bio() in crypt_map(). get_max_request_size() is renamed to get_max_request_sectors() to clarify the unit of the value returned and its interface is changed to take a struct dm_target pointer and a pointer to the struct bio being processed. In addition to this change, to ensure that crypt_alloc_buffer() works correctly, set the dm-crypt device max_hw_sectors limit to be at most BIO_MAX_VECS << PAGE_SECTORS_SHIFT (1 MB with a 4KB page architecture). This forces DM core to split write BIOs before passing them to crypt_map(), and thus guaranteeing that dm-crypt can always accept an entire write BIO without needing to split it. This change does not have any effect on the read path of dm-crypt. Read operations can still be split and the BIO fragments processed in parallel. There is also no impact on the performance of the write path given that all zone write BIOs were already processed inline instead of in parallel. This change also does not affect in any way regular dm-crypt block devices.
Modified: 2026-01-16
CVE-2025-39800
In the Linux kernel, the following vulnerability has been resolved: btrfs: abort transaction on unexpected eb generation at btrfs_copy_root() If we find an unexpected generation for the extent buffer we are cloning at btrfs_copy_root(), we just WARN_ON() and don't error out and abort the transaction, meaning we allow to persist metadata with an unexpected generation. Instead of warning only, abort the transaction and return -EUCLEAN.
- https://git.kernel.org/stable/c/33e8f24b52d2796b8cfb28c19a1a7dd6476323a8
- https://git.kernel.org/stable/c/4290e34fb87ae556b12c216efd0ae91583446b7a
- https://git.kernel.org/stable/c/4734255ef39b416864139dcda96a387fe5f33a6a
- https://git.kernel.org/stable/c/da2124719f386b6e5d4d4b1a2e67c440e4d5892f
- https://git.kernel.org/stable/c/f4f5bd9251a4cbe55aaa05725c6c3c32ad1f74b3
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-23
CVE-2025-39801
In the Linux kernel, the following vulnerability has been resolved: usb: dwc3: Remove WARN_ON for device endpoint command timeouts This commit addresses a rarely observed endpoint command timeout which causes kernel panic due to warn when 'panic_on_warn' is enabled and unnecessary call trace prints when 'panic_on_warn' is disabled. It is seen during fast software-controlled connect/disconnect testcases. The following is one such endpoint command timeout that we observed: 1. Connect ======= ->dwc3_thread_interrupt ->dwc3_ep0_interrupt ->configfs_composite_setup ->composite_setup ->usb_ep_queue ->dwc3_gadget_ep0_queue ->__dwc3_gadget_ep0_queue ->__dwc3_ep0_do_control_data ->dwc3_send_gadget_ep_cmd 2. Disconnect ========== ->dwc3_thread_interrupt ->dwc3_gadget_disconnect_interrupt ->dwc3_ep0_reset_state ->dwc3_ep0_end_control_data ->dwc3_send_gadget_ep_cmd In the issue scenario, in Exynos platforms, we observed that control transfers for the previous connect have not yet been completed and end transfer command sent as a part of the disconnect sequence and processing of USB_ENDPOINT_HALT feature request from the host timeout. This maybe an expected scenario since the controller is processing EP commands sent as a part of the previous connect. It maybe better to remove WARN_ON in all places where device endpoint commands are sent to avoid unnecessary kernel panic due to warn.
- https://git.kernel.org/stable/c/45eae113dccaf8e502090ecf5b3d9e9b805add6f
- https://git.kernel.org/stable/c/5a1a847d841505dba2bd85602daf5c218e1d85b8
- https://git.kernel.org/stable/c/84c95dbf5bece56086cdb65a64162af35158bdd9
- https://git.kernel.org/stable/c/db27482b9db340402e05d4e9b75352bbaca51af2
- https://git.kernel.org/stable/c/dfe40159eec6ca63b40133bfa783eee2e3ed829f
- https://git.kernel.org/stable/c/f49697dfba2915a9ff36f94604eb76fa61413929
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-24
CVE-2025-39802
In the Linux kernel, the following vulnerability has been resolved: lib/crypto: arm/poly1305: Fix register corruption in no-SIMD contexts Restore the SIMD usability check that was removed by commit 773426f4771b ("crypto: arm/poly1305 - Add block-only interface"). This safety check is cheap and is well worth eliminating a footgun. While the Poly1305 functions should not be called when SIMD registers are unusable, if they are anyway, they should just do the right thing instead of corrupting random tasks' registers and/or computing incorrect MACs. Fixing this is also needed for poly1305_kunit to pass. Just use may_use_simd() instead of the original crypto_simd_usable(), since poly1305_kunit won't rely on crypto_simd_disabled_for_test.
Modified: 2025-11-24
CVE-2025-39803
In the Linux kernel, the following vulnerability has been resolved: scsi: ufs: core: Remove WARN_ON_ONCE() call from ufshcd_uic_cmd_compl() The UIC completion interrupt may be disabled while an UIC command is being processed. When the UIC completion interrupt is reenabled, an UIC interrupt is triggered and the WARN_ON_ONCE(!cmd) statement is hit. Hence this patch that removes this kernel warning.
Modified: 2025-11-24
CVE-2025-39804
In the Linux kernel, the following vulnerability has been resolved: lib/crypto: arm64/poly1305: Fix register corruption in no-SIMD contexts Restore the SIMD usability check that was removed by commit a59e5468a921 ("crypto: arm64/poly1305 - Add block-only interface"). This safety check is cheap and is well worth eliminating a footgun. While the Poly1305 functions should not be called when SIMD registers are unusable, if they are anyway, they should just do the right thing instead of corrupting random tasks' registers and/or computing incorrect MACs. Fixing this is also needed for poly1305_kunit to pass. Just use may_use_simd() instead of the original crypto_simd_usable(), since poly1305_kunit won't rely on crypto_simd_disabled_for_test.
Package kernel-image-rt updated to version 6.12.44-alt1 for branch sisyphus in task 393473.
Closed vulnerabilities
Modified: 2026-04-15
BDU:2025-12706
Уязвимость функции io_futex_wait() в модуле io_uring/futex.c интерфейса асинхронного ввода/вывода ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на конфиденциальность, целостность и доступность защищаемой информации
Modified: 2026-02-17
BDU:2025-12988
Уязвимость функции recvmsg() ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-14996
Уязвимость компонента drivers/md/dm-crypt.c ядра операционной системы Linux, позволяющая нарушителю нарушить оказать воздействие на целостность и доступность защищаемой информации
Modified: 2026-02-17
BDU:2025-15002
Уязвимость компонента net/vmw_vsock/virtio_transport.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2025-12-26
BDU:2025-15005
Уязвимость компонента media/i2c/mt9m114.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15023
Уязвимость компонента drivers/iommu/amd/init.c ядра операционной системы Linux, позволяющая нарушителю нарушить оказать воздействие на целостность и доступность защищаемой информации
Modified: 2026-04-14
BDU:2025-15028
Уязвимость компонента x86/cpu/hygon ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15190
Уязвимость компонента io_uring/net.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15191
Уязвимость компонента fs/smb/client/smb2ops.c ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на конфиденциальность, целостность и доступность защищаемой информации
Modified: 2026-04-14
BDU:2025-15192
Уязвимость драйвера comedi ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15193
Уязвимость компонента iio/light/as73211.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15194
Уязвимость компонента kernel/trace/ftrace.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15196
Уязвимость компонента fs/buffer.c ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на целостность и доступность защищаемой информации
Modified: 2026-02-16
BDU:2025-15201
Уязвимость компонента qcom/venus/core.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2025-12-26
BDU:2025-15207
Уязвимость драйвера ivsc ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15209
Уязвимость компонента media/usb/usbtv/usbtv-video.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15212
Уязвимость компонента fs/btrfs/qgroup.c ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на конфиденциальность, целостность и доступность защищаемой информации
BDU:2025-15214
Уязвимость компонента kernel/sched/ext.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15220
Уязвимость функции jbd2_log_do_checkpoint() компонента fs/jbd2/checkpoint.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15223
Уязвимость функции pci_epf_remove_cfs() компонента drivers/pci/endpoint/pci-epf-core.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15226
Уязвимость компонента drivers/soc/qcom/mdt_loader.c ядра операционной системы Linux, позволяющая нарушителю получить несанкционированный доступ к защищаемой информации
Modified: 2026-02-16
BDU:2025-15248
Уязвимость функции btrfs_copy_root() компонента btrfs ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15544
Уязвимость компонента arch/parisc/include/asm/uaccess.h ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на конфиденциальность и целостность защищаемой информации
Modified: 2026-02-16
BDU:2025-15545
Уязвимость компонента arch/parisc/kernel/syscall.S ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на конфиденциальность и целостность защищаемой информации
Modified: 2026-04-14
BDU:2025-15546
Уязвимость драйвера gve ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15687
Уязвимость компонента dwc3 ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15690
Уязвимость компонента drivers/bus ядра операционной системы Linux, позволяющая нарушителю получить доступ к конфиденциальным данным, нарушить их целостность, а также вызвать отказ в обслуживании
Modified: 2026-03-11
BDU:2025-15692
Уязвимость компонента ufs-exynos.c ядра операционной системы Linux, позволяющая нарушителю получить доступ к конфиденциальным данным, нарушить их целостность, а также вызвать отказ в обслуживании
Modified: 2026-03-11
BDU:2025-15693
Уязвимость функции destroy_args() компонента mm/debug_vm_pgtable.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15694
Уязвимость функции br_multicast_query_expired() компонента net/bridge/br_multicast.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15695
Уязвимость компонента drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15696
Уязвимость компонента net/sched ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15697
Уязвимость функции snd_utimer_create() компонента sound/core/timer.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15708
Уязвимость компонента drivers/tty/serial/8250 ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2025-15709
Уязвимость компонента netfs ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2025-15710
Уязвимость компонента drivers/crypto/caam ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15711
Уязвимость компонента iio/imu/bno055/bno055.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15712
Уязвимость драйвера rainshadow-cec ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15713
Уязвимость компонента qcom/venus/hfi_venus.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15714
Уязвимость компонента drm/amdkfd ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-03-11
BDU:2025-15715
Уязвимость компонента net/hsr/hsr_slave.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-15
BDU:2025-15716
Уязвимость компонента net/ipv6/seg6_hmac.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-15
BDU:2025-15717
Уязвимость драйвера acpi/pfr_update.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2025-15718
Уязвимость компонента mm/damon/ops-common.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-15
BDU:2025-15724
Уязвимость компонента NFS ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2025-15726
Уязвимость компонентов infiniband/sw/rxe ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15728
Уязвимость компонента s390/char/sclp.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15729
Уязвимость компонента amdgpu_dm.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15730
Уязвимость модуля smb ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15731
Уязвимость драйвера comedi ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15732
Уязвимость компонента comedi/drivers/pcl726.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15733
Уязвимость компонента trace ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2025-12-26
BDU:2025-15738
Уязвимость драйвера drm/nouveau/nvif ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15739
Уязвимость функции qla4xxx_get_ep_fwdb() драйвера qla4xxx ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15740
Уязвимость компонента drm/amd/display ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15741
Уязвимость драйвера ppp ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15742
Уязвимость компонента arch/s390/boot/vmem.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15743
Уязвимость компонента netfilter ядра операционной системы Linux, позволяющая нарушителю получить доступ к конфиденциальным данным, нарушить их целостность, а также вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15767
Уязвимость ядра операционной системы Linux, связанная с чтением за границами буфера памяти, позволяющая нарушителю нарушить целостность данных, а также вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15830
Уязвимость компонента net ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2026-01372
Уязвимость функции flush_cache_vmap() модуля arch/parisc/kernel/cache.c поддержки архитектуры PARISC ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-03-12
BDU:2026-02726
Уязвимость функции ax88772_init_mdio() в модуле drivers/net/usb/asix_devices.c драйвера сетевых адаптеров USB ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2026-02851
Уязвимость функции smc_listen_work() модуля net/smc/af_smc.c реализации семейства протоколов сокетов SMC ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2026-02859
Уязвимость функции adf_dev_shutdown() модуля drivers/crypto/intel/qat/qat_common/adf_init.c ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на конфиденциальность, целостность и доступность защищаемой информации
BDU:2026-03088
Уязвимость функции capabilities_show() модуля drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c драйвера инфраструктуры прямого рендеринга (DRI) видеокарт AMD ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2026-03090
Уязвимость функций smb_send_parent_lease_break_noti() и smb_lazy_parent_lease_break_close() модуля fs/smb/server/oplock.c поддержки сервера SMB ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2026-03100
Уязвимость функции dc_destruct() модуля drivers/gpu/drm/amd/display/dc/core/dc.c драйвера инфраструктуры прямого рендеринга (DRI) видеокарт AMD ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-01-08
CVE-2025-38676
In the Linux kernel, the following vulnerability has been resolved: iommu/amd: Avoid stack buffer overflow from kernel cmdline While the kernel command line is considered trusted in most environments, avoid writing 1 byte past the end of "acpiid" if the "str" argument is maximum length.
- https://git.kernel.org/stable/c/0ad8509b468fa1058f4f400a1829f29e4ccc4de8
- https://git.kernel.org/stable/c/4bdb0f78bddbfa77d3ab458a21dd9cec495d317a
- https://git.kernel.org/stable/c/736db11c86f03e717fc4bf771d05efdf10d23acb
- https://git.kernel.org/stable/c/8503d0fcb1086a7cfe26df67ca4bd9bd9e99bdec
- https://git.kernel.org/stable/c/8f80c633cba144f721d38d9380f23d23ab7db10e
- https://git.kernel.org/stable/c/9ff52d3af0ef286535749e14e3fe9eceb39a8349
- https://git.kernel.org/stable/c/a732502bf3bbe859613b6d7b2b0313b11f0474ac
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-38677
In the Linux kernel, the following vulnerability has been resolved:
f2fs: fix to avoid out-of-boundary access in dnode page
As Jiaming Zhang reported:
- https://git.kernel.org/stable/c/6b7784ea07e6aa044f74b39d6b5af5e28746fc81
- https://git.kernel.org/stable/c/77de19b6867f2740cdcb6c9c7e50d522b47847a4
- https://git.kernel.org/stable/c/888aa660144bcb6ec07839da756ee46bfcf7fc53
- https://git.kernel.org/stable/c/901f62efd6e855f93d8b1175540f29f4dc45ba55
- https://git.kernel.org/stable/c/92ef491b506a0f4dd971a3a76f86f2d8f5370180
- https://git.kernel.org/stable/c/a650654365c57407413e9b1f6ff4d539bf2e99ca
- https://git.kernel.org/stable/c/ee4d13f5407cbdf1216cc258f45492075713889a
- https://git.kernel.org/stable/c/f1d5093d9fe9f3c74c123741c88666cc853b79c5
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-38730
In the Linux kernel, the following vulnerability has been resolved: io_uring/net: commit partial buffers on retry Ring provided buffers are potentially only valid within the single execution context in which they were acquired. io_uring deals with this and invalidates them on retry. But on the networking side, if MSG_WAITALL is set, or if the socket is of the streaming type and too little was processed, then it will hang on to the buffer rather than recycle or commit it. This is problematic for two reasons: 1) If someone unregisters the provided buffer ring before a later retry, then the req->buf_list will no longer be valid. 2) If multiple sockers are using the same buffer group, then multiple receives can consume the same memory. This can cause data corruption in the application, as either receive could land in the same userspace buffer. Fix this by disallowing partial retries from pinning a provided buffer across multiple executions, if ring provided buffers are used.
- https://git.kernel.org/stable/c/21a4ddb0f5e933f372808c10b9ac704505751bb1
- https://git.kernel.org/stable/c/2eb7937b5fc7fcd90eab7bebb0181214b61b9283
- https://git.kernel.org/stable/c/3b53dc1c641f2884d4750fc25aaf6c36b90db606
- https://git.kernel.org/stable/c/41b70df5b38bc80967d2e0ed55cc3c3896bba781
- https://git.kernel.org/stable/c/fe9da1812f8697a38f7e30991d568ec199e16059
Modified: 2026-01-09
CVE-2025-38732
In the Linux kernel, the following vulnerability has been resolved: netfilter: nf_reject: don't leak dst refcount for loopback packets recent patches to add a WARN() when replacing skb dst entry found an old bug: WARNING: include/linux/skbuff.h:1165 skb_dst_check_unset include/linux/skbuff.h:1164 [inline] WARNING: include/linux/skbuff.h:1165 skb_dst_set include/linux/skbuff.h:1210 [inline] WARNING: include/linux/skbuff.h:1165 nf_reject_fill_skb_dst+0x2a4/0x330 net/ipv4/netfilter/nf_reject_ipv4.c:234 [..] Call Trace: nf_send_unreach+0x17b/0x6e0 net/ipv4/netfilter/nf_reject_ipv4.c:325 nft_reject_inet_eval+0x4bc/0x690 net/netfilter/nft_reject_inet.c:27 expr_call_ops_eval net/netfilter/nf_tables_core.c:237 [inline] .. This is because blamed commit forgot about loopback packets. Such packets already have a dst_entry attached, even at PRE_ROUTING stage. Instead of checking hook just check if the skb already has a route attached to it.
- https://git.kernel.org/stable/c/51e8531371f90bee742c63775c9a568e5d6bf3c5
- https://git.kernel.org/stable/c/7b8b503c06274ef3c6c1a107743f1ec0d0a53ef8
- https://git.kernel.org/stable/c/82ef97abf22790182f7d433c74960dfd61b99c33
- https://git.kernel.org/stable/c/91a79b792204313153e1bdbbe5acbfc28903b3a5
- https://git.kernel.org/stable/c/a0a3ace2a57887dac1e7c9a724846040c3e31868
- https://git.kernel.org/stable/c/b32e1590a8d22cf7d7f965e46d5576051acf8e42
- https://git.kernel.org/stable/c/b7a885ba25960c91db237c3f83b4285156789bce
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-38733
In the Linux kernel, the following vulnerability has been resolved: s390/mm: Do not map lowcore with identity mapping Since the identity mapping is pinned to address zero the lowcore is always also mapped to address zero, this happens regardless of the relocate_lowcore command line option. If the option is specified the lowcore is mapped twice, instead of only once. This means that NULL pointer accesses will succeed instead of causing an exception (low address protection still applies, but covers only parts). To fix this never map the first two pages of physical memory with the identity mapping.
Modified: 2025-11-25
CVE-2025-38734
In the Linux kernel, the following vulnerability has been resolved:
net/smc: fix UAF on smcsk after smc_listen_out()
BPF CI testing report a UAF issue:
[ 16.446633] BUG: kernel NULL pointer dereference, address: 000000000000003 0
[ 16.447134] #PF: supervisor read access in kernel mod e
[ 16.447516] #PF: error_code(0x0000) - not-present pag e
[ 16.447878] PGD 0 P4D 0
[ 16.448063] Oops: Oops: 0000 [#1] PREEMPT SMP NOPT I
[ 16.448409] CPU: 0 UID: 0 PID: 9 Comm: kworker/0:1 Tainted: G OE 6.13.0-rc3-g89e8a75fda73-dirty #4 2
[ 16.449124] Tainted: [O]=OOT_MODULE, [E]=UNSIGNED_MODUL E
[ 16.449502] Hardware name: QEMU Ubuntu 24.04 PC (i440FX + PIIX, 1996), BIOS 1.16.3-debian-1.16.3-2 04/01/201 4
[ 16.450201] Workqueue: smc_hs_wq smc_listen_wor k
[ 16.450531] RIP: 0010:smc_listen_work+0xc02/0x159 0
[ 16.452158] RSP: 0018:ffffb5ab40053d98 EFLAGS: 0001024 6
[ 16.452526] RAX: 0000000000000001 RBX: 0000000000000002 RCX: 000000000000030 0
[ 16.452994] RDX: 0000000000000280 RSI: 00003513840053f0 RDI: 000000000000000 0
[ 16.453492] RBP: ffffa097808e3800 R08: ffffa09782dba1e0 R09: 000000000000000 5
[ 16.453987] R10: 0000000000000000 R11: 0000000000000000 R12: ffffa0978274640 0
[ 16.454497] R13: 0000000000000000 R14: 0000000000000000 R15: ffffa09782d4092 0
[ 16.454996] FS: 0000000000000000(0000) GS:ffffa097bbc00000(0000) knlGS:000000000000000 0
[ 16.455557] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003 3
[ 16.455961] CR2: 0000000000000030 CR3: 0000000102788004 CR4: 0000000000770ef 0
[ 16.456459] PKRU: 5555555 4
[ 16.456654] Call Trace :
[ 16.456832]
Modified: 2026-01-08
CVE-2025-38735
In the Linux kernel, the following vulnerability has been resolved: gve: prevent ethtool ops after shutdown A crash can occur if an ethtool operation is invoked after shutdown() is called. shutdown() is invoked during system shutdown to stop DMA operations without performing expensive deallocations. It is discouraged to unregister the netdev in this path, so the device may still be visible to userspace and kernel helpers. In gve, shutdown() tears down most internal data structures. If an ethtool operation is dispatched after shutdown(), it will dereference freed or NULL pointers, leading to a kernel panic. While graceful shutdown normally quiesces userspace before invoking the reboot syscall, forced shutdowns (as observed on GCP VMs) can still trigger this path. Fix by calling netif_device_detach() in shutdown(). This marks the device as detached so the ethtool ioctl handler will skip dispatching operations to the driver.
- https://git.kernel.org/stable/c/48a4e89d50e8ea52e800bc7865970b92fcf4647c
- https://git.kernel.org/stable/c/75a9a46d67f46d608205888f9b34e315c1786345
- https://git.kernel.org/stable/c/9d8a41e9a4ff83ff666de811e7f012167cdc00e9
- https://git.kernel.org/stable/c/a7efffeecb881b4649fdc30de020ef910f35d646
- https://git.kernel.org/stable/c/ba51d73408edf815cbaeab148625576c2dd90192
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-38736
In the Linux kernel, the following vulnerability has been resolved: net: usb: asix_devices: Fix PHY address mask in MDIO bus initialization Syzbot reported shift-out-of-bounds exception on MDIO bus initialization. The PHY address should be masked to 5 bits (0-31). Without this mask, invalid PHY addresses could be used, potentially causing issues with MDIO bus operations. Fix this by masking the PHY address with 0x1f (31 decimal) to ensure it stays within the valid range.
- https://git.kernel.org/stable/c/22042ffedd8c2c6db08ccdd6d4273068eddd3c5c
- https://git.kernel.org/stable/c/24ef2f53c07f273bad99173e27ee88d44d135b1c
- https://git.kernel.org/stable/c/523eab02fce458fa6d3c51de5bb055800986953e
- https://git.kernel.org/stable/c/748da80831221ae24b4bc8d7ffb22acd5712a341
- https://git.kernel.org/stable/c/8f141f2a4f2ef8ca865d5921574c3d6535e00a49
- https://git.kernel.org/stable/c/fcb4ce9f729c1d08e53abf9d449340e24c3edee6
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-38737
In the Linux kernel, the following vulnerability has been resolved: cifs: Fix oops due to uninitialised variable Fix smb3_init_transform_rq() to initialise buffer to NULL before calling netfs_alloc_folioq_buffer() as netfs assumes it can append to the buffer it is given. Setting it to NULL means it should start a fresh buffer, but the value is currently undefined.
Modified: 2026-01-07
CVE-2025-39673
In the Linux kernel, the following vulnerability has been resolved: ppp: fix race conditions in ppp_fill_forward_path ppp_fill_forward_path() has two race conditions: 1. The ppp->channels list can change between list_empty() and list_first_entry(), as ppp_lock() is not held. If the only channel is deleted in ppp_disconnect_channel(), list_first_entry() may access an empty head or a freed entry, and trigger a panic. 2. pch->chan can be NULL. When ppp_unregister_channel() is called, pch->chan is set to NULL before pch is removed from ppp->channels. Fix these by using a lockless RCU approach: - Use list_first_or_null_rcu() to safely test and access the first list entry. - Convert list modifications on ppp->channels to their RCU variants and add synchronize_net() after removal. - Check for a NULL pch->chan before dereferencing it.
- https://git.kernel.org/stable/c/0417adf367a0af11adf7ace849af4638cfb573f7
- https://git.kernel.org/stable/c/0f1630be6fcca3f0c63e4b242ad202e5cde28a40
- https://git.kernel.org/stable/c/94731cc551e29511d85aa8dec61a6c071b1f2430
- https://git.kernel.org/stable/c/9a1969fbffc1f1900d92d7594b1b7d8d72ef3dc7
- https://git.kernel.org/stable/c/ca18d751bcc9faf5b7e82e9fae1223d103928181
- https://git.kernel.org/stable/c/f97f6475fdcb3c28ff3c55cc4b7bde632119ec08
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39675
In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: Add null pointer check in mod_hdcp_hdcp1_create_session() The function mod_hdcp_hdcp1_create_session() calls the function get_first_active_display(), but does not check its return value. The return value is a null pointer if the display list is empty. This will lead to a null pointer dereference. Add a null pointer check for get_first_active_display() and return MOD_HDCP_STATUS_DISPLAY_NOT_FOUND if the function return null. This is similar to the commit c3e9826a2202 ("drm/amd/display: Add null pointer check for get_first_active_display()"). (cherry picked from commit 5e43eb3cd731649c4f8b9134f857be62a416c893)
- https://git.kernel.org/stable/c/2af45aadb7b5d3852c76e2d1e985289ada6f48bf
- https://git.kernel.org/stable/c/2ee86b764c54e0d6a5464fb023b630fdf20869cd
- https://git.kernel.org/stable/c/7a2ca2ea64b1b63c8baa94a8f5deb70b2248d119
- https://git.kernel.org/stable/c/857b8387a9777e42b36e0400be99b54c251eaf9a
- https://git.kernel.org/stable/c/97fc94c5fd3c6ac5a13e457d38ee247737b8c4bd
- https://git.kernel.org/stable/c/ee0373b20bb67b1f00a1b25ccd24c8ac996b6446
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39676
In the Linux kernel, the following vulnerability has been resolved: scsi: qla4xxx: Prevent a potential error pointer dereference The qla4xxx_get_ep_fwdb() function is supposed to return NULL on error, but qla4xxx_ep_connect() returns error pointers. Propagating the error pointers will lead to an Oops in the caller, so change the error pointers to NULL.
- https://git.kernel.org/stable/c/325bf7d57c4e2a341e381c5805e454fb69dd78c3
- https://git.kernel.org/stable/c/46288d12d1c30d08fbeffd05abc079f57a43a2d4
- https://git.kernel.org/stable/c/9dcf111dd3e7ed5fce82bb108e3a3fc001c07225
- https://git.kernel.org/stable/c/ad8a9d38d30c691a77c456e72b78f7932d4f234d
- https://git.kernel.org/stable/c/d0225f41ee70611ca88ccb22c8542ecdfa7faea8
- https://git.kernel.org/stable/c/f1424c830d6ce840341aac33fe99c8ac45447ac1
- https://git.kernel.org/stable/c/f4bc3cdfe95115191e24592bbfc15f1d4a705a75
- https://git.kernel.org/stable/c/f5ad0819f902b4b33591791b92a0350fb3692a6b
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39679
In the Linux kernel, the following vulnerability has been resolved: drm/nouveau/nvif: Fix potential memory leak in nvif_vmm_ctor(). When the nvif_vmm_type is invalid, we will return error directly without freeing the args in nvif_vmm_ctor(), which leading a memory leak. Fix it by setting the ret -EINVAL and goto done.
Modified: 2026-01-08
CVE-2025-39681
In the Linux kernel, the following vulnerability has been resolved: x86/cpu/hygon: Add missing resctrl_cpu_detect() in bsp_init helper Since 923f3a2b48bd ("x86/resctrl: Query LLC monitoring properties once during boot") resctrl_cpu_detect() has been moved from common CPU initialization code to the vendor-specific BSP init helper, while Hygon didn't put that call in their code. This triggers a division by zero fault during early booting stage on our machines with X86_FEATURE_CQM* supported, where get_rdt_mon_resources() tries to calculate mon_l3_config with uninitialized boot_cpu_data.x86_cache_occ_scale. Add the missing resctrl_cpu_detect() in the Hygon BSP init helper. [ bp: Massage commit message. ]
- https://git.kernel.org/stable/c/62f12cde10118253348a7540e85606869bd69432
- https://git.kernel.org/stable/c/7207923d8453ebfb35667c1736169f2dd796772e
- https://git.kernel.org/stable/c/873f32201df8876bdb2563e3187e79149427cab4
- https://git.kernel.org/stable/c/a9e5924daa954c9f585c1ca00358afe71d6781c4
- https://git.kernel.org/stable/c/d23264c257a70dbe021b43b3bc2ee16134cd2c69
- https://git.kernel.org/stable/c/d8df126349dad855cdfedd6bbf315bad2e901c2f
- https://git.kernel.org/stable/c/fb81222c1559f89bfe3aa1010f6d112531d55353
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-03-17
CVE-2025-39682
In the Linux kernel, the following vulnerability has been resolved: tls: fix handling of zero-length records on the rx_list Each recvmsg() call must process either - only contiguous DATA records (any number of them) - one non-DATA record If the next record has different type than what has already been processed we break out of the main processing loop. If the record has already been decrypted (which may be the case for TLS 1.3 where we don't know type until decryption) we queue the pending record to the rx_list. Next recvmsg() will pick it up from there. Queuing the skb to rx_list after zero-copy decrypt is not possible, since in that case we decrypted directly to the user space buffer, and we don't have an skb to queue (darg.skb points to the ciphertext skb for access to metadata like length). Only data records are allowed zero-copy, and we break the processing loop after each non-data record. So we should never zero-copy and then find out that the record type has changed. The corner case we missed is when the initial record comes from rx_list, and it's zero length.
- https://git.kernel.org/stable/c/2902c3ebcca52ca845c03182000e8d71d3a5196f
- https://git.kernel.org/stable/c/29c0ce3c8cdb6dc5d61139c937f34cb888a6f42e
- https://git.kernel.org/stable/c/3439c15ae91a517cf3c650ea15a8987699416ad9
- https://git.kernel.org/stable/c/62708b9452f8eb77513115b17c4f8d1a22ebf843
- https://git.kernel.org/stable/c/c09dd3773b5950e9cfb6c9b9a5f6e36d06c62677
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39683
In the Linux kernel, the following vulnerability has been resolved: tracing: Limit access to parser->buffer when trace_get_user failed When the length of the string written to set_ftrace_filter exceeds FTRACE_BUFF_MAX, the following KASAN alarm will be triggered: BUG: KASAN: slab-out-of-bounds in strsep+0x18c/0x1b0 Read of size 1 at addr ffff0000d00bd5ba by task ash/165 CPU: 1 UID: 0 PID: 165 Comm: ash Not tainted 6.16.0-g6bcdbd62bd56-dirty Hardware name: linux,dummy-virt (DT) Call trace: show_stack+0x34/0x50 (C) dump_stack_lvl+0xa0/0x158 print_address_description.constprop.0+0x88/0x398 print_report+0xb0/0x280 kasan_report+0xa4/0xf0 __asan_report_load1_noabort+0x20/0x30 strsep+0x18c/0x1b0 ftrace_process_regex.isra.0+0x100/0x2d8 ftrace_regex_release+0x484/0x618 __fput+0x364/0xa58 ____fput+0x28/0x40 task_work_run+0x154/0x278 do_notify_resume+0x1f0/0x220 el0_svc+0xec/0xf0 el0t_64_sync_handler+0xa0/0xe8 el0t_64_sync+0x1ac/0x1b0 The reason is that trace_get_user will fail when processing a string longer than FTRACE_BUFF_MAX, but not set the end of parser->buffer to 0. Then an OOB access will be triggered in ftrace_regex_release-> ftrace_process_regex->strsep->strpbrk. We can solve this problem by limiting access to parser->buffer when trace_get_user failed.
- https://git.kernel.org/stable/c/3079517a5ba80901fe828a06998da64b9b8749be
- https://git.kernel.org/stable/c/418b448e1d7470da9d4d4797f71782595ee69c49
- https://git.kernel.org/stable/c/41b838420457802f21918df66764b6fbf829d330
- https://git.kernel.org/stable/c/58ff8064cb4c7eddac4da1a59da039ead586950a
- https://git.kernel.org/stable/c/6a909ea83f226803ea0e718f6e88613df9234d58
- https://git.kernel.org/stable/c/b842ef39c2ad6156c13afdec25ecc6792a9b67b9
- https://git.kernel.org/stable/c/d0c68045b8b0f3737ed7bd6b8c83b7887014adee
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39684
In the Linux kernel, the following vulnerability has been resolved: comedi: Fix use of uninitialized memory in do_insn_ioctl() and do_insnlist_ioctl() syzbot reports a KMSAN kernel-infoleak in `do_insn_ioctl()`. A kernel buffer is allocated to hold `insn->n` samples (each of which is an `unsigned int`). For some instruction types, `insn->n` samples are copied back to user-space, unless an error code is being returned. The problem is that not all the instruction handlers that need to return data to userspace fill in the whole `insn->n` samples, so that there is an information leak. There is a similar syzbot report for `do_insnlist_ioctl()`, although it does not have a reproducer for it at the time of writing. One culprit is `insn_rw_emulate_bits()` which is used as the handler for `INSN_READ` or `INSN_WRITE` instructions for subdevices that do not have a specific handler for that instruction, but do have an `INSN_BITS` handler. For `INSN_READ` it only fills in at most 1 sample, so if `insn->n` is greater than 1, the remaining `insn->n - 1` samples copied to userspace will be uninitialized kernel data. Another culprit is `vm80xx_ai_insn_read()` in the "vm80xx" driver. It never returns an error, even if it fails to fill the buffer. Fix it in `do_insn_ioctl()` and `do_insnlist_ioctl()` by making sure that uninitialized parts of the allocated buffer are zeroed before handling each instruction. Thanks to Arnaud Lecomte for their fix to `do_insn_ioctl()`. That fix replaced the call to `kmalloc_array()` with `kcalloc()`, but it is not always necessary to clear the whole buffer.
- https://git.kernel.org/stable/c/3cd212e895ca2d58963fdc6422502b10dd3966bb
- https://git.kernel.org/stable/c/868a1b68dcd9f2805bb86aa64862402f785d8c4a
- https://git.kernel.org/stable/c/aecf0d557ddd95ce68193a5ee1dc4c87415ff08a
- https://git.kernel.org/stable/c/d84f6e77ebe3359394df32ecd97e0d76a25283dc
- https://git.kernel.org/stable/c/f3b0c9ec54736f3b8118f93a473d22e11ee65743
- https://git.kernel.org/stable/c/ff4a7c18799c7fe999fa56c5cf276e13866b8c1a
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39685
In the Linux kernel, the following vulnerability has been resolved: comedi: pcl726: Prevent invalid irq number The reproducer passed in an irq number(0x80008000) that was too large, which triggered the oob. Added an interrupt number check to prevent users from passing in an irq number that was too large. If `it->options[1]` is 31, then `1 << it->options[1]` is still invalid because it shifts a 1-bit into the sign bit (which is UB in C). Possible solutions include reducing the upper bound on the `it->options[1]` value to 30 or lower, or using `1U << it->options[1]`. The old code would just not attempt to request the IRQ if the `options[1]` value were invalid. And it would still configure the device without interrupts even if the call to `request_irq` returned an error. So it would be better to combine this test with the test below.
- https://git.kernel.org/stable/c/0eb4ed2aa261dee228f1668dbfa6d87353e8162d
- https://git.kernel.org/stable/c/5a33d07c94ba91306093e823112a7aa9727549f6
- https://git.kernel.org/stable/c/96cb948408b3adb69df7e451ba7da9d21f814d00
- https://git.kernel.org/stable/c/a3cfcd0c78c80ca7cd80372dc28f77d01be57bf6
- https://git.kernel.org/stable/c/bab220b0bb5af652007e278e8e8357f952b0e1ea
- https://git.kernel.org/stable/c/d8992c9a01f81128f36acb7c5755530e21fcd059
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39686
In the Linux kernel, the following vulnerability has been resolved: comedi: Make insn_rw_emulate_bits() do insn->n samples The `insn_rw_emulate_bits()` function is used as a default handler for `INSN_READ` instructions for subdevices that have a handler for `INSN_BITS` but not for `INSN_READ`. Similarly, it is used as a default handler for `INSN_WRITE` instructions for subdevices that have a handler for `INSN_BITS` but not for `INSN_WRITE`. It works by emulating the `INSN_READ` or `INSN_WRITE` instruction handling with a constructed `INSN_BITS` instruction. However, `INSN_READ` and `INSN_WRITE` instructions are supposed to be able read or write multiple samples, indicated by the `insn->n` value, but `insn_rw_emulate_bits()` currently only handles a single sample. For `INSN_READ`, the comedi core will copy `insn->n` samples back to user-space. (That triggered KASAN kernel-infoleak errors when `insn->n` was greater than 1, but that is being fixed more generally elsewhere in the comedi core.) Make `insn_rw_emulate_bits()` either handle `insn->n` samples, or return an error, to conform to the general expectation for `INSN_READ` and `INSN_WRITE` handlers.
- https://git.kernel.org/stable/c/7afba9221f70d4cbce0f417c558879cba0eb5e66
- https://git.kernel.org/stable/c/842f307a1d115b24f2bcb2415c4e344f11f55930
- https://git.kernel.org/stable/c/92352ed2f9ac422181e381c2430c2d0dfb46faa0
- https://git.kernel.org/stable/c/ab77e85bd3bc006ef40738f26f446a660813da44
- https://git.kernel.org/stable/c/ae8bc1f07bcb31b8636420e03d1f9c3df6219a2b
- https://git.kernel.org/stable/c/dc0a2f142d655700db43de90cb6abf141b73d908
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-03-17
CVE-2025-39687
In the Linux kernel, the following vulnerability has been resolved: iio: light: as73211: Ensure buffer holes are zeroed Given that the buffer is copied to a kfifo that ultimately user space can read, ensure we zero it.
- https://git.kernel.org/stable/c/433b99e922943efdfd62b9a8e3ad1604838181f2
- https://git.kernel.org/stable/c/83f14c4ca1ad78fcfb3e0de07d6d8a0c59550fc2
- https://git.kernel.org/stable/c/8acd9a0eaa8c9a28e385c0a6a56bb821cb549771
- https://git.kernel.org/stable/c/99b508340d0d1b9de0856c48c77898b14c0df7cf
- https://git.kernel.org/stable/c/cce55ca4e7a221d5eb2c0b757a868eacd6344e4a
- https://git.kernel.org/stable/c/d8c5d87a431596e0e02bd7fe3bff952b002a03bb
- https://git.kernel.org/stable/c/fd441fd972067f80861a0b66605c0febb0d038dd
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39689
In the Linux kernel, the following vulnerability has been resolved: ftrace: Also allocate and copy hash for reading of filter files Currently the reader of set_ftrace_filter and set_ftrace_notrace just adds the pointer to the global tracer hash to its iterator. Unlike the writer that allocates a copy of the hash, the reader keeps the pointer to the filter hashes. This is problematic because this pointer is static across function calls that release the locks that can update the global tracer hashes. This can cause UAF and similar bugs. Allocate and copy the hash for reading the filter files like it is done for the writers. This not only fixes UAF bugs, but also makes the code a bit simpler as it doesn't have to differentiate when to free the iterator's hash between writers and readers.
- https://git.kernel.org/stable/c/12064e1880fc9202be75ff668205b1703d92f74f
- https://git.kernel.org/stable/c/3b114a3282ab1a12cb4618a8f45db5d7185e784a
- https://git.kernel.org/stable/c/64db338140d2bad99a0a8c6a118dd60b3e1fb8cb
- https://git.kernel.org/stable/c/a40c69f4f1ed96acbcd62e9b5ff3a596f0a91309
- https://git.kernel.org/stable/c/bfb336cf97df7b37b2b2edec0f69773e06d11955
- https://git.kernel.org/stable/c/c4cd93811e038d19f961985735ef7bb128078dfb
- https://git.kernel.org/stable/c/c591ba1acd081d4980713e47869dd1cc3d963d19
- https://git.kernel.org/stable/c/e0b6b223167e1edde5c82edf38e393c06eda1f13
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39691
In the Linux kernel, the following vulnerability has been resolved:
fs/buffer: fix use-after-free when call bh_read() helper
There's issue as follows:
BUG: KASAN: stack-out-of-bounds in end_buffer_read_sync+0xe3/0x110
Read of size 8 at addr ffffc9000168f7f8 by task swapper/3/0
CPU: 3 UID: 0 PID: 0 Comm: swapper/3 Not tainted 6.16.0-862.14.0.6.x86_64
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996)
Call Trace:
- https://git.kernel.org/stable/c/03b40bf5d0389ca23ae6857ee25789f0e0b47ce8
- https://git.kernel.org/stable/c/042cf48ecf67f72c8b3846c7fac678f472712ff3
- https://git.kernel.org/stable/c/3169edb8945c295cf89120fc6b2c35cfe3ad4c9e
- https://git.kernel.org/stable/c/70a09115da586bf662c3bae9c0c4a1b99251fad9
- https://git.kernel.org/stable/c/7375f22495e7cd1c5b3b5af9dcc4f6dffe34ce49
- https://git.kernel.org/stable/c/90b5193edb323fefbee0e4e5bc39ed89dcc37719
- https://git.kernel.org/stable/c/c58c6b532b7b69537cfd9ef701c7e37cdcf79dc4
- https://git.kernel.org/stable/c/c5aa6ba1127307ab5dc3773eaf40d73a3423841f
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39692
In the Linux kernel, the following vulnerability has been resolved: smb: server: split ksmbd_rdma_stop_listening() out of ksmbd_rdma_destroy() We can't call destroy_workqueue(smb_direct_wq); before stop_sessions()! Otherwise already existing connections try to use smb_direct_wq as a NULL pointer.
- https://git.kernel.org/stable/c/003e6a3150299f681f34cb189aa068018cef6a45
- https://git.kernel.org/stable/c/212eb86f75b4d7b82f3d94aed95ba61103bccb93
- https://git.kernel.org/stable/c/524e90e58a267dad11e23351d9e4b1f941490976
- https://git.kernel.org/stable/c/bac7b996d42e458a94578f4227795a0d4deef6fa
- https://git.kernel.org/stable/c/e41e33400516702427603f8fbbec43c91ede09c0
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39693
In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: Avoid a NULL pointer dereference [WHY] Although unlikely drm_atomic_get_new_connector_state() or drm_atomic_get_old_connector_state() can return NULL. [HOW] Check returns before dereference. (cherry picked from commit 1e5e8d672fec9f2ab352be121be971877bff2af9)
- https://git.kernel.org/stable/c/07b93a5704b0b72002f0c4bd1076214af67dc661
- https://git.kernel.org/stable/c/0c1a486cbe6f9cb194e3c4a8ade4af2a642ba165
- https://git.kernel.org/stable/c/36a6b43573d152736eaf2557fe60580dd73e9350
- https://git.kernel.org/stable/c/6f860abff89417c0354b6ee5bbca188a233c5762
- https://git.kernel.org/stable/c/9c92d12b5cb9d9d88c12ae71794d3a7382fcdec0
- https://git.kernel.org/stable/c/f653dd30839eb4f573a7539e90b8a58ff9bedf2f
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39694
In the Linux kernel, the following vulnerability has been resolved: s390/sclp: Fix SCCB present check Tracing code called by the SCLP interrupt handler contains early exits if the SCCB address associated with an interrupt is NULL. This check is performed after physical to virtual address translation. If the kernel identity mapping does not start at address zero, the resulting virtual address is never zero, so that the NULL checks won't work. Subsequently this may result in incorrect accesses to the first page of the identity mapping. Fix this by introducing a function that handles the NULL case before address translation.
- https://git.kernel.org/stable/c/430fa71027b6ac9bb0ce5532b8d0676777d4219a
- https://git.kernel.org/stable/c/61605c847599fbfdfafe638607841c7d73719081
- https://git.kernel.org/stable/c/86c2825791c3836a8f77a954b9c5ebe6fab410c5
- https://git.kernel.org/stable/c/aa5073ac1a2a274812f3b04c278992e68ff67cc7
- https://git.kernel.org/stable/c/bf83ae3537359af088d6577812ed93113dfbcb7b
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39695
In the Linux kernel, the following vulnerability has been resolved: RDMA/rxe: Flush delayed SKBs while releasing RXE resources When skb packets are sent out, these skb packets still depends on the rxe resources, for example, QP, sk, when these packets are destroyed. If these rxe resources are released when the skb packets are destroyed, the call traces will appear. To avoid skb packets hang too long time in some network devices, a timestamp is added when these skb packets are created. If these skb packets hang too long time in network devices, these network devices can free these skb packets to release rxe resources.
Modified: 2026-01-08
CVE-2025-39697
In the Linux kernel, the following vulnerability has been resolved: NFS: Fix a race when updating an existing write After nfs_lock_and_join_requests() tests for whether the request is still attached to the mapping, nothing prevents a call to nfs_inode_remove_request() from succeeding until we actually lock the page group. The reason is that whoever called nfs_inode_remove_request() doesn't necessarily have a lock on the page group head. So in order to avoid races, let's take the page group lock earlier in nfs_lock_and_join_requests(), and hold it across the removal of the request in nfs_inode_remove_request().
- https://git.kernel.org/stable/c/0ff42a32784e0f2cb46a46da8e9f473538c13e1b
- https://git.kernel.org/stable/c/181feb41f0b268e6288bf9a7b984624d7fe2031d
- https://git.kernel.org/stable/c/202a3432d21ac060629a760fff3b0a39859da3ea
- https://git.kernel.org/stable/c/76d2e3890fb169168c73f2e4f8375c7cc24a765e
- https://git.kernel.org/stable/c/92278ae36935a54e65fef9f8ea8efe7e80481ace
- https://git.kernel.org/stable/c/c32e3c71aaa1c1ba05da88605e2ddd493c58794f
- https://git.kernel.org/stable/c/f230d40147cc37eb3aef4d50e2e2c06ea73d9a77
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39698
In the Linux kernel, the following vulnerability has been resolved: io_uring/futex: ensure io_futex_wait() cleans up properly on failure The io_futex_data is allocated upfront and assigned to the io_kiocb async_data field, but the request isn't marked with REQ_F_ASYNC_DATA at that point. Those two should always go together, as the flag tells io_uring whether the field is valid or not. Additionally, on failure cleanup, the futex handler frees the data but does not clear ->async_data. Clear the data and the flag in the error path as well. Thanks to Trend Micro Zero Day Initiative and particularly ReDress for reporting this.
Modified: 2025-11-25
CVE-2025-39700
In the Linux kernel, the following vulnerability has been resolved:
mm/damon/ops-common: ignore migration request to invalid nodes
damon_migrate_pages() tries migration even if the target node is invalid.
If users mistakenly make such invalid requests via
DAMOS_MIGRATE_{HOT,COLD} action, the below kernel BUG can happen.
[ 7831.883495] BUG: unable to handle page fault for address: 0000000000001f48
[ 7831.884160] #PF: supervisor read access in kernel mode
[ 7831.884681] #PF: error_code(0x0000) - not-present page
[ 7831.885203] PGD 0 P4D 0
[ 7831.885468] Oops: Oops: 0000 [#1] SMP PTI
[ 7831.885852] CPU: 31 UID: 0 PID: 94202 Comm: kdamond.0 Not tainted 6.16.0-rc5-mm-new-damon+ #93 PREEMPT(voluntary)
[ 7831.886913] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.3-4.el9 04/01/2014
[ 7831.887777] RIP: 0010:__alloc_frozen_pages_noprof (include/linux/mmzone.h:1724 include/linux/mmzone.h:1750 mm/page_alloc.c:4936 mm/page_alloc.c:5137)
[...]
[ 7831.895953] Call Trace:
[ 7831.896195]
Modified: 2026-01-08
CVE-2025-39701
In the Linux kernel, the following vulnerability has been resolved: ACPI: pfr_update: Fix the driver update version check The security-version-number check should be used rather than the runtime version check for driver updates. Otherwise, the firmware update would fail when the update binary had a lower runtime version number than the current one. [ rjw: Changelog edits ]
- https://git.kernel.org/stable/c/79300ff532bccbbf654992c7c0863b49a6c3973c
- https://git.kernel.org/stable/c/8151320c747efb22d30b035af989fed0d502176e
- https://git.kernel.org/stable/c/908094681f645d3a78e18ef90561a97029e2df7b
- https://git.kernel.org/stable/c/b00219888c11519ef75d988fa8a780da68ff568e
- https://git.kernel.org/stable/c/cf0a88124e357bffda487cbf3cb612bb97eb97e4
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-03-17
CVE-2025-39702
In the Linux kernel, the following vulnerability has been resolved: ipv6: sr: Fix MAC comparison to be constant-time To prevent timing attacks, MACs need to be compared in constant time. Use the appropriate helper function for this.
- https://git.kernel.org/stable/c/3b348c9c8d2ca2c67559ffd0e258ae7e1107d4f0
- https://git.kernel.org/stable/c/3ddd55cf19ed6cc62def5e3af10c2a9df1b861c3
- https://git.kernel.org/stable/c/86b6d34717fe0570afce07ee79b8eeb40341f831
- https://git.kernel.org/stable/c/a458b2902115b26a25d67393b12ddd57d1216aaa
- https://git.kernel.org/stable/c/b3967c493799e63f648e9c7b6cb063aa2aed04e7
- https://git.kernel.org/stable/c/f7878d47560d61e3f370aca3cebb8f42a55b990a
- https://git.kernel.org/stable/c/ff55a452d56490047f5233cc48c5d933f8586884
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39703
In the Linux kernel, the following vulnerability has been resolved:
net, hsr: reject HSR frame if skb can't hold tag
Receiving HSR frame with insufficient space to hold HSR tag in the skb
can result in a crash (kernel BUG):
[ 45.390915] skbuff: skb_under_panic: text:ffffffff86f32cac len:26 put:14 head:ffff888042418000 data:ffff888042417ff4 tail:0xe end:0x180 dev:bridge_slave_1
[ 45.392559] ------------[ cut here ]------------
[ 45.392912] kernel BUG at net/core/skbuff.c:211!
[ 45.393276] Oops: invalid opcode: 0000 [#1] SMP DEBUG_PAGEALLOC KASAN NOPTI
[ 45.393809] CPU: 1 UID: 0 PID: 2496 Comm: reproducer Not tainted 6.15.0 #12 PREEMPT(undef)
[ 45.394433] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014
[ 45.395273] RIP: 0010:skb_panic+0x15b/0x1d0
- https://git.kernel.org/stable/c/3ae272ab523dd6bdc26e879027ed79feac9dd1b3
- https://git.kernel.org/stable/c/61009439e4bd8d74e705ee15940760321be91d8a
- https://git.kernel.org/stable/c/7af76e9d18a9fd6f8611b3313c86c190f9b6a5a7
- https://git.kernel.org/stable/c/8d9bc4a375a1ba05f7dfa0407de8e510ab9bd14d
- https://git.kernel.org/stable/c/acd69b597bd3f76d3b3d322b84082226c00eeaa4
- https://git.kernel.org/stable/c/b117c41b00902c1a7e24347c405cb82504aeae0b
- https://git.kernel.org/stable/c/b640188b8a6690e685939053c7efdbc7818b5f4e
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39705
In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: fix a Null pointer dereference vulnerability [Why] A null pointer dereference vulnerability exists in the AMD display driver's (DC module) cleanup function dc_destruct(). When display control context (dc->ctx) construction fails (due to memory allocation failure), this pointer remains NULL. During subsequent error handling when dc_destruct() is called, there's no NULL check before dereferencing the perf_trace member (dc->ctx->perf_trace), causing a kernel null pointer dereference crash. [How] Check if dc->ctx is non-NULL before dereferencing. (Updated commit text and removed unnecessary error message) (cherry picked from commit 9dd8e2ba268c636c240a918e0a31e6feaee19404)
Modified: 2026-01-08
CVE-2025-39706
In the Linux kernel, the following vulnerability has been resolved:
drm/amdkfd: Destroy KFD debugfs after destroy KFD wq
Since KFD proc content was moved to kernel debugfs, we can't destroy KFD
debugfs before kfd_process_destroy_wq. Move kfd_process_destroy_wq prior
to kfd_debugfs_fini to fix a kernel NULL pointer problem. It happens
when /sys/kernel/debug/kfd was already destroyed in kfd_debugfs_fini but
kfd_process_destroy_wq calls kfd_debugfs_remove_process. This line
debugfs_remove_recursive(entry->proc_dentry);
tries to remove /sys/kernel/debug/kfd/proc/
- https://git.kernel.org/stable/c/2e58401a24e7b2d4ec619104e1a76590c1284a4c
- https://git.kernel.org/stable/c/74ee7445c3b61c3bd899a54bd82c1982cb3a8206
- https://git.kernel.org/stable/c/910735ded17cc306625e7e1cdcc8102f7ac60994
- https://git.kernel.org/stable/c/96609a51e6134542bf90e053c2cd2fe4f61ebce3
- https://git.kernel.org/stable/c/fc35c955da799ba62f6f977d58e0866d0251e3f8
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39707
In the Linux kernel, the following vulnerability has been resolved: drm/amdgpu: check if hubbub is NULL in debugfs/amdgpu_dm_capabilities HUBBUB structure is not initialized on DCE hardware, so check if it is NULL to avoid null dereference while accessing amdgpu_dm_capabilities file in debugfs.
Modified: 2026-01-08
CVE-2025-39709
In the Linux kernel, the following vulnerability has been resolved: media: venus: protect against spurious interrupts during probe Make sure the interrupt handler is initialized before the interrupt is registered. If the IRQ is registered before hfi_create(), it's possible that an interrupt fires before the handler setup is complete, leading to a NULL dereference. This error condition has been observed during system boot on Rb3Gen2.
- https://git.kernel.org/stable/c/18c2b2bd982b8546312c9a7895515672169f28e0
- https://git.kernel.org/stable/c/3200144a2fa4209dc084a19941b9b203b43580f0
- https://git.kernel.org/stable/c/37cc0ac889b018097c217c5929fd6dc2aed636a1
- https://git.kernel.org/stable/c/639eb587f977c02423f4762467055b23902b4131
- https://git.kernel.org/stable/c/88cf63c2599761c48dec8f618d57dccf8f6f4b53
- https://git.kernel.org/stable/c/9db6a78bc5e418e0064e2248c8f3b9b9e8418646
- https://git.kernel.org/stable/c/e796028b4835af00d9a38ebbb208ec3a6634702a
- https://git.kernel.org/stable/c/f54be97bc69b1096198b6717c150dec69f2a1b4d
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-12
CVE-2025-39710
In the Linux kernel, the following vulnerability has been resolved: media: venus: Add a check for packet size after reading from shared memory Add a check to ensure that the packet size does not exceed the number of available words after reading the packet header from shared memory. This ensures that the size provided by the firmware is safe to process and prevent potential out-of-bounds memory access.
- https://git.kernel.org/stable/c/0520c89f6280d2b60ab537d5743601185ee7d8ab
- https://git.kernel.org/stable/c/2d8cea8310a245730816a1fd0c9fa4a5a3bdc68c
- https://git.kernel.org/stable/c/49befc830daa743e051a65468c05c2ff9e8580e6
- https://git.kernel.org/stable/c/7638bae4539dcebc3f68fda74ac35d73618ec440
- https://git.kernel.org/stable/c/ba567c2e52fbcf0e20502746bdaa79e911c2e8cf
- https://git.kernel.org/stable/c/ef09b96665f16f3f0bac4e111160e6f24f1f8791
- https://git.kernel.org/stable/c/f0cbd9386f974d310a0d20a02e4a1323e95ea654
- https://git.kernel.org/stable/c/f5b7a943055a4a106d40a03bacd940e28cc1955f
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39711
In the Linux kernel, the following vulnerability has been resolved:
media: ivsc: Fix crash at shutdown due to missing mei_cldev_disable() calls
Both the ACE and CSI driver are missing a mei_cldev_disable() call in
their remove() function.
This causes the mei_cl client to stay part of the mei_device->file_list
list even though its memory is freed by mei_cl_bus_dev_release() calling
kfree(cldev->cl).
This leads to a use-after-free when mei_vsc_remove() runs mei_stop()
which first removes all mei bus devices calling mei_ace_remove() and
mei_csi_remove() followed by mei_cl_bus_dev_release() and then calls
mei_cl_all_disconnect() which walks over mei_device->file_list dereferecing
the just freed cldev->cl.
And mei_vsc_remove() it self is run at shutdown because of the
platform_device_unregister(tp->pdev) in vsc_tp_shutdown()
When building a kernel with KASAN this leads to the following KASAN report:
[ 106.634504] ==================================================================
[ 106.634623] BUG: KASAN: slab-use-after-free in mei_cl_set_disconnected (drivers/misc/mei/client.c:783) mei
[ 106.634683] Read of size 4 at addr ffff88819cb62018 by task systemd-shutdow/1
[ 106.634729]
[ 106.634767] Tainted: [E]=UNSIGNED_MODULE
[ 106.634770] Hardware name: Dell Inc. XPS 16 9640/09CK4V, BIOS 1.12.0 02/10/2025
[ 106.634773] Call Trace:
[ 106.634777]
Modified: 2025-11-25
CVE-2025-39712
In the Linux kernel, the following vulnerability has been resolved: media: mt9m114: Fix deadlock in get_frame_interval/set_frame_interval Getting / Setting the frame interval using the V4L2 subdev pad ops get_frame_interval/set_frame_interval causes a deadlock, as the subdev state is locked in the [1] but also in the driver itself. In [2] it's described that the caller is responsible to acquire and release the lock in this case. Therefore, acquiring the lock in the driver is wrong. Remove the lock acquisitions/releases from mt9m114_ifp_get_frame_interval() and mt9m114_ifp_set_frame_interval(). [1] drivers/media/v4l2-core/v4l2-subdev.c - line 1129 [2] Documentation/driver-api/media/v4l2-subdev.rst
Modified: 2026-01-07
CVE-2025-39713
In the Linux kernel, the following vulnerability has been resolved: media: rainshadow-cec: fix TOCTOU race condition in rain_interrupt() In the interrupt handler rain_interrupt(), the buffer full check on rain->buf_len is performed before acquiring rain->buf_lock. This creates a Time-of-Check to Time-of-Use (TOCTOU) race condition, as rain->buf_len is concurrently accessed and modified in the work handler rain_irq_work_handler() under the same lock. Multiple interrupt invocations can race, with each reading buf_len before it becomes full and then proceeding. This can lead to both interrupts attempting to write to the buffer, incrementing buf_len beyond its capacity (DATA_SIZE) and causing a buffer overflow. Fix this bug by moving the spin_lock() to before the buffer full check. This ensures that the check and the subsequent buffer modification are performed atomically, preventing the race condition. An corresponding spin_unlock() is added to the overflow path to correctly release the lock. This possible bug was found by an experimental static analysis tool developed by our team.
- https://git.kernel.org/stable/c/1c2769dc80255824542ea5a4ff1a07dcdeb1603f
- https://git.kernel.org/stable/c/2964dbe631fd21ad7873b1752b895548d3c12496
- https://git.kernel.org/stable/c/3c3e33b7edca7a2d6a96801f287f9faeb684d655
- https://git.kernel.org/stable/c/6aaef1a75985865d8c6c5b65fb54152060faba48
- https://git.kernel.org/stable/c/7af160aea26c7dc9e6734d19306128cce156ec40
- https://git.kernel.org/stable/c/ed905fe7cba03cf22ae0b84cf1b73cd1c070423a
- https://git.kernel.org/stable/c/fbc81e78d75bf28972bc22b1599559557b1a1b83
- https://git.kernel.org/stable/c/ff9dd3db6cd4c6b54a2ecbc58151bea4ec63bc59
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-12
CVE-2025-39714
In the Linux kernel, the following vulnerability has been resolved: media: usbtv: Lock resolution while streaming When an program is streaming (ffplay) and another program (qv4l2) changes the TV standard from NTSC to PAL, the kernel crashes due to trying to copy to unmapped memory. Changing from NTSC to PAL increases the resolution in the usbtv struct, but the video plane buffer isn't adjusted, so it overflows. [hverkuil: call vb2_is_busy instead of vb2_is_streaming]
- https://git.kernel.org/stable/c/3d83d0b5ae5045a7a246ed116b5f6c688a12f9e9
- https://git.kernel.org/stable/c/5427dda195d6baf23028196fd55a0c90f66ffa61
- https://git.kernel.org/stable/c/7e40e0bb778907b2441bff68d73c3eb6b6cd319f
- https://git.kernel.org/stable/c/9f886d21e235c4bd038cb20f6696084304197ab3
- https://git.kernel.org/stable/c/c35e7c7a004ef379a1ae7c7486d4829419acad1d
- https://git.kernel.org/stable/c/c3d75524e10021aa5c223d94da4996640aed46c0
- https://git.kernel.org/stable/c/ee7bade8b9244834229b12b6e1e724939bedd484
- https://git.kernel.org/stable/c/ef9b3c22405192afaa279077ddd45a51db90b83d
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39715
In the Linux kernel, the following vulnerability has been resolved: parisc: Revise gateway LWS calls to probe user read access We use load and stbys,e instructions to trigger memory reference interruptions without writing to memory. Because of the way read access support is implemented, read access interruptions are only triggered at privilege levels 2 and 3. The kernel and gateway page execute at privilege level 0, so this code never triggers a read access interruption. Thus, it is currently possible for user code to execute a LWS compare and swap operation at an address that is read protected at privilege level 3 (PRIV_USER). Fix this by probing read access rights at privilege level 3 and branching to lws_fault if access isn't allowed.
- https://git.kernel.org/stable/c/8bccf47adbf658293528e86960e6d6f736b1c9f7
- https://git.kernel.org/stable/c/9b6af875baba9c4679b55f4561e201485451305f
- https://git.kernel.org/stable/c/bc0a24c24ceebabb5ba65900e332233d79e625e6
- https://git.kernel.org/stable/c/e8b496c52aa0c6572d88db7cab85aeea6f9c194d
- https://git.kernel.org/stable/c/f6334f4ae9a4e962ba74b026e1d965dfdf8cbef8
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39716
In the Linux kernel, the following vulnerability has been resolved: parisc: Revise __get_user() to probe user read access Because of the way read access support is implemented, read access interruptions are only triggered at privilege levels 2 and 3. The kernel executes at privilege level 0, so __get_user() never triggers a read access interruption (code 26). Thus, it is currently possible for user code to access a read protected address via a system call. Fix this by probing read access rights at privilege level 3 (PRIV_USER) and setting __gu_err to -EFAULT (-14) if access isn't allowed. Note the cmpiclr instruction does a 32-bit compare because COND macro doesn't work inside asm.
- https://git.kernel.org/stable/c/28a9b71671fb4a2993ef85b8ef6f117ea63894fe
- https://git.kernel.org/stable/c/4c981077255acc2ed5b3df6e8dd0125c81b626a9
- https://git.kernel.org/stable/c/741b163e440683195b8fd4fc8495fcd0105c6ab7
- https://git.kernel.org/stable/c/89f686a0fb6e473a876a9a60a13aec67a62b9a7e
- https://git.kernel.org/stable/c/f410ef9a032caf98117256b22139c31342d7bb06
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39718
In the Linux kernel, the following vulnerability has been resolved: vsock/virtio: Validate length in packet header before skb_put() When receiving a vsock packet in the guest, only the virtqueue buffer size is validated prior to virtio_vsock_skb_rx_put(). Unfortunately, virtio_vsock_skb_rx_put() uses the length from the packet header as the length argument to skb_put(), potentially resulting in SKB overflow if the host has gone wonky. Validate the length as advertised by the packet header before calling virtio_vsock_skb_rx_put().
- https://git.kernel.org/stable/c/0dab92484474587b82e8e0455839eaf5ac7bf894
- https://git.kernel.org/stable/c/676f03760ca1d69c2470cef36c44dc152494b47c
- https://git.kernel.org/stable/c/969b06bd8b7560efb100a34227619e7d318fbe05
- https://git.kernel.org/stable/c/ee438c492b2e0705d819ac0e25d04fae758d8f8f
- https://git.kernel.org/stable/c/faf332a10372390ce65d0b803888f4b25a388335
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39719
In the Linux kernel, the following vulnerability has been resolved: iio: imu: bno055: fix OOB access of hw_xlate array Fix a potential out-of-bounds array access of the hw_xlate array in bno055.c. In bno055_get_regmask(), hw_xlate was iterated over the length of the vals array instead of the length of the hw_xlate array. In the case of bno055_gyr_scale, the vals array is larger than the hw_xlate array, so this could result in an out-of-bounds access. In practice, this shouldn't happen though because a match should always be found which breaks out of the for loop before it iterates beyond the end of the hw_xlate array. By adding a new hw_xlate_len field to the bno055_sysfs_attr, we can be sure we are iterating over the correct length.
- https://git.kernel.org/stable/c/399b883ec828e436f1a721bf8551b4da8727e65b
- https://git.kernel.org/stable/c/4808ca3aa30ae857454d0b41d2d0bf161a312b45
- https://git.kernel.org/stable/c/50e823a23816b792daf6e8405f8d6045952bb90e
- https://git.kernel.org/stable/c/5c2b601922c064f7be70ae8621277f18d1ffec59
- https://git.kernel.org/stable/c/a0691ab6334f1769acc64ea9e319414a682ff45d
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39720
In the Linux kernel, the following vulnerability has been resolved: ksmbd: fix refcount leak causing resource not released When ksmbd_conn_releasing(opinfo->conn) returns true,the refcount was not decremented properly, causing a refcount leak that prevents the count from reaching zero and the memory from being released.
Modified: 2026-03-17
CVE-2025-39721
In the Linux kernel, the following vulnerability has been resolved: crypto: qat - flush misc workqueue during device shutdown Repeated loading and unloading of a device specific QAT driver, for example qat_4xxx, in a tight loop can lead to a crash due to a use-after-free scenario. This occurs when a power management (PM) interrupt triggers just before the device-specific driver (e.g., qat_4xxx.ko) is unloaded, while the core driver (intel_qat.ko) remains loaded. Since the driver uses a shared workqueue (`qat_misc_wq`) across all devices and owned by intel_qat.ko, a deferred routine from the device-specific driver may still be pending in the queue. If this routine executes after the driver is unloaded, it can dereference freed memory, resulting in a page fault and kernel crash like the following: BUG: unable to handle page fault for address: ffa000002e50a01c #PF: supervisor read access in kernel mode RIP: 0010:pm_bh_handler+0x1d2/0x250 [intel_qat] Call Trace: pm_bh_handler+0x1d2/0x250 [intel_qat] process_one_work+0x171/0x340 worker_thread+0x277/0x3a0 kthread+0xf0/0x120 ret_from_fork+0x2d/0x50 To prevent this, flush the misc workqueue during device shutdown to ensure that all pending work items are completed before the driver is unloaded. Note: This approach may slightly increase shutdown latency if the workqueue contains jobs from other devices, but it ensures correctness and stability.
- https://git.kernel.org/stable/c/3d4df408ba9bad2b205c7fb8afc1836a6a4ca88a
- https://git.kernel.org/stable/c/5858448a6c65d8ee3f8600570d3ce19febcb33be
- https://git.kernel.org/stable/c/e59a52e429e13df3feb34f4853a8e36d121ed937
- https://git.kernel.org/stable/c/fa4c14a82747886d333d8baef0d26da86ba1ccf7
- https://git.kernel.org/stable/c/fe546f5c50fc474daca6bee72caa7ab68a74c33d
Modified: 2025-11-25
CVE-2025-39722
In the Linux kernel, the following vulnerability has been resolved: crypto: caam - Prevent crash on suspend with iMX8QM / iMX8ULP Since the CAAM on these SoCs is managed by another ARM core, called the SECO (Security Controller) on iMX8QM and Secure Enclave on iMX8ULP, which also reserves access to register page 0 suspend operations cannot touch this page. This is similar to when running OPTEE, where OPTEE will reserve page 0. Track this situation using a new state variable no_page0, reflecting if page 0 is reserved elsewhere, either by other management cores in SoC or by OPTEE. Replace the optee_en check in suspend/resume with the new check. optee_en cannot go away as it's needed elsewhere to gate OPTEE specific situations. Fixes the following splat at suspend: Internal error: synchronous external abort: 0000000096000010 [#1] SMP Hardware name: Freescale i.MX8QXP ACU6C (DT) pstate: 60400005 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : readl+0x0/0x18 lr : rd_reg32+0x18/0x3c sp : ffffffc08192ba20 x29: ffffffc08192ba20 x28: ffffff8025190000 x27: 0000000000000000 x26: ffffffc0808ae808 x25: ffffffc080922338 x24: ffffff8020e89090 x23: 0000000000000000 x22: ffffffc080922000 x21: ffffff8020e89010 x20: ffffffc080387ef8 x19: ffffff8020e89010 x18: 000000005d8000d5 x17: 0000000030f35963 x16: 000000008f785f3f x15: 000000003b8ef57c x14: 00000000c418aef8 x13: 00000000f5fea526 x12: 0000000000000001 x11: 0000000000000002 x10: 0000000000000001 x9 : 0000000000000000 x8 : ffffff8025190870 x7 : ffffff8021726880 x6 : 0000000000000002 x5 : ffffff80217268f0 x4 : ffffff8021726880 x3 : ffffffc081200000 x2 : 0000000000000001 x1 : ffffff8020e89010 x0 : ffffffc081200004 Call trace: readl+0x0/0x18 caam_ctrl_suspend+0x30/0xdc dpm_run_callback.constprop.0+0x24/0x5c device_suspend+0x170/0x2e8 dpm_suspend+0xa0/0x104 dpm_suspend_start+0x48/0x50 suspend_devices_and_enter+0x7c/0x45c pm_suspend+0x148/0x160 state_store+0xb4/0xf8 kobj_attr_store+0x14/0x24 sysfs_kf_write+0x38/0x48 kernfs_fop_write_iter+0xb4/0x178 vfs_write+0x118/0x178 ksys_write+0x6c/0xd0 __arm64_sys_write+0x14/0x1c invoke_syscall.constprop.0+0x64/0xb0 do_el0_svc+0x90/0xb0 el0_svc+0x18/0x44 el0t_64_sync_handler+0x88/0x124 el0t_64_sync+0x150/0x154 Code: 88dffc21 88dffc21 5ac00800 d65f03c0 (b9400000)
Modified: 2025-11-25
CVE-2025-39723
In the Linux kernel, the following vulnerability has been resolved: netfs: Fix unbuffered write error handling If all the subrequests in an unbuffered write stream fail, the subrequest collector doesn't update the stream->transferred value and it retains its initial LONG_MAX value. Unfortunately, if all active streams fail, then we take the smallest value of { LONG_MAX, LONG_MAX, ... } as the value to set in wreq->transferred - which is then returned from ->write_iter(). LONG_MAX was chosen as the initial value so that all the streams can be quickly assessed by taking the smallest value of all stream->transferred - but this only works if we've set any of them. Fix this by adding a flag to indicate whether the value in stream->transferred is valid and checking that when we integrate the values. stream->transferred can then be initialised to zero. This was found by running the generic/750 xfstest against cifs with cache=none. It splices data to the target file. Once (if) it has used up all the available scratch space, the writes start failing with ENOSPC. This causes ->write_iter() to fail. However, it was returning wreq->transferred, i.e. LONG_MAX, rather than an error (because it thought the amount transferred was non-zero) and iter_file_splice_write() would then try to clean up that amount of pipe bufferage - leading to an oops when it overran. The kernel log showed: CIFS: VFS: Send error in write = -28 followed by: BUG: kernel NULL pointer dereference, address: 0000000000000008 with: RIP: 0010:iter_file_splice_write+0x3a4/0x520 do_splice+0x197/0x4e0 or: RIP: 0010:pipe_buf_release (include/linux/pipe_fs_i.h:282) iter_file_splice_write (fs/splice.c:755) Also put a warning check into splice to announce if ->write_iter() returned that it had written more than it was asked to.
Modified: 2026-01-12
CVE-2025-39724
In the Linux kernel, the following vulnerability has been resolved: serial: 8250: fix panic due to PSLVERR When the PSLVERR_RESP_EN parameter is set to 1, the device generates an error response if an attempt is made to read an empty RBR (Receive Buffer Register) while the FIFO is enabled. In serial8250_do_startup(), calling serial_port_out(port, UART_LCR, UART_LCR_WLEN8) triggers dw8250_check_lcr(), which invokes dw8250_force_idle() and serial8250_clear_and_reinit_fifos(). The latter function enables the FIFO via serial_out(p, UART_FCR, p->fcr). Execution proceeds to the serial_port_in(port, UART_RX). This satisfies the PSLVERR trigger condition. When another CPU (e.g., using printk()) is accessing the UART (UART is busy), the current CPU fails the check (value & ~UART_LCR_SPAR) == (lcr & ~UART_LCR_SPAR) in dw8250_check_lcr(), causing it to enter dw8250_force_idle(). Put serial_port_out(port, UART_LCR, UART_LCR_WLEN8) under the port->lock to fix this issue. Panic backtrace: [ 0.442336] Oops - unknown exception [#1] [ 0.442343] epc : dw8250_serial_in32+0x1e/0x4a [ 0.442351] ra : serial8250_do_startup+0x2c8/0x88e ... [ 0.442416] console_on_rootfs+0x26/0x70
- https://git.kernel.org/stable/c/0b882f00655afefbc7729c6b5aec86f7a5473a3d
- https://git.kernel.org/stable/c/38c0ea484dedb58cb3a4391229933e16be0d1031
- https://git.kernel.org/stable/c/68c4613e89f000e8198f9ace643082c697921c9f
- https://git.kernel.org/stable/c/7f8fdd4dbffc05982b96caf586f77a014b2a9353
- https://git.kernel.org/stable/c/8e2739478c164147d0774802008528d9e03fb802
- https://git.kernel.org/stable/c/b8ca8e3f75ede308b4d49a6ca5081460be01bdb5
- https://git.kernel.org/stable/c/c826943abf473a3f7260fbadfad65e44db475460
- https://git.kernel.org/stable/c/cb7b3633ed749db8e56f475f43c960652cbd6882
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-09
CVE-2025-39759
In the Linux kernel, the following vulnerability has been resolved: btrfs: qgroup: fix race between quota disable and quota rescan ioctl There's a race between a task disabling quotas and another running the rescan ioctl that can result in a use-after-free of qgroup records from the fs_info->qgroup_tree rbtree. This happens as follows: 1) Task A enters btrfs_ioctl_quota_rescan() -> btrfs_qgroup_rescan(); 2) Task B enters btrfs_quota_disable() and calls btrfs_qgroup_wait_for_completion(), which does nothing because at that point fs_info->qgroup_rescan_running is false (it wasn't set yet by task A); 3) Task B calls btrfs_free_qgroup_config() which starts freeing qgroups from fs_info->qgroup_tree without taking the lock fs_info->qgroup_lock; 4) Task A enters qgroup_rescan_zero_tracking() which starts iterating the fs_info->qgroup_tree tree while holding fs_info->qgroup_lock, but task B is freeing qgroup records from that tree without holding the lock, resulting in a use-after-free. Fix this by taking fs_info->qgroup_lock at btrfs_free_qgroup_config(). Also at btrfs_qgroup_rescan() don't start the rescan worker if quotas were already disabled.
- https://git.kernel.org/stable/c/2fd0f5ceb997f90f4332ccbab6c7e907e6b2d0eb
- https://git.kernel.org/stable/c/7cda0fdde5d9890976861421d207870500f9aace
- https://git.kernel.org/stable/c/b172535ccba12f0cf7d23b3b840989de47fc104d
- https://git.kernel.org/stable/c/c38028ce0d0045ca600b6a8345a0ff92bfb47b66
- https://git.kernel.org/stable/c/dd0b28d877b293b1d7f8727a7de08ae36b6b9ef0
- https://git.kernel.org/stable/c/e1249667750399a48cafcf5945761d39fa584edf
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39765
In the Linux kernel, the following vulnerability has been resolved:
ALSA: timer: fix ida_free call while not allocated
In the snd_utimer_create() function, if the kasprintf() function return
NULL, snd_utimer_put_id() will be called, finally use ida_free()
to free the unallocated id 0.
the syzkaller reported the following information:
------------[ cut here ]------------
ida_free called for id=0 which is not allocated.
WARNING: CPU: 1 PID: 1286 at lib/idr.c:592 ida_free+0x1fd/0x2f0 lib/idr.c:592
Modules linked in:
CPU: 1 UID: 0 PID: 1286 Comm: syz-executor164 Not tainted 6.15.8 #3 PREEMPT(lazy)
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.3-4.fc42 04/01/2014
RIP: 0010:ida_free+0x1fd/0x2f0 lib/idr.c:592
Code: f8 fc 41 83 fc 3e 76 69 e8 70 b2 f8 (...)
RSP: 0018:ffffc900007f79c8 EFLAGS: 00010282
RAX: 0000000000000000 RBX: 1ffff920000fef3b RCX: ffffffff872176a5
RDX: ffff88800369d200 RSI: 0000000000000000 RDI: ffff88800369d200
RBP: 0000000000000000 R08: ffffffff87ba60a5 R09: 0000000000000000
R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000000
R13: 0000000000000002 R14: 0000000000000000 R15: 0000000000000000
FS: 00007f6f1abc1740(0000) GS:ffff8880d76a0000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f6f1ad7a784 CR3: 000000007a6e2000 CR4: 00000000000006f0
Call Trace:
Modified: 2026-01-09
CVE-2025-39766
In the Linux kernel, the following vulnerability has been resolved: net/sched: Make cake_enqueue return NET_XMIT_CN when past buffer_limit The following setup can trigger a WARNING in htb_activate due to the condition: !cl->leaf.q->q.qlen tc qdisc del dev lo root tc qdisc add dev lo root handle 1: htb default 1 tc class add dev lo parent 1: classid 1:1 \ htb rate 64bit tc qdisc add dev lo parent 1:1 handle f: \ cake memlimit 1b ping -I lo -f -c1 -s64 -W0.001 127.0.0.1 This is because the low memlimit leads to a low buffer_limit, which causes packet dropping. However, cake_enqueue still returns NET_XMIT_SUCCESS, causing htb_enqueue to call htb_activate with an empty child qdisc. We should return NET_XMIT_CN when packets are dropped from the same tin and flow. I do not believe return value of NET_XMIT_CN is necessary for packet drops in the case of ack filtering, as that is meant to optimize performance, not to signal congestion.
- https://git.kernel.org/stable/c/0dacfc5372e314d1219f03e64dde3ab495a5a25e
- https://git.kernel.org/stable/c/15de71d06a400f7fdc15bf377a2552b0ec437cf5
- https://git.kernel.org/stable/c/62d591dde4defb1333d202410609c4ddeae060b3
- https://git.kernel.org/stable/c/710866fc0a64eafcb8bacd91bcb1329eb7e5035f
- https://git.kernel.org/stable/c/7689ab22de36f8db19095f6bdf11f28cfde92f5c
- https://git.kernel.org/stable/c/aa12ee1c1bd260943fd6ab556d8635811c332eeb
- https://git.kernel.org/stable/c/de04ddd2980b48caa8d7e24a7db2742917a8b280
- https://git.kernel.org/stable/c/ff57186b2cc39766672c4c0332323933e5faaa88
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39767
In the Linux kernel, the following vulnerability has been resolved: LoongArch: Optimize module load time by optimizing PLT/GOT counting When enabling CONFIG_KASAN, CONFIG_PREEMPT_VOLUNTARY_BUILD and CONFIG_PREEMPT_VOLUNTARY at the same time, there will be soft deadlock, the relevant logs are as follows: rcu: INFO: rcu_sched self-detected stall on CPU ... Call Trace: [<900000000024f9e4>] show_stack+0x5c/0x180 [<90000000002482f4>] dump_stack_lvl+0x94/0xbc [<9000000000224544>] rcu_dump_cpu_stacks+0x1fc/0x280 [<900000000037ac80>] rcu_sched_clock_irq+0x720/0xf88 [<9000000000396c34>] update_process_times+0xb4/0x150 [<90000000003b2474>] tick_nohz_handler+0xf4/0x250 [<9000000000397e28>] __hrtimer_run_queues+0x1d0/0x428 [<9000000000399b2c>] hrtimer_interrupt+0x214/0x538 [<9000000000253634>] constant_timer_interrupt+0x64/0x80 [<9000000000349938>] __handle_irq_event_percpu+0x78/0x1a0 [<9000000000349a78>] handle_irq_event_percpu+0x18/0x88 [<9000000000354c00>] handle_percpu_irq+0x90/0xf0 [<9000000000348c74>] handle_irq_desc+0x94/0xb8 [<9000000001012b28>] handle_cpu_irq+0x68/0xa0 [<9000000001def8c0>] handle_loongarch_irq+0x30/0x48 [<9000000001def958>] do_vint+0x80/0xd0 [<9000000000268a0c>] kasan_mem_to_shadow.part.0+0x2c/0x2a0 [<90000000006344f4>] __asan_load8+0x4c/0x120 [<900000000025c0d0>] module_frob_arch_sections+0x5c8/0x6b8 [<90000000003895f0>] load_module+0x9e0/0x2958 [<900000000038b770>] __do_sys_init_module+0x208/0x2d0 [<9000000001df0c34>] do_syscall+0x94/0x190 [<900000000024d6fc>] handle_syscall+0xbc/0x158 After analysis, this is because the slow speed of loading the amdgpu module leads to the long time occupation of the cpu and then the soft deadlock. When loading a module, module_frob_arch_sections() tries to figure out the number of PLTs/GOTs that will be needed to handle all the RELAs. It will call the count_max_entries() to find in an out-of-order date which counting algorithm has O(n^2) complexity. To make it faster, we sort the relocation list by info and addend. That way, to check for a duplicate relocation, it just needs to compare with the previous entry. This reduces the complexity of the algorithm to O(n log n), as done in commit d4e0340919fb ("arm64/module: Optimize module load time by optimizing PLT counting"). This gives sinificant reduction in module load time for modules with large number of relocations. After applying this patch, the soft deadlock problem has been solved, and the kernel starts normally without "Call Trace". Using the default configuration to test some modules, the results are as follows: Module Size ip_tables 36K fat 143K radeon 2.5MB amdgpu 16MB Without this patch: Module Module load time (ms) Count(PLTs/GOTs) ip_tables 18 59/6 fat 0 162/14 radeon 54 1221/84 amdgpu 1411 4525/1098 With this patch: Module Module load time (ms) Count(PLTs/GOTs) ip_tables 18 59/6 fat 0 162/14 radeon 22 1221/84 amdgpu 45 4525/1098
Modified: 2026-01-16
CVE-2025-39770
In the Linux kernel, the following vulnerability has been resolved:
net: gso: Forbid IPv6 TSO with extensions on devices with only IPV6_CSUM
When performing Generic Segmentation Offload (GSO) on an IPv6 packet that
contains extension headers, the kernel incorrectly requests checksum offload
if the egress device only advertises NETIF_F_IPV6_CSUM feature, which has
a strict contract: it supports checksum offload only for plain TCP or UDP
over IPv6 and explicitly does not support packets with extension headers.
The current GSO logic violates this contract by failing to disable the feature
for packets with extension headers, such as those used in GREoIPv6 tunnels.
This violation results in the device being asked to perform an operation
it cannot support, leading to a `skb_warn_bad_offload` warning and a collapse
of network throughput. While device TSO/USO is correctly bypassed in favor
of software GSO for these packets, the GSO stack must be explicitly told not
to request checksum offload.
Mask NETIF_F_IPV6_CSUM, NETIF_F_TSO6 and NETIF_F_GSO_UDP_L4
in gso_features_check if the IPv6 header contains extension headers to compute
checksum in software.
The exception is a BIG TCP extension, which, as stated in commit
68e068cabd2c6c53 ("net: reenable NETIF_F_IPV6_CSUM offload for BIG TCP packets"):
"The feature is only enabled on devices that support BIG TCP TSO.
The header is only present for PF_PACKET taps like tcpdump,
and not transmitted by physical devices."
kernel log output (truncated):
WARNING: CPU: 1 PID: 5273 at net/core/dev.c:3535 skb_warn_bad_offload+0x81/0x140
...
Call Trace:
- https://git.kernel.org/stable/c/041e2f945f82fdbd6fff577b79c33469430297aa
- https://git.kernel.org/stable/c/2156d9e9f2e483c8c3906c0ea57ea312c1424235
- https://git.kernel.org/stable/c/794ddbb7b63b6828c75967b9bcd43b086716e7a1
- https://git.kernel.org/stable/c/864e3396976ef41de6cc7bc366276bf4e084fff2
- https://git.kernel.org/stable/c/a0478d7e888028f85fa7785ea838ce0ca09398e2
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-16
CVE-2025-39772
In the Linux kernel, the following vulnerability has been resolved: drm/hisilicon/hibmc: fix the hibmc loaded failed bug When hibmc loaded failed, the driver use hibmc_unload to free the resource, but the mutexes in mode.config are not init, which will access an NULL pointer. Just change goto statement to return, because hibnc_hw_init() doesn't need to free anything.
- https://git.kernel.org/stable/c/93a08f856fcc5aaeeecad01f71bef3088588216a
- https://git.kernel.org/stable/c/a4f1b9c57092c48bdc7958abd23403ccaed437b2
- https://git.kernel.org/stable/c/c950e1be3a24d021475b56efdb49daa7fbba63a9
- https://git.kernel.org/stable/c/d3e774266c28aefab3e9db334fdf568f936cae04
- https://git.kernel.org/stable/c/ddf1691f25345699296e642f0f59f2d464722fa3
- https://git.kernel.org/stable/c/f93032e5d68f459601c701f6ab087b5feb3382e8
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-16
CVE-2025-39773
In the Linux kernel, the following vulnerability has been resolved:
net: bridge: fix soft lockup in br_multicast_query_expired()
When set multicast_query_interval to a large value, the local variable
'time' in br_multicast_send_query() may overflow. If the time is smaller
than jiffies, the timer will expire immediately, and then call mod_timer()
again, which creates a loop and may trigger the following soft lockup
issue.
watchdog: BUG: soft lockup - CPU#1 stuck for 221s! [rb_consumer:66]
CPU: 1 UID: 0 PID: 66 Comm: rb_consumer Not tainted 6.16.0+ #259 PREEMPT(none)
Call Trace:
- https://git.kernel.org/stable/c/34171b9e53bd1dc264f5556579f2b04f04435c73
- https://git.kernel.org/stable/c/43e281fde5e76a866a4d10780c35023f16c0e432
- https://git.kernel.org/stable/c/5bf5fce8a0c2a70d063af778fdb5b27238174cdd
- https://git.kernel.org/stable/c/96476b043efb86a94f2badd260f7f99c97bd5893
- https://git.kernel.org/stable/c/bdb19cd0de739870bb3494c815138b9dc30875c4
- https://git.kernel.org/stable/c/d1547bf460baec718b3398365f8de33d25c5f36f
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-16
CVE-2025-39776
In the Linux kernel, the following vulnerability has been resolved:
mm/debug_vm_pgtable: clear page table entries at destroy_args()
The mm/debug_vm_pagetable test allocates manually page table entries for
the tests it runs, using also its manually allocated mm_struct. That in
itself is ok, but when it exits, at destroy_args() it fails to clear those
entries with the *_clear functions.
The problem is that leaves stale entries. If another process allocates an
mm_struct with a pgd at the same address, it may end up running into the
stale entry. This is happening in practice on a debug kernel with
CONFIG_DEBUG_VM_PGTABLE=y, for example this is the output with some extra
debugging I added (it prints a warning trace if pgtables_bytes goes
negative, in addition to the warning at check_mm() function):
[ 2.539353] debug_vm_pgtable: [get_random_vaddr ]: random_vaddr is 0x7ea247140000
[ 2.539366] kmem_cache info
[ 2.539374] kmem_cachep 0x000000002ce82385 - freelist 0x0000000000000000 - offset 0x508
[ 2.539447] debug_vm_pgtable: [init_args ]: args->mm is 0x000000002267cc9e
(...)
[ 2.552800] WARNING: CPU: 5 PID: 116 at include/linux/mm.h:2841 free_pud_range+0x8bc/0x8d0
[ 2.552816] Modules linked in:
[ 2.552843] CPU: 5 UID: 0 PID: 116 Comm: modprobe Not tainted 6.12.0-105.debug_vm2.el10.ppc64le+debug #1 VOLUNTARY
[ 2.552859] Hardware name: IBM,9009-41A POWER9 (architected) 0x4e0202 0xf000005 of:IBM,FW910.00 (VL910_062) hv:phyp pSeries
[ 2.552872] NIP: c0000000007eef3c LR: c0000000007eef30 CTR: c0000000003d8c90
[ 2.552885] REGS: c0000000622e73b0 TRAP: 0700 Not tainted (6.12.0-105.debug_vm2.el10.ppc64le+debug)
[ 2.552899] MSR: 800000000282b033
- https://git.kernel.org/stable/c/47d2a149611b8a94d24add9868c442a4af278658
- https://git.kernel.org/stable/c/561171db3b3eb759ba3f284dba7a76f4476ade03
- https://git.kernel.org/stable/c/61a9f2e5c49f05e3ea2c16674540a075a1b4be6f
- https://git.kernel.org/stable/c/63962ff932ef359925b94be2a88df6b4fd4fed0a
- https://git.kernel.org/stable/c/7bf57a0709cd7c9088cea8de023d6f4fbf2518b0
- https://git.kernel.org/stable/c/dde30854bddfb5d69f30022b53c5955a41088b33
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39779
In the Linux kernel, the following vulnerability has been resolved:
btrfs: subpage: keep TOWRITE tag until folio is cleaned
btrfs_subpage_set_writeback() calls folio_start_writeback() the first time
a folio is written back, and it also clears the PAGECACHE_TAG_TOWRITE tag
even if there are still dirty blocks in the folio. This can break ordering
guarantees, such as those required by btrfs_wait_ordered_extents().
That ordering breakage leads to a real failure. For example, running
generic/464 on a zoned setup will hit the following ASSERT. This happens
because the broken ordering fails to flush existing dirty pages before the
file size is truncated.
assertion failed: !list_empty(&ordered->list) :: 0, in fs/btrfs/zoned.c:1899
------------[ cut here ]------------
kernel BUG at fs/btrfs/zoned.c:1899!
Oops: invalid opcode: 0000 [#1] SMP NOPTI
CPU: 2 UID: 0 PID: 1906169 Comm: kworker/u130:2 Kdump: loaded Not tainted 6.16.0-rc6-BTRFS-ZNS+ #554 PREEMPT(voluntary)
Hardware name: Supermicro Super Server/H12SSL-NT, BIOS 2.0 02/22/2021
Workqueue: btrfs-endio-write btrfs_work_helper [btrfs]
RIP: 0010:btrfs_finish_ordered_zoned.cold+0x50/0x52 [btrfs]
RSP: 0018:ffffc9002efdbd60 EFLAGS: 00010246
RAX: 000000000000004c RBX: ffff88811923c4e0 RCX: 0000000000000000
RDX: 0000000000000000 RSI: ffffffff827e38b1 RDI: 00000000ffffffff
RBP: ffff88810005d000 R08: 00000000ffffdfff R09: ffffffff831051c8
R10: ffffffff83055220 R11: 0000000000000000 R12: ffff8881c2458c00
R13: ffff88811923c540 R14: ffff88811923c5e8 R15: ffff8881c1bd9680
FS: 0000000000000000(0000) GS:ffff88a04acd0000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f907c7a918c CR3: 0000000004024000 CR4: 0000000000350ef0
Call Trace:
Modified: 2025-11-25
CVE-2025-39780
In the Linux kernel, the following vulnerability has been resolved:
sched/ext: Fix invalid task state transitions on class switch
When enabling a sched_ext scheduler, we may trigger invalid task state
transitions, resulting in warnings like the following (which can be
easily reproduced by running the hotplug selftest in a loop):
sched_ext: Invalid task state transition 0 -> 3 for fish[770]
WARNING: CPU: 18 PID: 787 at kernel/sched/ext.c:3862 scx_set_task_state+0x7c/0xc0
...
RIP: 0010:scx_set_task_state+0x7c/0xc0
...
Call Trace:
Modified: 2025-11-25
CVE-2025-39781
In the Linux kernel, the following vulnerability has been resolved: parisc: Drop WARN_ON_ONCE() from flush_cache_vmap I have observed warning to occassionally trigger.
Modified: 2026-01-16
CVE-2025-39782
In the Linux kernel, the following vulnerability has been resolved: jbd2: prevent softlockup in jbd2_log_do_checkpoint() Both jbd2_log_do_checkpoint() and jbd2_journal_shrink_checkpoint_list() periodically release j_list_lock after processing a batch of buffers to avoid long hold times on the j_list_lock. However, since both functions contend for j_list_lock, the combined time spent waiting and processing can be significant. jbd2_journal_shrink_checkpoint_list() explicitly calls cond_resched() when need_resched() is true to avoid softlockups during prolonged operations. But jbd2_log_do_checkpoint() only exits its loop when need_resched() is true, relying on potentially sleeping functions like __flush_batch() or wait_on_buffer() to trigger rescheduling. If those functions do not sleep, the kernel may hit a softlockup. watchdog: BUG: soft lockup - CPU#3 stuck for 156s! [kworker/u129:2:373] CPU: 3 PID: 373 Comm: kworker/u129:2 Kdump: loaded Not tainted 6.6.0+ #10 Hardware name: Huawei TaiShan 2280 /BC11SPCD, BIOS 1.27 06/13/2017 Workqueue: writeback wb_workfn (flush-7:2) pstate: 20000005 (nzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : native_queued_spin_lock_slowpath+0x358/0x418 lr : jbd2_log_do_checkpoint+0x31c/0x438 [jbd2] Call trace: native_queued_spin_lock_slowpath+0x358/0x418 jbd2_log_do_checkpoint+0x31c/0x438 [jbd2] __jbd2_log_wait_for_space+0xfc/0x2f8 [jbd2] add_transaction_credits+0x3bc/0x418 [jbd2] start_this_handle+0xf8/0x560 [jbd2] jbd2__journal_start+0x118/0x228 [jbd2] __ext4_journal_start_sb+0x110/0x188 [ext4] ext4_do_writepages+0x3dc/0x740 [ext4] ext4_writepages+0xa4/0x190 [ext4] do_writepages+0x94/0x228 __writeback_single_inode+0x48/0x318 writeback_sb_inodes+0x204/0x590 __writeback_inodes_wb+0x54/0xf8 wb_writeback+0x2cc/0x3d8 wb_do_writeback+0x2e0/0x2f8 wb_workfn+0x80/0x2a8 process_one_work+0x178/0x3e8 worker_thread+0x234/0x3b8 kthread+0xf0/0x108 ret_from_fork+0x10/0x20 So explicitly call cond_resched() in jbd2_log_do_checkpoint() to avoid softlockup.
- https://git.kernel.org/stable/c/26cb9aad94cb1811d8fae115594cc71fa3d91ab0
- https://git.kernel.org/stable/c/3faac5e1d14c63260fd1bf789d96bde3ab3d9e54
- https://git.kernel.org/stable/c/41f40038de62e8306897cf6840791b268996432a
- https://git.kernel.org/stable/c/429d50cbaff45090d52a1ea850d5de8c14881ee7
- https://git.kernel.org/stable/c/84ff98c1ea19acd3f9389e4bb6061364e943f85e
- https://git.kernel.org/stable/c/9d98cf4632258720f18265a058e62fde120c0151
- https://git.kernel.org/stable/c/f683d611518d30334813eecf9a8c687453e2800e
- https://git.kernel.org/stable/c/f7ee8fd689e6d534f9fd2494b9266f7998082e65
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-16
CVE-2025-39783
In the Linux kernel, the following vulnerability has been resolved: PCI: endpoint: Fix configfs group list head handling Doing a list_del() on the epf_group field of struct pci_epf_driver in pci_epf_remove_cfs() is not correct as this field is a list head, not a list entry. This list_del() call triggers a KASAN warning when an endpoint function driver which has a configfs attribute group is torn down: ================================================================== BUG: KASAN: slab-use-after-free in pci_epf_remove_cfs+0x17c/0x198 Write of size 8 at addr ffff00010f4a0d80 by task rmmod/319 CPU: 3 UID: 0 PID: 319 Comm: rmmod Not tainted 6.16.0-rc2 #1 NONE Hardware name: Radxa ROCK 5B (DT) Call trace: show_stack+0x2c/0x84 (C) dump_stack_lvl+0x70/0x98 print_report+0x17c/0x538 kasan_report+0xb8/0x190 __asan_report_store8_noabort+0x20/0x2c pci_epf_remove_cfs+0x17c/0x198 pci_epf_unregister_driver+0x18/0x30 nvmet_pci_epf_cleanup_module+0x24/0x30 [nvmet_pci_epf] __arm64_sys_delete_module+0x264/0x424 invoke_syscall+0x70/0x260 el0_svc_common.constprop.0+0xac/0x230 do_el0_svc+0x40/0x58 el0_svc+0x48/0xdc el0t_64_sync_handler+0x10c/0x138 el0t_64_sync+0x198/0x19c ... Remove this incorrect list_del() call from pci_epf_remove_cfs().
- https://git.kernel.org/stable/c/0758862386f114d9ab1e23181461bd1e2e9ec4c6
- https://git.kernel.org/stable/c/409af8b9f7b4f23cd0464e71c6cd6fe13c076ae2
- https://git.kernel.org/stable/c/6cf65505523224cab1449d726d2ce8180c2941ee
- https://git.kernel.org/stable/c/80ea6e6904fb2ba4ccb5d909579988466ec65358
- https://git.kernel.org/stable/c/a302bd89db35d8b7e279de4d2b41c16c7f191069
- https://git.kernel.org/stable/c/d5aecddc3452371d9da82cdbb0c715812524b54b
- https://git.kernel.org/stable/c/d79123d79a8154b4318529b7b2ff7e15806f480b
- https://git.kernel.org/stable/c/dc4ffbd571716ff3b171418fb03abe80e720a7b1
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-16
CVE-2025-39787
In the Linux kernel, the following vulnerability has been resolved: soc: qcom: mdt_loader: Ensure we don't read past the ELF header When the MDT loader is used in remoteproc, the ELF header is sanitized beforehand, but that's not necessary the case for other clients. Validate the size of the firmware buffer to ensure that we don't read past the end as we iterate over the header. e_phentsize and e_shentsize are validated as well, to ensure that the assumptions about step size in the traversal are valid.
- https://git.kernel.org/stable/c/0d59ce2bfc3bb13abe6240335a1bf7b96536d022
- https://git.kernel.org/stable/c/1096eb63ecfc8df90b70cd068e6de0c2ff204dfd
- https://git.kernel.org/stable/c/43d26997d88c4056fce0324e72f62556bc7e8e8d
- https://git.kernel.org/stable/c/81278be4eb5f08ba2c68c3055893e61cc03727fe
- https://git.kernel.org/stable/c/87bfabb3b2f46827639173f143aa43f7cfc0a7e6
- https://git.kernel.org/stable/c/981c845f29838e468a9bfa87f784307193a31297
- https://git.kernel.org/stable/c/9f9967fed9d066ed3dae9372b45ffa4f6fccfeef
- https://git.kernel.org/stable/c/e1720eb32acf411c328af6a8c8f556c94535808e
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-16
CVE-2025-39788
In the Linux kernel, the following vulnerability has been resolved: scsi: ufs: exynos: Fix programming of HCI_UTRL_NEXUS_TYPE On Google gs101, the number of UTP transfer request slots (nutrs) is 32, and in this case the driver ends up programming the UTRL_NEXUS_TYPE incorrectly as 0. This is because the left hand side of the shift is 1, which is of type int, i.e. 31 bits wide. Shifting by more than that width results in undefined behaviour. Fix this by switching to the BIT() macro, which applies correct type casting as required. This ensures the correct value is written to UTRL_NEXUS_TYPE (0xffffffff on gs101), and it also fixes a UBSAN shift warning: UBSAN: shift-out-of-bounds in drivers/ufs/host/ufs-exynos.c:1113:21 shift exponent 32 is too large for 32-bit type 'int' For consistency, apply the same change to the nutmrs / UTMRL_NEXUS_TYPE write.
- https://git.kernel.org/stable/c/01510a9e8222f11cce064410f3c2fcf0756c0a08
- https://git.kernel.org/stable/c/01aad16c2257ab8ff33b152b972c9f2e1af47912
- https://git.kernel.org/stable/c/098b2c8ee208c77126839047b9e6e1925bb35baa
- https://git.kernel.org/stable/c/5b9f1ef293428ea9c0871d96fcec2a87c4445832
- https://git.kernel.org/stable/c/6d53b2a134da77eb7fe65c5c7c7a3c193539a78a
- https://git.kernel.org/stable/c/c1f025da8f370a015e412b55cbcc583f91de8316
- https://git.kernel.org/stable/c/dc8fb963742f1a38d284946638f9358bdaa0ddee
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-16
CVE-2025-39790
In the Linux kernel, the following vulnerability has been resolved: bus: mhi: host: Detect events pointing to unexpected TREs When a remote device sends a completion event to the host, it contains a pointer to the consumed TRE. The host uses this pointer to process all of the TREs between it and the host's local copy of the ring's read pointer. This works when processing completion for chained transactions, but can lead to nasty results if the device sends an event for a single-element transaction with a read pointer that is multiple elements ahead of the host's read pointer. For instance, if the host accesses an event ring while the device is updating it, the pointer inside of the event might still point to an old TRE. If the host uses the channel's xfer_cb() to directly free the buffer pointed to by the TRE, the buffer will be double-freed. This behavior was observed on an ep that used upstream EP stack without 'commit 6f18d174b73d ("bus: mhi: ep: Update read pointer only after buffer is written")'. Where the device updated the events ring pointer before updating the event contents, so it left a window where the host was able to access the stale data the event pointed to, before the device had the chance to update them. The usual pattern was that the host received an event pointing to a TRE that is not immediately after the last processed one, so it got treated as if it was a chained transaction, processing all of the TREs in between the two read pointers. This commit aims to harden the host by ensuring transactions where the event points to a TRE that isn't local_rp + 1 are chained. [mani: added stable tag and reworded commit message]
- https://git.kernel.org/stable/c/2ec99b922f4661521927eeada76f431eebfbabc4
- https://git.kernel.org/stable/c/4079c6c59705b96285219b9efc63cab870d757b7
- https://git.kernel.org/stable/c/44e1a079e18f78d6594a715b0c6d7e18c656f7b9
- https://git.kernel.org/stable/c/5bd398e20f0833ae8a1267d4f343591a2dd20185
- https://git.kernel.org/stable/c/5e17429679a8545afe438ce7a82a13a54e8ceabb
- https://git.kernel.org/stable/c/7b3f0e3b60c27f4fcb69927d84987e5fd6240530
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39791
In the Linux kernel, the following vulnerability has been resolved: dm: dm-crypt: Do not partially accept write BIOs with zoned targets Read and write operations issued to a dm-crypt target may be split according to the dm-crypt internal limits defined by the max_read_size and max_write_size module parameters (default is 128 KB). The intent is to improve processing time of large BIOs by splitting them into smaller operations that can be parallelized on different CPUs. For zoned dm-crypt targets, this BIO splitting is still done but without the parallel execution to ensure that the issuing order of write operations to the underlying devices remains sequential. However, the splitting itself causes other problems: 1) Since dm-crypt relies on the block layer zone write plugging to handle zone append emulation using regular write operations, the reminder of a split write BIO will always be plugged into the target zone write plugged. Once the on-going write BIO finishes, this reminder BIO is unplugged and issued from the zone write plug work. If this reminder BIO itself needs to be split, the reminder will be re-issued and plugged again, but that causes a call to a blk_queue_enter(), which may block if a queue freeze operation was initiated. This results in a deadlock as DM submission still holds BIOs that the queue freeze side is waiting for. 2) dm-crypt relies on the emulation done by the block layer using regular write operations for processing zone append operations. This still requires to properly return the written sector as the BIO sector of the original BIO. However, this can be done correctly only and only if there is a single clone BIO used for processing the original zone append operation issued by the user. If the size of a zone append operation is larger than dm-crypt max_write_size, then the orginal BIO will be split and processed as a chain of regular write operations. Such chaining result in an incorrect written sector being returned to the zone append issuer using the original BIO sector. This in turn results in file system data corruptions using xfs or btrfs. Fix this by modifying get_max_request_size() to always return the size of the BIO to avoid it being split with dm_accpet_partial_bio() in crypt_map(). get_max_request_size() is renamed to get_max_request_sectors() to clarify the unit of the value returned and its interface is changed to take a struct dm_target pointer and a pointer to the struct bio being processed. In addition to this change, to ensure that crypt_alloc_buffer() works correctly, set the dm-crypt device max_hw_sectors limit to be at most BIO_MAX_VECS << PAGE_SECTORS_SHIFT (1 MB with a 4KB page architecture). This forces DM core to split write BIOs before passing them to crypt_map(), and thus guaranteeing that dm-crypt can always accept an entire write BIO without needing to split it. This change does not have any effect on the read path of dm-crypt. Read operations can still be split and the BIO fragments processed in parallel. There is also no impact on the performance of the write path given that all zone write BIOs were already processed inline instead of in parallel. This change also does not affect in any way regular dm-crypt block devices.
Modified: 2026-01-16
CVE-2025-39800
In the Linux kernel, the following vulnerability has been resolved: btrfs: abort transaction on unexpected eb generation at btrfs_copy_root() If we find an unexpected generation for the extent buffer we are cloning at btrfs_copy_root(), we just WARN_ON() and don't error out and abort the transaction, meaning we allow to persist metadata with an unexpected generation. Instead of warning only, abort the transaction and return -EUCLEAN.
- https://git.kernel.org/stable/c/33e8f24b52d2796b8cfb28c19a1a7dd6476323a8
- https://git.kernel.org/stable/c/4290e34fb87ae556b12c216efd0ae91583446b7a
- https://git.kernel.org/stable/c/4734255ef39b416864139dcda96a387fe5f33a6a
- https://git.kernel.org/stable/c/da2124719f386b6e5d4d4b1a2e67c440e4d5892f
- https://git.kernel.org/stable/c/f4f5bd9251a4cbe55aaa05725c6c3c32ad1f74b3
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-23
CVE-2025-39801
In the Linux kernel, the following vulnerability has been resolved: usb: dwc3: Remove WARN_ON for device endpoint command timeouts This commit addresses a rarely observed endpoint command timeout which causes kernel panic due to warn when 'panic_on_warn' is enabled and unnecessary call trace prints when 'panic_on_warn' is disabled. It is seen during fast software-controlled connect/disconnect testcases. The following is one such endpoint command timeout that we observed: 1. Connect ======= ->dwc3_thread_interrupt ->dwc3_ep0_interrupt ->configfs_composite_setup ->composite_setup ->usb_ep_queue ->dwc3_gadget_ep0_queue ->__dwc3_gadget_ep0_queue ->__dwc3_ep0_do_control_data ->dwc3_send_gadget_ep_cmd 2. Disconnect ========== ->dwc3_thread_interrupt ->dwc3_gadget_disconnect_interrupt ->dwc3_ep0_reset_state ->dwc3_ep0_end_control_data ->dwc3_send_gadget_ep_cmd In the issue scenario, in Exynos platforms, we observed that control transfers for the previous connect have not yet been completed and end transfer command sent as a part of the disconnect sequence and processing of USB_ENDPOINT_HALT feature request from the host timeout. This maybe an expected scenario since the controller is processing EP commands sent as a part of the previous connect. It maybe better to remove WARN_ON in all places where device endpoint commands are sent to avoid unnecessary kernel panic due to warn.
- https://git.kernel.org/stable/c/45eae113dccaf8e502090ecf5b3d9e9b805add6f
- https://git.kernel.org/stable/c/5a1a847d841505dba2bd85602daf5c218e1d85b8
- https://git.kernel.org/stable/c/84c95dbf5bece56086cdb65a64162af35158bdd9
- https://git.kernel.org/stable/c/db27482b9db340402e05d4e9b75352bbaca51af2
- https://git.kernel.org/stable/c/dfe40159eec6ca63b40133bfa783eee2e3ed829f
- https://git.kernel.org/stable/c/f49697dfba2915a9ff36f94604eb76fa61413929
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Package kernel-image-6.12 updated to version 6.12.44-alt1 for branch sisyphus in task 393472.
Closed vulnerabilities
Modified: 2026-04-15
BDU:2025-12706
Уязвимость функции io_futex_wait() в модуле io_uring/futex.c интерфейса асинхронного ввода/вывода ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на конфиденциальность, целостность и доступность защищаемой информации
Modified: 2026-02-17
BDU:2025-12988
Уязвимость функции recvmsg() ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-14996
Уязвимость компонента drivers/md/dm-crypt.c ядра операционной системы Linux, позволяющая нарушителю нарушить оказать воздействие на целостность и доступность защищаемой информации
Modified: 2026-02-17
BDU:2025-15002
Уязвимость компонента net/vmw_vsock/virtio_transport.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2025-12-26
BDU:2025-15005
Уязвимость компонента media/i2c/mt9m114.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15023
Уязвимость компонента drivers/iommu/amd/init.c ядра операционной системы Linux, позволяющая нарушителю нарушить оказать воздействие на целостность и доступность защищаемой информации
Modified: 2026-04-14
BDU:2025-15028
Уязвимость компонента x86/cpu/hygon ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15190
Уязвимость компонента io_uring/net.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15191
Уязвимость компонента fs/smb/client/smb2ops.c ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на конфиденциальность, целостность и доступность защищаемой информации
Modified: 2026-04-14
BDU:2025-15192
Уязвимость драйвера comedi ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15193
Уязвимость компонента iio/light/as73211.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15194
Уязвимость компонента kernel/trace/ftrace.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15196
Уязвимость компонента fs/buffer.c ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на целостность и доступность защищаемой информации
Modified: 2026-02-16
BDU:2025-15201
Уязвимость компонента qcom/venus/core.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2025-12-26
BDU:2025-15207
Уязвимость драйвера ivsc ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15209
Уязвимость компонента media/usb/usbtv/usbtv-video.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15212
Уязвимость компонента fs/btrfs/qgroup.c ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на конфиденциальность, целостность и доступность защищаемой информации
BDU:2025-15214
Уязвимость компонента kernel/sched/ext.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15220
Уязвимость функции jbd2_log_do_checkpoint() компонента fs/jbd2/checkpoint.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15223
Уязвимость функции pci_epf_remove_cfs() компонента drivers/pci/endpoint/pci-epf-core.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15226
Уязвимость компонента drivers/soc/qcom/mdt_loader.c ядра операционной системы Linux, позволяющая нарушителю получить несанкционированный доступ к защищаемой информации
Modified: 2026-02-16
BDU:2025-15248
Уязвимость функции btrfs_copy_root() компонента btrfs ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15544
Уязвимость компонента arch/parisc/include/asm/uaccess.h ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на конфиденциальность и целостность защищаемой информации
Modified: 2026-02-16
BDU:2025-15545
Уязвимость компонента arch/parisc/kernel/syscall.S ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на конфиденциальность и целостность защищаемой информации
Modified: 2026-04-14
BDU:2025-15546
Уязвимость драйвера gve ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15687
Уязвимость компонента dwc3 ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15690
Уязвимость компонента drivers/bus ядра операционной системы Linux, позволяющая нарушителю получить доступ к конфиденциальным данным, нарушить их целостность, а также вызвать отказ в обслуживании
Modified: 2026-03-11
BDU:2025-15692
Уязвимость компонента ufs-exynos.c ядра операционной системы Linux, позволяющая нарушителю получить доступ к конфиденциальным данным, нарушить их целостность, а также вызвать отказ в обслуживании
Modified: 2026-03-11
BDU:2025-15693
Уязвимость функции destroy_args() компонента mm/debug_vm_pgtable.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15694
Уязвимость функции br_multicast_query_expired() компонента net/bridge/br_multicast.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15695
Уязвимость компонента drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15696
Уязвимость компонента net/sched ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15697
Уязвимость функции snd_utimer_create() компонента sound/core/timer.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15708
Уязвимость компонента drivers/tty/serial/8250 ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2025-15709
Уязвимость компонента netfs ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2025-15710
Уязвимость компонента drivers/crypto/caam ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15711
Уязвимость компонента iio/imu/bno055/bno055.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2025-15712
Уязвимость драйвера rainshadow-cec ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15713
Уязвимость компонента qcom/venus/hfi_venus.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15714
Уязвимость компонента drm/amdkfd ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-03-11
BDU:2025-15715
Уязвимость компонента net/hsr/hsr_slave.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-15
BDU:2025-15716
Уязвимость компонента net/ipv6/seg6_hmac.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-15
BDU:2025-15717
Уязвимость драйвера acpi/pfr_update.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2025-15718
Уязвимость компонента mm/damon/ops-common.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-15
BDU:2025-15724
Уязвимость компонента NFS ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2025-15726
Уязвимость компонентов infiniband/sw/rxe ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15728
Уязвимость компонента s390/char/sclp.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15729
Уязвимость компонента amdgpu_dm.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15730
Уязвимость модуля smb ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15731
Уязвимость драйвера comedi ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15732
Уязвимость компонента comedi/drivers/pcl726.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15733
Уязвимость компонента trace ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2025-12-26
BDU:2025-15738
Уязвимость драйвера drm/nouveau/nvif ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15739
Уязвимость функции qla4xxx_get_ep_fwdb() драйвера qla4xxx ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15740
Уязвимость компонента drm/amd/display ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15741
Уязвимость драйвера ppp ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15742
Уязвимость компонента arch/s390/boot/vmem.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15743
Уязвимость компонента netfilter ядра операционной системы Linux, позволяющая нарушителю получить доступ к конфиденциальным данным, нарушить их целостность, а также вызвать отказ в обслуживании
Modified: 2026-04-14
BDU:2025-15767
Уязвимость ядра операционной системы Linux, связанная с чтением за границами буфера памяти, позволяющая нарушителю нарушить целостность данных, а также вызвать отказ в обслуживании
Modified: 2026-02-16
BDU:2025-15830
Уязвимость компонента net ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-02-17
BDU:2026-01372
Уязвимость функции flush_cache_vmap() модуля arch/parisc/kernel/cache.c поддержки архитектуры PARISC ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-03-12
BDU:2026-02726
Уязвимость функции ax88772_init_mdio() в модуле drivers/net/usb/asix_devices.c драйвера сетевых адаптеров USB ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2026-02851
Уязвимость функции smc_listen_work() модуля net/smc/af_smc.c реализации семейства протоколов сокетов SMC ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2026-02859
Уязвимость функции adf_dev_shutdown() модуля drivers/crypto/intel/qat/qat_common/adf_init.c ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на конфиденциальность, целостность и доступность защищаемой информации
BDU:2026-03088
Уязвимость функции capabilities_show() модуля drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c драйвера инфраструктуры прямого рендеринга (DRI) видеокарт AMD ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2026-03090
Уязвимость функций smb_send_parent_lease_break_noti() и smb_lazy_parent_lease_break_close() модуля fs/smb/server/oplock.c поддержки сервера SMB ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2026-03100
Уязвимость функции dc_destruct() модуля drivers/gpu/drm/amd/display/dc/core/dc.c драйвера инфраструктуры прямого рендеринга (DRI) видеокарт AMD ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2026-01-08
CVE-2025-38676
In the Linux kernel, the following vulnerability has been resolved: iommu/amd: Avoid stack buffer overflow from kernel cmdline While the kernel command line is considered trusted in most environments, avoid writing 1 byte past the end of "acpiid" if the "str" argument is maximum length.
- https://git.kernel.org/stable/c/0ad8509b468fa1058f4f400a1829f29e4ccc4de8
- https://git.kernel.org/stable/c/4bdb0f78bddbfa77d3ab458a21dd9cec495d317a
- https://git.kernel.org/stable/c/736db11c86f03e717fc4bf771d05efdf10d23acb
- https://git.kernel.org/stable/c/8503d0fcb1086a7cfe26df67ca4bd9bd9e99bdec
- https://git.kernel.org/stable/c/8f80c633cba144f721d38d9380f23d23ab7db10e
- https://git.kernel.org/stable/c/9ff52d3af0ef286535749e14e3fe9eceb39a8349
- https://git.kernel.org/stable/c/a732502bf3bbe859613b6d7b2b0313b11f0474ac
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-38677
In the Linux kernel, the following vulnerability has been resolved:
f2fs: fix to avoid out-of-boundary access in dnode page
As Jiaming Zhang reported:
- https://git.kernel.org/stable/c/6b7784ea07e6aa044f74b39d6b5af5e28746fc81
- https://git.kernel.org/stable/c/77de19b6867f2740cdcb6c9c7e50d522b47847a4
- https://git.kernel.org/stable/c/888aa660144bcb6ec07839da756ee46bfcf7fc53
- https://git.kernel.org/stable/c/901f62efd6e855f93d8b1175540f29f4dc45ba55
- https://git.kernel.org/stable/c/92ef491b506a0f4dd971a3a76f86f2d8f5370180
- https://git.kernel.org/stable/c/a650654365c57407413e9b1f6ff4d539bf2e99ca
- https://git.kernel.org/stable/c/ee4d13f5407cbdf1216cc258f45492075713889a
- https://git.kernel.org/stable/c/f1d5093d9fe9f3c74c123741c88666cc853b79c5
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-38730
In the Linux kernel, the following vulnerability has been resolved: io_uring/net: commit partial buffers on retry Ring provided buffers are potentially only valid within the single execution context in which they were acquired. io_uring deals with this and invalidates them on retry. But on the networking side, if MSG_WAITALL is set, or if the socket is of the streaming type and too little was processed, then it will hang on to the buffer rather than recycle or commit it. This is problematic for two reasons: 1) If someone unregisters the provided buffer ring before a later retry, then the req->buf_list will no longer be valid. 2) If multiple sockers are using the same buffer group, then multiple receives can consume the same memory. This can cause data corruption in the application, as either receive could land in the same userspace buffer. Fix this by disallowing partial retries from pinning a provided buffer across multiple executions, if ring provided buffers are used.
- https://git.kernel.org/stable/c/21a4ddb0f5e933f372808c10b9ac704505751bb1
- https://git.kernel.org/stable/c/2eb7937b5fc7fcd90eab7bebb0181214b61b9283
- https://git.kernel.org/stable/c/3b53dc1c641f2884d4750fc25aaf6c36b90db606
- https://git.kernel.org/stable/c/41b70df5b38bc80967d2e0ed55cc3c3896bba781
- https://git.kernel.org/stable/c/fe9da1812f8697a38f7e30991d568ec199e16059
Modified: 2026-01-09
CVE-2025-38732
In the Linux kernel, the following vulnerability has been resolved: netfilter: nf_reject: don't leak dst refcount for loopback packets recent patches to add a WARN() when replacing skb dst entry found an old bug: WARNING: include/linux/skbuff.h:1165 skb_dst_check_unset include/linux/skbuff.h:1164 [inline] WARNING: include/linux/skbuff.h:1165 skb_dst_set include/linux/skbuff.h:1210 [inline] WARNING: include/linux/skbuff.h:1165 nf_reject_fill_skb_dst+0x2a4/0x330 net/ipv4/netfilter/nf_reject_ipv4.c:234 [..] Call Trace: nf_send_unreach+0x17b/0x6e0 net/ipv4/netfilter/nf_reject_ipv4.c:325 nft_reject_inet_eval+0x4bc/0x690 net/netfilter/nft_reject_inet.c:27 expr_call_ops_eval net/netfilter/nf_tables_core.c:237 [inline] .. This is because blamed commit forgot about loopback packets. Such packets already have a dst_entry attached, even at PRE_ROUTING stage. Instead of checking hook just check if the skb already has a route attached to it.
- https://git.kernel.org/stable/c/51e8531371f90bee742c63775c9a568e5d6bf3c5
- https://git.kernel.org/stable/c/7b8b503c06274ef3c6c1a107743f1ec0d0a53ef8
- https://git.kernel.org/stable/c/82ef97abf22790182f7d433c74960dfd61b99c33
- https://git.kernel.org/stable/c/91a79b792204313153e1bdbbe5acbfc28903b3a5
- https://git.kernel.org/stable/c/a0a3ace2a57887dac1e7c9a724846040c3e31868
- https://git.kernel.org/stable/c/b32e1590a8d22cf7d7f965e46d5576051acf8e42
- https://git.kernel.org/stable/c/b7a885ba25960c91db237c3f83b4285156789bce
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-38733
In the Linux kernel, the following vulnerability has been resolved: s390/mm: Do not map lowcore with identity mapping Since the identity mapping is pinned to address zero the lowcore is always also mapped to address zero, this happens regardless of the relocate_lowcore command line option. If the option is specified the lowcore is mapped twice, instead of only once. This means that NULL pointer accesses will succeed instead of causing an exception (low address protection still applies, but covers only parts). To fix this never map the first two pages of physical memory with the identity mapping.
Modified: 2025-11-25
CVE-2025-38734
In the Linux kernel, the following vulnerability has been resolved:
net/smc: fix UAF on smcsk after smc_listen_out()
BPF CI testing report a UAF issue:
[ 16.446633] BUG: kernel NULL pointer dereference, address: 000000000000003 0
[ 16.447134] #PF: supervisor read access in kernel mod e
[ 16.447516] #PF: error_code(0x0000) - not-present pag e
[ 16.447878] PGD 0 P4D 0
[ 16.448063] Oops: Oops: 0000 [#1] PREEMPT SMP NOPT I
[ 16.448409] CPU: 0 UID: 0 PID: 9 Comm: kworker/0:1 Tainted: G OE 6.13.0-rc3-g89e8a75fda73-dirty #4 2
[ 16.449124] Tainted: [O]=OOT_MODULE, [E]=UNSIGNED_MODUL E
[ 16.449502] Hardware name: QEMU Ubuntu 24.04 PC (i440FX + PIIX, 1996), BIOS 1.16.3-debian-1.16.3-2 04/01/201 4
[ 16.450201] Workqueue: smc_hs_wq smc_listen_wor k
[ 16.450531] RIP: 0010:smc_listen_work+0xc02/0x159 0
[ 16.452158] RSP: 0018:ffffb5ab40053d98 EFLAGS: 0001024 6
[ 16.452526] RAX: 0000000000000001 RBX: 0000000000000002 RCX: 000000000000030 0
[ 16.452994] RDX: 0000000000000280 RSI: 00003513840053f0 RDI: 000000000000000 0
[ 16.453492] RBP: ffffa097808e3800 R08: ffffa09782dba1e0 R09: 000000000000000 5
[ 16.453987] R10: 0000000000000000 R11: 0000000000000000 R12: ffffa0978274640 0
[ 16.454497] R13: 0000000000000000 R14: 0000000000000000 R15: ffffa09782d4092 0
[ 16.454996] FS: 0000000000000000(0000) GS:ffffa097bbc00000(0000) knlGS:000000000000000 0
[ 16.455557] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003 3
[ 16.455961] CR2: 0000000000000030 CR3: 0000000102788004 CR4: 0000000000770ef 0
[ 16.456459] PKRU: 5555555 4
[ 16.456654] Call Trace :
[ 16.456832]
Modified: 2026-01-08
CVE-2025-38735
In the Linux kernel, the following vulnerability has been resolved: gve: prevent ethtool ops after shutdown A crash can occur if an ethtool operation is invoked after shutdown() is called. shutdown() is invoked during system shutdown to stop DMA operations without performing expensive deallocations. It is discouraged to unregister the netdev in this path, so the device may still be visible to userspace and kernel helpers. In gve, shutdown() tears down most internal data structures. If an ethtool operation is dispatched after shutdown(), it will dereference freed or NULL pointers, leading to a kernel panic. While graceful shutdown normally quiesces userspace before invoking the reboot syscall, forced shutdowns (as observed on GCP VMs) can still trigger this path. Fix by calling netif_device_detach() in shutdown(). This marks the device as detached so the ethtool ioctl handler will skip dispatching operations to the driver.
- https://git.kernel.org/stable/c/48a4e89d50e8ea52e800bc7865970b92fcf4647c
- https://git.kernel.org/stable/c/75a9a46d67f46d608205888f9b34e315c1786345
- https://git.kernel.org/stable/c/9d8a41e9a4ff83ff666de811e7f012167cdc00e9
- https://git.kernel.org/stable/c/a7efffeecb881b4649fdc30de020ef910f35d646
- https://git.kernel.org/stable/c/ba51d73408edf815cbaeab148625576c2dd90192
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-38736
In the Linux kernel, the following vulnerability has been resolved: net: usb: asix_devices: Fix PHY address mask in MDIO bus initialization Syzbot reported shift-out-of-bounds exception on MDIO bus initialization. The PHY address should be masked to 5 bits (0-31). Without this mask, invalid PHY addresses could be used, potentially causing issues with MDIO bus operations. Fix this by masking the PHY address with 0x1f (31 decimal) to ensure it stays within the valid range.
- https://git.kernel.org/stable/c/22042ffedd8c2c6db08ccdd6d4273068eddd3c5c
- https://git.kernel.org/stable/c/24ef2f53c07f273bad99173e27ee88d44d135b1c
- https://git.kernel.org/stable/c/523eab02fce458fa6d3c51de5bb055800986953e
- https://git.kernel.org/stable/c/748da80831221ae24b4bc8d7ffb22acd5712a341
- https://git.kernel.org/stable/c/8f141f2a4f2ef8ca865d5921574c3d6535e00a49
- https://git.kernel.org/stable/c/fcb4ce9f729c1d08e53abf9d449340e24c3edee6
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-38737
In the Linux kernel, the following vulnerability has been resolved: cifs: Fix oops due to uninitialised variable Fix smb3_init_transform_rq() to initialise buffer to NULL before calling netfs_alloc_folioq_buffer() as netfs assumes it can append to the buffer it is given. Setting it to NULL means it should start a fresh buffer, but the value is currently undefined.
Modified: 2026-01-07
CVE-2025-39673
In the Linux kernel, the following vulnerability has been resolved: ppp: fix race conditions in ppp_fill_forward_path ppp_fill_forward_path() has two race conditions: 1. The ppp->channels list can change between list_empty() and list_first_entry(), as ppp_lock() is not held. If the only channel is deleted in ppp_disconnect_channel(), list_first_entry() may access an empty head or a freed entry, and trigger a panic. 2. pch->chan can be NULL. When ppp_unregister_channel() is called, pch->chan is set to NULL before pch is removed from ppp->channels. Fix these by using a lockless RCU approach: - Use list_first_or_null_rcu() to safely test and access the first list entry. - Convert list modifications on ppp->channels to their RCU variants and add synchronize_net() after removal. - Check for a NULL pch->chan before dereferencing it.
- https://git.kernel.org/stable/c/0417adf367a0af11adf7ace849af4638cfb573f7
- https://git.kernel.org/stable/c/0f1630be6fcca3f0c63e4b242ad202e5cde28a40
- https://git.kernel.org/stable/c/94731cc551e29511d85aa8dec61a6c071b1f2430
- https://git.kernel.org/stable/c/9a1969fbffc1f1900d92d7594b1b7d8d72ef3dc7
- https://git.kernel.org/stable/c/ca18d751bcc9faf5b7e82e9fae1223d103928181
- https://git.kernel.org/stable/c/f97f6475fdcb3c28ff3c55cc4b7bde632119ec08
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39675
In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: Add null pointer check in mod_hdcp_hdcp1_create_session() The function mod_hdcp_hdcp1_create_session() calls the function get_first_active_display(), but does not check its return value. The return value is a null pointer if the display list is empty. This will lead to a null pointer dereference. Add a null pointer check for get_first_active_display() and return MOD_HDCP_STATUS_DISPLAY_NOT_FOUND if the function return null. This is similar to the commit c3e9826a2202 ("drm/amd/display: Add null pointer check for get_first_active_display()"). (cherry picked from commit 5e43eb3cd731649c4f8b9134f857be62a416c893)
- https://git.kernel.org/stable/c/2af45aadb7b5d3852c76e2d1e985289ada6f48bf
- https://git.kernel.org/stable/c/2ee86b764c54e0d6a5464fb023b630fdf20869cd
- https://git.kernel.org/stable/c/7a2ca2ea64b1b63c8baa94a8f5deb70b2248d119
- https://git.kernel.org/stable/c/857b8387a9777e42b36e0400be99b54c251eaf9a
- https://git.kernel.org/stable/c/97fc94c5fd3c6ac5a13e457d38ee247737b8c4bd
- https://git.kernel.org/stable/c/ee0373b20bb67b1f00a1b25ccd24c8ac996b6446
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39676
In the Linux kernel, the following vulnerability has been resolved: scsi: qla4xxx: Prevent a potential error pointer dereference The qla4xxx_get_ep_fwdb() function is supposed to return NULL on error, but qla4xxx_ep_connect() returns error pointers. Propagating the error pointers will lead to an Oops in the caller, so change the error pointers to NULL.
- https://git.kernel.org/stable/c/325bf7d57c4e2a341e381c5805e454fb69dd78c3
- https://git.kernel.org/stable/c/46288d12d1c30d08fbeffd05abc079f57a43a2d4
- https://git.kernel.org/stable/c/9dcf111dd3e7ed5fce82bb108e3a3fc001c07225
- https://git.kernel.org/stable/c/ad8a9d38d30c691a77c456e72b78f7932d4f234d
- https://git.kernel.org/stable/c/d0225f41ee70611ca88ccb22c8542ecdfa7faea8
- https://git.kernel.org/stable/c/f1424c830d6ce840341aac33fe99c8ac45447ac1
- https://git.kernel.org/stable/c/f4bc3cdfe95115191e24592bbfc15f1d4a705a75
- https://git.kernel.org/stable/c/f5ad0819f902b4b33591791b92a0350fb3692a6b
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39679
In the Linux kernel, the following vulnerability has been resolved: drm/nouveau/nvif: Fix potential memory leak in nvif_vmm_ctor(). When the nvif_vmm_type is invalid, we will return error directly without freeing the args in nvif_vmm_ctor(), which leading a memory leak. Fix it by setting the ret -EINVAL and goto done.
Modified: 2026-01-08
CVE-2025-39681
In the Linux kernel, the following vulnerability has been resolved: x86/cpu/hygon: Add missing resctrl_cpu_detect() in bsp_init helper Since 923f3a2b48bd ("x86/resctrl: Query LLC monitoring properties once during boot") resctrl_cpu_detect() has been moved from common CPU initialization code to the vendor-specific BSP init helper, while Hygon didn't put that call in their code. This triggers a division by zero fault during early booting stage on our machines with X86_FEATURE_CQM* supported, where get_rdt_mon_resources() tries to calculate mon_l3_config with uninitialized boot_cpu_data.x86_cache_occ_scale. Add the missing resctrl_cpu_detect() in the Hygon BSP init helper. [ bp: Massage commit message. ]
- https://git.kernel.org/stable/c/62f12cde10118253348a7540e85606869bd69432
- https://git.kernel.org/stable/c/7207923d8453ebfb35667c1736169f2dd796772e
- https://git.kernel.org/stable/c/873f32201df8876bdb2563e3187e79149427cab4
- https://git.kernel.org/stable/c/a9e5924daa954c9f585c1ca00358afe71d6781c4
- https://git.kernel.org/stable/c/d23264c257a70dbe021b43b3bc2ee16134cd2c69
- https://git.kernel.org/stable/c/d8df126349dad855cdfedd6bbf315bad2e901c2f
- https://git.kernel.org/stable/c/fb81222c1559f89bfe3aa1010f6d112531d55353
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-03-17
CVE-2025-39682
In the Linux kernel, the following vulnerability has been resolved: tls: fix handling of zero-length records on the rx_list Each recvmsg() call must process either - only contiguous DATA records (any number of them) - one non-DATA record If the next record has different type than what has already been processed we break out of the main processing loop. If the record has already been decrypted (which may be the case for TLS 1.3 where we don't know type until decryption) we queue the pending record to the rx_list. Next recvmsg() will pick it up from there. Queuing the skb to rx_list after zero-copy decrypt is not possible, since in that case we decrypted directly to the user space buffer, and we don't have an skb to queue (darg.skb points to the ciphertext skb for access to metadata like length). Only data records are allowed zero-copy, and we break the processing loop after each non-data record. So we should never zero-copy and then find out that the record type has changed. The corner case we missed is when the initial record comes from rx_list, and it's zero length.
- https://git.kernel.org/stable/c/2902c3ebcca52ca845c03182000e8d71d3a5196f
- https://git.kernel.org/stable/c/29c0ce3c8cdb6dc5d61139c937f34cb888a6f42e
- https://git.kernel.org/stable/c/3439c15ae91a517cf3c650ea15a8987699416ad9
- https://git.kernel.org/stable/c/62708b9452f8eb77513115b17c4f8d1a22ebf843
- https://git.kernel.org/stable/c/c09dd3773b5950e9cfb6c9b9a5f6e36d06c62677
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39683
In the Linux kernel, the following vulnerability has been resolved: tracing: Limit access to parser->buffer when trace_get_user failed When the length of the string written to set_ftrace_filter exceeds FTRACE_BUFF_MAX, the following KASAN alarm will be triggered: BUG: KASAN: slab-out-of-bounds in strsep+0x18c/0x1b0 Read of size 1 at addr ffff0000d00bd5ba by task ash/165 CPU: 1 UID: 0 PID: 165 Comm: ash Not tainted 6.16.0-g6bcdbd62bd56-dirty Hardware name: linux,dummy-virt (DT) Call trace: show_stack+0x34/0x50 (C) dump_stack_lvl+0xa0/0x158 print_address_description.constprop.0+0x88/0x398 print_report+0xb0/0x280 kasan_report+0xa4/0xf0 __asan_report_load1_noabort+0x20/0x30 strsep+0x18c/0x1b0 ftrace_process_regex.isra.0+0x100/0x2d8 ftrace_regex_release+0x484/0x618 __fput+0x364/0xa58 ____fput+0x28/0x40 task_work_run+0x154/0x278 do_notify_resume+0x1f0/0x220 el0_svc+0xec/0xf0 el0t_64_sync_handler+0xa0/0xe8 el0t_64_sync+0x1ac/0x1b0 The reason is that trace_get_user will fail when processing a string longer than FTRACE_BUFF_MAX, but not set the end of parser->buffer to 0. Then an OOB access will be triggered in ftrace_regex_release-> ftrace_process_regex->strsep->strpbrk. We can solve this problem by limiting access to parser->buffer when trace_get_user failed.
- https://git.kernel.org/stable/c/3079517a5ba80901fe828a06998da64b9b8749be
- https://git.kernel.org/stable/c/418b448e1d7470da9d4d4797f71782595ee69c49
- https://git.kernel.org/stable/c/41b838420457802f21918df66764b6fbf829d330
- https://git.kernel.org/stable/c/58ff8064cb4c7eddac4da1a59da039ead586950a
- https://git.kernel.org/stable/c/6a909ea83f226803ea0e718f6e88613df9234d58
- https://git.kernel.org/stable/c/b842ef39c2ad6156c13afdec25ecc6792a9b67b9
- https://git.kernel.org/stable/c/d0c68045b8b0f3737ed7bd6b8c83b7887014adee
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39684
In the Linux kernel, the following vulnerability has been resolved: comedi: Fix use of uninitialized memory in do_insn_ioctl() and do_insnlist_ioctl() syzbot reports a KMSAN kernel-infoleak in `do_insn_ioctl()`. A kernel buffer is allocated to hold `insn->n` samples (each of which is an `unsigned int`). For some instruction types, `insn->n` samples are copied back to user-space, unless an error code is being returned. The problem is that not all the instruction handlers that need to return data to userspace fill in the whole `insn->n` samples, so that there is an information leak. There is a similar syzbot report for `do_insnlist_ioctl()`, although it does not have a reproducer for it at the time of writing. One culprit is `insn_rw_emulate_bits()` which is used as the handler for `INSN_READ` or `INSN_WRITE` instructions for subdevices that do not have a specific handler for that instruction, but do have an `INSN_BITS` handler. For `INSN_READ` it only fills in at most 1 sample, so if `insn->n` is greater than 1, the remaining `insn->n - 1` samples copied to userspace will be uninitialized kernel data. Another culprit is `vm80xx_ai_insn_read()` in the "vm80xx" driver. It never returns an error, even if it fails to fill the buffer. Fix it in `do_insn_ioctl()` and `do_insnlist_ioctl()` by making sure that uninitialized parts of the allocated buffer are zeroed before handling each instruction. Thanks to Arnaud Lecomte for their fix to `do_insn_ioctl()`. That fix replaced the call to `kmalloc_array()` with `kcalloc()`, but it is not always necessary to clear the whole buffer.
- https://git.kernel.org/stable/c/3cd212e895ca2d58963fdc6422502b10dd3966bb
- https://git.kernel.org/stable/c/868a1b68dcd9f2805bb86aa64862402f785d8c4a
- https://git.kernel.org/stable/c/aecf0d557ddd95ce68193a5ee1dc4c87415ff08a
- https://git.kernel.org/stable/c/d84f6e77ebe3359394df32ecd97e0d76a25283dc
- https://git.kernel.org/stable/c/f3b0c9ec54736f3b8118f93a473d22e11ee65743
- https://git.kernel.org/stable/c/ff4a7c18799c7fe999fa56c5cf276e13866b8c1a
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39685
In the Linux kernel, the following vulnerability has been resolved: comedi: pcl726: Prevent invalid irq number The reproducer passed in an irq number(0x80008000) that was too large, which triggered the oob. Added an interrupt number check to prevent users from passing in an irq number that was too large. If `it->options[1]` is 31, then `1 << it->options[1]` is still invalid because it shifts a 1-bit into the sign bit (which is UB in C). Possible solutions include reducing the upper bound on the `it->options[1]` value to 30 or lower, or using `1U << it->options[1]`. The old code would just not attempt to request the IRQ if the `options[1]` value were invalid. And it would still configure the device without interrupts even if the call to `request_irq` returned an error. So it would be better to combine this test with the test below.
- https://git.kernel.org/stable/c/0eb4ed2aa261dee228f1668dbfa6d87353e8162d
- https://git.kernel.org/stable/c/5a33d07c94ba91306093e823112a7aa9727549f6
- https://git.kernel.org/stable/c/96cb948408b3adb69df7e451ba7da9d21f814d00
- https://git.kernel.org/stable/c/a3cfcd0c78c80ca7cd80372dc28f77d01be57bf6
- https://git.kernel.org/stable/c/bab220b0bb5af652007e278e8e8357f952b0e1ea
- https://git.kernel.org/stable/c/d8992c9a01f81128f36acb7c5755530e21fcd059
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39686
In the Linux kernel, the following vulnerability has been resolved: comedi: Make insn_rw_emulate_bits() do insn->n samples The `insn_rw_emulate_bits()` function is used as a default handler for `INSN_READ` instructions for subdevices that have a handler for `INSN_BITS` but not for `INSN_READ`. Similarly, it is used as a default handler for `INSN_WRITE` instructions for subdevices that have a handler for `INSN_BITS` but not for `INSN_WRITE`. It works by emulating the `INSN_READ` or `INSN_WRITE` instruction handling with a constructed `INSN_BITS` instruction. However, `INSN_READ` and `INSN_WRITE` instructions are supposed to be able read or write multiple samples, indicated by the `insn->n` value, but `insn_rw_emulate_bits()` currently only handles a single sample. For `INSN_READ`, the comedi core will copy `insn->n` samples back to user-space. (That triggered KASAN kernel-infoleak errors when `insn->n` was greater than 1, but that is being fixed more generally elsewhere in the comedi core.) Make `insn_rw_emulate_bits()` either handle `insn->n` samples, or return an error, to conform to the general expectation for `INSN_READ` and `INSN_WRITE` handlers.
- https://git.kernel.org/stable/c/7afba9221f70d4cbce0f417c558879cba0eb5e66
- https://git.kernel.org/stable/c/842f307a1d115b24f2bcb2415c4e344f11f55930
- https://git.kernel.org/stable/c/92352ed2f9ac422181e381c2430c2d0dfb46faa0
- https://git.kernel.org/stable/c/ab77e85bd3bc006ef40738f26f446a660813da44
- https://git.kernel.org/stable/c/ae8bc1f07bcb31b8636420e03d1f9c3df6219a2b
- https://git.kernel.org/stable/c/dc0a2f142d655700db43de90cb6abf141b73d908
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-03-17
CVE-2025-39687
In the Linux kernel, the following vulnerability has been resolved: iio: light: as73211: Ensure buffer holes are zeroed Given that the buffer is copied to a kfifo that ultimately user space can read, ensure we zero it.
- https://git.kernel.org/stable/c/433b99e922943efdfd62b9a8e3ad1604838181f2
- https://git.kernel.org/stable/c/83f14c4ca1ad78fcfb3e0de07d6d8a0c59550fc2
- https://git.kernel.org/stable/c/8acd9a0eaa8c9a28e385c0a6a56bb821cb549771
- https://git.kernel.org/stable/c/99b508340d0d1b9de0856c48c77898b14c0df7cf
- https://git.kernel.org/stable/c/cce55ca4e7a221d5eb2c0b757a868eacd6344e4a
- https://git.kernel.org/stable/c/d8c5d87a431596e0e02bd7fe3bff952b002a03bb
- https://git.kernel.org/stable/c/fd441fd972067f80861a0b66605c0febb0d038dd
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39689
In the Linux kernel, the following vulnerability has been resolved: ftrace: Also allocate and copy hash for reading of filter files Currently the reader of set_ftrace_filter and set_ftrace_notrace just adds the pointer to the global tracer hash to its iterator. Unlike the writer that allocates a copy of the hash, the reader keeps the pointer to the filter hashes. This is problematic because this pointer is static across function calls that release the locks that can update the global tracer hashes. This can cause UAF and similar bugs. Allocate and copy the hash for reading the filter files like it is done for the writers. This not only fixes UAF bugs, but also makes the code a bit simpler as it doesn't have to differentiate when to free the iterator's hash between writers and readers.
- https://git.kernel.org/stable/c/12064e1880fc9202be75ff668205b1703d92f74f
- https://git.kernel.org/stable/c/3b114a3282ab1a12cb4618a8f45db5d7185e784a
- https://git.kernel.org/stable/c/64db338140d2bad99a0a8c6a118dd60b3e1fb8cb
- https://git.kernel.org/stable/c/a40c69f4f1ed96acbcd62e9b5ff3a596f0a91309
- https://git.kernel.org/stable/c/bfb336cf97df7b37b2b2edec0f69773e06d11955
- https://git.kernel.org/stable/c/c4cd93811e038d19f961985735ef7bb128078dfb
- https://git.kernel.org/stable/c/c591ba1acd081d4980713e47869dd1cc3d963d19
- https://git.kernel.org/stable/c/e0b6b223167e1edde5c82edf38e393c06eda1f13
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39691
In the Linux kernel, the following vulnerability has been resolved:
fs/buffer: fix use-after-free when call bh_read() helper
There's issue as follows:
BUG: KASAN: stack-out-of-bounds in end_buffer_read_sync+0xe3/0x110
Read of size 8 at addr ffffc9000168f7f8 by task swapper/3/0
CPU: 3 UID: 0 PID: 0 Comm: swapper/3 Not tainted 6.16.0-862.14.0.6.x86_64
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996)
Call Trace:
- https://git.kernel.org/stable/c/03b40bf5d0389ca23ae6857ee25789f0e0b47ce8
- https://git.kernel.org/stable/c/042cf48ecf67f72c8b3846c7fac678f472712ff3
- https://git.kernel.org/stable/c/3169edb8945c295cf89120fc6b2c35cfe3ad4c9e
- https://git.kernel.org/stable/c/70a09115da586bf662c3bae9c0c4a1b99251fad9
- https://git.kernel.org/stable/c/7375f22495e7cd1c5b3b5af9dcc4f6dffe34ce49
- https://git.kernel.org/stable/c/90b5193edb323fefbee0e4e5bc39ed89dcc37719
- https://git.kernel.org/stable/c/c58c6b532b7b69537cfd9ef701c7e37cdcf79dc4
- https://git.kernel.org/stable/c/c5aa6ba1127307ab5dc3773eaf40d73a3423841f
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39692
In the Linux kernel, the following vulnerability has been resolved: smb: server: split ksmbd_rdma_stop_listening() out of ksmbd_rdma_destroy() We can't call destroy_workqueue(smb_direct_wq); before stop_sessions()! Otherwise already existing connections try to use smb_direct_wq as a NULL pointer.
- https://git.kernel.org/stable/c/003e6a3150299f681f34cb189aa068018cef6a45
- https://git.kernel.org/stable/c/212eb86f75b4d7b82f3d94aed95ba61103bccb93
- https://git.kernel.org/stable/c/524e90e58a267dad11e23351d9e4b1f941490976
- https://git.kernel.org/stable/c/bac7b996d42e458a94578f4227795a0d4deef6fa
- https://git.kernel.org/stable/c/e41e33400516702427603f8fbbec43c91ede09c0
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39693
In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: Avoid a NULL pointer dereference [WHY] Although unlikely drm_atomic_get_new_connector_state() or drm_atomic_get_old_connector_state() can return NULL. [HOW] Check returns before dereference. (cherry picked from commit 1e5e8d672fec9f2ab352be121be971877bff2af9)
- https://git.kernel.org/stable/c/07b93a5704b0b72002f0c4bd1076214af67dc661
- https://git.kernel.org/stable/c/0c1a486cbe6f9cb194e3c4a8ade4af2a642ba165
- https://git.kernel.org/stable/c/36a6b43573d152736eaf2557fe60580dd73e9350
- https://git.kernel.org/stable/c/6f860abff89417c0354b6ee5bbca188a233c5762
- https://git.kernel.org/stable/c/9c92d12b5cb9d9d88c12ae71794d3a7382fcdec0
- https://git.kernel.org/stable/c/f653dd30839eb4f573a7539e90b8a58ff9bedf2f
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39694
In the Linux kernel, the following vulnerability has been resolved: s390/sclp: Fix SCCB present check Tracing code called by the SCLP interrupt handler contains early exits if the SCCB address associated with an interrupt is NULL. This check is performed after physical to virtual address translation. If the kernel identity mapping does not start at address zero, the resulting virtual address is never zero, so that the NULL checks won't work. Subsequently this may result in incorrect accesses to the first page of the identity mapping. Fix this by introducing a function that handles the NULL case before address translation.
- https://git.kernel.org/stable/c/430fa71027b6ac9bb0ce5532b8d0676777d4219a
- https://git.kernel.org/stable/c/61605c847599fbfdfafe638607841c7d73719081
- https://git.kernel.org/stable/c/86c2825791c3836a8f77a954b9c5ebe6fab410c5
- https://git.kernel.org/stable/c/aa5073ac1a2a274812f3b04c278992e68ff67cc7
- https://git.kernel.org/stable/c/bf83ae3537359af088d6577812ed93113dfbcb7b
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39695
In the Linux kernel, the following vulnerability has been resolved: RDMA/rxe: Flush delayed SKBs while releasing RXE resources When skb packets are sent out, these skb packets still depends on the rxe resources, for example, QP, sk, when these packets are destroyed. If these rxe resources are released when the skb packets are destroyed, the call traces will appear. To avoid skb packets hang too long time in some network devices, a timestamp is added when these skb packets are created. If these skb packets hang too long time in network devices, these network devices can free these skb packets to release rxe resources.
Modified: 2026-01-08
CVE-2025-39697
In the Linux kernel, the following vulnerability has been resolved: NFS: Fix a race when updating an existing write After nfs_lock_and_join_requests() tests for whether the request is still attached to the mapping, nothing prevents a call to nfs_inode_remove_request() from succeeding until we actually lock the page group. The reason is that whoever called nfs_inode_remove_request() doesn't necessarily have a lock on the page group head. So in order to avoid races, let's take the page group lock earlier in nfs_lock_and_join_requests(), and hold it across the removal of the request in nfs_inode_remove_request().
- https://git.kernel.org/stable/c/0ff42a32784e0f2cb46a46da8e9f473538c13e1b
- https://git.kernel.org/stable/c/181feb41f0b268e6288bf9a7b984624d7fe2031d
- https://git.kernel.org/stable/c/202a3432d21ac060629a760fff3b0a39859da3ea
- https://git.kernel.org/stable/c/76d2e3890fb169168c73f2e4f8375c7cc24a765e
- https://git.kernel.org/stable/c/92278ae36935a54e65fef9f8ea8efe7e80481ace
- https://git.kernel.org/stable/c/c32e3c71aaa1c1ba05da88605e2ddd493c58794f
- https://git.kernel.org/stable/c/f230d40147cc37eb3aef4d50e2e2c06ea73d9a77
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39698
In the Linux kernel, the following vulnerability has been resolved: io_uring/futex: ensure io_futex_wait() cleans up properly on failure The io_futex_data is allocated upfront and assigned to the io_kiocb async_data field, but the request isn't marked with REQ_F_ASYNC_DATA at that point. Those two should always go together, as the flag tells io_uring whether the field is valid or not. Additionally, on failure cleanup, the futex handler frees the data but does not clear ->async_data. Clear the data and the flag in the error path as well. Thanks to Trend Micro Zero Day Initiative and particularly ReDress for reporting this.
Modified: 2025-11-25
CVE-2025-39700
In the Linux kernel, the following vulnerability has been resolved:
mm/damon/ops-common: ignore migration request to invalid nodes
damon_migrate_pages() tries migration even if the target node is invalid.
If users mistakenly make such invalid requests via
DAMOS_MIGRATE_{HOT,COLD} action, the below kernel BUG can happen.
[ 7831.883495] BUG: unable to handle page fault for address: 0000000000001f48
[ 7831.884160] #PF: supervisor read access in kernel mode
[ 7831.884681] #PF: error_code(0x0000) - not-present page
[ 7831.885203] PGD 0 P4D 0
[ 7831.885468] Oops: Oops: 0000 [#1] SMP PTI
[ 7831.885852] CPU: 31 UID: 0 PID: 94202 Comm: kdamond.0 Not tainted 6.16.0-rc5-mm-new-damon+ #93 PREEMPT(voluntary)
[ 7831.886913] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.3-4.el9 04/01/2014
[ 7831.887777] RIP: 0010:__alloc_frozen_pages_noprof (include/linux/mmzone.h:1724 include/linux/mmzone.h:1750 mm/page_alloc.c:4936 mm/page_alloc.c:5137)
[...]
[ 7831.895953] Call Trace:
[ 7831.896195]
Modified: 2026-01-08
CVE-2025-39701
In the Linux kernel, the following vulnerability has been resolved: ACPI: pfr_update: Fix the driver update version check The security-version-number check should be used rather than the runtime version check for driver updates. Otherwise, the firmware update would fail when the update binary had a lower runtime version number than the current one. [ rjw: Changelog edits ]
- https://git.kernel.org/stable/c/79300ff532bccbbf654992c7c0863b49a6c3973c
- https://git.kernel.org/stable/c/8151320c747efb22d30b035af989fed0d502176e
- https://git.kernel.org/stable/c/908094681f645d3a78e18ef90561a97029e2df7b
- https://git.kernel.org/stable/c/b00219888c11519ef75d988fa8a780da68ff568e
- https://git.kernel.org/stable/c/cf0a88124e357bffda487cbf3cb612bb97eb97e4
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-03-17
CVE-2025-39702
In the Linux kernel, the following vulnerability has been resolved: ipv6: sr: Fix MAC comparison to be constant-time To prevent timing attacks, MACs need to be compared in constant time. Use the appropriate helper function for this.
- https://git.kernel.org/stable/c/3b348c9c8d2ca2c67559ffd0e258ae7e1107d4f0
- https://git.kernel.org/stable/c/3ddd55cf19ed6cc62def5e3af10c2a9df1b861c3
- https://git.kernel.org/stable/c/86b6d34717fe0570afce07ee79b8eeb40341f831
- https://git.kernel.org/stable/c/a458b2902115b26a25d67393b12ddd57d1216aaa
- https://git.kernel.org/stable/c/b3967c493799e63f648e9c7b6cb063aa2aed04e7
- https://git.kernel.org/stable/c/f7878d47560d61e3f370aca3cebb8f42a55b990a
- https://git.kernel.org/stable/c/ff55a452d56490047f5233cc48c5d933f8586884
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-08
CVE-2025-39703
In the Linux kernel, the following vulnerability has been resolved:
net, hsr: reject HSR frame if skb can't hold tag
Receiving HSR frame with insufficient space to hold HSR tag in the skb
can result in a crash (kernel BUG):
[ 45.390915] skbuff: skb_under_panic: text:ffffffff86f32cac len:26 put:14 head:ffff888042418000 data:ffff888042417ff4 tail:0xe end:0x180 dev:bridge_slave_1
[ 45.392559] ------------[ cut here ]------------
[ 45.392912] kernel BUG at net/core/skbuff.c:211!
[ 45.393276] Oops: invalid opcode: 0000 [#1] SMP DEBUG_PAGEALLOC KASAN NOPTI
[ 45.393809] CPU: 1 UID: 0 PID: 2496 Comm: reproducer Not tainted 6.15.0 #12 PREEMPT(undef)
[ 45.394433] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014
[ 45.395273] RIP: 0010:skb_panic+0x15b/0x1d0
- https://git.kernel.org/stable/c/3ae272ab523dd6bdc26e879027ed79feac9dd1b3
- https://git.kernel.org/stable/c/61009439e4bd8d74e705ee15940760321be91d8a
- https://git.kernel.org/stable/c/7af76e9d18a9fd6f8611b3313c86c190f9b6a5a7
- https://git.kernel.org/stable/c/8d9bc4a375a1ba05f7dfa0407de8e510ab9bd14d
- https://git.kernel.org/stable/c/acd69b597bd3f76d3b3d322b84082226c00eeaa4
- https://git.kernel.org/stable/c/b117c41b00902c1a7e24347c405cb82504aeae0b
- https://git.kernel.org/stable/c/b640188b8a6690e685939053c7efdbc7818b5f4e
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39705
In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: fix a Null pointer dereference vulnerability [Why] A null pointer dereference vulnerability exists in the AMD display driver's (DC module) cleanup function dc_destruct(). When display control context (dc->ctx) construction fails (due to memory allocation failure), this pointer remains NULL. During subsequent error handling when dc_destruct() is called, there's no NULL check before dereferencing the perf_trace member (dc->ctx->perf_trace), causing a kernel null pointer dereference crash. [How] Check if dc->ctx is non-NULL before dereferencing. (Updated commit text and removed unnecessary error message) (cherry picked from commit 9dd8e2ba268c636c240a918e0a31e6feaee19404)
Modified: 2026-01-08
CVE-2025-39706
In the Linux kernel, the following vulnerability has been resolved:
drm/amdkfd: Destroy KFD debugfs after destroy KFD wq
Since KFD proc content was moved to kernel debugfs, we can't destroy KFD
debugfs before kfd_process_destroy_wq. Move kfd_process_destroy_wq prior
to kfd_debugfs_fini to fix a kernel NULL pointer problem. It happens
when /sys/kernel/debug/kfd was already destroyed in kfd_debugfs_fini but
kfd_process_destroy_wq calls kfd_debugfs_remove_process. This line
debugfs_remove_recursive(entry->proc_dentry);
tries to remove /sys/kernel/debug/kfd/proc/
- https://git.kernel.org/stable/c/2e58401a24e7b2d4ec619104e1a76590c1284a4c
- https://git.kernel.org/stable/c/74ee7445c3b61c3bd899a54bd82c1982cb3a8206
- https://git.kernel.org/stable/c/910735ded17cc306625e7e1cdcc8102f7ac60994
- https://git.kernel.org/stable/c/96609a51e6134542bf90e053c2cd2fe4f61ebce3
- https://git.kernel.org/stable/c/fc35c955da799ba62f6f977d58e0866d0251e3f8
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39707
In the Linux kernel, the following vulnerability has been resolved: drm/amdgpu: check if hubbub is NULL in debugfs/amdgpu_dm_capabilities HUBBUB structure is not initialized on DCE hardware, so check if it is NULL to avoid null dereference while accessing amdgpu_dm_capabilities file in debugfs.
Modified: 2026-01-08
CVE-2025-39709
In the Linux kernel, the following vulnerability has been resolved: media: venus: protect against spurious interrupts during probe Make sure the interrupt handler is initialized before the interrupt is registered. If the IRQ is registered before hfi_create(), it's possible that an interrupt fires before the handler setup is complete, leading to a NULL dereference. This error condition has been observed during system boot on Rb3Gen2.
- https://git.kernel.org/stable/c/18c2b2bd982b8546312c9a7895515672169f28e0
- https://git.kernel.org/stable/c/3200144a2fa4209dc084a19941b9b203b43580f0
- https://git.kernel.org/stable/c/37cc0ac889b018097c217c5929fd6dc2aed636a1
- https://git.kernel.org/stable/c/639eb587f977c02423f4762467055b23902b4131
- https://git.kernel.org/stable/c/88cf63c2599761c48dec8f618d57dccf8f6f4b53
- https://git.kernel.org/stable/c/9db6a78bc5e418e0064e2248c8f3b9b9e8418646
- https://git.kernel.org/stable/c/e796028b4835af00d9a38ebbb208ec3a6634702a
- https://git.kernel.org/stable/c/f54be97bc69b1096198b6717c150dec69f2a1b4d
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-12
CVE-2025-39710
In the Linux kernel, the following vulnerability has been resolved: media: venus: Add a check for packet size after reading from shared memory Add a check to ensure that the packet size does not exceed the number of available words after reading the packet header from shared memory. This ensures that the size provided by the firmware is safe to process and prevent potential out-of-bounds memory access.
- https://git.kernel.org/stable/c/0520c89f6280d2b60ab537d5743601185ee7d8ab
- https://git.kernel.org/stable/c/2d8cea8310a245730816a1fd0c9fa4a5a3bdc68c
- https://git.kernel.org/stable/c/49befc830daa743e051a65468c05c2ff9e8580e6
- https://git.kernel.org/stable/c/7638bae4539dcebc3f68fda74ac35d73618ec440
- https://git.kernel.org/stable/c/ba567c2e52fbcf0e20502746bdaa79e911c2e8cf
- https://git.kernel.org/stable/c/ef09b96665f16f3f0bac4e111160e6f24f1f8791
- https://git.kernel.org/stable/c/f0cbd9386f974d310a0d20a02e4a1323e95ea654
- https://git.kernel.org/stable/c/f5b7a943055a4a106d40a03bacd940e28cc1955f
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39711
In the Linux kernel, the following vulnerability has been resolved:
media: ivsc: Fix crash at shutdown due to missing mei_cldev_disable() calls
Both the ACE and CSI driver are missing a mei_cldev_disable() call in
their remove() function.
This causes the mei_cl client to stay part of the mei_device->file_list
list even though its memory is freed by mei_cl_bus_dev_release() calling
kfree(cldev->cl).
This leads to a use-after-free when mei_vsc_remove() runs mei_stop()
which first removes all mei bus devices calling mei_ace_remove() and
mei_csi_remove() followed by mei_cl_bus_dev_release() and then calls
mei_cl_all_disconnect() which walks over mei_device->file_list dereferecing
the just freed cldev->cl.
And mei_vsc_remove() it self is run at shutdown because of the
platform_device_unregister(tp->pdev) in vsc_tp_shutdown()
When building a kernel with KASAN this leads to the following KASAN report:
[ 106.634504] ==================================================================
[ 106.634623] BUG: KASAN: slab-use-after-free in mei_cl_set_disconnected (drivers/misc/mei/client.c:783) mei
[ 106.634683] Read of size 4 at addr ffff88819cb62018 by task systemd-shutdow/1
[ 106.634729]
[ 106.634767] Tainted: [E]=UNSIGNED_MODULE
[ 106.634770] Hardware name: Dell Inc. XPS 16 9640/09CK4V, BIOS 1.12.0 02/10/2025
[ 106.634773] Call Trace:
[ 106.634777]
Modified: 2025-11-25
CVE-2025-39712
In the Linux kernel, the following vulnerability has been resolved: media: mt9m114: Fix deadlock in get_frame_interval/set_frame_interval Getting / Setting the frame interval using the V4L2 subdev pad ops get_frame_interval/set_frame_interval causes a deadlock, as the subdev state is locked in the [1] but also in the driver itself. In [2] it's described that the caller is responsible to acquire and release the lock in this case. Therefore, acquiring the lock in the driver is wrong. Remove the lock acquisitions/releases from mt9m114_ifp_get_frame_interval() and mt9m114_ifp_set_frame_interval(). [1] drivers/media/v4l2-core/v4l2-subdev.c - line 1129 [2] Documentation/driver-api/media/v4l2-subdev.rst
Modified: 2026-01-07
CVE-2025-39713
In the Linux kernel, the following vulnerability has been resolved: media: rainshadow-cec: fix TOCTOU race condition in rain_interrupt() In the interrupt handler rain_interrupt(), the buffer full check on rain->buf_len is performed before acquiring rain->buf_lock. This creates a Time-of-Check to Time-of-Use (TOCTOU) race condition, as rain->buf_len is concurrently accessed and modified in the work handler rain_irq_work_handler() under the same lock. Multiple interrupt invocations can race, with each reading buf_len before it becomes full and then proceeding. This can lead to both interrupts attempting to write to the buffer, incrementing buf_len beyond its capacity (DATA_SIZE) and causing a buffer overflow. Fix this bug by moving the spin_lock() to before the buffer full check. This ensures that the check and the subsequent buffer modification are performed atomically, preventing the race condition. An corresponding spin_unlock() is added to the overflow path to correctly release the lock. This possible bug was found by an experimental static analysis tool developed by our team.
- https://git.kernel.org/stable/c/1c2769dc80255824542ea5a4ff1a07dcdeb1603f
- https://git.kernel.org/stable/c/2964dbe631fd21ad7873b1752b895548d3c12496
- https://git.kernel.org/stable/c/3c3e33b7edca7a2d6a96801f287f9faeb684d655
- https://git.kernel.org/stable/c/6aaef1a75985865d8c6c5b65fb54152060faba48
- https://git.kernel.org/stable/c/7af160aea26c7dc9e6734d19306128cce156ec40
- https://git.kernel.org/stable/c/ed905fe7cba03cf22ae0b84cf1b73cd1c070423a
- https://git.kernel.org/stable/c/fbc81e78d75bf28972bc22b1599559557b1a1b83
- https://git.kernel.org/stable/c/ff9dd3db6cd4c6b54a2ecbc58151bea4ec63bc59
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-12
CVE-2025-39714
In the Linux kernel, the following vulnerability has been resolved: media: usbtv: Lock resolution while streaming When an program is streaming (ffplay) and another program (qv4l2) changes the TV standard from NTSC to PAL, the kernel crashes due to trying to copy to unmapped memory. Changing from NTSC to PAL increases the resolution in the usbtv struct, but the video plane buffer isn't adjusted, so it overflows. [hverkuil: call vb2_is_busy instead of vb2_is_streaming]
- https://git.kernel.org/stable/c/3d83d0b5ae5045a7a246ed116b5f6c688a12f9e9
- https://git.kernel.org/stable/c/5427dda195d6baf23028196fd55a0c90f66ffa61
- https://git.kernel.org/stable/c/7e40e0bb778907b2441bff68d73c3eb6b6cd319f
- https://git.kernel.org/stable/c/9f886d21e235c4bd038cb20f6696084304197ab3
- https://git.kernel.org/stable/c/c35e7c7a004ef379a1ae7c7486d4829419acad1d
- https://git.kernel.org/stable/c/c3d75524e10021aa5c223d94da4996640aed46c0
- https://git.kernel.org/stable/c/ee7bade8b9244834229b12b6e1e724939bedd484
- https://git.kernel.org/stable/c/ef9b3c22405192afaa279077ddd45a51db90b83d
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39715
In the Linux kernel, the following vulnerability has been resolved: parisc: Revise gateway LWS calls to probe user read access We use load and stbys,e instructions to trigger memory reference interruptions without writing to memory. Because of the way read access support is implemented, read access interruptions are only triggered at privilege levels 2 and 3. The kernel and gateway page execute at privilege level 0, so this code never triggers a read access interruption. Thus, it is currently possible for user code to execute a LWS compare and swap operation at an address that is read protected at privilege level 3 (PRIV_USER). Fix this by probing read access rights at privilege level 3 and branching to lws_fault if access isn't allowed.
- https://git.kernel.org/stable/c/8bccf47adbf658293528e86960e6d6f736b1c9f7
- https://git.kernel.org/stable/c/9b6af875baba9c4679b55f4561e201485451305f
- https://git.kernel.org/stable/c/bc0a24c24ceebabb5ba65900e332233d79e625e6
- https://git.kernel.org/stable/c/e8b496c52aa0c6572d88db7cab85aeea6f9c194d
- https://git.kernel.org/stable/c/f6334f4ae9a4e962ba74b026e1d965dfdf8cbef8
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39716
In the Linux kernel, the following vulnerability has been resolved: parisc: Revise __get_user() to probe user read access Because of the way read access support is implemented, read access interruptions are only triggered at privilege levels 2 and 3. The kernel executes at privilege level 0, so __get_user() never triggers a read access interruption (code 26). Thus, it is currently possible for user code to access a read protected address via a system call. Fix this by probing read access rights at privilege level 3 (PRIV_USER) and setting __gu_err to -EFAULT (-14) if access isn't allowed. Note the cmpiclr instruction does a 32-bit compare because COND macro doesn't work inside asm.
- https://git.kernel.org/stable/c/28a9b71671fb4a2993ef85b8ef6f117ea63894fe
- https://git.kernel.org/stable/c/4c981077255acc2ed5b3df6e8dd0125c81b626a9
- https://git.kernel.org/stable/c/741b163e440683195b8fd4fc8495fcd0105c6ab7
- https://git.kernel.org/stable/c/89f686a0fb6e473a876a9a60a13aec67a62b9a7e
- https://git.kernel.org/stable/c/f410ef9a032caf98117256b22139c31342d7bb06
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39718
In the Linux kernel, the following vulnerability has been resolved: vsock/virtio: Validate length in packet header before skb_put() When receiving a vsock packet in the guest, only the virtqueue buffer size is validated prior to virtio_vsock_skb_rx_put(). Unfortunately, virtio_vsock_skb_rx_put() uses the length from the packet header as the length argument to skb_put(), potentially resulting in SKB overflow if the host has gone wonky. Validate the length as advertised by the packet header before calling virtio_vsock_skb_rx_put().
- https://git.kernel.org/stable/c/0dab92484474587b82e8e0455839eaf5ac7bf894
- https://git.kernel.org/stable/c/676f03760ca1d69c2470cef36c44dc152494b47c
- https://git.kernel.org/stable/c/969b06bd8b7560efb100a34227619e7d318fbe05
- https://git.kernel.org/stable/c/ee438c492b2e0705d819ac0e25d04fae758d8f8f
- https://git.kernel.org/stable/c/faf332a10372390ce65d0b803888f4b25a388335
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-07
CVE-2025-39719
In the Linux kernel, the following vulnerability has been resolved: iio: imu: bno055: fix OOB access of hw_xlate array Fix a potential out-of-bounds array access of the hw_xlate array in bno055.c. In bno055_get_regmask(), hw_xlate was iterated over the length of the vals array instead of the length of the hw_xlate array. In the case of bno055_gyr_scale, the vals array is larger than the hw_xlate array, so this could result in an out-of-bounds access. In practice, this shouldn't happen though because a match should always be found which breaks out of the for loop before it iterates beyond the end of the hw_xlate array. By adding a new hw_xlate_len field to the bno055_sysfs_attr, we can be sure we are iterating over the correct length.
- https://git.kernel.org/stable/c/399b883ec828e436f1a721bf8551b4da8727e65b
- https://git.kernel.org/stable/c/4808ca3aa30ae857454d0b41d2d0bf161a312b45
- https://git.kernel.org/stable/c/50e823a23816b792daf6e8405f8d6045952bb90e
- https://git.kernel.org/stable/c/5c2b601922c064f7be70ae8621277f18d1ffec59
- https://git.kernel.org/stable/c/a0691ab6334f1769acc64ea9e319414a682ff45d
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39720
In the Linux kernel, the following vulnerability has been resolved: ksmbd: fix refcount leak causing resource not released When ksmbd_conn_releasing(opinfo->conn) returns true,the refcount was not decremented properly, causing a refcount leak that prevents the count from reaching zero and the memory from being released.
Modified: 2026-03-17
CVE-2025-39721
In the Linux kernel, the following vulnerability has been resolved: crypto: qat - flush misc workqueue during device shutdown Repeated loading and unloading of a device specific QAT driver, for example qat_4xxx, in a tight loop can lead to a crash due to a use-after-free scenario. This occurs when a power management (PM) interrupt triggers just before the device-specific driver (e.g., qat_4xxx.ko) is unloaded, while the core driver (intel_qat.ko) remains loaded. Since the driver uses a shared workqueue (`qat_misc_wq`) across all devices and owned by intel_qat.ko, a deferred routine from the device-specific driver may still be pending in the queue. If this routine executes after the driver is unloaded, it can dereference freed memory, resulting in a page fault and kernel crash like the following: BUG: unable to handle page fault for address: ffa000002e50a01c #PF: supervisor read access in kernel mode RIP: 0010:pm_bh_handler+0x1d2/0x250 [intel_qat] Call Trace: pm_bh_handler+0x1d2/0x250 [intel_qat] process_one_work+0x171/0x340 worker_thread+0x277/0x3a0 kthread+0xf0/0x120 ret_from_fork+0x2d/0x50 To prevent this, flush the misc workqueue during device shutdown to ensure that all pending work items are completed before the driver is unloaded. Note: This approach may slightly increase shutdown latency if the workqueue contains jobs from other devices, but it ensures correctness and stability.
- https://git.kernel.org/stable/c/3d4df408ba9bad2b205c7fb8afc1836a6a4ca88a
- https://git.kernel.org/stable/c/5858448a6c65d8ee3f8600570d3ce19febcb33be
- https://git.kernel.org/stable/c/e59a52e429e13df3feb34f4853a8e36d121ed937
- https://git.kernel.org/stable/c/fa4c14a82747886d333d8baef0d26da86ba1ccf7
- https://git.kernel.org/stable/c/fe546f5c50fc474daca6bee72caa7ab68a74c33d
Modified: 2025-11-25
CVE-2025-39722
In the Linux kernel, the following vulnerability has been resolved: crypto: caam - Prevent crash on suspend with iMX8QM / iMX8ULP Since the CAAM on these SoCs is managed by another ARM core, called the SECO (Security Controller) on iMX8QM and Secure Enclave on iMX8ULP, which also reserves access to register page 0 suspend operations cannot touch this page. This is similar to when running OPTEE, where OPTEE will reserve page 0. Track this situation using a new state variable no_page0, reflecting if page 0 is reserved elsewhere, either by other management cores in SoC or by OPTEE. Replace the optee_en check in suspend/resume with the new check. optee_en cannot go away as it's needed elsewhere to gate OPTEE specific situations. Fixes the following splat at suspend: Internal error: synchronous external abort: 0000000096000010 [#1] SMP Hardware name: Freescale i.MX8QXP ACU6C (DT) pstate: 60400005 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : readl+0x0/0x18 lr : rd_reg32+0x18/0x3c sp : ffffffc08192ba20 x29: ffffffc08192ba20 x28: ffffff8025190000 x27: 0000000000000000 x26: ffffffc0808ae808 x25: ffffffc080922338 x24: ffffff8020e89090 x23: 0000000000000000 x22: ffffffc080922000 x21: ffffff8020e89010 x20: ffffffc080387ef8 x19: ffffff8020e89010 x18: 000000005d8000d5 x17: 0000000030f35963 x16: 000000008f785f3f x15: 000000003b8ef57c x14: 00000000c418aef8 x13: 00000000f5fea526 x12: 0000000000000001 x11: 0000000000000002 x10: 0000000000000001 x9 : 0000000000000000 x8 : ffffff8025190870 x7 : ffffff8021726880 x6 : 0000000000000002 x5 : ffffff80217268f0 x4 : ffffff8021726880 x3 : ffffffc081200000 x2 : 0000000000000001 x1 : ffffff8020e89010 x0 : ffffffc081200004 Call trace: readl+0x0/0x18 caam_ctrl_suspend+0x30/0xdc dpm_run_callback.constprop.0+0x24/0x5c device_suspend+0x170/0x2e8 dpm_suspend+0xa0/0x104 dpm_suspend_start+0x48/0x50 suspend_devices_and_enter+0x7c/0x45c pm_suspend+0x148/0x160 state_store+0xb4/0xf8 kobj_attr_store+0x14/0x24 sysfs_kf_write+0x38/0x48 kernfs_fop_write_iter+0xb4/0x178 vfs_write+0x118/0x178 ksys_write+0x6c/0xd0 __arm64_sys_write+0x14/0x1c invoke_syscall.constprop.0+0x64/0xb0 do_el0_svc+0x90/0xb0 el0_svc+0x18/0x44 el0t_64_sync_handler+0x88/0x124 el0t_64_sync+0x150/0x154 Code: 88dffc21 88dffc21 5ac00800 d65f03c0 (b9400000)
Modified: 2025-11-25
CVE-2025-39723
In the Linux kernel, the following vulnerability has been resolved: netfs: Fix unbuffered write error handling If all the subrequests in an unbuffered write stream fail, the subrequest collector doesn't update the stream->transferred value and it retains its initial LONG_MAX value. Unfortunately, if all active streams fail, then we take the smallest value of { LONG_MAX, LONG_MAX, ... } as the value to set in wreq->transferred - which is then returned from ->write_iter(). LONG_MAX was chosen as the initial value so that all the streams can be quickly assessed by taking the smallest value of all stream->transferred - but this only works if we've set any of them. Fix this by adding a flag to indicate whether the value in stream->transferred is valid and checking that when we integrate the values. stream->transferred can then be initialised to zero. This was found by running the generic/750 xfstest against cifs with cache=none. It splices data to the target file. Once (if) it has used up all the available scratch space, the writes start failing with ENOSPC. This causes ->write_iter() to fail. However, it was returning wreq->transferred, i.e. LONG_MAX, rather than an error (because it thought the amount transferred was non-zero) and iter_file_splice_write() would then try to clean up that amount of pipe bufferage - leading to an oops when it overran. The kernel log showed: CIFS: VFS: Send error in write = -28 followed by: BUG: kernel NULL pointer dereference, address: 0000000000000008 with: RIP: 0010:iter_file_splice_write+0x3a4/0x520 do_splice+0x197/0x4e0 or: RIP: 0010:pipe_buf_release (include/linux/pipe_fs_i.h:282) iter_file_splice_write (fs/splice.c:755) Also put a warning check into splice to announce if ->write_iter() returned that it had written more than it was asked to.
Modified: 2026-01-12
CVE-2025-39724
In the Linux kernel, the following vulnerability has been resolved: serial: 8250: fix panic due to PSLVERR When the PSLVERR_RESP_EN parameter is set to 1, the device generates an error response if an attempt is made to read an empty RBR (Receive Buffer Register) while the FIFO is enabled. In serial8250_do_startup(), calling serial_port_out(port, UART_LCR, UART_LCR_WLEN8) triggers dw8250_check_lcr(), which invokes dw8250_force_idle() and serial8250_clear_and_reinit_fifos(). The latter function enables the FIFO via serial_out(p, UART_FCR, p->fcr). Execution proceeds to the serial_port_in(port, UART_RX). This satisfies the PSLVERR trigger condition. When another CPU (e.g., using printk()) is accessing the UART (UART is busy), the current CPU fails the check (value & ~UART_LCR_SPAR) == (lcr & ~UART_LCR_SPAR) in dw8250_check_lcr(), causing it to enter dw8250_force_idle(). Put serial_port_out(port, UART_LCR, UART_LCR_WLEN8) under the port->lock to fix this issue. Panic backtrace: [ 0.442336] Oops - unknown exception [#1] [ 0.442343] epc : dw8250_serial_in32+0x1e/0x4a [ 0.442351] ra : serial8250_do_startup+0x2c8/0x88e ... [ 0.442416] console_on_rootfs+0x26/0x70
- https://git.kernel.org/stable/c/0b882f00655afefbc7729c6b5aec86f7a5473a3d
- https://git.kernel.org/stable/c/38c0ea484dedb58cb3a4391229933e16be0d1031
- https://git.kernel.org/stable/c/68c4613e89f000e8198f9ace643082c697921c9f
- https://git.kernel.org/stable/c/7f8fdd4dbffc05982b96caf586f77a014b2a9353
- https://git.kernel.org/stable/c/8e2739478c164147d0774802008528d9e03fb802
- https://git.kernel.org/stable/c/b8ca8e3f75ede308b4d49a6ca5081460be01bdb5
- https://git.kernel.org/stable/c/c826943abf473a3f7260fbadfad65e44db475460
- https://git.kernel.org/stable/c/cb7b3633ed749db8e56f475f43c960652cbd6882
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-09
CVE-2025-39759
In the Linux kernel, the following vulnerability has been resolved: btrfs: qgroup: fix race between quota disable and quota rescan ioctl There's a race between a task disabling quotas and another running the rescan ioctl that can result in a use-after-free of qgroup records from the fs_info->qgroup_tree rbtree. This happens as follows: 1) Task A enters btrfs_ioctl_quota_rescan() -> btrfs_qgroup_rescan(); 2) Task B enters btrfs_quota_disable() and calls btrfs_qgroup_wait_for_completion(), which does nothing because at that point fs_info->qgroup_rescan_running is false (it wasn't set yet by task A); 3) Task B calls btrfs_free_qgroup_config() which starts freeing qgroups from fs_info->qgroup_tree without taking the lock fs_info->qgroup_lock; 4) Task A enters qgroup_rescan_zero_tracking() which starts iterating the fs_info->qgroup_tree tree while holding fs_info->qgroup_lock, but task B is freeing qgroup records from that tree without holding the lock, resulting in a use-after-free. Fix this by taking fs_info->qgroup_lock at btrfs_free_qgroup_config(). Also at btrfs_qgroup_rescan() don't start the rescan worker if quotas were already disabled.
- https://git.kernel.org/stable/c/2fd0f5ceb997f90f4332ccbab6c7e907e6b2d0eb
- https://git.kernel.org/stable/c/7cda0fdde5d9890976861421d207870500f9aace
- https://git.kernel.org/stable/c/b172535ccba12f0cf7d23b3b840989de47fc104d
- https://git.kernel.org/stable/c/c38028ce0d0045ca600b6a8345a0ff92bfb47b66
- https://git.kernel.org/stable/c/dd0b28d877b293b1d7f8727a7de08ae36b6b9ef0
- https://git.kernel.org/stable/c/e1249667750399a48cafcf5945761d39fa584edf
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39765
In the Linux kernel, the following vulnerability has been resolved:
ALSA: timer: fix ida_free call while not allocated
In the snd_utimer_create() function, if the kasprintf() function return
NULL, snd_utimer_put_id() will be called, finally use ida_free()
to free the unallocated id 0.
the syzkaller reported the following information:
------------[ cut here ]------------
ida_free called for id=0 which is not allocated.
WARNING: CPU: 1 PID: 1286 at lib/idr.c:592 ida_free+0x1fd/0x2f0 lib/idr.c:592
Modules linked in:
CPU: 1 UID: 0 PID: 1286 Comm: syz-executor164 Not tainted 6.15.8 #3 PREEMPT(lazy)
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.3-4.fc42 04/01/2014
RIP: 0010:ida_free+0x1fd/0x2f0 lib/idr.c:592
Code: f8 fc 41 83 fc 3e 76 69 e8 70 b2 f8 (...)
RSP: 0018:ffffc900007f79c8 EFLAGS: 00010282
RAX: 0000000000000000 RBX: 1ffff920000fef3b RCX: ffffffff872176a5
RDX: ffff88800369d200 RSI: 0000000000000000 RDI: ffff88800369d200
RBP: 0000000000000000 R08: ffffffff87ba60a5 R09: 0000000000000000
R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000000
R13: 0000000000000002 R14: 0000000000000000 R15: 0000000000000000
FS: 00007f6f1abc1740(0000) GS:ffff8880d76a0000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f6f1ad7a784 CR3: 000000007a6e2000 CR4: 00000000000006f0
Call Trace:
Modified: 2026-01-09
CVE-2025-39766
In the Linux kernel, the following vulnerability has been resolved: net/sched: Make cake_enqueue return NET_XMIT_CN when past buffer_limit The following setup can trigger a WARNING in htb_activate due to the condition: !cl->leaf.q->q.qlen tc qdisc del dev lo root tc qdisc add dev lo root handle 1: htb default 1 tc class add dev lo parent 1: classid 1:1 \ htb rate 64bit tc qdisc add dev lo parent 1:1 handle f: \ cake memlimit 1b ping -I lo -f -c1 -s64 -W0.001 127.0.0.1 This is because the low memlimit leads to a low buffer_limit, which causes packet dropping. However, cake_enqueue still returns NET_XMIT_SUCCESS, causing htb_enqueue to call htb_activate with an empty child qdisc. We should return NET_XMIT_CN when packets are dropped from the same tin and flow. I do not believe return value of NET_XMIT_CN is necessary for packet drops in the case of ack filtering, as that is meant to optimize performance, not to signal congestion.
- https://git.kernel.org/stable/c/0dacfc5372e314d1219f03e64dde3ab495a5a25e
- https://git.kernel.org/stable/c/15de71d06a400f7fdc15bf377a2552b0ec437cf5
- https://git.kernel.org/stable/c/62d591dde4defb1333d202410609c4ddeae060b3
- https://git.kernel.org/stable/c/710866fc0a64eafcb8bacd91bcb1329eb7e5035f
- https://git.kernel.org/stable/c/7689ab22de36f8db19095f6bdf11f28cfde92f5c
- https://git.kernel.org/stable/c/aa12ee1c1bd260943fd6ab556d8635811c332eeb
- https://git.kernel.org/stable/c/de04ddd2980b48caa8d7e24a7db2742917a8b280
- https://git.kernel.org/stable/c/ff57186b2cc39766672c4c0332323933e5faaa88
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39767
In the Linux kernel, the following vulnerability has been resolved: LoongArch: Optimize module load time by optimizing PLT/GOT counting When enabling CONFIG_KASAN, CONFIG_PREEMPT_VOLUNTARY_BUILD and CONFIG_PREEMPT_VOLUNTARY at the same time, there will be soft deadlock, the relevant logs are as follows: rcu: INFO: rcu_sched self-detected stall on CPU ... Call Trace: [<900000000024f9e4>] show_stack+0x5c/0x180 [<90000000002482f4>] dump_stack_lvl+0x94/0xbc [<9000000000224544>] rcu_dump_cpu_stacks+0x1fc/0x280 [<900000000037ac80>] rcu_sched_clock_irq+0x720/0xf88 [<9000000000396c34>] update_process_times+0xb4/0x150 [<90000000003b2474>] tick_nohz_handler+0xf4/0x250 [<9000000000397e28>] __hrtimer_run_queues+0x1d0/0x428 [<9000000000399b2c>] hrtimer_interrupt+0x214/0x538 [<9000000000253634>] constant_timer_interrupt+0x64/0x80 [<9000000000349938>] __handle_irq_event_percpu+0x78/0x1a0 [<9000000000349a78>] handle_irq_event_percpu+0x18/0x88 [<9000000000354c00>] handle_percpu_irq+0x90/0xf0 [<9000000000348c74>] handle_irq_desc+0x94/0xb8 [<9000000001012b28>] handle_cpu_irq+0x68/0xa0 [<9000000001def8c0>] handle_loongarch_irq+0x30/0x48 [<9000000001def958>] do_vint+0x80/0xd0 [<9000000000268a0c>] kasan_mem_to_shadow.part.0+0x2c/0x2a0 [<90000000006344f4>] __asan_load8+0x4c/0x120 [<900000000025c0d0>] module_frob_arch_sections+0x5c8/0x6b8 [<90000000003895f0>] load_module+0x9e0/0x2958 [<900000000038b770>] __do_sys_init_module+0x208/0x2d0 [<9000000001df0c34>] do_syscall+0x94/0x190 [<900000000024d6fc>] handle_syscall+0xbc/0x158 After analysis, this is because the slow speed of loading the amdgpu module leads to the long time occupation of the cpu and then the soft deadlock. When loading a module, module_frob_arch_sections() tries to figure out the number of PLTs/GOTs that will be needed to handle all the RELAs. It will call the count_max_entries() to find in an out-of-order date which counting algorithm has O(n^2) complexity. To make it faster, we sort the relocation list by info and addend. That way, to check for a duplicate relocation, it just needs to compare with the previous entry. This reduces the complexity of the algorithm to O(n log n), as done in commit d4e0340919fb ("arm64/module: Optimize module load time by optimizing PLT counting"). This gives sinificant reduction in module load time for modules with large number of relocations. After applying this patch, the soft deadlock problem has been solved, and the kernel starts normally without "Call Trace". Using the default configuration to test some modules, the results are as follows: Module Size ip_tables 36K fat 143K radeon 2.5MB amdgpu 16MB Without this patch: Module Module load time (ms) Count(PLTs/GOTs) ip_tables 18 59/6 fat 0 162/14 radeon 54 1221/84 amdgpu 1411 4525/1098 With this patch: Module Module load time (ms) Count(PLTs/GOTs) ip_tables 18 59/6 fat 0 162/14 radeon 22 1221/84 amdgpu 45 4525/1098
Modified: 2026-01-16
CVE-2025-39770
In the Linux kernel, the following vulnerability has been resolved:
net: gso: Forbid IPv6 TSO with extensions on devices with only IPV6_CSUM
When performing Generic Segmentation Offload (GSO) on an IPv6 packet that
contains extension headers, the kernel incorrectly requests checksum offload
if the egress device only advertises NETIF_F_IPV6_CSUM feature, which has
a strict contract: it supports checksum offload only for plain TCP or UDP
over IPv6 and explicitly does not support packets with extension headers.
The current GSO logic violates this contract by failing to disable the feature
for packets with extension headers, such as those used in GREoIPv6 tunnels.
This violation results in the device being asked to perform an operation
it cannot support, leading to a `skb_warn_bad_offload` warning and a collapse
of network throughput. While device TSO/USO is correctly bypassed in favor
of software GSO for these packets, the GSO stack must be explicitly told not
to request checksum offload.
Mask NETIF_F_IPV6_CSUM, NETIF_F_TSO6 and NETIF_F_GSO_UDP_L4
in gso_features_check if the IPv6 header contains extension headers to compute
checksum in software.
The exception is a BIG TCP extension, which, as stated in commit
68e068cabd2c6c53 ("net: reenable NETIF_F_IPV6_CSUM offload for BIG TCP packets"):
"The feature is only enabled on devices that support BIG TCP TSO.
The header is only present for PF_PACKET taps like tcpdump,
and not transmitted by physical devices."
kernel log output (truncated):
WARNING: CPU: 1 PID: 5273 at net/core/dev.c:3535 skb_warn_bad_offload+0x81/0x140
...
Call Trace:
- https://git.kernel.org/stable/c/041e2f945f82fdbd6fff577b79c33469430297aa
- https://git.kernel.org/stable/c/2156d9e9f2e483c8c3906c0ea57ea312c1424235
- https://git.kernel.org/stable/c/794ddbb7b63b6828c75967b9bcd43b086716e7a1
- https://git.kernel.org/stable/c/864e3396976ef41de6cc7bc366276bf4e084fff2
- https://git.kernel.org/stable/c/a0478d7e888028f85fa7785ea838ce0ca09398e2
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-16
CVE-2025-39772
In the Linux kernel, the following vulnerability has been resolved: drm/hisilicon/hibmc: fix the hibmc loaded failed bug When hibmc loaded failed, the driver use hibmc_unload to free the resource, but the mutexes in mode.config are not init, which will access an NULL pointer. Just change goto statement to return, because hibnc_hw_init() doesn't need to free anything.
- https://git.kernel.org/stable/c/93a08f856fcc5aaeeecad01f71bef3088588216a
- https://git.kernel.org/stable/c/a4f1b9c57092c48bdc7958abd23403ccaed437b2
- https://git.kernel.org/stable/c/c950e1be3a24d021475b56efdb49daa7fbba63a9
- https://git.kernel.org/stable/c/d3e774266c28aefab3e9db334fdf568f936cae04
- https://git.kernel.org/stable/c/ddf1691f25345699296e642f0f59f2d464722fa3
- https://git.kernel.org/stable/c/f93032e5d68f459601c701f6ab087b5feb3382e8
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-16
CVE-2025-39773
In the Linux kernel, the following vulnerability has been resolved:
net: bridge: fix soft lockup in br_multicast_query_expired()
When set multicast_query_interval to a large value, the local variable
'time' in br_multicast_send_query() may overflow. If the time is smaller
than jiffies, the timer will expire immediately, and then call mod_timer()
again, which creates a loop and may trigger the following soft lockup
issue.
watchdog: BUG: soft lockup - CPU#1 stuck for 221s! [rb_consumer:66]
CPU: 1 UID: 0 PID: 66 Comm: rb_consumer Not tainted 6.16.0+ #259 PREEMPT(none)
Call Trace:
- https://git.kernel.org/stable/c/34171b9e53bd1dc264f5556579f2b04f04435c73
- https://git.kernel.org/stable/c/43e281fde5e76a866a4d10780c35023f16c0e432
- https://git.kernel.org/stable/c/5bf5fce8a0c2a70d063af778fdb5b27238174cdd
- https://git.kernel.org/stable/c/96476b043efb86a94f2badd260f7f99c97bd5893
- https://git.kernel.org/stable/c/bdb19cd0de739870bb3494c815138b9dc30875c4
- https://git.kernel.org/stable/c/d1547bf460baec718b3398365f8de33d25c5f36f
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-16
CVE-2025-39776
In the Linux kernel, the following vulnerability has been resolved:
mm/debug_vm_pgtable: clear page table entries at destroy_args()
The mm/debug_vm_pagetable test allocates manually page table entries for
the tests it runs, using also its manually allocated mm_struct. That in
itself is ok, but when it exits, at destroy_args() it fails to clear those
entries with the *_clear functions.
The problem is that leaves stale entries. If another process allocates an
mm_struct with a pgd at the same address, it may end up running into the
stale entry. This is happening in practice on a debug kernel with
CONFIG_DEBUG_VM_PGTABLE=y, for example this is the output with some extra
debugging I added (it prints a warning trace if pgtables_bytes goes
negative, in addition to the warning at check_mm() function):
[ 2.539353] debug_vm_pgtable: [get_random_vaddr ]: random_vaddr is 0x7ea247140000
[ 2.539366] kmem_cache info
[ 2.539374] kmem_cachep 0x000000002ce82385 - freelist 0x0000000000000000 - offset 0x508
[ 2.539447] debug_vm_pgtable: [init_args ]: args->mm is 0x000000002267cc9e
(...)
[ 2.552800] WARNING: CPU: 5 PID: 116 at include/linux/mm.h:2841 free_pud_range+0x8bc/0x8d0
[ 2.552816] Modules linked in:
[ 2.552843] CPU: 5 UID: 0 PID: 116 Comm: modprobe Not tainted 6.12.0-105.debug_vm2.el10.ppc64le+debug #1 VOLUNTARY
[ 2.552859] Hardware name: IBM,9009-41A POWER9 (architected) 0x4e0202 0xf000005 of:IBM,FW910.00 (VL910_062) hv:phyp pSeries
[ 2.552872] NIP: c0000000007eef3c LR: c0000000007eef30 CTR: c0000000003d8c90
[ 2.552885] REGS: c0000000622e73b0 TRAP: 0700 Not tainted (6.12.0-105.debug_vm2.el10.ppc64le+debug)
[ 2.552899] MSR: 800000000282b033
- https://git.kernel.org/stable/c/47d2a149611b8a94d24add9868c442a4af278658
- https://git.kernel.org/stable/c/561171db3b3eb759ba3f284dba7a76f4476ade03
- https://git.kernel.org/stable/c/61a9f2e5c49f05e3ea2c16674540a075a1b4be6f
- https://git.kernel.org/stable/c/63962ff932ef359925b94be2a88df6b4fd4fed0a
- https://git.kernel.org/stable/c/7bf57a0709cd7c9088cea8de023d6f4fbf2518b0
- https://git.kernel.org/stable/c/dde30854bddfb5d69f30022b53c5955a41088b33
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39779
In the Linux kernel, the following vulnerability has been resolved:
btrfs: subpage: keep TOWRITE tag until folio is cleaned
btrfs_subpage_set_writeback() calls folio_start_writeback() the first time
a folio is written back, and it also clears the PAGECACHE_TAG_TOWRITE tag
even if there are still dirty blocks in the folio. This can break ordering
guarantees, such as those required by btrfs_wait_ordered_extents().
That ordering breakage leads to a real failure. For example, running
generic/464 on a zoned setup will hit the following ASSERT. This happens
because the broken ordering fails to flush existing dirty pages before the
file size is truncated.
assertion failed: !list_empty(&ordered->list) :: 0, in fs/btrfs/zoned.c:1899
------------[ cut here ]------------
kernel BUG at fs/btrfs/zoned.c:1899!
Oops: invalid opcode: 0000 [#1] SMP NOPTI
CPU: 2 UID: 0 PID: 1906169 Comm: kworker/u130:2 Kdump: loaded Not tainted 6.16.0-rc6-BTRFS-ZNS+ #554 PREEMPT(voluntary)
Hardware name: Supermicro Super Server/H12SSL-NT, BIOS 2.0 02/22/2021
Workqueue: btrfs-endio-write btrfs_work_helper [btrfs]
RIP: 0010:btrfs_finish_ordered_zoned.cold+0x50/0x52 [btrfs]
RSP: 0018:ffffc9002efdbd60 EFLAGS: 00010246
RAX: 000000000000004c RBX: ffff88811923c4e0 RCX: 0000000000000000
RDX: 0000000000000000 RSI: ffffffff827e38b1 RDI: 00000000ffffffff
RBP: ffff88810005d000 R08: 00000000ffffdfff R09: ffffffff831051c8
R10: ffffffff83055220 R11: 0000000000000000 R12: ffff8881c2458c00
R13: ffff88811923c540 R14: ffff88811923c5e8 R15: ffff8881c1bd9680
FS: 0000000000000000(0000) GS:ffff88a04acd0000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f907c7a918c CR3: 0000000004024000 CR4: 0000000000350ef0
Call Trace:
Modified: 2025-11-25
CVE-2025-39780
In the Linux kernel, the following vulnerability has been resolved:
sched/ext: Fix invalid task state transitions on class switch
When enabling a sched_ext scheduler, we may trigger invalid task state
transitions, resulting in warnings like the following (which can be
easily reproduced by running the hotplug selftest in a loop):
sched_ext: Invalid task state transition 0 -> 3 for fish[770]
WARNING: CPU: 18 PID: 787 at kernel/sched/ext.c:3862 scx_set_task_state+0x7c/0xc0
...
RIP: 0010:scx_set_task_state+0x7c/0xc0
...
Call Trace:
Modified: 2025-11-25
CVE-2025-39781
In the Linux kernel, the following vulnerability has been resolved: parisc: Drop WARN_ON_ONCE() from flush_cache_vmap I have observed warning to occassionally trigger.
Modified: 2026-01-16
CVE-2025-39782
In the Linux kernel, the following vulnerability has been resolved: jbd2: prevent softlockup in jbd2_log_do_checkpoint() Both jbd2_log_do_checkpoint() and jbd2_journal_shrink_checkpoint_list() periodically release j_list_lock after processing a batch of buffers to avoid long hold times on the j_list_lock. However, since both functions contend for j_list_lock, the combined time spent waiting and processing can be significant. jbd2_journal_shrink_checkpoint_list() explicitly calls cond_resched() when need_resched() is true to avoid softlockups during prolonged operations. But jbd2_log_do_checkpoint() only exits its loop when need_resched() is true, relying on potentially sleeping functions like __flush_batch() or wait_on_buffer() to trigger rescheduling. If those functions do not sleep, the kernel may hit a softlockup. watchdog: BUG: soft lockup - CPU#3 stuck for 156s! [kworker/u129:2:373] CPU: 3 PID: 373 Comm: kworker/u129:2 Kdump: loaded Not tainted 6.6.0+ #10 Hardware name: Huawei TaiShan 2280 /BC11SPCD, BIOS 1.27 06/13/2017 Workqueue: writeback wb_workfn (flush-7:2) pstate: 20000005 (nzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : native_queued_spin_lock_slowpath+0x358/0x418 lr : jbd2_log_do_checkpoint+0x31c/0x438 [jbd2] Call trace: native_queued_spin_lock_slowpath+0x358/0x418 jbd2_log_do_checkpoint+0x31c/0x438 [jbd2] __jbd2_log_wait_for_space+0xfc/0x2f8 [jbd2] add_transaction_credits+0x3bc/0x418 [jbd2] start_this_handle+0xf8/0x560 [jbd2] jbd2__journal_start+0x118/0x228 [jbd2] __ext4_journal_start_sb+0x110/0x188 [ext4] ext4_do_writepages+0x3dc/0x740 [ext4] ext4_writepages+0xa4/0x190 [ext4] do_writepages+0x94/0x228 __writeback_single_inode+0x48/0x318 writeback_sb_inodes+0x204/0x590 __writeback_inodes_wb+0x54/0xf8 wb_writeback+0x2cc/0x3d8 wb_do_writeback+0x2e0/0x2f8 wb_workfn+0x80/0x2a8 process_one_work+0x178/0x3e8 worker_thread+0x234/0x3b8 kthread+0xf0/0x108 ret_from_fork+0x10/0x20 So explicitly call cond_resched() in jbd2_log_do_checkpoint() to avoid softlockup.
- https://git.kernel.org/stable/c/26cb9aad94cb1811d8fae115594cc71fa3d91ab0
- https://git.kernel.org/stable/c/3faac5e1d14c63260fd1bf789d96bde3ab3d9e54
- https://git.kernel.org/stable/c/41f40038de62e8306897cf6840791b268996432a
- https://git.kernel.org/stable/c/429d50cbaff45090d52a1ea850d5de8c14881ee7
- https://git.kernel.org/stable/c/84ff98c1ea19acd3f9389e4bb6061364e943f85e
- https://git.kernel.org/stable/c/9d98cf4632258720f18265a058e62fde120c0151
- https://git.kernel.org/stable/c/f683d611518d30334813eecf9a8c687453e2800e
- https://git.kernel.org/stable/c/f7ee8fd689e6d534f9fd2494b9266f7998082e65
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-16
CVE-2025-39783
In the Linux kernel, the following vulnerability has been resolved: PCI: endpoint: Fix configfs group list head handling Doing a list_del() on the epf_group field of struct pci_epf_driver in pci_epf_remove_cfs() is not correct as this field is a list head, not a list entry. This list_del() call triggers a KASAN warning when an endpoint function driver which has a configfs attribute group is torn down: ================================================================== BUG: KASAN: slab-use-after-free in pci_epf_remove_cfs+0x17c/0x198 Write of size 8 at addr ffff00010f4a0d80 by task rmmod/319 CPU: 3 UID: 0 PID: 319 Comm: rmmod Not tainted 6.16.0-rc2 #1 NONE Hardware name: Radxa ROCK 5B (DT) Call trace: show_stack+0x2c/0x84 (C) dump_stack_lvl+0x70/0x98 print_report+0x17c/0x538 kasan_report+0xb8/0x190 __asan_report_store8_noabort+0x20/0x2c pci_epf_remove_cfs+0x17c/0x198 pci_epf_unregister_driver+0x18/0x30 nvmet_pci_epf_cleanup_module+0x24/0x30 [nvmet_pci_epf] __arm64_sys_delete_module+0x264/0x424 invoke_syscall+0x70/0x260 el0_svc_common.constprop.0+0xac/0x230 do_el0_svc+0x40/0x58 el0_svc+0x48/0xdc el0t_64_sync_handler+0x10c/0x138 el0t_64_sync+0x198/0x19c ... Remove this incorrect list_del() call from pci_epf_remove_cfs().
- https://git.kernel.org/stable/c/0758862386f114d9ab1e23181461bd1e2e9ec4c6
- https://git.kernel.org/stable/c/409af8b9f7b4f23cd0464e71c6cd6fe13c076ae2
- https://git.kernel.org/stable/c/6cf65505523224cab1449d726d2ce8180c2941ee
- https://git.kernel.org/stable/c/80ea6e6904fb2ba4ccb5d909579988466ec65358
- https://git.kernel.org/stable/c/a302bd89db35d8b7e279de4d2b41c16c7f191069
- https://git.kernel.org/stable/c/d5aecddc3452371d9da82cdbb0c715812524b54b
- https://git.kernel.org/stable/c/d79123d79a8154b4318529b7b2ff7e15806f480b
- https://git.kernel.org/stable/c/dc4ffbd571716ff3b171418fb03abe80e720a7b1
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-16
CVE-2025-39787
In the Linux kernel, the following vulnerability has been resolved: soc: qcom: mdt_loader: Ensure we don't read past the ELF header When the MDT loader is used in remoteproc, the ELF header is sanitized beforehand, but that's not necessary the case for other clients. Validate the size of the firmware buffer to ensure that we don't read past the end as we iterate over the header. e_phentsize and e_shentsize are validated as well, to ensure that the assumptions about step size in the traversal are valid.
- https://git.kernel.org/stable/c/0d59ce2bfc3bb13abe6240335a1bf7b96536d022
- https://git.kernel.org/stable/c/1096eb63ecfc8df90b70cd068e6de0c2ff204dfd
- https://git.kernel.org/stable/c/43d26997d88c4056fce0324e72f62556bc7e8e8d
- https://git.kernel.org/stable/c/81278be4eb5f08ba2c68c3055893e61cc03727fe
- https://git.kernel.org/stable/c/87bfabb3b2f46827639173f143aa43f7cfc0a7e6
- https://git.kernel.org/stable/c/981c845f29838e468a9bfa87f784307193a31297
- https://git.kernel.org/stable/c/9f9967fed9d066ed3dae9372b45ffa4f6fccfeef
- https://git.kernel.org/stable/c/e1720eb32acf411c328af6a8c8f556c94535808e
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-16
CVE-2025-39788
In the Linux kernel, the following vulnerability has been resolved: scsi: ufs: exynos: Fix programming of HCI_UTRL_NEXUS_TYPE On Google gs101, the number of UTP transfer request slots (nutrs) is 32, and in this case the driver ends up programming the UTRL_NEXUS_TYPE incorrectly as 0. This is because the left hand side of the shift is 1, which is of type int, i.e. 31 bits wide. Shifting by more than that width results in undefined behaviour. Fix this by switching to the BIT() macro, which applies correct type casting as required. This ensures the correct value is written to UTRL_NEXUS_TYPE (0xffffffff on gs101), and it also fixes a UBSAN shift warning: UBSAN: shift-out-of-bounds in drivers/ufs/host/ufs-exynos.c:1113:21 shift exponent 32 is too large for 32-bit type 'int' For consistency, apply the same change to the nutmrs / UTMRL_NEXUS_TYPE write.
- https://git.kernel.org/stable/c/01510a9e8222f11cce064410f3c2fcf0756c0a08
- https://git.kernel.org/stable/c/01aad16c2257ab8ff33b152b972c9f2e1af47912
- https://git.kernel.org/stable/c/098b2c8ee208c77126839047b9e6e1925bb35baa
- https://git.kernel.org/stable/c/5b9f1ef293428ea9c0871d96fcec2a87c4445832
- https://git.kernel.org/stable/c/6d53b2a134da77eb7fe65c5c7c7a3c193539a78a
- https://git.kernel.org/stable/c/c1f025da8f370a015e412b55cbcc583f91de8316
- https://git.kernel.org/stable/c/dc8fb963742f1a38d284946638f9358bdaa0ddee
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-16
CVE-2025-39790
In the Linux kernel, the following vulnerability has been resolved: bus: mhi: host: Detect events pointing to unexpected TREs When a remote device sends a completion event to the host, it contains a pointer to the consumed TRE. The host uses this pointer to process all of the TREs between it and the host's local copy of the ring's read pointer. This works when processing completion for chained transactions, but can lead to nasty results if the device sends an event for a single-element transaction with a read pointer that is multiple elements ahead of the host's read pointer. For instance, if the host accesses an event ring while the device is updating it, the pointer inside of the event might still point to an old TRE. If the host uses the channel's xfer_cb() to directly free the buffer pointed to by the TRE, the buffer will be double-freed. This behavior was observed on an ep that used upstream EP stack without 'commit 6f18d174b73d ("bus: mhi: ep: Update read pointer only after buffer is written")'. Where the device updated the events ring pointer before updating the event contents, so it left a window where the host was able to access the stale data the event pointed to, before the device had the chance to update them. The usual pattern was that the host received an event pointing to a TRE that is not immediately after the last processed one, so it got treated as if it was a chained transaction, processing all of the TREs in between the two read pointers. This commit aims to harden the host by ensuring transactions where the event points to a TRE that isn't local_rp + 1 are chained. [mani: added stable tag and reworded commit message]
- https://git.kernel.org/stable/c/2ec99b922f4661521927eeada76f431eebfbabc4
- https://git.kernel.org/stable/c/4079c6c59705b96285219b9efc63cab870d757b7
- https://git.kernel.org/stable/c/44e1a079e18f78d6594a715b0c6d7e18c656f7b9
- https://git.kernel.org/stable/c/5bd398e20f0833ae8a1267d4f343591a2dd20185
- https://git.kernel.org/stable/c/5e17429679a8545afe438ce7a82a13a54e8ceabb
- https://git.kernel.org/stable/c/7b3f0e3b60c27f4fcb69927d84987e5fd6240530
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2025-11-25
CVE-2025-39791
In the Linux kernel, the following vulnerability has been resolved: dm: dm-crypt: Do not partially accept write BIOs with zoned targets Read and write operations issued to a dm-crypt target may be split according to the dm-crypt internal limits defined by the max_read_size and max_write_size module parameters (default is 128 KB). The intent is to improve processing time of large BIOs by splitting them into smaller operations that can be parallelized on different CPUs. For zoned dm-crypt targets, this BIO splitting is still done but without the parallel execution to ensure that the issuing order of write operations to the underlying devices remains sequential. However, the splitting itself causes other problems: 1) Since dm-crypt relies on the block layer zone write plugging to handle zone append emulation using regular write operations, the reminder of a split write BIO will always be plugged into the target zone write plugged. Once the on-going write BIO finishes, this reminder BIO is unplugged and issued from the zone write plug work. If this reminder BIO itself needs to be split, the reminder will be re-issued and plugged again, but that causes a call to a blk_queue_enter(), which may block if a queue freeze operation was initiated. This results in a deadlock as DM submission still holds BIOs that the queue freeze side is waiting for. 2) dm-crypt relies on the emulation done by the block layer using regular write operations for processing zone append operations. This still requires to properly return the written sector as the BIO sector of the original BIO. However, this can be done correctly only and only if there is a single clone BIO used for processing the original zone append operation issued by the user. If the size of a zone append operation is larger than dm-crypt max_write_size, then the orginal BIO will be split and processed as a chain of regular write operations. Such chaining result in an incorrect written sector being returned to the zone append issuer using the original BIO sector. This in turn results in file system data corruptions using xfs or btrfs. Fix this by modifying get_max_request_size() to always return the size of the BIO to avoid it being split with dm_accpet_partial_bio() in crypt_map(). get_max_request_size() is renamed to get_max_request_sectors() to clarify the unit of the value returned and its interface is changed to take a struct dm_target pointer and a pointer to the struct bio being processed. In addition to this change, to ensure that crypt_alloc_buffer() works correctly, set the dm-crypt device max_hw_sectors limit to be at most BIO_MAX_VECS << PAGE_SECTORS_SHIFT (1 MB with a 4KB page architecture). This forces DM core to split write BIOs before passing them to crypt_map(), and thus guaranteeing that dm-crypt can always accept an entire write BIO without needing to split it. This change does not have any effect on the read path of dm-crypt. Read operations can still be split and the BIO fragments processed in parallel. There is also no impact on the performance of the write path given that all zone write BIOs were already processed inline instead of in parallel. This change also does not affect in any way regular dm-crypt block devices.
Modified: 2026-01-16
CVE-2025-39800
In the Linux kernel, the following vulnerability has been resolved: btrfs: abort transaction on unexpected eb generation at btrfs_copy_root() If we find an unexpected generation for the extent buffer we are cloning at btrfs_copy_root(), we just WARN_ON() and don't error out and abort the transaction, meaning we allow to persist metadata with an unexpected generation. Instead of warning only, abort the transaction and return -EUCLEAN.
- https://git.kernel.org/stable/c/33e8f24b52d2796b8cfb28c19a1a7dd6476323a8
- https://git.kernel.org/stable/c/4290e34fb87ae556b12c216efd0ae91583446b7a
- https://git.kernel.org/stable/c/4734255ef39b416864139dcda96a387fe5f33a6a
- https://git.kernel.org/stable/c/da2124719f386b6e5d4d4b1a2e67c440e4d5892f
- https://git.kernel.org/stable/c/f4f5bd9251a4cbe55aaa05725c6c3c32ad1f74b3
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Modified: 2026-01-23
CVE-2025-39801
In the Linux kernel, the following vulnerability has been resolved: usb: dwc3: Remove WARN_ON for device endpoint command timeouts This commit addresses a rarely observed endpoint command timeout which causes kernel panic due to warn when 'panic_on_warn' is enabled and unnecessary call trace prints when 'panic_on_warn' is disabled. It is seen during fast software-controlled connect/disconnect testcases. The following is one such endpoint command timeout that we observed: 1. Connect ======= ->dwc3_thread_interrupt ->dwc3_ep0_interrupt ->configfs_composite_setup ->composite_setup ->usb_ep_queue ->dwc3_gadget_ep0_queue ->__dwc3_gadget_ep0_queue ->__dwc3_ep0_do_control_data ->dwc3_send_gadget_ep_cmd 2. Disconnect ========== ->dwc3_thread_interrupt ->dwc3_gadget_disconnect_interrupt ->dwc3_ep0_reset_state ->dwc3_ep0_end_control_data ->dwc3_send_gadget_ep_cmd In the issue scenario, in Exynos platforms, we observed that control transfers for the previous connect have not yet been completed and end transfer command sent as a part of the disconnect sequence and processing of USB_ENDPOINT_HALT feature request from the host timeout. This maybe an expected scenario since the controller is processing EP commands sent as a part of the previous connect. It maybe better to remove WARN_ON in all places where device endpoint commands are sent to avoid unnecessary kernel panic due to warn.
- https://git.kernel.org/stable/c/45eae113dccaf8e502090ecf5b3d9e9b805add6f
- https://git.kernel.org/stable/c/5a1a847d841505dba2bd85602daf5c218e1d85b8
- https://git.kernel.org/stable/c/84c95dbf5bece56086cdb65a64162af35158bdd9
- https://git.kernel.org/stable/c/db27482b9db340402e05d4e9b75352bbaca51af2
- https://git.kernel.org/stable/c/dfe40159eec6ca63b40133bfa783eee2e3ed829f
- https://git.kernel.org/stable/c/f49697dfba2915a9ff36f94604eb76fa61413929
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
Package fontconfig updated to version 2.17.1-alt1 for branch sisyphus in task 393436.
Closed vulnerabilities
Modified: 2026-03-27
CVE-2026-34085
fontconfig before 2.17.1 has an off-by-one error in allocation during sfnt capability handling, leading to a one-byte out-of-bounds write, and potentially a crash or code execution. This is in FcFontCapabilities in fcfreetype.c.
