linux/arch/arm/mach-mxs
Lothar Waßmann 56b7eec01d ARM: mxs: Fix BUG() when invoking mxs_restart() from interrupt context
The mxs_restart() function uses of_iomap() which triggers the
following BUG_ON(in_interrupt()) when called in interrupt context
(e.g. thru SYSRQ-B):

      SysRq : Resetting
      ------------[ cut here ]------------
      kernel BUG at mm/vmalloc.c:1310!
      Internal error: Oops - BUG: 0 [#1] PREEMPT ARM
      Modules linked in: i2c_dev
      CPU: 0 PID: 0 Comm: swapper Not tainted 3.11.0-rc2-next-20130729-karo+ #196
      task: c04e1c38 ti: c04d8000 task.ti: c04d8000
      PC is at __get_vm_area_node.clone.25+0x34/0x140
      LR is at get_vm_area_caller+0x38/0x44
      pc : [<c008a988>]    lr : [<c008b434>]    psr: 20000013
      sp : c04d9db0  ip : 00000001  fp : 00000001
      r10: c8800000  r9 : 00000000  r8 : 000000d0
      r7 : 00002000  r6 : 00000001  r5 : 00000001  r4 : 00002000
      r3 : 00010000  r2 : 00000001  r1 : c04d9db0  r0 : 00002000
      Flags: nzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
      Control: 0005317f  Table: 46920000  DAC: 00000017
      Process swapper (pid: 0, stack limit = 0xc04d81b8)

Create the mapping upon startup from mxs_machine_init().

Signed-off-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-08-16 15:46:11 +08:00
..
Kconfig Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2013-07-09 18:24:39 -07:00
mach-mxs.c ARM: mxs: Fix BUG() when invoking mxs_restart() from interrupt context 2013-08-16 15:46:11 +08:00
Makefile ARM: mxs: enable multiplatform build 2013-04-04 21:15:58 +08:00
pm.c ARM: mxs: call mxs_pm_init() as a machine_desc hook 2013-04-04 21:15:57 +08:00
pm.h ARM: mxs: stub out mxs_pm_init for !CONFIG_PM 2013-06-24 16:03:13 +02:00