]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
usb: gadget: udc: core: don't starve DMA resources
authorFelipe Balbi <felipe.balbi@linux.intel.com>
Wed, 24 Aug 2016 11:33:27 +0000 (14:33 +0300)
committerBen Hutchings <ben@decadent.org.uk>
Sun, 20 Nov 2016 01:17:17 +0000 (01:17 +0000)
commit 23fd537c9508fb6e3b93ddf23982f51afc087781 upstream.

Always unmap all SG entries as required by DMA API

Fixes: a698908d3b3b ("usb: gadget: add generic map/unmap request utilities")
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
[bwh: Backported to 3.16: adjust filename, context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/usb/gadget/udc-core.c

index 38913eac6e7c9c731eecb90a5f4efbd27f200998..d7ef85f3884776d3d113edbdd32f548ef3ad215d 100644 (file)
@@ -91,7 +91,7 @@ void usb_gadget_unmap_request(struct usb_gadget *gadget,
                return;
 
        if (req->num_mapped_sgs) {
-               dma_unmap_sg(&gadget->dev, req->sg, req->num_mapped_sgs,
+               dma_unmap_sg(&gadget->dev, req->sg, req->num_sgs,
                                is_in ? DMA_TO_DEVICE : DMA_FROM_DEVICE);
 
                req->num_mapped_sgs = 0;