My previous patch which cleaned up some of the spinlocks, moved one of
the spinlocks around a call to kmem_cache_alloc. It would sometimes
erroneously call it with GFP_KERNEL.

This patch fixes the problem by always calling it with GFP_ATOMIC.
Thanks to Greg for pointing this out to me.

JE

--- linux-2.4.19-pre3.orig/drivers/usb/uhci.c   Sun Mar 17 10:48:21 2002
+++ linux-2.4.19-pre3/drivers/usb/uhci.c        Sun Mar 17 11:10:51 2002
@@ -618,7 +618,7 @@
 {
        struct urb_priv *urbp;
 
-       urbp = kmem_cache_alloc(uhci_up_cachep, in_interrupt() ? SLAB_ATOMIC : 
SLAB_KERNEL);
+       urbp = kmem_cache_alloc(uhci_up_cachep, SLAB_ATOMIC);
        if (!urbp) {
                err("uhci_alloc_urb_priv: couldn't allocate memory for urb_priv\n");
                return NULL;

_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to