Linux: HID: hid-oxp: use cancel_delayed_work_sync() in remove
What fixes it
No source in this snapshot names a fixed version.
Description
In the Linux kernel, the following vulnerability has been resolved:
HID: hid-oxp: use cancel_delayed_work_sync() in remove
oxp_hid_remove() uses cancel_delayed_work() for all three delayed work items. cancel_delayed_work() only dequeues a pending work item without waiting for a currently executing callback to finish. If any of the work callbacks (oxp_rgb_queue_fn, oxp_btn_queue_fn, oxp_mcu_init_fn) is running at the time of removal, the callback continues executing concurrently with hid_hw_close() and hid_hw_stop(), accessing the HID device after it has been closed and stopped.
Use cancel_delayed_work_sync() instead to ensure that any in-progress work callback completes before device teardown proceeds.
Text from CVE List
Affected versions 6
- Linuxaffected: 84910c459d65ab3a1aeac7f936169fb71334dd46 before eed737d89fa368251018a62e1d698958ef7dc635CVE List
- Linuxaffected: 84910c459d65ab3a1aeac7f936169fb71334dd46 before abd24922c2a9797d6184be0561dd85e7bcdfd091CVE List
- Linuxaffected: 7.2CVE List
- Linuxunaffected: all versions before 7.2CVE List
- Linuxunaffected: 7.2.9 through 7.2.*CVE List
- Linuxunaffected: 7.3CVE List