Description
In the Linux kernel, the following vulnerability has been resolved: HID: nintendo: avoid bluetooth suspend/resume stalls Ensure we don't stall or panic the kernel when using bluetooth-connected controllers. This was reported as an issue on android devices using kernel 6.6 due to the resume hook which had been added for usb joycons. First, set a new state value to JOYCON_CTLR_STATE_SUSPENDED in a newly-added nintendo_hid_suspend. This makes sure we will not stall out the kernel waiting for input reports during led classdev suspend. The stalls could happen if connectivity is unreliable or lost to the controller prior to suspend. Second, since we lose connectivity during suspend, do not try joycon_init() for bluetooth controllers in the nintendo_hid_resume path. Tested via multiple suspend/resume flows when using the controller both in USB and bluetooth modes.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
2af16c1f846bd60240745bbd3afa13d5f040c61a to < 167c610b45b4c23a954aac70df9760a4bf358b20affected2af16c1f846bd60240745bbd3afa13d5f040c61a to < d3c8519f85b786dcae2498b3496f32e3925e4601affected2af16c1f846bd60240745bbd3afa13d5f040c61a to < 7b4a026313529a487821ef6ab494a61f12c1db08affected2af16c1f846bd60240745bbd3afa13d5f040c61a to < 72cb7eef06a5cde42b324dea85fa11fd5bb6a08aaffected2af16c1f846bd60240745bbd3afa13d5f040c61a to < 4a0381080397e77792a5168069f174d3e56175ffaffected
Linux Linux
Default version status: affected
5.16affected0 to < 5.16unaffected6.1.191 to ≤ 6.1.*unaffected6.6.160 to ≤ 6.6.*unaffected6.12.39 to ≤ 6.12.*unaffected6.15.7 to ≤ 6.15.*unaffected6.16 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/167c610b45b4c23a954aac70df9760a4bf358b20 ↗
- https://git.kernel.org/stable/c/d3c8519f85b786dcae2498b3496f32e3925e4601 ↗
- https://git.kernel.org/stable/c/7b4a026313529a487821ef6ab494a61f12c1db08 ↗
- https://git.kernel.org/stable/c/72cb7eef06a5cde42b324dea85fa11fd5bb6a08a ↗
- https://git.kernel.org/stable/c/4a0381080397e77792a5168069f174d3e56175ff ↗