CVE-2022-48705
wifi: mt76: mt7921e: fix crash in chip reset fail
Severity Score
Exploit Likelihood
Affected Versions
Public Exploits
0Exploited in Wild
-Decision
Descriptions
In the Linux kernel, the following vulnerability has been resolved:
wifi: mt76: mt7921e: fix crash in chip reset fail
In case of drv own fail in reset, we may need to run mac_reset several
times. The sequence would trigger system crash as the log below.
Because we do not re-enable/schedule "tx_napi" before disable it again,
the process would keep waiting for state change in napi_diable(). To
avoid the problem and keep status synchronize for each run, goto final
resource handling if drv own failed.
[ 5857.353423] mt7921e 0000:3b:00.0: driver own failed
[ 5858.433427] mt7921e 0000:3b:00.0: Timeout for driver own
[ 5859.633430] mt7921e 0000:3b:00.0: driver own failed
[ 5859.633444] ------------[ cut here ]------------
[ 5859.633446] WARNING: CPU: 6 at kernel/kthread.c:659 kthread_park+0x11d
[ 5859.633717] Workqueue: mt76 mt7921_mac_reset_work [mt7921_common]
[ 5859.633728] RIP: 0010:kthread_park+0x11d/0x150
[ 5859.633736] RSP: 0018:ffff8881b676fc68 EFLAGS: 00010202
......
[ 5859.633766] Call Trace:
[ 5859.633768] <TASK>
[ 5859.633771] mt7921e_mac_reset+0x176/0x6f0 [mt7921e]
[ 5859.633778] mt7921_mac_reset_work+0x184/0x3a0 [mt7921_common]
[ 5859.633785] ? mt7921_mac_set_timing+0x520/0x520 [mt7921_common]
[ 5859.633794] ? __kasan_check_read+0x11/0x20
[ 5859.633802] process_one_work+0x7ee/0x1320
[ 5859.633810] worker_thread+0x53c/0x1240
[ 5859.633818] kthread+0x2b8/0x370
[ 5859.633824] ? process_one_work+0x1320/0x1320
[ 5859.633828] ? kthread_complete_and_exit+0x30/0x30
[ 5859.633834] ret_from_fork+0x1f/0x30
[ 5859.633842] </TASK>
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: wifi: mt76: mt7921e: reparación del fallo en el reinicio del chip. En caso de que el propio drv falle en el reinicio, es posible que necesitemos ejecutar mac_reset varias veces. La secuencia provocaría un fallo del sistema como se muestra en el siguiente registro. Debido a que no volvemos a habilitar/programar "tx_napi" antes de deshabilitarlo nuevamente, el proceso seguirá esperando el cambio de estado en napi_diable(). Para evitar el problema y mantener el estado sincronizado para cada ejecución, vaya al manejo de recursos finales si el propio drv falla. [ 5857.353423] mt7921e 0000:3b:00.0: el controlador propio falló [ 5858.433427] mt7921e 0000:3b:00.0: Tiempo de espera para el controlador propio [ 5859.633430] mt7921e 0000:3b:00.0: el controlador propio falló [ 5859. 633444] ------- -----[ cortar aquí ]------------ [ 5859.633446] ADVERTENCIA: CPU: 6 en kernel/kthread.c:659 kthread_park+0x11d [ 5859.633717] Cola de trabajo: mt76 mt7921_mac_reset_work [mt7921_common] [ 5859.633728] RIP: 0010:kthread_park+0x11d/0x150 [ 5859.633736] RSP: 0018:ffff8881b676fc68 EFLAGS: 00010202 ...... [ 5859.633766] Seguimiento de llamadas: [ 5859.633768 ] [ 5859.633771] mt7921e_mac_reset+0x176/0x6f0 [ mt7921e] [5859.633778] mt7921_mac_reset_work+0x184/0x3a0 [mt7921_common] [5859.633785]? mt7921_mac_set_timing+0x520/0x520 [mt7921_common] [5859.633794]? __kasan_check_read+0x11/0x20 [ 5859.633802] proceso_one_work+0x7ee/0x1320 [ 5859.633810] trabajador_thread+0x53c/0x1240 [ 5859.633818] kthread+0x2b8/0x370 [ 5859.633824] ? proceso_one_work+0x1320/0x1320 [5859.633828]? kthread_complete_and_exit+0x30/0x30 [ 5859.633834] ret_from_fork+0x1f/0x30 [ 5859.633842]
CVSS Scores
SSVC
- Decision:Track
Timeline
- 2024-05-03 CVE Reserved
- 2024-05-03 CVE Published
- 2024-05-04 EPSS Updated
- 2024-12-19 CVE Updated
- ---------- Exploited in Wild
- ---------- KEV Due Date
- ---------- First Exploit
CWE
CAPEC
References (4)
URL | Tag | Source |
---|---|---|
https://git.kernel.org/stable/c/0efaf31dec572d3aac4316c6d952e06d1c33adc4 | Vuln. Introduced | |
https://git.kernel.org/stable/c/cdb39e251f864910b2fb6c099b1ef9d12c6e22c7 | Vuln. Introduced |
URL | Date | SRC |
---|
URL | Date | SRC |
---|---|---|
https://git.kernel.org/stable/c/f7f3001723e337568017e8617974f29bc8b2f595 | 2022-09-15 | |
https://git.kernel.org/stable/c/fa3fbe64037839f448dc569212bafc5a495d8219 | 2022-08-26 |
URL | Date | SRC |
---|
Affected Vendors, Products, and Versions
Vendor | Product | Version | Other | Status | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Vendor | Product | Version | Other | Status | <-- --> | Vendor | Product | Version | Other | Status |
Linux Search vendor "Linux" | Linux Kernel Search vendor "Linux" for product "Linux Kernel" | >= 5.17 < 5.19.9 Search vendor "Linux" for product "Linux Kernel" and version " >= 5.17 < 5.19.9" | en |
Affected
| ||||||
Linux Search vendor "Linux" | Linux Kernel Search vendor "Linux" for product "Linux Kernel" | >= 5.17 < 6.0 Search vendor "Linux" for product "Linux Kernel" and version " >= 5.17 < 6.0" | en |
Affected
| ||||||
Linux Search vendor "Linux" | Linux Kernel Search vendor "Linux" for product "Linux Kernel" | 5.16.3 Search vendor "Linux" for product "Linux Kernel" and version "5.16.3" | en |
Affected
|