---
id: CVE-2026-93804
title: |-
  In the Linux kernel, the following vulnerability has been resolved:

  wifi: mac80211: ibss: wait for in-flight TX on disconnect

  While leaving an IBSS in ieee80211_ibss_disconnect() mac80211 flushes
  stations, turns the carrier off and imm…
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  wifi: mac80211: ibss: wait for in-flight TX on disconnect

  While leaving an IBSS in ieee80211_ibss_disconnect() mac80211 flushes
  stations, turns the carrier off and imm…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <
    20a3fb5e1a95caa34896853ca17a50d21c754969
  - >-
    Linux >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <
    b3451e6971248250312ad32dd7f63cc9f0a925f5
  - >-
    Linux >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <
    d0e69d9afa59b93c30294eba89b1f15f69e91105
  - Linux < 6.12.111
  - Linux < 6.18.53
  - Linux (all versions)
published: '2026-09-24'
updated: '2026-09-24'
sourceUpdated: '2026-09-24T17:17:13.350'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-93804'
references:
  - url: 'https://git.kernel.org/stable/c/20a3fb5e1a95caa34896853ca17a50d21c754969'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/b3451e6971248250312ad32dd7f63cc9f0a925f5'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/d0e69d9afa59b93c30294eba89b1f15f69e91105'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
tags:
  - nvd
  - cve.org
ingestedAt: '2026-09-24T16:47:15.897Z'
---

## Overview

In the Linux kernel, the following vulnerability has been resolved:

wifi: mac80211: ibss: wait for in-flight TX on disconnect

While leaving an IBSS in ieee80211_ibss_disconnect() mac80211 flushes
stations, turns the carrier off and immediately tells the driver to
leave as well. While there may be synchronize_net() in station flush
and in this code later, packets can still be transmitted due to
cross-CPU race conditions after carrier off is set.
Therefore, it's possible for a race to happen where a TX to the
driver occurs while or after telling it to leave the IBSS. This can
be confusing to drivers, and in the case of iwlwifi leads to an
attempt to use invalid queues.

Move netif_carrier_off() to occur before sta_info_flush() during
IBSS disconnect, and add synchronize_net() if flushing didn't,
so that the synchronize_net() always happens between turning the
carrier off and telling the driver, avoiding this race.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
