Thread (3 messages) 3 messages, 3 authors, 2012-02-07

Softlock OOPS dump

From: Mulyadi Santosa <hidden>
Date: 2012-02-06 07:45:56

Hi....



On Mon, Feb 6, 2012 at 14:13, devendra rawat
[off-list ref] wrote:
Hi All,

I am having a PPC system running Windriver linux. System is restarting
because of watchdog.
System was restated because no scheduling took place for 15.7 seconds. I
want to figure out which function/ISR/routine
was the kernel executing when this softlockup happened and at what place was
the execution going. The NIP (next instruction pointer) reg. is not giving
the
symbol name as the "switch" module that created the problem was dynamically
loaded.
Not sure if it will help much, but in x86, there is /sys entries that
help you to determine the logical memory address of module in virtual
memory after it's loaded. Check this out:

$ grep '' /sys/module/cpufreq_conservative/sections/*

/sys/module/cpufreq_conservative/sections/.bss:0xf83e332c
/sys/module/cpufreq_conservative/sections/.data:0xf83e2fa0
/sys/module/cpufreq_conservative/sections/.exit.text:0xf83e2bbc
/sys/module/cpufreq_conservative/sections/.gnu.linkonce.this_module:0xf83e31e0
/sys/module/cpufreq_conservative/sections/.init.text:0xf83e6000
/sys/module/cpufreq_conservative/sections/.rodata.str1.1:0xf83e2bd5
/sys/module/cpufreq_conservative/sections/.strtab:0xf83e6888
/sys/module/cpufreq_conservative/sections/.symtab:0xf83e6058
/sys/module/cpufreq_conservative/sections/.text:0xf83e2000

So, if you had an address, you could compare it with the above
addresses that mention the start of each sections of ELF structure in
the module. What you found is likely the offset. I am sure you can get
the idea and continue on your own at this point :)

-- 
regards,

Mulyadi Santosa
Freelance Linux trainer and consultant

blog: the-hydra.blogspot.com
training: mulyaditraining.blogspot.com
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help