linux/drivers/usb/core
Johannes Berg a8aa401f38 USB: pass mem_flags to dma_alloc_coherent
When I want to use my webcam, I get:

                                 vvvvvvv
cheese: page allocation failure. order:5, mode:0x8004
Pid: 8100, comm: cheese Not tainted 2.6.30-rc2-wl-dirty #102
Call Trace:
 [<ffffffff802c5d8e>] __alloc_pages_internal+0x3fe/0x520
 [<ffffffff80210a20>] dma_generic_alloc_coherent+0x90/0x120
 [<ffffffffa001c91e>] hcd_buffer_alloc+0xee/0x130 [usbcore]
 [<ffffffffa000d52d>] usb_buffer_alloc+0x2d/0x40 [usbcore]
 [<ffffffffa0160e14>] uvc_alloc_urb_buffers+0x84/0x140 [uvcvideo]
 [<ffffffffa0160ff6>] uvc_init_video+0x126/0x400 [uvcvideo]
 [...]

Oddly, I remembered fixing this and putting in __GFP_NOWARN
because uvcvideo retries a smaller allocation. However, the
allocation function doesn't pass the gfp flags through to
dma_alloc_coherent so we still get the warning!

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-04-23 14:15:28 -07:00
..
buffer.c USB: pass mem_flags to dma_alloc_coherent 2009-04-23 14:15:28 -07:00
config.c USB: ehci tolerates some buggy devices 2008-04-24 21:16:35 -07:00
devices.c USB: drivers: use USB API functions rather than constants 2009-03-24 16:20:28 -07:00
devio.c USB: add reset endpoint operations 2009-04-17 10:50:27 -07:00
driver.c USB: fix toggle mismatch in disable_endpoint paths 2009-01-27 16:15:32 -08:00
endpoint.c USB: drivers: use USB API functions rather than constants 2009-03-24 16:20:28 -07:00
file.c USB: remove err() macro from usb core code 2008-10-17 14:41:11 -07:00
generic.c USB: Enhance usage of pm_message_t 2009-01-07 10:00:03 -08:00
hcd-pci.c USB/PCI: Fix resume breakage of controllers behind cardbus bridges 2009-02-17 16:56:31 -08:00
hcd.c USB: add reset endpoint operations 2009-04-17 10:50:27 -07:00
hcd.h USB: add reset endpoint operations 2009-04-17 10:50:27 -07:00
hub.c USB: more u32 conversion after transfer_buffer_length and actual_length 2009-03-24 16:20:45 -07:00
hub.h wusb: make ep0_reinit available for modules 2008-04-24 21:16:59 -07:00
inode.c USB: fix char-device disconnect handling 2009-01-27 16:15:32 -08:00
Kconfig usb core: fix USB_OTG_BLACKLIST_HUB typo 2008-10-17 14:40:54 -07:00
Makefile
message.c USB: add reset endpoint operations 2009-04-17 10:50:27 -07:00
notify.c
otg_whitelist.h
quirks.c USB: add quirk to avoid config and interface strings 2009-03-24 16:20:25 -07:00
sysfs.c USB: add quirk to avoid config and interface strings 2009-03-24 16:20:25 -07:00
urb.c USB: more u32 conversion after transfer_buffer_length and actual_length 2009-03-24 16:20:45 -07:00
usb.c USB: add reset endpoint operations 2009-04-17 10:50:27 -07:00
usb.h USB: fix char-device disconnect handling 2009-01-27 16:15:32 -08:00