In the Linux kernel, the following vulnerability has been resolved: HID: usbhid: fix deadlock in hid_post_reset() You can build a USB device that includes a HID component and a storage or UAS component. The components can be reset only together. That means that hid_pre_reset() and hid_post_reset() are in the block IO error handling. Hence no memory allocation used in them may do block IO because the IO can deadlock on the mutex held while resetting a device and calling the interface drivers. Use GFP_NOIO for all allocations in them.
https://git.kernel.org/stable/c/eeceb6f4dd42065fdda3a526a93d08b8fb90fb69
https://git.kernel.org/stable/c/c7abd0e6c87441e99c759d40eb6fe589634e3041
https://git.kernel.org/stable/c/b3d16611d7cd78e9d5c6baa19b61b7caf9f1ab5e
https://git.kernel.org/stable/c/ad4505d2ab3aaac6498f17649608e70e80034bf2
https://git.kernel.org/stable/c/90550af0aad5e75110073c501e4fb42fca20ff80
https://git.kernel.org/stable/c/8df2c1b47ee3cd50fd454f75c7a7e2ae8a6adf72
https://git.kernel.org/stable/c/56d318ef8766f0deb08517fd8f3007256ea7997d
https://git.kernel.org/stable/c/4e900465296ce9fb12ed47dc77389b8dde95bfe0