linux/arch/powerpc/platforms
Kumar Gala cb1ffb6204 powerpc/85xx: Fix issue found by lockdep trace in smp_85xx_kick_cpu
lockdep trace found the following:

------------[ cut here ]------------
Badness at c007baf0 [verbose debug info unavailable]
NIP: c007baf0 LR: c007bad8 CTR: 00000000
REGS: ef855e00 TRAP: 0700   Tainted: G        W
(2.6.30-06736-g12a31df-dirty)
MSR: 00021000 <ME,CE>  CR: 24044022  XER: 20000000
TASK = ef858000[1] 'swapper' THREAD: ef854000 CPU: 0
GPR00: 00000000 ef855eb0 ef858000 00000001 000000d0 f1000000 ffbc8000 ffffffff
GPR08: 000000d0 c0760000 c0710000 00000007 2fffffff 1004a388 7ffd9400 00000000
GPR16: 00000000 7ffcd100 7ffcd100 7ffcd100 c059cd78 c075c498 c057da7c ffffffff
GPR24: ffbc8000 f1000000 00000001 c00bf8b0 c07595d4 000000d0 00021000 000000d0
NIP [c007baf0] lockdep_trace_alloc+0xc0/0xf0
LR [c007bad8] lockdep_trace_alloc+0xa8/0xf0
Call Trace:
[ef855eb0] [c007ba60] lockdep_trace_alloc+0x30/0xf0 (unreliable)
[ef855ec0] [c00cb3ac] kmem_cache_alloc+0x2c/0xf0
[ef855ee0] [c00bf8b0] __get_vm_area_node+0x80/0x1c0
[ef855f10] [c0017580] __ioremap_caller+0x1d0/0x1e0
[ef855f40] [c057da7c] smp_85xx_kick_cpu+0x64/0x124
[ef855f60] [c0599180] __cpu_up+0xd0/0x1a4
[ef855f80] [c05997c4] cpu_up+0x14c/0x1e0
[ef855fc0] [c05732a0] kernel_init+0x100/0x1c4
[ef855ff0] [c0011524] kernel_thread+0x4c/0x68
Instruction dump:
8009c174 2f800000 409e0048 73c08000 40820040 4818980d 2f830000 419effa0
3d20c076 8009c388 2f800000 409eff90 <0fe00000> 4bffff88 60000000 60000000

We were calling ioremap after we local_irq_restore(flags).  A simple
reorder fixes the problem.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
2009-06-23 08:09:57 -05:00
..
8xx powerpc/cpm: Remove some cruft code and defines 2009-05-19 00:47:19 -05:00
40x Merge commit 'jwb/next' into next 2009-06-12 10:35:52 +10:00
44x powerpc/warp: Fix ISA_DMA_THRESHOLD default 2009-06-16 14:15:44 +10:00
52xx powerpc/5xxx: Add common mpc5xxx_get_bus_frequency() function 2009-06-17 00:30:22 -06:00
82xx Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6 2009-06-15 09:40:05 -07:00
83xx 83xx: add support for the kmeter1 board. 2009-06-15 22:15:09 -05:00
85xx powerpc/85xx: Fix issue found by lockdep trace in smp_85xx_kick_cpu 2009-06-23 08:09:57 -05:00
86xx powerpc: Add 86xx support for SWIOTLB 2009-06-15 21:45:29 -05:00
512x powerpc/5121: make clock debug output more readable 2009-06-17 01:24:10 -06:00
amigaone powerpc/kconfig: Kill PPC_MULTIPLATFORM 2009-03-11 17:11:35 +11:00
cell Merge branch 'akpm' 2009-06-16 19:50:13 -07:00
chrp powerpc/pci: Clean up direct access to sysdata by CHRP platforms 2009-05-21 15:44:23 +10:00
embedded6xx Merge commit 'origin/master' into next 2009-03-24 13:38:30 +11:00
iseries powerpc/iseries: Mark signal_vsp_instruction() as maybe unused 2009-06-15 13:27:37 +10:00
maple powerpc/maple: Add a quirk to disable MSI for IPR on Bimini 2009-05-22 16:01:11 +10:00
pasemi Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-05-18 21:08:20 -07:00
powermac powerpc/pci: Clean up direct access to sysdata by powermac platforms 2009-05-21 15:44:23 +10:00
prep powerpc/kconfig: Kill PPC_MULTIPLATFORM 2009-03-11 17:11:35 +11:00
ps3 ps3: Replace direct file operations by callback 2009-06-15 16:47:26 +10:00
pseries Merge commit 'origin/master' into next 2009-06-12 16:53:38 +10:00
fsl_uli1575.c powerpc/85xx: Add P2020DS board support 2009-05-19 00:50:43 -05:00
Kconfig powerpc/virtex: Add support for Xilinx PCI host bridge 2009-06-06 10:14:22 -06:00
Kconfig.cputype powerpc: Fix invalid construct in our CPU selection Kconfig 2009-06-16 14:15:46 +10:00
Makefile powerpc: Add configurable -Werror for arch/powerpc 2009-06-16 14:15:45 +10:00