cbcvebase.
CVE-2025-39767
published 2025-09-11

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…

PriorityP420medium5.5CVSS 3.1
AVLACLPRLUINSUCNINAH
EPSS
0.11%
1.3th percentile
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: [] show_stack+0x5c/0x180 [] dump_stack_lvl+0x94/0xbc [] rcu_dump_cpu_stacks+0x1fc/0x280 [] rcu_sched_clock_irq+0x720/0xf88 [] update_process_times+0xb4/0x150 [] tick_nohz_handler+0xf4/0x250 [] __hrtimer_run_queues+0x1d0/0x428 [] hrtimer_interrupt+0x214/0x538 [] constant_timer_interrupt+0x64/0x80 [] __handle_irq_event_percpu+0x78/0x1a0 [] handle_irq_event_percpu+0x18/0x88 [] handle_percpu_irq+0x90/0xf0 [] handle_irq_desc+0x94/0xb8 [] handle_cpu_irq+0x68/0xa0 [] handle_loongarch_irq+0x30/0x48 [] do_vint+0x80/0xd0 [] kasan_mem_to_shadow.part.0+0x2c/0x2a0 [] __asan_load8+0x4c/0x120 [] module_frob_arch_sections+0x5c8/0x6b8 [] load_module+0x9e0/0x2958 [] __do_sys_init_module+0x208/0x2d0 [] do_syscall+0x94/0x190 [] 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 prob

Affected

13 ranges
VendorProductVersion rangeFixed in
debianlinux< linux 6.16.5-1 (forky)linux 6.16.5-1 (forky)
linuxlinux
linuxlinux>= fcdfe9d22bed08409968a751e93112f742208be6 < 5189c0b7c251363a4dd7678ed11b054c54f36f6f5189c0b7c251363a4dd7678ed11b054c54f36f6f
linuxlinux>= fcdfe9d22bed08409968a751e93112f742208be6 < e94cdb9fb279430cbd323a74c7ec124c85109747e94cdb9fb279430cbd323a74c7ec124c85109747
linuxlinux>= fcdfe9d22bed08409968a751e93112f742208be6 < a096b0280168d0c8b0ec1cbbfd56c8b81af8c7d8a096b0280168d0c8b0ec1cbbfd56c8b81af8c7d8
linuxlinux>= fcdfe9d22bed08409968a751e93112f742208be6 < 63dbd8fb2af3a89466538599a9acb2d11ef65c0663dbd8fb2af3a89466538599a9acb2d11ef65c06
linuxlinux_kernel
linuxlinux_kernel>= 0 < 6.12.48-16.12.48-1
linuxlinux_kernel>= 0 < 6.16.5-16.16.5-1
linuxlinux_kernel>= 5.19 < 6.6.1036.6.103
linuxlinux_kernel>= 6.13 < 6.16.46.16.4
linuxlinux_kernel>= 6.7 < 6.12.446.12.44
msrcazl3_kernel_6.6.96.2-2_on_azure_linux_3.0

CVSS provenance

nvdv3.15.5MEDIUMCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
osv5.5MEDIUM
vendor_debian5.5MEDIUM
vendor_msrc5.5MEDIUM
vendor_redhat5.5MEDIUM
Stop checking back — get the weekly exploitation signal.

Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.