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 <vladimir_zapolskiy@mentor.com> Acked-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
64024d9f2a
commit
47c6ae7cdc
|
@ -209,7 +209,7 @@ static int ehci_mem_init (struct ehci_hcd *ehci, gfp_t flags)
|
||||||
ehci->periodic = (__le32 *)
|
ehci->periodic = (__le32 *)
|
||||||
dma_alloc_coherent (ehci_to_hcd(ehci)->self.controller,
|
dma_alloc_coherent (ehci_to_hcd(ehci)->self.controller,
|
||||||
ehci->periodic_size * sizeof(__le32),
|
ehci->periodic_size * sizeof(__le32),
|
||||||
&ehci->periodic_dma, 0);
|
&ehci->periodic_dma, flags);
|
||||||
if (ehci->periodic == NULL) {
|
if (ehci->periodic == NULL) {
|
||||||
goto fail;
|
goto fail;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue