Pid: 0, comm: swapper CPU: 0 Not tainted (2.6.30.4-EmbedSKy #18) PC is at default_idle+0x64/0x6c LR is at default_idle+0x58/0x6c pc : [<c0033de4>] lr : [<c0033dd8>] psr: 60000013 sp : c037dfc0 ip : c3a55660 fp : 00000000 r10: 3001ea38 r9 : 41129200 r8 : 3001ea6c r7 : c037fc80 r6 : c0020ec0 r5 : c037c000 r4 : c0033d80 r3 : 60000013 r2 : f4100000 r1 : 00000032 r0 : c0382ce8 Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel Control: c000717f Table: 33a8c000 DAC: 00000017 bad: scheduling from the idle thread! [<c0038700>] (unwind_backtrace+0x0/0xdc) from [<c004c970>] (dequeue_task_idle+0x20/0x34) [<c004c970>] (dequeue_task_idle+0x20/0x34) from [<c004b008>] (dequeue_task+0x84/0x94) [<c004b008>] (dequeue_task+0x84/0x94) from [<c004b0c4>] (deactivate_task+0x34/0x44) [<c004b0c4>] (deactivate_task+0x34/0x44) from [<c02a3f18>] (__schedule+0xec/0x2ec) [<c02a3f18>] (__schedule+0xec/0x2ec) from [<c02a4130>] (schedule+0x18/0x28) [<c02a4130>] (schedule+0x18/0x28) from [<c02a439c>] (schedule_timeout+0x10c/0x144) [<c02a439c>] (schedule_timeout+0x10c/0x144) from [<c005a158>] (msleep+0x14/0x24) [<c005a158>] (msleep+0x14/0x24) from [<bf0061ac>] (test_irq_hander+0x1c/0x6c [test_irq]) [<bf0061ac>] (test_irq_hander+0x1c/0x6c [test_irq]) from [<c0073560>] (handle_IRQ_event+0x3c/0x108) [<c0073560>] (handle_IRQ_event+0x3c/0x108) from [<c0074b7c>] (handle_edge_irq+0x114/0x150) [<c0074b7c>] (handle_edge_irq+0x114/0x150) from [<c003204c>] (_text+0x4c/0x64) [<c003204c>] (_text+0x4c/0x64) from [<c0032964>] (__irq_svc+0x24/0xa0) Exception stack(0xc037df78 to 0xc037dfc0) df60: c0382ce8 00000032 df80: f4100000 60000013 c0033d80 c037c000 c0020ec0 c037fc80 3001ea6c 41129200 dfa0: 3001ea38 00000000 c3a55660 c037dfc0 c0033dd8 c0033de4 60000013 ffffffff [<c0032964>] (__irq_svc+0x24/0xa0) from [<c0033dd8>] (default_idle+0x58/0x6c) [<c0033dd8>] (default_idle+0x58/0x6c) from [<c00342e4>] (cpu_idle+0x3c/0x58) [<c00342e4>] (cpu_idle+0x3c/0x58) from [<c0008a50>] (start_kernel+0x234/0x284) [<c0008a50>] (start_kernel+0x234/0x284) from [<30008034>] (0x30008034) BUG: scheduling while atomic: swapper/0/0x00010000 Modules linked in: test_irq [last unloaded: test_irq] 程序中有:bad:scheduling form the idle thread 这个问题分析: 调度 来自 空闲线程 Pid: 0, comm: swapper CPU: 0 Not tainted (2.6.30.4-EmbedSKy #18) PC is at default_idle+0x64/0x6c LR is at default_idle+0x58/0x6c pc : [<c0033de4>] lr : [<c0033dd8>] psr: 60000013 sp : c037dfc0 ip : c3a55660 fp : 00000000 r10: 3001ea38 r9 : 41129200 r8 : 3001ea6c r7 : c037fc80 r6 : c0020ec0 r5 : c037c000 r4 : c0033d80 r3 : 60000013 r2 : f4100000 r1 : 00000032 r0 : c0382ce8 Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel Control: c000717f Table: 33ac0000 DAC: 00000017 bad: scheduling from the idle thread! [<c0038700>] (unwind_backtrace+0x0/0xdc) from [<c004c970>] (dequeue_task_idle+0x20/0x34) [<c004c970>] (dequeue_task_idle+0x20/0x34) from [<c004b008>] (dequeue_task+0x84/0x94) [<c004b008>] (dequeue_task+0x84/0x94) from [<c004b0c4>] (deactivate_task+0x34/0x44) [<c004b0c4>] (deactivate_task+0x34/0x44) from [<c02a3f18>] (__schedule+0xec/0x2ec) [<c02a3f18>] (__schedule+0xec/0x2ec) from [<c02a4130>] (schedule+0x18/0x28) [<c02a4130>] (schedule+0x18/0x28) from [<c02a439c>] (schedule_timeout+0x10c/0x144) [<c02a439c>] (schedule_timeout+0x10c/0x144) from [<c005a158>] (msleep+0x14/0x24) [<c005a158>] (msleep+0x14/0x24) from [<bf0061ac>] (test_irq_hander+0x1c/0x6c [test_irq]) [<bf0061ac>] (test_irq_hander+0x1c/0x6c [test_irq]) from [<c0073560>] (handle_IRQ_event+0x3c/0x108) [<c0073560>] (handle_IRQ_event+0x3c/0x108) from [<c0074b7c>] (handle_edge_irq+0x114/0x150) [<c0074b7c>] (handle_edge_irq+0x114/0x150) from [<c003204c>] (_text+0x4c/0x64) [<c003204c>] (_text+0x4c/0x64) from [<c0032964>] (__irq_svc+0x24/0xa0) Exception stack(0xc037df78 to 0xc037dfc0) df60: c0382ce8 00000032 df80: f4100000 60000013 c0033d80 c037c000 c0020ec0 c037fc80 3001ea6c 41129200 dfa0: 3001ea38 00000000 c3a55660 c037dfc0 c0033dd8 c0033de4 60000013 ffffffff [<c0032964>] (__irq_svc+0x24/0xa0) from [<c0033dd8>] (default_idle+0x58/0x6c) [<c0033dd8>] (default_idle+0x58/0x6c) from [<c00342e4>] (cpu_idle+0x3c/0x58) [<c00342e4>] (cpu_idle+0x3c/0x58) from [<c0008a50>] (start_kernel+0x234/0x284) [<c0008a50>] (start_kernel+0x234/0x284) from [<30008034>] (0x30008034) Unable to handle kernel NULL pointer dereference at virtual address 00000000 pgd = c3a8c000 [00000000] *pgd=33a78031, *pte=00000000, *ppte=00000000 Internal error: Oops: 0 [#1] Modules linked in: test_irq [last unloaded: test_irq] CPU: 0 Not tainted (2.6.30.4-EmbedSKy #18) PC is at 0x0 LR is at enqueue_task+0x30/0x3c pc : [<00000000>] lr : [<c004af78>] psr: 20000093 sp : c3a8b9d0 ip : c037df04 fp : c3a8b9dc r10: c037f008 r9 : 00000000 r8 : c0382ce8 r7 : c3a8a000 r6 : c005a1b4 r5 : c037f008 r4 : 00000000 r3 : c02a6f94 r2 : 00000001 r1 : c037f008 r0 : c0382ce8 Flags: nzCv IRQs off FIQs on Mode SVC_32 ISA ARM Segment user Control: c000717f Table: 33a8c000 DAC: 00000015 Process qpe (pid: 389, stack limit = 0xc3a8a268) Stack: (0xc3a8b9d0 to 0xc3a8c000) b9c0: c0382ce8 00000100 c3a8b9ec c004b084 b9e0: 0000000f 00000100 c3a8ba1c c004bee0 c03b2ee8 00000013 c3a8ba14 c03b24e0 ba00: 00000100 c005a1b4 c3a8a000 c03b32e8 c03b2ee8 c03b30e8 c03b2ce8 c0059e8c ba20: c3a8ba20 c3a8ba20 00000000 c3a8a000 00000004 00000100 00000001 c03b2340 ba40: 00000000 0000000a 00000013 c0055d24 0000001e c3a8a000 00000000 0000001e ba60: c037df78 00004000 c3a8bae0 c3a8a000 0000c350 c0032050 ffffffff f4000000 ba80: 00004000 c0032964 c3a8bad8 0000c350 00000000 3b9ac9ff c3a8bad8 05b34638 baa0: 000008c5 c3a8bae0 c3a8a000 00000000 0000c350 00000013 00000000 c3a8bad0 bac0: c02a5024 c02a5024 20000013 ffffffff 0000c350 00000000 0000c350 00000000 bae0: 00000000 00000000 00000000 00000000 00000000 00000000 05b34638 000008c5 bb00: 00000000 c0384b08 00000000 c3a8bb0c c3a8bb0c 00000000 c3a82460 00000100 bb20: c3a8bba0 00040000 00000304 00000004 00000000 c3a8bf20 00000013 c00a655c bb40: 000008c5 c00a6e54 00000100 c3a8bf80 00000001 c3a8bde8 00000013 00000000 bb60: 0000c350 c3a8be2c c3a8be30 c3a8be34 c3a8be20 c3a8be24 c3a8be28 000479e8 bb80: 00000000 00000000 000479e8 00000000 00000000 c3aa05e0 c3a8a000 c3a8bba0 bba0: c00a7348 00000000 c38483a0 00000000 00000000 0000000b c382c5a0 00000000 bbc0: c3a8bba0 c00a742c c34042f0 c34042f0 c34042f0 c382cba0 00000000 c3a8bba0 bbe0: c00a742c c3953840 c3953840 c3953840 c382c920 00000000 c3a8bba0 c00a742c bc00: c3a6e8ec c3a6e8ec c3a6e8ec c382c920 00000000 c3a8bba0 c00a742c c3a6e8e4 bc20: c3a6e8e4 c3a6e8e4 c3aa0960 00000000 c3a8bba0 c00a742c c34041b0 c34041b0 bc40: c34041b0 c3aa0be0 00000000 c3a8bba0 c00a742c c3404070 c3404070 c3404070 bc60: c3aa04e0 00000000 c3a8bba0 c00a742c c34a9bd0 c34a9bd0 c34a9bd0 c3ad9ba0 bc80: 00000000 c3a8bba0 c00a742c c34a91d0 c34a91d0 c34a91d0 c3aa0260 00000000 bca0: c3a8bba0 c00a742c c34a9950 c34a9950 c34a9950 c3adb320 00000000 c3a8bba0 bcc0: c00a742c c34c41f0 c34c41f0 c34c41f0 c3aa05e0 00000000 c3a8bba0 c00a742c bce0: c34a9590 c34a9590 c34a9590 c3a8bce8 00000000 c3a8a000 00000004 00000100 bd00: 00000001 c03b2340 00000001 0000000a c02a6f60 c393a6e0 c0382ce8 00000000 bd20: c393a6e0 c0382ce8 c393a710 c38483d0 c02a6f60 c38483a0 c393a6e0 c0382ce8 bd40: c038e450 00000000 c038e450 00000000 00000051 c0179434 00000046 c038e450 bd60: c39613e0 00000000 00000000 00000046 00000004 c3a68005 01afef23 c0073560 bd80: c038667c 00000046 00000001 c3a8be64 00000004 c0074d24 0000002c 00000046 bda0: 00000001 c003c428 0000002c 00000000 10000000 c003204c ffffffff f4000000 bdc0: 10000000 c0032964 c3800900 000000d0 00000000 00000000 60000013 c3800900 bde0: 000000d0 c3481a14 05b34638 000008c5 c3a8be58 00000000 00000000 00000004 be00: 00000013 c3a8be20 40515a2c 40515b30 00000013 00000000 00000000 c00a70bc be20: 000479e8 00000000 00000000 00000000 00000000 00000000 c3a8bf00 00000000 be40: c3409704 ffffff9c 00000000 c3a8bf00 fffffffe c00a3388 00000101 c3a8bf04 be60: 00000000 01afef23 00000004 c387f005 c387f000 c3a8bf30 c380a320 c3491a34 be80: c3a8be88 c3a8bf00 c3a8bf00 c3a8bea8 c387f000 ffffff9c c3a8bf00 fffffffe bea0: c3a8bea8 c00a3580 c380a320 c3401314 20000013 00000001 c3a8bf00 ffffff9c bec0: c387f000 c00a369c ffffff9c c387f000 00000101 00000001 00015f1e 000f4240 bee0: 0510fcaa c00365c8 c3a8bf80 000db3f4 c03b38c8 00000000 40515b30 00000013 bf00: 000008c5 055b8d30 000008c5 05b34638 c3a8bf30 0057b908 c3a8bf80 c00a6508 bf20: c3a8be20 c3a8be24 c3a8be28 c3a8be2c c3a8be30 c3a8be34 00000000 c3a8bf80 bf40: 00000000 405159e0 40515a2c 40515b30 00000000 c00a724c c3a8bf80 00000000 bf60: 00015ee6 000f4240 0510fcaa bed369b0 c3a8bf90 0000004e 00000000 00001675 bf80: 000008c5 05b34638 405159e0 bed36ac4 00004638 0000008e c0032f08 c3a8a000 bfa0: 00000000 c0032d60 405159e0 bed36ac4 00000013 40515a2c 40515b30 00000000 bfc0: 405159e0 bed36ac4 00004638 0000008e 40515d74 4050eb28 00000000 00000000 bfe0: bed36ac4 bed369cc 40320578 4076d6a4 60000010 00000013 30451031 30451431 Code: bad PC value. Kernel panic - not syncing: Fatal exception in interrupt [<c0038700>] (unwind_backtrace+0x0/0xdc) from [<c02a3980>] (panic+0x40/0x110) [<c02a3980>] (panic+0x40/0x110) from [<c0036cb0>] (die+0x13c/0x168) [<c0036cb0>] (die+0x13c/0x168) from [<c00395c0>] (__do_kernel_fault+0x64/0x74) [<c00395c0>] (__do_kernel_fault+0x64/0x74) from [<c00397cc>] (do_page_fault+0x1fc/0x218) [<c00397cc>] (do_page_fault+0x1fc/0x218) from [<c0032a80>] (__pabt_svc+0x40/0x80) [<c0032a80>] (__pabt_svc+0x40/0x80) from [<c004af78>] (enqueue_task+0x30/0x3c) [<c004af78>] (enqueue_task+0x30/0x3c) from [<c004b084>] (activate_task+0x34/0x40) [<c004b084>] (activate_task+0x34/0x40) from [<c004bee0>] (try_to_wake_up+0x74/0x128) [<c004bee0>] (try_to_wake_up+0x74/0x128) from [<c0059e8c>] (run_timer_softirq+0x154/0x1e8) [<c0059e8c>] (run_timer_softirq+0x154/0x1e8) from [<c0055d24>] (__do_softirq+0x60/0xe8) [<c0055d24>] (__do_softirq+0x60/0xe8) from [<c0032050>] (_text+0x50/0x64) [<c0032050>] (_text+0x50/0x64) from [<c0032964>] (__irq_svc+0x24/0xa0) Exception stack(0xc3a8ba88 to 0xc3a8bad0) ba80: c3a8bad8 0000c350 00000000 3b9ac9ff c3a8bad8 05b34638 baa0: 000008c5 c3a8bae0 c3a8a000 00000000 0000c350 00000013 00000000 c3a8bad0 bac0: c02a5024 c02a5024 20000013 ffffffff [<c0032964>] (__irq_svc+0x24/0xa0) from [<c02a5024>] (schedule_hrtimeout_range+0xa4/0x18c) [<c02a5024>] (schedule_hrtimeout_range+0xa4/0x18c) from [<c00a655c>] (poll_schedule_timeout+0x34/0x54) [<c00a655c>] (poll_schedule_timeout+0x34/0x54) from [<c00a6e54>] (do_select+0x3d4/0x418) [<c00a6e54>] (do_select+0x3d4/0x418) from [<c00a70bc>] (core_sys_select+0x224/0x2d8) [<c00a70bc>] (core_sys_select+0x224/0x2d8) from [<c00a724c>] (sys_select+0xdc/0x1d8) [<c00a724c>] (sys_select+0xdc/0x1d8) from [<c0032d60>] (ret_fast_syscall+0x0/0x2c)