{
  "cveId": "CVE-2026-98619",
  "url": "https://patchblox.com/security/cve/CVE-2026-98619",
  "summary": "CVE-2026-98619 is fixed in linux on 1 platform by DEBIAN-CVE-2026-98619 (version 7.2.9-1), released October 19, 2026. It is not reported as exploited. Patch Radar priority: Routine.",
  "title": "linux: In the Linux kernel, the following vulnerability has been resolved:  net: ethtool: keep rtnl_lock for the ioctl self...",
  "description": "In the Linux kernel, the following vulnerability has been resolved:  net: ethtool: keep rtnl_lock for the ioctl self test  An offline self test that brings the interface down and back up with netif_close() / netif_open() requires rtnl_lock for both. Since the ethtool IOCTL path became rtnl-optional for ops-locked drivers, the ETHTOOL_TEST ioctl runs holding only the netdev instance lock, so on an ops-locked driver the self test now tears the device down without rtnl_lock.  With lockdep this reproduces deterministically on every offline self test on such a driver; note the sole lock held is the instance lock, not rtnl:    WARNING: suspicious RCU usage   net/core/netpoll.c:207 suspicious rcu_dereference_protected() usage!   1 lock held by ethtool/107:    #0: (\u0026dev-\u003Elock){\u002B.\u002B.}, at: dev_ethtool   Call Trace:    netpoll_poll_disable    __dev_close_many    netif_close_many    netif_close    fbnic_self_test    dev_ethtool_locked    dev_ethtool    dev_ioctl    sock_ioctl    __x64_sys_ioctl  Without lockdep the same condition trips ASSERT_RTNL() in __dev_close_many() / __dev_open(); that check only samples the global rtnl state, so it can be masked by a concurrent rtnl holder, but the device is still being reconfigured without the lock it requires.  The ethtool self_test is a legacy ioctl-only command, so an ETHTOOL_TEST case is only needed on the ioctl path. Add an opt-in bit for drivers whose self test needs rtnl_lock and set it on the ops-locked drivers whose offline self test tears the interface down and up:    - fbnic (ops-locked via queue_mgmt_ops): fbnic_self_test() offline path     uses netif_close() / netif_open().   - bnxt (ops-locked via queue_mgmt_ops): bnxt_self_test() offline path     goes through bnxt_close_nic() / bnxt_half_open_nic() /     bnxt_half_close_nic() / bnxt_open_nic(), which close and reopen the     device.",
  "published": "2026-10-18T16:17:14Z",
  "severity": "",
  "epss": 0.00155,
  "epssPercentile": 0.0471,
  "priority": "Routine",
  "priorityTier": 4,
  "exploited": false,
  "vendorExploited": false,
  "disclosed": false,
  "fixes": [
    {
      "platform": "linux",
      "product": "linux",
      "release": "Debian 14",
      "fixedVersion": "7.2.9-1",
      "fix": "DEBIAN-CVE-2026-98619",
      "url": "https://patchblox.com/security/fix/linux/debian-cve-2026-98619",
      "released": "2026-10-19T16:27:52Z"
    }
  ],
  "noFixYet": [],
  "dataAsOf": "2026-11-09T01:18:40Z",
  "attribution": {
    "text": "Data: Patchblox Patch Radar",
    "url": "https://patchblox.com/security/patch-radar",
    "terms": "https://patchblox.com/security/patch-radar/use-the-data"
  }
}