Просмотр исходного кода

[MIPS] au1xxx: dbdma, no sleeping under spin_lock

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>
Domen Puncer 19 лет назад
Родитель
Сommit
c06138941c
1 измененных файлов с 1 добавлено и 1 удалено
  1. 1 1
      arch/mips/au1000/common/dbdma.c

+ 1 - 1
arch/mips/au1000/common/dbdma.c

@@ -290,7 +290,7 @@ au1xxx_dbdma_chan_alloc(u32 srcid, u32 destid,
 				/* If kmalloc fails, it is caught below same
 				/* If kmalloc fails, it is caught below same
 				 * as a channel not available.
 				 * 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;
 				chan_tab_ptr[i] = ctp;
 				break;
 				break;
 			}
 			}