hso: Fix stack corruption on some architectures
authorDaniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
Wed, 21 Aug 2013 08:43:19 +0000 (01:43 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 22 Aug 2013 03:47:59 +0000 (20:47 -0700)
commite75dc677ff8d06ffa61bef6fee436227ae5440c6
tree15c3d8e0ae078ae6f9b3f008c9eb3a5a9c7fc29c
parent35e57e1b49a351aa804dab6010cd46ae6112a541
hso: Fix stack corruption on some architectures

As Sergei Shtylyov explained in the #mipslinux IRC channel:
[Mon 2013-08-19 12:28:21 PM PDT] <headless> guys, are you sure it's not "DMA off stack" case?
[Mon 2013-08-19 12:28:35 PM PDT] <headless> it's a known stack corruptor on non-coherent arches
[Mon 2013-08-19 12:31:48 PM PDT] <DonkeyHotei> headless: for usb/ehci?
[Mon 2013-08-19 12:34:11 PM PDT] <DonkeyHotei> headless: explain
[Mon 2013-08-19 12:35:38 PM PDT] <headless> usb_control_msg() (or other such func) should not use buffer on stack. DMA from/to stack is prohibited
[Mon 2013-08-19 12:35:58 PM PDT] <headless> and EHCI uses DMA on control xfers (as well as all the others)

Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/usb/hso.c