Cloudanix VulnDB

CVE-2024-40977

None

CVSS

—

EPSS

0.2%

Published

Jul 12, 2024

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A problem in certain wireless network card software on Linux computers can cause the system to freeze or restart during hardware recovery, interrupting normal use.

Exploitation
Local Privilege
Attacker needs
Local User
Complexity
Theoretical
Impact
Denial Of Service
Component
OS kernel
Class
Race Condition
Remediation
Patch
Effort
Low
Patch risk
Low

What it actually does

Deadlock between reset_work holding a lock while waiting for stat_worker to park, and stat_worker waiting for the same lock, during mt7921s chip recovery in the Linux kernel wifi driver.

Why it matters to the business

System instability, hung task reports, and potential forced reboots on Linux devices using affected mt7921s wifi hardware, reducing availability for users and operations.

How an attack unfolds

An attacker with local access or the ability to trigger wifi chip reset conditions (such as through crafted network traffic or hardware events) can induce the deadlock state between kernel worker threads, causing the system to hang.

How to fix it

Update the Linux kernel to a version containing commit 0b81faa05b0b9feb3ae2d69be1d21f0d126ecb08 or later in the stable tree; apply the patch that prevents stat_worker execution during chip recovery.

How to confirm the fix worked

Confirm the presence of the fix commit in the running kernel source; test chip reset scenarios to verify no deadlock occurs and stat_worker is properly parked.

Typical attack path

  1. Trigger conditions that initiate chip recovery in the mt7921s driver
  2. Allow reset_work to acquire the contended lock and wait for stat_worker
  3. Cause stat_worker to block on the same lock, creating the deadlock
  4. Observe hung task messages and potential system reboot

How to detect it

Search kernel logs for hung task dumps mentioning reset_work or stat_worker during wifi chip recovery events; inspect dmesg or syslog for deadlock indicators on affected hardware.

What your security team should do

  • Prioritize kernel updates on all systems using mt7921s hardware within maintenance windows
  • Monitor for kernel hung task logs related to wifi recovery
  • Review wireless driver usage in high-availability environments for exposure

The record

In the Linux kernel, the following vulnerability has been resolved: wifi: mt76: mt7921s: fix potential hung tasks during chip recovery During chip recovery (e.g. chip reset), there is a possible situation that kernel worker reset_work is holding the lock and waiting for kernel thread stat_worker to be parked, while stat_worker is waiting for the release of the same lock. It causes a deadlock resulting in the dumping of hung tasks messages and possible rebooting of the device. This patch prevents the execution of stat_worker during the chip recovery.

Affected packages

