atheros bt failed after S3
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
HWE Next |
Fix Released
|
Undecided
|
AceLan Kao | ||
linux (Ubuntu) |
Fix Released
|
Undecided
|
AceLan Kao | ||
Xenial |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
[Impact]
BT fails to load firmware after S3. On my system it's atheros' chip, but the same issue can be seen with broadcom's chip, too.
[542.6274] WARNING: CPU: 0 PID: 20729 at /build/
The root cause of this issue is request_firmware() is being called at the wrong time.
[Fix]
The fix is from this old thread[1], but the patch didn't be accepted by the maintainer.
It prevents the work queue from being re-created and calls request_firmware() immediately before usermodehelper is fully resumed. Making the workqueue freezable preserves the delay and will postpone the firmware loading time.
[Test Case]
Verified on the machine has this issue, and confirm this patch works.
[Regression Potential]
From what I can see, I think this change should be safe, and after 240 times S3 test, the system and BT functions are still working.
CVE References
tags: | added: patch |
Changed in linux (Ubuntu Xenial): | |
status: | New → Fix Committed |
Changed in linux (Ubuntu): | |
status: | In Progress → Fix Committed |
Changed in hwe-next: | |
status: | Triaged → Fix Committed |
Changed in linux (Ubuntu): | |
status: | Fix Committed → Fix Released |
Changed in hwe-next: | |
status: | Fix Committed → Fix Released |
This is a sauce patch, for it didn't be accepted by the maintainer.