1
0
Fork 0
forked from mirror/openwrt
openwrt/package
Jan Hoffmann 6889ea7b9a ltq-adsl-mei: check status register before reading mailbox messages
The interrupt handler reads from the mailbox if no other reason for the
interrupt is known. If a spurious interrupt is received just after a
mailbox message has been sent, this means that the response to the
previous message is read again and returned by DSL_BSP_SendCMV instead
of the actual response.

To fix this, check the status register before reading from the mailbox
in the interrupt handler.

Tested on Fritzbox 7320. Without this change, there is occasionally a
kernel panic due to an out-of-bounds memory access in the ltq-adsl
driver (in DSL_DRV_DEV_G997_SnrAllocationNscGet), as a result of an
incorrect value returned by DSL_DRV_DANUBE_CmvRead. This is reproducible
by calling "dsl_cpe_pipe.sh g997dsnrg 1 1" multiple times.

Signed-off-by: Jan Hoffmann <jan@3e8.eu>
Link: https://github.com/openwrt/openwrt/pull/19385
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-07-17 21:10:37 +02:00
..
base-files base-files: introduce a function to get kernel version number 2025-07-14 22:30:20 +02:00
boot uboot-tegra: disable mkeficapsule build 2025-07-13 17:18:15 +02:00
devel perf: fix build on mips 2025-07-17 20:53:19 +02:00
firmware linux-firmware: update to 20250708 2025-07-09 22:58:28 +02:00
kernel ltq-adsl-mei: check status register before reading mailbox messages 2025-07-17 21:10:37 +02:00
libs libpcap: adjust with glibc and libcrypt-compat 2025-07-12 23:38:19 +02:00
network uhttpd: update to Git HEAD (2025-07-06) 2025-07-15 22:06:10 +02:00
system rpcd: adjust with glibc and libcrypt-compat 2025-07-12 23:38:19 +02:00
utils ucode: update ubus/uloop exception handling patches 2025-07-14 12:16:50 +02:00
Makefile package: rework contents of package index.json 2025-06-11 16:55:31 +02:00