===================================================================
@@ -1281,6 +1281,13 @@ static int map_urb_for_dma(struct usb_hc
urb->setup_packet,
sizeof(struct usb_ctrlrequest),
DMA_TO_DEVICE);
+ ret = dma_mapping_error(hcd->self.controller,
+ urb->setup_dma);
+ /* warn if DMA mapping failed */
+ if (ret) {
+ WARN_ON(1);
+ return ret;
+ }
else if (hcd->driver->flags & HCD_LOCAL_MEM)
ret = hcd_alloc_coherent(
urb->dev->bus, mem_flags,
@@ -1299,6 +1306,13 @@ static int map_urb_for_dma(struct usb_hc
urb->transfer_buffer,
urb->transfer_buffer_length,
dir);
+ ret = dma_mapping_error(hcd->self.controller,
+ urb->transfer_dma);
+ /* warn if DMA mapping failed */
+ if (ret) {
+ WARN_ON(1);
+ return ret;
+ }
else if (hcd->driver->flags & HCD_LOCAL_MEM) {
ret = hcd_alloc_coherent(
urb->dev->bus, mem_flags,