When the allocator is changed to SLOB, the crashed information is changed as
following text. I think the kernel is crashed because of memory overflow or
memory has been changed by some code. There is a warning message when I
built the kernel source code: "NPTL on non MMU needs fixing", Does this
unfixed code caused the crash? And how to fix this problem? My board is
based on Winbond W90N740, this CPU is an ARM7TDMI-based cpu and has no MMU.
 
Darwin Chen([EMAIL PROTECTED])

[    0.780000] Calling initcall 0x0000e700: anon_inode_init+0x0/0x104()
[    0.790000]  initcall 0x0000e700: anon_inode_init+0x0/0x104() returned 0.
[    0.790000]  initcall 0x0000e700 ran for 0 msecs:
anon_inode_init+0x0/0x104()
[    0.800000] Calling initcall 0x0000f6dc: chr_dev_init+0x0/0x90()
[    0.830000] Bad page state in process 'khelper'
[    0.830000] page:00130028 flags:0x00000000 mapping:00000000 mapcount:1
count:0
[    0.830000] Trying to fix it up, but a reboot is needed
[    0.830000] Backtrace:
[    0.840000] [<0001768c>] (dump_stack+0x0/0x14) from [<0004cc10>]
(bad_page+0x70/0xac)
[    0.850000] [<0004cba0>] (bad_page+0x0/0xac) from [<0004d8dc>]
(get_page_from_freelist+0x260/0x3c0)
[    0.860000]  r6:60000013 r5:00130028 r4:00130020
[    0.870000] [<0004d67c>] (get_page_from_freelist+0x0/0x3c0) from
[<0004db00>] (__alloc_pages+0xc4/0x334)
[    0.880000] [<0004da3c>] (__alloc_pages+0x0/0x334) from [<0004dda0>]
(__get_free_pages+0x30/0x60)
[    0.890000] [<0004dd70>] (__get_free_pages+0x0/0x60) from [<000557f8>]
(slob_alloc+0x118/0x158)
[    0.900000] [<000556e0>] (slob_alloc+0x0/0x158) from [<0005586c>]
(kmem_cache_alloc+0x34/0x70)
[    0.910000] [<00055838>] (kmem_cache_alloc+0x0/0x70) from [<00022e80>]
(copy_process+0x88/0xe70)
[    0.920000]  r5:00804111 r4:00000000
[    0.920000] [<00022df8>] (copy_process+0x0/0xe70) from [<00023d58>]
(do_fork+0xd0/0x1cc)
[    0.930000] [<00023c88>] (do_fork+0x0/0x1cc) from [<00014e58>]
(kernel_thread+0x70/0x80)
[    0.940000] [<00014de8>] (kernel_thread+0x0/0x80) from [<00033394>]
(__call_usermodehelper+0x2c/0x78)
[    0.950000]  r7:00033368 r6:0073e838 r5:00000000 r4:0073e838
[    0.960000] [<00033368>] (__call_usermodehelper+0x0/0x78) from
[<000339d8>] (run_workqueue+0xbc/0x174)
[    0.970000]  r5:0072e1d0 r4:00730000
[    0.970000] [<0003391c>] (run_workqueue+0x0/0x174) from [<00033b64>]
(worker_thread+0xd4/0xe8)
[    0.980000]  r8:00000000 r7:0072e1d0 r6:0072e280 r5:00731fac r4:0072e200
[    0.990000] [<00033a90>] (worker_thread+0x0/0xe8) from [<0003707c>]
(kthread+0x54/0x7c)
[    1.000000]  r7:00000000 r6:00000000 r5:00033a90 r4:fffffffc
[    1.000000] [<00037028>] (kthread+0x0/0x7c) from [<00026f94>]
(do_exit+0x0/0x788)
[    1.010000]  r5:00000000 r4:00000000
[    1.020000] Unhandled fault: vector exception (0x800) at 0x00000000
[    1.020000] Internal error: : 800 [#1]
[    1.020000] CPU: 0    Tainted: G    B   (2.6.22-uc0 #22)
[    1.020000] PC is at slob_free+0x24/0xd8
[    1.020000] LR is at slob_alloc+0x130/0x158
[    1.020000] pc : [<0005562c>]    lr : [<00055810>]    psr: 20000013
[    1.020000] sp : 00731dc4  ip : 00731ddc  fp : 00731dd8
[    1.020000] r10: 80000013  r9 : 000007dc  r8 : 00000002
[    1.020000] r7 : 00000020  r6 : 000000fc  r5 : 00130634  r4 : d1801000
[    1.020000] r3 : 00000200  r2 : 00130028  r1 : 00001000  r0 : d1801000
[    1.020000] Flags: nzCv  IRQs on  FIQs on  Mode SVC_32  Segment kernel
[    1.020000] Process khelper (pid: 6, stack limit = 0x00730258)
[    1.020000] Stack: (0x00731dc4 to 0x00732000)
[    1.020000] 1dc0:          d1801000 0073e8a0 00731e08 00731ddc 00055810
00055618 000000d0 
[    1.020000] 1de0: 00000000 0036b028 0072e280 00730000 0000000d 00152598
00804111 00731e20 
[    1.020000] 1e00: 00731e0c 0005586c 000556f0 00000000 00804111 00731e78
00731e24 00022e80 
[    1.020000] 1e20: 00055848 00731e30 000f76bc 0003f580 00730000 00000080
00000000 00731ef4 
[    1.020000] 1e40: 00000000 0000000d 0000000c 00000000 00000000 00804111
0073f180 00730000 
[    1.020000] 1e60: 0000000d 00731ef4 00000000 00731ee8 00731e7c 00023d58
00022e08 00000000 
[    1.020000] 1e80: 00000000 0073f180 00000000 00000001 00000000 0024c728
0072e560 001a47ec 
[    1.020000] 1ea0: 0000002d 00000000 0024c888 0072e560 001a6afc 00000000
0072e280 00731f18 
[    1.020000] 1ec0: 00004011 00731ef4 0073e838 000331c8 0072e1f8 00000000
00000000 00731f58 
[    1.020000] 1ee0: 00731eec 00014e58 00023c98 00000000 00000000 00000000
0073e838 000331c8 
[    1.020000] 1f00: 00026f94 00000000 00000000 00000000 00000000 00000000
00000000 00000000 
[    1.020000] 1f20: 00000000 00000000 00000000 00000000 00014750 00000013
00000000 0073e838 
[    1.020000] 1f40: 00000000 0073e838 00033368 00731f70 00731f5c 00033394
00014df8 00730000 
[    1.020000] 1f60: 0072e1d0 00731f94 00731f74 000339d8 00033378 0072e200
00731fac 0072e280 
[    1.020000] 1f80: 0072e1d0 00000000 00731fdc 00731f98 00033b64 0003392c
00000000 0072e280 
[    1.020000] 1fa0: 000375d0 00731fb8 00731fb8 00000000 0072e280 000375d0
00731fb8 00731fb8 
[    1.020000] 1fc0: fffffffc 00033a90 00000000 00000000 00731ff4 00731fe0
0003707c 00033aa0 
[    1.020000] 1fe0: 00000000 00000000 00000000 00731ff8 00026f94 00037038
023ae650 05082188 
[    1.020000] Backtrace: 
[    1.020000] [<00055608>] (slob_free+0x0/0xd8) from [<00055810>]
(slob_alloc+0x130/0x158)
[    1.020000]  r5:0073e8a0 r4:d1801000
[    1.020000] [<000556e0>] (slob_alloc+0x0/0x158) from [<0005586c>]
(kmem_cache_alloc+0x34/0x70)
[    1.020000] [<00055838>] (kmem_cache_alloc+0x0/0x70) from [<00022e80>]
(copy_process+0x88/0xe70)
[    1.020000]  r5:00804111 r4:00000000
[    1.020000] [<00022df8>] (copy_process+0x0/0xe70) from [<00023d58>]
(do_fork+0xd0/0x1cc)
[    1.020000] [<00023c88>] (do_fork+0x0/0x1cc) from [<00014e58>]
(kernel_thread+0x70/0x80)
[    1.020000] [<00014de8>] (kernel_thread+0x0/0x80) from [<00033394>]
(__call_usermodehelper+0x2c/0x78)
[    1.020000]  r7:00033368 r6:0073e838 r5:00000000 r4:0073e838
[    1.020000] [<00033368>] (__call_usermodehelper+0x0/0x78) from
[<000339d8>] (run_workqueue+0xbc/0x174)
[    1.020000]  r5:0072e1d0 r4:00730000
[    1.020000] [<0003391c>] (run_workqueue+0x0/0x174) from [<00033b64>]
(worker_thread+0xd4/0xe8)
[    1.020000]  r8:00000000 r7:0072e1d0 r6:0072e280 r5:00731fac r4:0072e200
[    1.020000] [<00033a90>] (worker_thread+0x0/0xe8) from [<0003707c>]
(kthread+0x54/0x7c)
[    1.020000]  r7:00000000 r6:00000000 r5:00033a90 r4:fffffffc
[    1.020000] [<00037028>] (kthread+0x0/0x7c) from [<00026f94>]
(do_exit+0x0/0x788)
[    1.020000]  r5:00000000 r4:00000000
[    1.020000] Code: e3510000 12813007 11a031a3 e59f50a8 (15843000) 
[    1.100000] list_add corruption. next->prev should be prev (00130040),
but was 0004a6bc. (next=00100100).
[    1.100000] kernel BUG at lib/list_debug.c:27!



_______________________________________________
uClinux-dev mailing list
[email protected]
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by [email protected]
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

Reply via email to