From: Vladimir Zapolskiy Date: Thu, 3 Jul 2014 14:53:30 +0000 (+0300) Subject: USB: EHCI: don't allocate hardware periodic table atomically by default X-Git-Tag: firefly_0821_release~176^2~3489^2~51 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=47c6ae7cdc4dc0c72686cca1819c7368bef2e1bf;p=firefly-linux-kernel-4.4.55.git USB: EHCI: don't allocate hardware periodic table atomically by default ehci_mem_init() is executed one time during ehci_init() and by default all memory allocations but ehci->periodic are done not atomically, GFP_KERNEL is passed as flags parameter. Do similar allocation for ehci->periodic and free some space in coherent atomic DMA pool by default. Signed-off-by: Vladimir Zapolskiy Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/usb/host/ehci-mem.c b/drivers/usb/host/ehci-mem.c index c0fb6a8ae6a3..b6205fac3567 100644 --- a/drivers/usb/host/ehci-mem.c +++ b/drivers/usb/host/ehci-mem.c @@ -209,7 +209,7 @@ static int ehci_mem_init (struct ehci_hcd *ehci, gfp_t flags) ehci->periodic = (__le32 *) dma_alloc_coherent (ehci_to_hcd(ehci)->self.controller, ehci->periodic_size * sizeof(__le32), - &ehci->periodic_dma, 0); + &ehci->periodic_dma, flags); if (ehci->periodic == NULL) { goto fail; }