drivers: xhci: fix incorrect bit test
authorNickolai Zeldovich <nickolai@csail.mit.edu>
Tue, 8 Jan 2013 03:39:31 +0000 (22:39 -0500)
committerSarah Sharp <sarah.a.sharp@linux.intel.com>
Thu, 24 Jan 2013 17:53:37 +0000 (09:53 -0800)
Fix incorrect bit test that originally showed up in
4ee823b83bc9851743fab756c76b27d6a1e2472b "USB/xHCI: Support
device-initiated USB 3.0 resume."

Use '&' instead of '&&'.

This should be backported to kernels as old as 3.4.

Signed-off-by: Nickolai Zeldovich <nickolai@csail.mit.edu>
Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Cc: stable@vger.kernel.org
drivers/usb/host/xhci-ring.c

index 80ef717ec5b8ac2fe55d215fd638563f94ca001d..151204642a6e48c0f49f0da27aa1324fa2a980ba 100644 (file)
@@ -1698,7 +1698,7 @@ static void handle_port_status(struct xhci_hcd *xhci,
                                faked_port_index + 1);
                if (slot_id && xhci->devs[slot_id])
                        xhci_ring_device(xhci, slot_id);
-               if (bus_state->port_remote_wakeup && (1 << faked_port_index)) {
+               if (bus_state->port_remote_wakeup & (1 << faked_port_index)) {
                        bus_state->port_remote_wakeup &=
                                ~(1 << faked_port_index);
                        xhci_test_and_clear_bit(xhci, port_array,