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

  eth: bnxt: avoid deadlock when canceling IRQ affinity notifier

  Unregistering IRQ affinity notifiers waits for the callback synchronously.
  bnxt takes the netdev instanc…
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  eth: bnxt: avoid deadlock when canceling IRQ affinity notifier

  Unregistering IRQ affinity notifiers waits for the callback synchronously.
  bnxt takes the netdev instanc…
severity: high
cvss: 7.5
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H'
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= c214410c47d6ec3128143370747d9e388bab21d7 <
    d10e73572cda4af7487f82f58a7771f18cf61084
  - >-
    Linux >= c214410c47d6ec3128143370747d9e388bab21d7 <
    8b1118fc5a5d2cdc21cc07b5106921ad4f77c544
  - >-
    Linux >= c214410c47d6ec3128143370747d9e388bab21d7 <
    51e96fa31f7e7eac2cba8f854e24d36600cc040b
  - Linux 6.15
published: '2026-08-26'
updated: '2026-10-15'
sourceUpdated: '2026-10-15T11:17:49.400'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-74745'
references:
  - url: 'https://git.kernel.org/stable/c/51e96fa31f7e7eac2cba8f854e24d36600cc040b'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/8b1118fc5a5d2cdc21cc07b5106921ad4f77c544'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/d10e73572cda4af7487f82f58a7771f18cf61084'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
tags:
  - nvd
  - cve.org
epss: 0.00488
epssPercentile: 0.40462
ingestedAt: '2026-10-15T11:00:41.669Z'
---

## Overview

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

eth: bnxt: avoid deadlock when canceling IRQ affinity notifier

Unregistering IRQ affinity notifiers waits for the callback synchronously.
bnxt takes the netdev instance lock in the notifier (to restart the queue)
and cancels the work under the same lock. This may obviously deadlock.

Move the restart to the async service task. The queue restart isn't
super time sensitive. Store the new TPH tag, schedule the task.
Safely canceling the service task is already ironed out.

In bnxt_request_irq() the order of registering notifier, affinity and
initial TPH programming has to be inverted. I think it was racy
previously since user may trigger an update as soon as notifier
is installed.

There's a small known gap - if pcie_tph_get_cpu_st() fails at init
and the target tag is 0 we may miss programming the entry.
This does not seem worth fixing, the code has skip-on-failure
all over the place, anyway.

## Remediation

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