summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorMathias Nyman <mathias.nyman@linux.intel.com>2021-02-03 14:37:02 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-02-10 11:29:17 +0300
commit57ea7b257a1a764e0910dbeffcbffc30b6bfc431 (patch)
tree6837d5b2286fca0dce661dc24eac362c2696f1e2 /arch
parentee23b9329ec261b5144259f42b1b4eee543d0cb6 (diff)
downloadlinux-57ea7b257a1a764e0910dbeffcbffc30b6bfc431.tar.xz
xhci: fix bounce buffer usage for non-sg list case
commit d4a610635400ccc382792f6be69427078541c678 upstream. 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> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'arch')
0 files changed, 0 insertions, 0 deletions