From 7383a5fa60bb4e53158fed929f5e380ef86bb7c5 Mon Sep 17 00:00:00 2001 From: Andrew Morton Date: Wed, 12 Mar 2008 13:32:24 -0700 Subject: [PATCH] --- yaml --- r: 93311 b: refs/heads/master c: ff66e3ce3524125106be3ff18104ecde0849b85c h: refs/heads/master i: 93309: 25539df25ef9e17391f871615fe5b502ade60dc8 93307: cc24e951877c88afa386dd51d4cd03d7a71fbec0 93303: e617cf3a0887d40ee5a4cefd728f32ec24d8edcb 93295: baf607d47ef71615015720c89dfefc0265a4c576 93279: 67420f5e1d9941eb862dc1e0294e200b916f7915 93247: 161c0bf514703ae9b721ca29f8f98f484ad9511f 93183: d5d762b38cf41fdcfd2545b89476b494da45c3a1 v: v3 --- [refs] | 2 +- trunk/drivers/usb/core/devio.c | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index a1af56fc79ce..b1ac2ef92ce6 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 8873aaa6e574d85c020a1c472d6d159cd1ec8aef +refs/heads/master: ff66e3ce3524125106be3ff18104ecde0849b85c diff --git a/trunk/drivers/usb/core/devio.c b/trunk/drivers/usb/core/devio.c index ae94176c64e4..039ba23cc8b6 100644 --- a/trunk/drivers/usb/core/devio.c +++ b/trunk/drivers/usb/core/devio.c @@ -647,6 +647,7 @@ static int proc_control(struct dev_state *ps, void __user *arg) struct usbdevfs_ctrltransfer ctrl; unsigned int tmo; unsigned char *tbuf; + unsigned wLength; int i, j, ret; if (copy_from_user(&ctrl, arg, sizeof(ctrl))) @@ -654,7 +655,8 @@ static int proc_control(struct dev_state *ps, void __user *arg) ret = check_ctrlrecip(ps, ctrl.bRequestType, ctrl.wIndex); if (ret) return ret; - if (ctrl.wLength > PAGE_SIZE) + wLength = ctrl.wLength; /* To suppress 64k PAGE_SIZE warning */ + if (wLength > PAGE_SIZE) return -EINVAL; tbuf = (unsigned char *)__get_free_page(GFP_KERNEL); if (!tbuf)