diff options
author | 2021-02-03 13:37:02 +0200 | |
---|---|---|
committer | 2021-02-03 13:14:45 +0100 | |
commit | d4a610635400ccc382792f6be69427078541c678 (patch) | |
tree | c7a11e18f8862b084d6cf7e5761f1bc0e0d22ea7 /tools/perf/scripts/python/export-to-postgresql.py | |
parent | usb: host: xhci: mvebu: make USB 3.0 PHY optional for Armada 3720 (diff) | |
download | wireguard-linux-d4a610635400ccc382792f6be69427078541c678.tar.xz wireguard-linux-d4a610635400ccc382792f6be69427078541c678.zip |
xhci: fix bounce buffer usage for non-sg list case
xhci driver may in some special cases need to copy small amounts
of payload data to a bounce buffer in order to meet the boundary
and alignment restrictions set by the xHCI specification.
In the majority of these cases the data is in a sg list, and
driver incorrectly assumed data is always in urb->sg when using
the bounce buffer.
If data instead is contiguous, and in urb->transfer_buffer, we may still
need to bounce buffer a small part if data starts very close (less than
packet size) to a 64k boundary.
Check if sg list is used before copying data to/from it.
Fixes: f9c589e142d0 ("xhci: TD-fragment, align the unsplittable case with a bounce buffer")
Cc: stable@vger.kernel.org
Reported-by: Andreas Hartmann <andihartmann@01019freenet.de>
Tested-by: Andreas Hartmann <andihartmann@01019freenet.de>
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Link: https://lore.kernel.org/r/20210203113702.436762-2-mathias.nyman@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to '')
0 files changed, 0 insertions, 0 deletions