[PATCH] staging/keucr: fix keucr lost disconnect in transport

From: Al Cho
Date: Fri Sep 24 2010 - 06:51:30 EST


The other part of keucr lost usb disconnect.
Unplug SDcard after thread scan,the wrong rule in usb_stor_port_reset,
so the driver still fail in stress test.

Signed-off-by: Al Cho <acho@xxxxxxxxxx>
---
drivers/staging/keucr/transport.c | 15 +++++----------
1 files changed, 5 insertions(+), 10 deletions(-)

diff --git a/drivers/staging/keucr/transport.c b/drivers/staging/keucr/transport.c
index 7215429..445a62c 100644
--- a/drivers/staging/keucr/transport.c
+++ b/drivers/staging/keucr/transport.c
@@ -763,24 +763,19 @@ int usb_stor_port_reset(struct us_data *us)
int result, rc_lock;

//printk("transport --- usb_stor_port_reset\n");
- result = rc_lock = usb_lock_device_for_reset(us->pusb_dev, us->pusb_intf);
+ result = usb_lock_device_for_reset(us->pusb_dev, us->pusb_intf);
if (result < 0)
printk("unable to lock device for reset: %d\n", result);
- else
- {
+ else {
/* Were we disconnected while waiting for the lock? */
- if (test_bit(US_FLIDX_DISCONNECTING, &us->dflags))
- {
+ if (test_bit(US_FLIDX_DISCONNECTING, &us->dflags)) {
result = -EIO;
//printk("No reset during disconnect\n");
- }
- else
- {
+ } else {
result = usb_reset_device(us->pusb_dev);
//printk("usb_reset_composite_device returns %d\n", result);
}
- if (rc_lock)
- usb_unlock_device(us->pusb_dev);
+ usb_unlock_device(us->pusb_dev);
}
return result;
}
--
1.7.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/