Ecosystem Package Introduced Fixed
AlmaLinux:8 bpftool 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel-abi-stablelists 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel-core 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel-cross-headers 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel-debug 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel-debug-core 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel-debug-devel 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel-debug-modules 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel-debug-modules-extra 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel-devel 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel-doc 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel-headers 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel-modules 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel-modules-extra 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel-rt 0 4.18.0-553.22.1.rt7.363.el8_10
AlmaLinux:8 kernel-rt-core 0 4.18.0-553.22.1.rt7.363.el8_10
AlmaLinux:8 kernel-rt-debug 0 4.18.0-553.22.1.rt7.363.el8_10
AlmaLinux:8 kernel-rt-debug-core 0 4.18.0-553.22.1.rt7.363.el8_10
AlmaLinux:8 kernel-rt-debug-devel 0 4.18.0-553.22.1.rt7.363.el8_10
AlmaLinux:8 kernel-rt-debug-kvm 0 4.18.0-553.22.1.rt7.363.el8_10
AlmaLinux:8 kernel-rt-debug-modules 0 4.18.0-553.22.1.rt7.363.el8_10
AlmaLinux:8 kernel-rt-debug-modules-extra 0 4.18.0-553.22.1.rt7.363.el8_10
AlmaLinux:8 kernel-rt-devel 0 4.18.0-553.22.1.rt7.363.el8_10
AlmaLinux:8 kernel-rt-kvm 0 4.18.0-553.22.1.rt7.363.el8_10
AlmaLinux:8 kernel-rt-modules 0 4.18.0-553.22.1.rt7.363.el8_10
AlmaLinux:8 kernel-rt-modules-extra 0 4.18.0-553.22.1.rt7.363.el8_10
AlmaLinux:8 kernel-tools 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel-tools-libs 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel-tools-libs-devel 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel-zfcpdump 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel-zfcpdump-core 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel-zfcpdump-devel 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel-zfcpdump-modules 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 kernel-zfcpdump-modules-extra 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 perf 0 4.18.0-553.22.1.el8_10
AlmaLinux:8 python3-perf 0 4.18.0-553.22.1.el8_10
AlmaLinux:9 bpftool 0 7.3.0-427.42.1.el9_4
AlmaLinux:9 kernel 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-64k 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-64k-core 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-64k-debug 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-64k-debug-core 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-64k-debug-devel 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-64k-debug-devel-matched 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-64k-debug-modules 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-64k-debug-modules-core 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-64k-debug-modules-extra 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-64k-devel 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-64k-devel-matched 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-64k-modules 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-64k-modules-core 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-64k-modules-extra 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-abi-stablelists 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-core 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-cross-headers 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-debug 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-debug-core 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-debug-devel 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-debug-devel-matched 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-debug-modules 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-debug-modules-core 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-debug-modules-extra 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-debug-uki-virt 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-devel 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-devel-matched 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-doc 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-headers 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-modules 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-modules-core 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-modules-extra 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-rt 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-rt-core 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-rt-debug 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-rt-debug-core 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-rt-debug-devel 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-rt-debug-modules 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-rt-debug-modules-core 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-rt-debug-modules-extra 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-rt-devel 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-rt-modules 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-rt-modules-core 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-rt-modules-extra 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-tools 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-tools-libs 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-tools-libs-devel 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-uki-virt 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-zfcpdump 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-zfcpdump-core 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-zfcpdump-devel 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-zfcpdump-devel-matched 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-zfcpdump-modules 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-zfcpdump-modules-core 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 kernel-zfcpdump-modules-extra 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 libperf 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 perf 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 python3-perf 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 rtla 0 5.14.0-427.42.1.el9_4
AlmaLinux:9 rv 0 5.14.0-427.42.1.el9_4
Debian:11 linux 0 No fix
Debian:11 linux-6.1 0 6.1.119-1~deb11u1
Debian:12 linux 0 6.1.99-1
Debian:13 linux 0 6.9.7-1
Linux Kernel 4.16.0 6.1.96
Red Hat:enterprise_linux:8::baseos bpftool 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos bpftool-debuginfo 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-abi-stablelists 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-core 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-cross-headers 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-debug 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-debug-core 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-debug-debuginfo 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-debug-devel 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-debug-modules 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-debug-modules-extra 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-debuginfo 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-debuginfo-common-aarch64 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-debuginfo-common-ppc64le 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-debuginfo-common-s390x 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-debuginfo-common-x86_64 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-devel 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-doc 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-headers 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-modules 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-modules-extra 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-tools 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-tools-debuginfo 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-tools-libs 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-tools-libs-devel 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-zfcpdump 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-zfcpdump-core 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-zfcpdump-debuginfo 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-zfcpdump-devel 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-zfcpdump-modules 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos kernel-zfcpdump-modules-extra 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos perf 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos perf-debuginfo 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos python3-perf 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::baseos python3-perf-debuginfo 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb bpftool 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb bpftool-debuginfo 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-abi-stablelists 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-core 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-cross-headers 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-debug 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-debug-core 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-debug-debuginfo 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-debug-devel 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-debug-modules 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-debug-modules-extra 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-debuginfo 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-debuginfo-common-aarch64 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-debuginfo-common-ppc64le 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-debuginfo-common-s390x 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-debuginfo-common-x86_64 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-devel 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-doc 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-headers 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-modules 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-modules-extra 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-tools 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-tools-debuginfo 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-tools-libs 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-tools-libs-devel 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-zfcpdump 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-zfcpdump-core 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-zfcpdump-debuginfo 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-zfcpdump-devel 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-zfcpdump-modules 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb kernel-zfcpdump-modules-extra 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb perf 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb perf-debuginfo 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb python3-perf 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::crb python3-perf-debuginfo 0 0:4.18.0-553.22.1.el8_10
Red Hat:enterprise_linux:8::nfv kernel-rt 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::nfv kernel-rt-core 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::nfv kernel-rt-debug 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::nfv kernel-rt-debug-core 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::nfv kernel-rt-debug-debuginfo 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::nfv kernel-rt-debug-devel 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::nfv kernel-rt-debug-kvm 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::nfv kernel-rt-debug-modules 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::nfv kernel-rt-debug-modules-extra 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::nfv kernel-rt-debuginfo 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::nfv kernel-rt-debuginfo-common-x86_64 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::nfv kernel-rt-devel 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::nfv kernel-rt-kvm 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::nfv kernel-rt-modules 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::nfv kernel-rt-modules-extra 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::realtime kernel-rt 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::realtime kernel-rt-core 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::realtime kernel-rt-debug 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::realtime kernel-rt-debug-core 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::realtime kernel-rt-debug-debuginfo 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::realtime kernel-rt-debug-devel 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::realtime kernel-rt-debug-kvm 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::realtime kernel-rt-debug-modules 0 0:4.18.0-553.22.1.rt7.363.el8_10
Red Hat:enterprise_linux:8::realtime kernel-rt-debug-modules-extra 0 0:4.18.0-553.22.1.rt7.363.el8_10

Related vulnerabilities