CVE Catalog

CVE-2026-98015

Unknown
Published: Translated: NVD NIST

Summary

In the Linux kernel, mlx5_eswitch_termtbl_put() read tt->ref_count after termtbl_mutex was released. Two concurrent callers on the same mlx5_termtbl_handle raced: one decremented ref_count to zero, removed the hash entry, and called kfree(tt), while the other had already dropped the mutex and was about to evaluate if (!tt->ref_count), producing a use-after-free.

Risk Assessment

A use-after-free in the mlx5 driver's E-Switch module can lead to kernel crashes or potential code execution, posing a serious threat to system stability and security.

Recommendation

Update the Linux kernel to a version containing the fix that captures the result of the decrement into a stack-local variable before dropping the mutex, so the cleanup decision is made entirely under termtbl_mutex.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: net/mlx5: E-Switch: fix use-after-free in mlx5_eswitch_termtbl_put In mlx5_eswitch_termtbl_put(), the zero-ref cleanup check reads tt->ref_count after termtbl_mutex has been released. Two concurrent callers on the same mlx5_termtbl_handle race: one decrements ref_count to zero, removes the hash entry, and calls kfree(tt) while the other has already dropped the mutex and is about to evaluate if (!tt->ref_count), producing a use-after-free. Fix this by capturing the result of the decrement into a stack-local last variable before dropping the mutex. The cleanup decision is now made entirely under termtbl_mutex, and tt is not touched after kfree.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS