FWIW, here is Claude Opus 4.5's take:

```
● I've found the deadlock. Here's the analysis:

  Deadlock Analysis

  The Deadlock Chain

  Thread 1 (kworker running cfg80211_wiphy_work):
  1. Holds the wiphy_lock (cfg80211_wiphy_work runs with wiphy_lock held)
  2. Calls: ieee80211_sta_work → ieee80211_destroy_auth_data → ... →
  mt7925_mac_link_sta_remove
  3. At main.c:1097, calls mt7925_roc_abort_sync(dev)
  4. At main.c:461, calls cancel_work_sync(&phy->roc_work) — waits for 
  roc_work to complete

  Thread 2 (phy->roc_work / mt7925_roc_work):
  1. Running or pending on the workqueue
  2. At main.c:484, calls ieee80211_remain_on_channel_expired(phy->mt76->hw)
  3. This mac80211 function needs to acquire the wiphy_lock — blocked 
  waiting for wiphy_lock

  The Classic ABBA Deadlock

  Thread 1 (wiphy_work)          Thread 2 (roc_work)
  ─────────────────────          ────────────────────
  holds wiphy_lock
        │
        ▼
  cancel_work_sync(roc_work)     running...
        │                              │
        │ (waits)                      ▼
        │◄──────────────────── ieee80211_remain_on_channel_expired()
                                       │
                                (waits for wiphy_lock)

  Location of the Bug

  The bug is in main.c:1097 where mt7925_roc_abort_sync(dev) is called from
  within mt7925_mac_link_sta_remove(). This function is called from the
  wiphy_work context which already holds the wiphy_lock, and
  cancel_work_sync() at main.c:461 will deadlock if roc_work is trying to
  acquire the same lock via ieee80211_remain_on_channel_expired().
```

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2133863

Title:
  MediaTek MT7925 WiFi driver deadlock

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2133863/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to