Patch "HID: u2fzero: properly handle timeouts in usb_submit_urb" has been added to the 5.10-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    HID: u2fzero: properly handle timeouts in usb_submit_urb

to the 5.10-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     hid-u2fzero-properly-handle-timeouts-in-usb_submit_u.patch
and it can be found in the queue-5.10 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit e88c4368807c500256bd54e85ac7199a687b18a5
Author: Andrej Shadura <andrew.shadura@xxxxxxxxxxxxxxx>
Date:   Tue Oct 19 17:29:17 2021 +0200

    HID: u2fzero: properly handle timeouts in usb_submit_urb
    
    [ Upstream commit 43775e62c4b784f44a159e13ba80e6146a42d502 ]
    
    The wait_for_completion_timeout function returns 0 if timed out or a
    positive value if completed. Hence, "less than zero" comparison always
    misses timeouts and doesn't kill the URB as it should, leading to
    re-sending it while it is active.
    
    Fixes: 42337b9d4d95 ("HID: add driver for U2F Zero built-in LED and RNG")
    Signed-off-by: Andrej Shadura <andrew.shadura@xxxxxxxxxxxxxxx>
    Signed-off-by: Jiri Kosina <jkosina@xxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/hid/hid-u2fzero.c b/drivers/hid/hid-u2fzero.c
index 94f78ffb76d04..67ae2b18e33ac 100644
--- a/drivers/hid/hid-u2fzero.c
+++ b/drivers/hid/hid-u2fzero.c
@@ -132,7 +132,7 @@ static int u2fzero_recv(struct u2fzero_device *dev,
 
 	ret = (wait_for_completion_timeout(
 		&ctx.done, msecs_to_jiffies(USB_CTRL_SET_TIMEOUT)));
-	if (ret < 0) {
+	if (ret == 0) {
 		usb_kill_urb(dev->urb);
 		hid_err(hdev, "urb submission timed out");
 	} else {



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux