We are having a frequent sig 11 problem on our custom mpc852t board with linux kernel 2.6.14 and U-boot version 1.1.3 We have 32MB SDRAM. I've written a test program that mallocs( 10k chunks ) and then zeros out the area using bzero().This is repeated 1000 times. The program crashes with a sig 11. Given below is the dump of the crash :
$ free total used free shared buffers Mem: 29988 3040 26948 0 0 Swap: 0 0 0 Total: 29988 3040 26948 $ ./malloctest 10 i=0 malloc'ed : 10k at 0x10012010 i=1 malloc'ed : 10k at 0x10014818 i=2 malloc'ed : 10k at 0x10017020 ........ i=222 malloc'ed : 10k at 0x1023d700 i=223 malloc'ed : 10k at 0x1023ff08 i=224 malloc'ed : 10Oops: kernel access of bad area, sig: 11 [#1] NIP: C005AC48 LR: C005B158 SP: C1DB9EC0 REGS: c1db9e10 TRAP: 0300 Not tainted MSR: 00009032 EE: 1 PR: 0 FP: 0 ME: 1 IR/DR: 11 DAR: 000000C8, DSISR: C0000000 TASK = c1d71bb0[651] 'malloctest' THREAD: c1db8000 Last syscall: 4 GPR00: C005B158 C1DB9EC0 C1D71BB0 00000001 00000000 C1DB9F20 00000003 00000000 GPR08: 00000000 C1C34468 00000003 00000000 00000003 2EEDBEFB 01FFF000 007FFF40 GPR16: 00000000 00000001 FFFFFFFF 7FB1BAA0 00000000 10068FDC 7FB1BAB8 00000000 GPR24: 10000694 10000A48 7FC4EB30 C1DB9F20 30096288 00000003 C030EE88 00000000 NIP [c005ac48] rw_verify_area+0x50/0xbc LR [c005b158] vfs_write+0x94/0x1a0 Call trace: [c005b158] vfs_write+0x94/0x1a0 [c005b348] sys_write+0x50/0x94 [c0002b90] ret_from_syscall+0x0/0x44 k at 0x10242710 i=225 malloc'ed : 10k at 0x10244f18 i=226 malloc'ed : 10k at 0x10247720 i=227 malloc'ed : 10k at 0x102Oops: kernel access of bad area, sig: 11 [#2] NIP: C004E54C LR: C004E614 SP: C1DB9CF0 REGS: c1db9c40 TRAP: 0300 Not tainted MSR: 00009032 EE: 1 PR: 0 FP: 0 ME: 1 IR/DR: 11 DAR: 000001A0, DSISR: C0000000 TASK = c1d71bb0[651] 'malloctest' THREAD: c1db8000 Last syscall: 4 GPR00: 000001A0 C1DB9CF0 C1D71BB0 C0228BAC C030E348 C022AF04 C1DA4174 00000000 GPR08: 00000000 00000000 C0228BAC C1C34CBC 80004022 2EEDBEFB 01FFF000 007FFF40 GPR16: 00000000 00000001 FFFFFFFF 7FB1BAA0 00000000 10068FDC 7FB1BAB8 00000000 GPR24: 10000694 10000A48 7FC4EB30 0000000B C022AF34 C022AF04 C030E348 C0228BAC NIP [c004e54c] __remove_shared_vm_struct+0x28/0x94 LR [c004e614] remove_vm_struct+0x5c/0xd0 Call trace: [c004e614] remove_vm_struct+0x5c/0xd0 [c0050adc] exit_mmap+0x11c/0x148 [c000f9b8] mmput+0x54/0xd0 [c00141cc] exit_mm+0x190/0x1f0 [c0014b40] do_exit+0xec/0x3c8 [c00035b0] _exception+0x0/0xc8 [c000a47c] bad_page_fault+0x5c/0x60 [c00030e0] handle_page_fault+0x7c/0x80 [c022fa68] sysfs_init+0x34/0xd4 [c005b158] vfs_write+0x94/0x1a0 [c005b348] sys_write+0x50/0x94 [c0002b90] ret_from_syscall+0x0/0x44 However if i call free() after bzero() i dont get the sig 11. I had the same problem with 2.4 kernel and after posting the problem here, was asked to move to 2.6 kernel. I've done so but the problem persists. Thanking in advance.