CVE-2026-46060: crypto: qat - fix IRQ cleanup on 6xxx probe failure

Published May 27, 2026
·
Updated

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

crypto: qat - fix IRQ cleanup on 6xxx probe failure

When adfdevup() partially completes and then fails, the IRQ handlers registered during adfisrresourcealloc() are not detached before the MSI-X vectors are released.

Since the device is enabled with pcimenabledevice(), calling pciallocirqvectors() internally registers pcimmsirelease() as a devres action. On probe failure, devres runs pcimmsirelease() which calls pcifreeirqvectors(), tearing down the MSI-X vectors while IRQ handlers (for example 'qat0-bundle0') are still attached. This causes removeprocentry() warnings:

[ 22.163964] removeprocentry: removing non-empty directory 'irq/143', leaking at least 'qat0-bundle0'

Moving the devmaddactionorreset() before adfdevup() does not solve the problem since devres runs in LIFO order and pcimmsirelease(), registered later inside adfdevup(), would still fire before adfdevicedown().

Fix by calling adfdevdown() explicitly when adfdevup() fails, to properly free IRQ handlers before devres releases the MSI-X vectors.

Affected Software

3 affected components
Linux Linux kernel (qat driver)
Linux Linux kernel>=6.16<6.18.27
Linux Linux kernel>=6.19<7.0.4

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Configuration

    Modify the qat driver probe error path to explicitly call adf_dev_down() when adf_dev_up() partially completes and then fails, ensuring IRQ handlers are detached before devres releases MSI-X vectors.

    crypto: qat (6xxx series) driver probe failure handling = call adf_dev_down() when adf_dev_up() fails
  2. Operational

    Apply the upstream fix titled 'crypto: qat - fix IRQ cleanup on 6xxx probe failure' to your kernel source (merge the patch into your kernel tree and rebuild or apply the equivalent vendor/kernel update) so that adf_dev_down() is called on adf_dev_up() failure and IRQ handlers are properly freed.

Event History

May 27, 2026
CVE Published
via MITRE·12:57 PM
Data Sourced
via MITRE·12:57 PM
Description
Data Sourced
via NVD·02:17 PM
RemedyDescriptionSeverityAffected Software

Frequently Asked Questions

1

Which systems are exposed to this issue?

Systems using the Linux kernel QAT driver on 6xxx hardware are the relevant exposure set. The issue occurs when device initialization partially succeeds and then fails during probing.

2

What access does an attacker need?

Exploitation requires local access and low privileges, according to the CVSS vector. No user interaction is required.

3

How can I tell whether the issue has occurred?

A failed QAT device probe after adf_dev_up() has partially completed can leave IRQ handlers attached while MSI-X vectors are released. Kernel logs may show remove_proc_entry warnings about a non-empty IRQ directory and a leaked handler such as qat0-bundle0.

4

What does the fix change, and what can be done before it is applied?

The fix explicitly calls adf_dev_down() when adf_dev_up() fails, ensuring IRQ handlers are freed before devres releases MSI-X vectors. If patching is not immediately possible, investigate and remediate failed QAT device probe events rather than allowing the affected initialization failure path to persist.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203