2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-21 03:33:59 +08:00
linux-next/arch/parisc
Helge Deller e0e7ed4811 parisc: fix GFP_KERNEL use while atomic in unwinder
Since unwind_frame_init_from_blocked_task() may be called from
interrupt/in_atomic context, it needs to kmalloc() memory with
GFP_ATOMIC instead of GFP_KERNEL.

This fixes this warning (ShowTasks called from sysrq handler):

BUG: sleeping function called from invalid context at mm/slab.c:3044
in_atomic(): 1, irqs_disabled(): 1, pid: 2119, name: miniruby
Backtrace:
 [<10132e78>] __might_sleep+0x4c/0x118
 [<1018f644>] kmem_cache_alloc+0x2c/0xb4
 [<1011bae0>] unwind_frame_init_from_blocked_task+0x30/0xa0
 [<1010fd3c>] parisc_show_stack+0x3c/0xac
 [<10132c7c>] show_state_filter+0x80/0xd8
 [<102f4074>] __handle_sysrq+0xd0/0x1b0
 [<102f9558>] receive_chars+0x22c/0x318
 [<102f9940>] serial8250_handle_port+0x40/0x88
 [<102f9a8c>] serial8250_interrupt+0x104/0x10c
 [<10161920>] handle_IRQ_event+0x44/0x94
 [<10161acc>] __do_IRQ+0x15c/0x1dc
 [<102c442c>] superio_interrupt+0x74/0xa8
 [<10161920>] handle_IRQ_event+0x44/0x94
 [<10161acc>] __do_IRQ+0x15c/0x1dc
 [<10110fb4>] do_cpu_irq_mask+0x90/0xbc
 [<10114068>] intr_return+0x0/0x4

Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
2009-01-05 18:15:25 +00:00
..
configs [PARISC] move defconfig to arch/parisc/configs/ 2008-03-15 19:12:08 -07:00
hpux [PATCH] prepare vfs_readdir() callers to returning filldir result 2008-10-23 05:13:10 -04:00
include/asm parisc: remove dead BIO_VMERGE_BOUNDARY and BIO_VMERGE_MAX_SIZE definitions 2009-01-05 18:15:25 +00:00
kernel parisc: fix GFP_KERNEL use while atomic in unwinder 2009-01-05 18:15:25 +00:00
lib parisc: lib/: make code static 2009-01-05 18:15:24 +00:00
math-emu kbuild: fix up CFLAGS usage 2007-10-14 21:49:42 +02:00
mm mm: drop unneeded pgdat argument from free_area_init_node() 2008-07-24 10:47:16 -07:00
oprofile oprofile: more whitespace fixes 2008-10-15 20:55:51 +02:00
defpalo.conf Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
install.sh Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Kconfig cpumask: centralize cpu_online_map and cpu_possible_map 2008-12-13 21:19:41 +10:30
Kconfig.debug alpha/parisc: remove config variable DEBUG_RWLOCK 2008-02-06 10:41:03 -08:00
Makefile [PARISC] move defconfig to arch/parisc/configs/ 2008-03-15 19:12:08 -07:00
nm Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00