title: Fatal exception in interrupt when booting Linux 3.3.7 on BeagleBoard
body: <p>I have tried to implement a new scheduling algorithm in Linux Kernel 3.3.7 and boot it on the BeagleBoard. However, it throws errors like "Kernel panic - not syncing: Fatal exception in interrupt". I have enabled low level debugs functions and the debug infos are as follows:</p>
  
  <pre><code>[    0.000000] ------------[ cut here ]------------
  [    0.000000] WARNING: at kernel/lockdep.c:2592 do_vfp+0x8/0x20()
  [    0.000000] Modules linked in:
  [    0.000000] [&lt;c001c2ec&gt;] (unwind_backtrace+0x0/0x130) from [&lt;c0045afc&gt;] (warn_slow)
  [    0.000000] [&lt;c0045afc&gt;] (warn_slowpath_common+0x4c/0x64) from [&lt;c0045b30&gt;] (warn_)
  [    0.000000] [&lt;c0045b30&gt;] (warn_slowpath_null+0x1c/0x24) from [&lt;c000f328&gt;] (do_vfp+)
  [    0.000000] ---[ end trace 1b75b31a2719ed1c ]---
  [    0.000000] Error before arm_notify_die- GDEM-UPM 
  [    0.000000] Internal error: Oops - undefined instruction: 0 [#1] SMP
  [    0.000000] Modules linked in:
  [    0.000000] CPU: 0    Tainted: G        W     (3.3.0-rc7-00008-g8bd3d32-dirty #5)
  [    0.000000] PC is at update_curr+0x4/0x5d0
  [    0.000000] LR is at task_tick_fair+0x3c/0x154
  [    0.000000] pc : [&lt;c0079ac0&gt;]    lr : [&lt;c007a274&gt;]    psr: 800001d3
  [    0.000000] sp : c0699e2c  ip : c0698000  fp : c0699ea4
  [    0.000000] r10: 00000000  r9 : c0723748  r8 : 00000000
  [    0.000000] r7 : 00000000  r6 : c06b4630  r5 : c0e083e8  r4 : c0e08380
  [    0.000000] r3 : c007a238  r2 : c06b2108  r1 : c06b4668  r0 : c0e083e8
  [    0.000000] Flags: Nzcv  IRQs off  FIQs off  Mode SVC_32  ISA ARM  Segment kernel
  [    0.000000] Control: 10c5387d  Table: 80004019  DAC: 00000017
  [    0.000000] Process swapper/0 (pid: 0, stack limit = 0xc06982f8)
  [    0.000000] Stack: (0xc0699e2c to 0xc069a000)
  [    0.000000] 9e20:                            c0e08380 c0e083e8 c06b4630 00000000 00
  [    0.000000] 9e40: c0723748 00000000 c0699ea4 c007a274 00000002 c06b4630 00000000 00
  [    0.000000] 9e60: c0723748 c06b4668 600001d3 c0e08380 00000000 c06b4630 00000000 00
  [    0.000000] 9e80: c0723748 00000000 c0699ea4 c00755f0 c0698000 c06b4630 00000000 00
  [    0.000000] 9ea0: c072375c c0055288 00000000 00000000 c069a144 00000000 00000000 c0
  [    0.000000] 9ec0: c06b7bc0 c069e954 c06b7b40 c002713c 00000000 c008b084 00000000 cc
  [    0.000000] 9ee0: 00000000 c06b7bc0 c069e954 0000005f c002713c 00000000 00000000 c0
  [    0.000000] 9f00: 00000000 c00a449c 411fc083 00000000 600001d3 c069e900 c069e954 c0
  [    0.000000] 9f20: c069e954 c06b7bc0 0000005f 00000000 411fc083 00000000 00000000 c8
  [    0.000000] 9f40: c069e900 c069e954 00000001 c00a6b9c c06b2108 c06960e0 c0698000 c0
  [    0.000000] 9f60: 000001da c00155f8 fa200000 c0699f90 ffffffff c0699fc4 80004059 cc
  [    0.000000] 9f80: c06b4630 c06486d4 20000153 c0483e24 00000000 00000001 01ffffff c4
  [    0.000000] 9fa0: 600001d3 c067925c c0e03980 c06b5e14 80004059 411fc083 00000000 00
  [    0.000000] 9fc0: 00000001 c0699fd8 00000001 c06486d4 20000153 ffffffff c06481c4 00
  [    0.000000] 9fe0: 00000000 c067925c 10c53c7d c06b0cc0 c067922c 80008044 00000000 00
  [    0.000000] unwind: Unhandled instruction c9
  [    0.000000] Code: c0491260 c0491264 c04911b4 e92d4ff0 (ed2d8b02) 
  [    0.000000] ---[ end trace 1b75b31a2719ed1d ]---
  [    0.000000] Kernel panic - not syncing: Fatal exception in interrupt`
  </code></pre>
  
  <p>Any idea where comes the error? 
  Is there any debug tool(maybe KGDB) that can be used to debug the kernel before the it is booted?  </p>
  
  <p>Thx!</p>