Re: Kernel Oopsed, but where ?
On Tue, Dec 1, 2009 at 18:12, Ilya A. Volynets-Evenbakh wrote: > Lev Olshvang wrote: > Something looks rather messed up, since your init function calls a > cleanup function. > Could it be some sort of stack corruption? Not likely. Many times when an init function fails, cleanup is called. Since this code path (init->cleanup) does not usually have high coverage, there is chance of a bug there. ___ Linux-il mailing list Linux-il@cs.huji.ac.il http://mailman.cs.huji.ac.il/mailman/listinfo/linux-il
Re: Kernel Oopsed, but where ?
Lev Olshvang wrote: > Hi list, > > I am trying to figure out Oops reason, but I do not understand where > it happens > > > The system is ARM, linux kernel 2.6.31, No loadable modules > > I have 3 questions to following dump : > > 1. - PID 1 must be an init process, why it calls himself a swapper ? > (Perhaps it is a kernel thread kswapd) It is "process swapper", not process "swapper" :) An address was accessed, swapper attempted to see if there is a page to be loaded for this access, and then reported an invalid page fault. > > 2. - who is trying to load the failed module - kernel or userspace ( > I see that module failed initialization and oopsed in cleanup) > The console shows that kernel made most initializations before oops Not sure, but looks like kernel is responding to detection of some device. Can you give more details on your lpg610 module? > 3. - why no printk from this module is not shown ( I added dozen > printks to module init) Something looks rather messed up, since your init function calls a cleanup function. Could it be some sort of stack corruption? > > > > Here is console messages > CPU: Testing write buffer coherency: ok > > Serial: AMBA PL011 UART driver > dev:f1: ttyAMA0 at MMIO 0xc600 (irq = 0) is a AMBA/PL011 > console [ttyAMA0] enabled > bio: create slab at 0 > MMC card not detected > NET: Registered protocol family 2 > IP route cache hash table entries: 1024 (order: 0, 4096 bytes) > TCP established hash table entries: 1024 (order: 1, 8192 bytes) > TCP bind hash table entries: 1024 (order: 3, 40960 bytes) > TCP: Hash tables configured (established 1024 bind 1024) > TCP reno registered > NET: Registered protocol family 1 > Unable to handle kernel paging request at virtual address 36677670 > pgd = c0004000 > [36677670] *pgd= > Internal error: Oops: 0 [#1] > CPU: 0Not tainted (2.6.31 #8) > PC is at 0x36677670 > LR is at device_get_nodename+0x70/0xdc > pc : [<36677670>]lr : []psr: 2013 > sp : c1c33e30 ip : c1c33e50 fp : c1c33e4c > r10: c022d744 r9 : 0001 r8 : > r7 : c03c5554 r6 : c1ca5880 r5 : c1c33e54 r4 : c1ca5880 > r3 : 36677670 r2 : 0004 r1 : c1c33e54 r0 : c1ca5880 > Flags: nzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel > Control: 0005317f Table: 31004000 DAC: 0017 > Process swapper (pid: 1, stack limit = 0xc1c32270) > Stack: (0xc1c33e30 to 0xc1c34000) > 3e20: c1ca5880 c1c47000 c1c19bc0 > c03c5554 > . > 3fa0: c001f2e8 c0028a9c 0040 c03bca48 c001befc > c001c088 > 3fc0: c1c33ff4 c1c33fe0 c0008448 > c001f2c0 > 3fe0: c1c33ff8 c0034df4 c00083c0 b3cc73ac > 318cb34c > Backtrace: > [] (device_get_nodename+0x0/0xdc) from [] > (dev_uevent+0x110/0x144) > r7:c03c5554 r6:c1c19bc0 r5:c1c47000 r4:c1ca5880 > [] (dev_uevent+0x0/0x144) from [] > (kobject_uevent_env+0x1e4/0x478) > r5:c1c47000 r4:c1ca5888 > [] (kobject_uevent_env+0x0/0x478) from [] > (kobject_uevent+0x14/0x18) > [] (kobject_uevent+0x0/0x18) from [] > (device_del+0x138/0x17c) > [] (device_del+0x0/0x17c) from [] > (device_unregister+0x14/0x20) > r7: r6:0fe0 r5:c0257698 r4:c1ca5880 > [] (device_unregister+0x0/0x20) from [] > (device_destroy+0x38/0x44) > r5:c0257698 r4:c1ca5880 > [] (device_destroy+0x0/0x44) from [] > (lpg610_cleanup_module+0xd8/0x13c) > r4:c03cc490 > [] (lpg610_cleanup_module+0x0/0x13c) from [] > (lpg610_init_module+0x164/0x330) > [] (lpg610_init_module+0x0/0x330) from [] > (do_one_initcall+0x38/0x1c4) > > > Thnaks for reading, > Lev > > ___ > Linux-il mailing list > Linux-il@cs.huji.ac.il > http://mailman.cs.huji.ac.il/mailman/listinfo/linux-il -- Ilya A. Volynets-Evenbakh http://www.total-knowledge.com ___ Linux-il mailing list Linux-il@cs.huji.ac.il http://mailman.cs.huji.ac.il/mailman/listinfo/linux-il
Re: Kernel Oopsed, but where ?
it seems that something failed while a module (lpg610) was initializing, and cleanup was called. At some point during cleanup, an access to invalid memory was attempted, cusing the oops. what is lpg610, i searched using lxr got no results. Is this a standard module? On Tue, Dec 1, 2009 at 09:57, Lev Olshvang wrote: > Hi list, > > I am trying to figure out Oops reason, but I do not understand where it > happens > > > The system is ARM, linux kernel 2.6.31, No loadable modules > > I have 3 questions to following dump : > > 1. - PID 1 must be an init process, why it calls himself a swapper ? > (Perhaps it is a kernel thread kswapd) > > 2. - who is trying to load the failed module - kernel or userspace ( > I see that module failed initialization and oopsed in cleanup) > The console shows that kernel made most initializations before oops > 3. - why no printk from this module is not shown ( I added dozen printks to > module init) > > > > Here is console messages > CPU: Testing write buffer coherency: ok > > Serial: AMBA PL011 UART driver > dev:f1: ttyAMA0 at MMIO 0xc600 (irq = 0) is a AMBA/PL011 > console [ttyAMA0] enabled > bio: create slab at 0 > MMC card not detected > NET: Registered protocol family 2 > IP route cache hash table entries: 1024 (order: 0, 4096 bytes) > TCP established hash table entries: 1024 (order: 1, 8192 bytes) > TCP bind hash table entries: 1024 (order: 3, 40960 bytes) > TCP: Hash tables configured (established 1024 bind 1024) > TCP reno registered > NET: Registered protocol family 1 > Unable to handle kernel paging request at virtual address 36677670 > pgd = c0004000 > [36677670] *pgd= > Internal error: Oops: 0 [#1] > CPU: 0 Not tainted (2.6.31 #8) > PC is at 0x36677670 > LR is at device_get_nodename+0x70/0xdc > pc : [<36677670>] lr : [] psr: 2013 > sp : c1c33e30 ip : c1c33e50 fp : c1c33e4c > r10: c022d744 r9 : 0001 r8 : > r7 : c03c5554 r6 : c1ca5880 r5 : c1c33e54 r4 : c1ca5880 > r3 : 36677670 r2 : 0004 r1 : c1c33e54 r0 : c1ca5880 > Flags: nzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel > Control: 0005317f Table: 31004000 DAC: 0017 > Process swapper (pid: 1, stack limit = 0xc1c32270) > Stack: (0xc1c33e30 to 0xc1c34000) > 3e20: c1ca5880 c1c47000 c1c19bc0 > c03c5554 > . > 3fa0: c001f2e8 c0028a9c 0040 c03bca48 c001befc > c001c088 > 3fc0: c1c33ff4 c1c33fe0 c0008448 > c001f2c0 > 3fe0: c1c33ff8 c0034df4 c00083c0 b3cc73ac > 318cb34c > Backtrace: > [] (device_get_nodename+0x0/0xdc) from [] > (dev_uevent+0x110/0x144) > r7:c03c5554 r6:c1c19bc0 r5:c1c47000 r4:c1ca5880 > [] (dev_uevent+0x0/0x144) from [] > (kobject_uevent_env+0x1e4/0x478) > r5:c1c47000 r4:c1ca5888 > [] (kobject_uevent_env+0x0/0x478) from [] > (kobject_uevent+0x14/0x18) > [] (kobject_uevent+0x0/0x18) from [] > (device_del+0x138/0x17c) > [] (device_del+0x0/0x17c) from [] > (device_unregister+0x14/0x20) > r7: r6:0fe0 r5:c0257698 r4:c1ca5880 > [] (device_unregister+0x0/0x20) from [] > (device_destroy+0x38/0x44) > r5:c0257698 r4:c1ca5880 > [] (device_destroy+0x0/0x44) from [] > (lpg610_cleanup_module+0xd8/0x13c) > r4:c03cc490 > [] (lpg610_cleanup_module+0x0/0x13c) from [] > (lpg610_init_module+0x164/0x330) > [] (lpg610_init_module+0x0/0x330) from [] > (do_one_initcall+0x38/0x1c4) > > > Thnaks for reading, > Lev > > ___ > Linux-il mailing list > Linux-il@cs.huji.ac.il > http://mailman.cs.huji.ac.il/mailman/listinfo/linux-il > -- Ogden Nash - "The trouble with a kitten is that when it grows up, it's always a cat." - http://www.brainyquote.com/quotes/authors/o/ogden_nash.html ___ Linux-il mailing list Linux-il@cs.huji.ac.il http://mailman.cs.huji.ac.il/mailman/listinfo/linux-il
Kernel Oopsed, but where ?
Hi list, I am trying to figure out Oops reason, but I do not understand where it happens The system is ARM, linux kernel 2.6.31, No loadable modules I have 3 questions to following dump : 1. - PID 1 must be an init process, why it calls himself a swapper ? (Perhaps it is a kernel thread kswapd) 2. - who is trying to load the failed module - kernel or userspace ( I see that module failed initialization and oopsed in cleanup) The console shows that kernel made most initializations before oops 3. - why no printk from this module is not shown ( I added dozen printks to module init) Here is console messages CPU: Testing write buffer coherency: ok Serial: AMBA PL011 UART driver dev:f1: ttyAMA0 at MMIO 0xc600 (irq = 0) is a AMBA/PL011 console [ttyAMA0] enabled bio: create slab at 0 MMC card not detected NET: Registered protocol family 2 IP route cache hash table entries: 1024 (order: 0, 4096 bytes) TCP established hash table entries: 1024 (order: 1, 8192 bytes) TCP bind hash table entries: 1024 (order: 3, 40960 bytes) TCP: Hash tables configured (established 1024 bind 1024) TCP reno registered NET: Registered protocol family 1 Unable to handle kernel paging request at virtual address 36677670 pgd = c0004000 [36677670] *pgd= Internal error: Oops: 0 [#1] CPU: 0Not tainted (2.6.31 #8) PC is at 0x36677670 LR is at device_get_nodename+0x70/0xdc pc : [<36677670>]lr : []psr: 2013 sp : c1c33e30 ip : c1c33e50 fp : c1c33e4c r10: c022d744 r9 : 0001 r8 : r7 : c03c5554 r6 : c1ca5880 r5 : c1c33e54 r4 : c1ca5880 r3 : 36677670 r2 : 0004 r1 : c1c33e54 r0 : c1ca5880 Flags: nzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel Control: 0005317f Table: 31004000 DAC: 0017 Process swapper (pid: 1, stack limit = 0xc1c32270) Stack: (0xc1c33e30 to 0xc1c34000) 3e20: c1ca5880 c1c47000 c1c19bc0 c03c5554 . 3fa0: c001f2e8 c0028a9c 0040 c03bca48 c001befc c001c088 3fc0: c1c33ff4 c1c33fe0 c0008448 c001f2c0 3fe0: c1c33ff8 c0034df4 c00083c0 b3cc73ac 318cb34c Backtrace: [] (device_get_nodename+0x0/0xdc) from [] (dev_uevent+0x110/0x144) r7:c03c5554 r6:c1c19bc0 r5:c1c47000 r4:c1ca5880 [] (dev_uevent+0x0/0x144) from [] (kobject_uevent_env+0x1e4/0x478) r5:c1c47000 r4:c1ca5888 [] (kobject_uevent_env+0x0/0x478) from [] (kobject_uevent+0x14/0x18) [] (kobject_uevent+0x0/0x18) from [] (device_del+0x138/0x17c) [] (device_del+0x0/0x17c) from [] (device_unregister+0x14/0x20) r7: r6:0fe0 r5:c0257698 r4:c1ca5880 [] (device_unregister+0x0/0x20) from [] (device_destroy+0x38/0x44) r5:c0257698 r4:c1ca5880 [] (device_destroy+0x0/0x44) from [] (lpg610_cleanup_module+0xd8/0x13c) r4:c03cc490 [] (lpg610_cleanup_module+0x0/0x13c) from [] (lpg610_init_module+0x164/0x330) [] (lpg610_init_module+0x0/0x330) from [] (do_one_initcall+0x38/0x1c4) Thnaks for reading, Lev ___ Linux-il mailing list Linux-il@cs.huji.ac.il http://mailman.cs.huji.ac.il/mailman/listinfo/linux-il