From: Gavin Li <g...@thegavinli.com>

Memory usage for USB memory allocated via mmap() is already accounted
for at mmap() time; no need to account for it again at submiturb time.

Signed-off-by: Gavin Li <g...@thegavinli.com>
---
 drivers/usb/core/devio.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/usb/core/devio.c b/drivers/usb/core/devio.c
index bbe9c2edd3e7..9681dd55473b 100644
--- a/drivers/usb/core/devio.c
+++ b/drivers/usb/core/devio.c
@@ -1603,7 +1603,8 @@ static int proc_do_submiturb(struct usb_dev_state *ps, 
struct usbdevfs_urb *uurb
        if (as->usbm)
                num_sgs = 0;
 
-       u += sizeof(struct async) + sizeof(struct urb) + uurb->buffer_length +
+       u += sizeof(struct async) + sizeof(struct urb) +
+            (as->usbm ? 0 : uurb->buffer_length) +
             num_sgs * sizeof(struct scatterlist);
        ret = usbfs_increase_memory_usage(u);
        if (ret)
-- 
2.22.0

Reply via email to