[PATCH] Zero packet length detection for RNDIS fix. Migrated from 2.6.24 series kernel
Aric D. Blumer
aric at sdgsystems.com
Mon Mar 16 23:04:02 CET 2009
Signed-off-by: Aric D. Blumer <aric at sdgsystems.com>
Signed-off-by: Brian Code <Brian.Code at koolu.com>
---
drivers/usb/gadget/f_rndis.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/drivers/usb/gadget/f_rndis.c b/drivers/usb/gadget/f_rndis.c
index 3a8bb53..d7c7f19 100644
--- a/drivers/usb/gadget/f_rndis.c
+++ b/drivers/usb/gadget/f_rndis.c
@@ -437,7 +437,8 @@ invalid:
DBG(cdev, "rndis req%02x.%02x v%04x i%04x l%d\n",
ctrl->bRequestType, ctrl->bRequest,
w_value, w_index, w_length);
- req->zero = 0;
+ req->zero = value < w_length
+ && (value % cdev->gadget->ep0->maxpacket) == 0;
req->length = value;
value = usb_ep_queue(cdev->gadget->ep0, req, GFP_ATOMIC);
if (value < 0)
--
1.5.6.3
--=-OI3enyuSeXsy0v+wx/Sb--
More information about the openmoko-kernel
mailing list