Skip to content
Heist/ feed
Back to feed
HighFix available

wifi: cfg80211: get the wiphy out of a dying network namespace

Type: advisorySources: OSV

In the Linux kernel, the following vulnerability has been resolved: wifi: cfg80211: get the wiphy out of a dying network namespace When a network namespace is destroyed, cfg80211_pernet_exit() moves any wiphy back to the initial namespace, and just warns if that fails. But moving an interface can fail (due to allocation failures), and then the wiphy is left behind with a garbage netns pointer: Kernel mode fault at addr 0x30 genlmsg_multicast_netns.constprop.0+0x46/0xcf [cfg80211] nl80211_notify_wiphy+0xcd/0xe8 [cfg80211] wiphy_unregister+0x169/0x3fc [cfg80211] Note that commit debac3a20dec ("net: Remove conflicting altnames for dying netns in __dev_change_net_namespace().") fixed another path that could reach it without allocation failures. Remove interfaces that cannot be moved instead of failing the switch, so that the wiphy always ends up in the initial namespace. In this case the netdev core will unregister the interfaces anyway.

Products
Kernel
Affected versions
Not specified
Fixed versions
6.18.54, 7.2.8
CVEs
CVE-2026-98330
Confirmed fixed CVEs
Not specified
Updated in this feed
4 Nov 2026, 22:46 UTC · Revision 1

Source evidence

wifi: cfg80211: get the wiphy out of a dying network namespace

core-osv · Original source

Published 6 Oct 2026, 08:46 UTC

In the Linux kernel, the following vulnerability has been resolved: wifi: cfg80211: get the wiphy out of a dying network namespace When a network namespace is destroyed, cfg80211_pernet_exit() moves any wiphy back to the initial namespace, and just warns if that fails. But moving an interface can fail (due to allocation failures), and then the wiphy is left behind with a garbage netns pointer: Kernel mode fault at addr 0x30 genlmsg_multicast_netns.constprop.0+0x46/0xcf [cfg80211] nl80211_notify_wiphy+0xcd/0xe8 [cfg80211] wiphy_unregister+0x169/0x3fc [cfg80211] Note that commit debac3a20dec ("net: Remove conflicting altnames for dying netns in __dev_change_net_namespace().") fixed another path that could reach it without allocation failures. Remove interfaces that cannot be moved instead of failing the switch, so that the wiphy always ends up in the initial namespace. In this case the netdev core will unregister the interfaces anyway.

osv:CVE-2026-98330

Kernel

Fixed versions: 6.18.54, 7.2.8

Complete source record
{
  "id": "07b47d36ee6845e29d8ad987c6d83951790298b1d9e1b45610d9de06d553fef1",
  "url": "https://osv.dev/vulnerability/CVE-2026-98330",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "wifi: cfg80211: get the wiphy out of a dying network namespace",
    "summary": "In the Linux kernel, the following vulnerability has been resolved: wifi: cfg80211: get the wiphy out of a dying network namespace When a network namespace is destroyed, cfg80211_pernet_exit() moves any wiphy back to the initial namespace, and just warns if that fails. But moving an interface can fail (due to allocation failures), and then the wiphy is left behind with a garbage netns pointer: Kernel mode fault at addr 0x30 genlmsg_multicast_netns.constprop.0+0x46/0xcf [cfg80211] nl80211_notify_wiphy+0xcd/0xe8 [cfg80211] wiphy_unregister+0x169/0x3fc [cfg80211] Note that commit debac3a20dec (\"net: Remove conflicting altnames for dying netns in __dev_change_net_namespace().\") fixed another path that could reach it without allocation failures. Remove interfaces that cannot be moved instead of failing the switch, so that the wiphy always ends up in the initial namespace. In this case the netdev core will unregister the interfaces anyway.",
    "evidence": "osv:CVE-2026-98330",
    "products": [
      {
        "name": {
          "value": "Kernel",
          "evidence": "/affected/1/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [
          {
            "value": "6.18.54",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "7.2.8",
            "evidence": "/affected/1/ranges"
          }
        ],
        "affected_versions": []
      }
    ],
    "severity": "high",
    "structured": {
      "id": "CVE-2026-98330",
      "aliases": [
        "CVE-2026-98330"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "463d018323851a608eef52a9427b0585005c647f"
                },
                {
                  "fixed": "caa02072b2986d4b0e7a824de05782ef7b03a0ba"
                },
                {
                  "fixed": "b949b2720688691f1e41bdbfbe3df2b6dc77c34d"
                },
                {
                  "fixed": "4635b1a1c1d693178a537446a6e09963f0fdae52"
                }
              ]
            }
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-98330.json"
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "2.6.32"
                },
                {
                  "fixed": "6.18.54"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.19.0"
                },
                {
                  "fixed": "7.2.8"
                }
              ]
            }
          ],
          "package": {
            "name": "Kernel",
            "ecosystem": "Linux"
          },
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-98330.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:40.052335969Z",
      "provider": "osv",
      "references": [
        "https://git.kernel.org/stable/c/4635b1a1c1d693178a537446a6e09963f0fdae52",
        "https://git.kernel.org/stable/c/b949b2720688691f1e41bdbfbe3df2b6dc77c34d",
        "https://git.kernel.org/stable/c/caa02072b2986d4b0e7a824de05782ef7b03a0ba",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/98xxx/CVE-2026-98330.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-98330",
        "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
      ],
      "provider_metadata": {
        "cna_assigner": "Linux",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/98xxx/CVE-2026-98330.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-98330",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 507725,
  "published_at": "2026-10-06T08:46:22.688+00:00"
}