diff options
author | Thomas Pugliese <thomas.pugliese@gmail.com> | 2013-09-26 15:08:15 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-09-26 19:31:37 -0400 |
commit | d5b5c9f228bf15d134b0ac8d493b119417f5f9e9 (patch) | |
tree | b7010bb574453c96d874f1ba03d72bd4d94de063 /drivers/usb | |
parent | ffd6d17ddb1bea8267ee3edf6032fc6aa777e832 (diff) |
usb: wusbcore: clean up the sg list that was created for out transfers
Clean up the SG list after transfer completetion for out transfers if one
was created by the HWA.
Signed-off-by: Thomas Pugliese <thomas.pugliese@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb')
-rw-r--r-- | drivers/usb/wusbcore/wa-xfer.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/usb/wusbcore/wa-xfer.c b/drivers/usb/wusbcore/wa-xfer.c index f614fb1ed77f..61b0597c399b 100644 --- a/drivers/usb/wusbcore/wa-xfer.c +++ b/drivers/usb/wusbcore/wa-xfer.c | |||
@@ -520,6 +520,10 @@ static void wa_seg_dto_cb(struct urb *urb) | |||
520 | unsigned rpipe_ready = 0; | 520 | unsigned rpipe_ready = 0; |
521 | u8 done = 0; | 521 | u8 done = 0; |
522 | 522 | ||
523 | /* free the sg if it was used. */ | ||
524 | kfree(urb->sg); | ||
525 | urb->sg = NULL; | ||
526 | |||
523 | switch (urb->status) { | 527 | switch (urb->status) { |
524 | case 0: | 528 | case 0: |
525 | spin_lock_irqsave(&xfer->lock, flags); | 529 | spin_lock_irqsave(&xfer->lock, flags); |