CVE-2024-56714

Summary

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

ionic: no double destroy workqueue

There are some FW error handling paths that can cause us to try to destroy the workqueue more than once, so let's be sure we're checking for that.

The case where this popped up was in an AER event where the handlers got called in such a way that ionic_reset_prepare() and thus ionic_dev_teardown() got called twice in a row. The second time through the workqueue was already destroyed, and destroy_workqueue() choked on the bad wq pointer.

We didn't hit this in AER handler testing before because at that time we weren't using a private workqueue. Later we replaced the use of the system workqueue with our own private workqueue but hadn't rerun the AER handler testing since then.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux9e25450da7006cd6f425248a5b38dad4adb3c981 < 13355dd37e22edbcb99c599f783233188740a650affected
LinuxLinux9e25450da7006cd6f425248a5b38dad4adb3c981 < 746e6ae2e202b062b9deee7bd86d94937997ecd7affected
LinuxLinux6.11affected
LinuxLinux0 < 6.11unaffected
LinuxLinux6.12.7 <= 6.12.*unaffected
LinuxLinux6.13 <= *unaffected

Weaknesses

References