From mboxrd@z Thu Jan 1 00:00:00 1970 From: mulyadi.santosa@gmail.com (Mulyadi Santosa) Date: Mon, 6 Feb 2012 14:45:56 +0700 Subject: Softlock OOPS dump In-Reply-To: References: Message-ID: To: kernelnewbies@lists.kernelnewbies.org List-Id: kernelnewbies.lists.kernelnewbies.org Hi.... On Mon, Feb 6, 2012 at 14:13, devendra rawat 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