summaryrefslogtreecommitdiff
path: root/drivers/usb/core/hcd.c
diff options
context:
space:
mode:
authorSarah Sharp <sarah.a.sharp@linux.intel.com>2013-10-17 12:44:58 -0700
committerSarah Sharp <sarah.a.sharp@linux.intel.com>2014-03-04 15:38:02 -0800
commitd57342232db459bf820b90e39496190965d7a775 (patch)
treede7f7b7665c97b6f379559b78461564dfb9efd08 /drivers/usb/core/hcd.c
parenta3901538611f8d5180df44f5b61293e70903958f (diff)
xhci: Remove segments from radix tree on failed insert.
If we're expanding a stream ring, we want to make sure we can add those ring segments to the radix tree that maps segments to ring pointers. Try the radix tree insert after the new ring segments have been allocated (the last segment in the new ring chunk will point to the first newly allocated segment), but before the new ring segments are linked into the old ring. If insert fails on any one segment, remove each segment from the radix tree, deallocate the new segments, and return. Otherwise, link the new segments into the tree. HdG: Add a check to only update stream mappings in xhci_ring_expansion when the ring is a stream ring. Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Diffstat (limited to 'drivers/usb/core/hcd.c')
0 files changed, 0 insertions, 0 deletions