[MIPS] au1xxx: dbdma, no sleeping under spin_lock
authorDomen Puncer <domen.puncer@ultra.si>
Fri, 23 Jun 2006 09:59:50 +0000 (11:59 +0200)
committerRalf Baechle <ralf@linux-mips.org>
Thu, 29 Jun 2006 20:10:53 +0000 (21:10 +0100)
kmalloc under spin_lock can't sleep.

Signed-off-by: Domen Puncer <domen.puncer@ultra.si>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/au1000/common/dbdma.c

index 6ee090b..e8dd72c 100644 (file)
@@ -290,7 +290,7 @@ au1xxx_dbdma_chan_alloc(u32 srcid, u32 destid,
                                /* If kmalloc fails, it is caught below same
                                 * as a channel not available.
                                 */
-                               ctp = kmalloc(sizeof(chan_tab_t), GFP_KERNEL);
+                               ctp = kmalloc(sizeof(chan_tab_t), GFP_ATOMIC);
                                chan_tab_ptr[i] = ctp;
                                break;
                        }