summaryrefslogtreecommitdiffstats
path: root/drivers/usb/class
diff options
context:
space:
mode:
authorLarry Finger <Larry.Finger@lwfinger.net>2009-11-05 10:37:03 -0600
committerGreg Kroah-Hartman <gregkh@suse.de>2009-12-11 11:55:20 -0800
commit85e034fdff2af6befc55904f3ab9cc5aa31be8fe (patch)
tree6128ed2bcfd50c1dedcf3cb61e752266708fdef5 /drivers/usb/class
parent796c8c78801ebf1bdebddda06a43276355ff91eb (diff)
USB: Check results of dma_map_single
In map_urb_for_dma(), the DMA address returned by dma_map_single() is not checked to determine if it is legal. This lack of checking contributed to a problem with the libertas wireless driver (http://marc.info/?l=linux-wireless&m=125695331205062&w=2). The difficulty was not detected until the buffer was unmapped. By this time memory corruption had occurred. The situation is fixed by testing the returned DMA address, and returning -EAGAIN if the address is invalid. Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Cc: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/class')
0 files changed, 0 insertions, 0 deletions