]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
usb: usbfs: only account once for mmap()'ed usb memory usage
authorGavin Li <git@thegavinli.com>
Wed, 14 Aug 2019 21:29:24 +0000 (14:29 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 21 Aug 2019 16:57:36 +0000 (09:57 -0700)
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 <git@thegavinli.com>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Link: https://lore.kernel.org/r/20190814212924.10381-1-gavinli@thegavinli.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/core/devio.c

index 24d4a801ca641d8491f3ff47361f3eb0b4b6d289..63f23f567680277bef230bcbef57222dfa0de619 100644 (file)
@@ -1664,7 +1664,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)