mlx5: Fix default values in create CQ (Linux Linux)

CVE-2025-68209
Not available

At a glance

Source
NVD
EPSS
EPSS 0.22 % · percentile 13 ()
State
PUBLISHED
Published
Updated
Assigner
Linux
NVD status
Deferred

Description

In the Linux kernel, the following vulnerability has been resolved: mlx5: Fix default values in create CQ Currently, CQs without a completion function are assigned the mlx5_add_cq_to_tasklet function by default. This is problematic since only user CQs created through the mlx5_ib driver are intended to use this function. Additionally, all CQs that will use doorbells instead of polling for completions must call mlx5_cq_arm. However, the default CQ creation flow leaves a valid value in the CQ's arm_db field, allowing FW to send interrupts to polling-only CQs in certain corner cases. These two factors would allow a polling-only kernel CQ to be triggered by an EQ interrupt and call a completion function intended only for user CQs, causing a null pointer exception. Some areas in the driver have prevented this issue with one-off fixes but did not address the root cause. This patch fixes the described issue by adding defaults to the create CQ flow. It adds a default dummy completion function to protect against null pointer exceptions, and it sets an invalid command sequence number by default in kernel CQs to prevent the FW from sending an interrupt to the CQ until it is armed. User CQs are responsible for their own initialization values. Callers of mlx5_core_create_cq are responsible for changing the completion function and arming the CQ per their needs.

References

European references

CERT-FR advisories

Affected products

ProductVersions
Linux · Linuxaffected cdd04f4d4d71cbf93d0d9abe63bc838f47c467fa < 5c08079c3e5a3c1573afcb5643b5d296865d1170 ; affected cdd04f4d4d71cbf93d0d9abe63bc838f47c467fa < 1a7865e3e4de2830d8a9fe8c273dc10b248b7338 ; affected cdd04f4d4d71cbf93d0d9abe63bc838f47c467fa < a39d334c9840705af69f0466f8f0129c366004ca ; affected cdd04f4d4d71cbf93d0d9abe63bc838f47c467fa < 08469f5393a1a39f26a6e2eb2e8c33187665c1f4 ; affected cdd04f4d4d71cbf93d0d9abe63bc838f47c467fa < e5eba42f01340f73888dfe560be2806057c25913
Linux · Linuxaffected 6.0 ; unaffected 0 < 6.0 ; unaffected 6.1.191 ≤ 6.1.* ; unaffected 6.6.160 ≤ 6.6.* ; unaffected 6.12.114 ≤ 6.12.* ; unaffected 6.17.9 ≤ 6.17.*

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD