Przeglądaj źródła

usb: fix usbtest halt check on big endian systems

usbtest did not swap the received status information when checking for
a non-zero value and failed to discover halted endpoints on big endian
systems.

Cc: stable <stable@kernel.org>
Signed-off-by: Jan Andersson <jan@gaisler.com>
Acked-by: David Brownell <david-b@pacbell.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Jan Andersson 17 lat temu
rodzic
commit
6ce4560a39
1 zmienionych plików z 1 dodań i 0 usunięć
  1. 1 0
      drivers/usb/misc/usbtest.c

+ 1 - 0
drivers/usb/misc/usbtest.c

@@ -1151,6 +1151,7 @@ static int verify_halted (int ep, struct urb *urb)
 		dbg ("ep %02x couldn't get halt status, %d", ep, retval);
 		return retval;
 	}
+	le16_to_cpus(&status);
 	if (status != 1) {
 		dbg ("ep %02x bogus status: %04x != 1", ep, status);
 		return -EINVAL;