mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-16 04:21:09 -04:00
Input: psmouse - replace flush_workqueue() with disable_delayed_work_sync()
The original code uses flush_workqueue() in psmouse_disconnect() to ensure the completion of both resync_work and dev3_register_work. Given that alps_disconnect() already uses disable_delayed_work_sync() to cancel dev3_register_work, replacing flush_workqueue() with disable_delayed_work_sync(&psmouse->resync_work) is more robust and efficient. Signed-off-by: Duoming Zhou <duoming@zju.edu.cn> Link: https://patch.msgid.link/6e40a46e5d9e6e3237702958b8f641263c28d2e4.1765939397.git.duoming@zju.edu.cn Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
This commit is contained in:
committed by
Dmitry Torokhov
parent
e732b2ac0a
commit
3873f16d49
@@ -1466,7 +1466,7 @@ static void psmouse_disconnect(struct serio *serio)
|
||||
|
||||
/* make sure we don't have a resync in progress */
|
||||
mutex_unlock(&psmouse_mutex);
|
||||
flush_workqueue(kpsmoused_wq);
|
||||
disable_delayed_work_sync(&psmouse->resync_work);
|
||||
mutex_lock(&psmouse_mutex);
|
||||
|
||||
if (serio->parent && serio->id.type == SERIO_PS_PSTHRU) {
|
||||
|
||||
Reference in New Issue
Block a user