04-19-2010 04:14 PM
Gidday there,
I've been running into some problems with the linux kernel appearing to hang on the console soon after booting. Whenever I stop the processor with xmd (or gdbtui through a connection to xmd), I see that the PC is sitting in the 'default_idle()' function. Has anyone seen this?
How can I check to see if interrupts are getting missed?
Thanks in advance.
Joshua
04-22-2010 10:30 AM
So, I think I found the problem. Bad kernel configuration.
I had selected HZ as 1000 at some point to test it, and forgot about it. I have seen that the console hangs whenever HZ is something other than 100. Is this a known issue?
Thanks
04-19-2010 04:23 PM
I haven't seen that.
You can watch /proc/interrupts to see what the kernel is telling you, but not sure if that will help in this case or not as it's hard to count them with a uart precisely.
I'm assuming you connected the uart and the timer to the interrupt controller.
Thanks,
John
04-19-2010 04:29 PM
The problem is that I can't actually do anything on the console when this problem occurs. I think it has something to do with my kernel and/or initramfs because a different kernel configuration will work pretty much 100%, but this current configuration only appears to work 1 out of 4 times. That is, 75% of boots result in a 'hung' console. I can still ping, but when I telnet in (which simply executes /bin/sh), the telnet session appears to hang as well. Perhaps it's something screwy with the tty devices?
I'm trying to move to a custom initramfs, from the default one that is provided on the Xilinx git.
04-19-2010 04:31 PM
I would definitely isolate it to the kernel config or the initramfs to have a better idea where it is (but not could be either).
Sounds like you should be able to do that.
04-19-2010 04:33 PM
Did you see that issue on the wiki about the telnet and the pttys in the busybox?
It's in the resolved issues, but doesn't sound like your problem as that's telnet only, not console related.
04-22-2010 10:30 AM
So, I think I found the problem. Bad kernel configuration.
I had selected HZ as 1000 at some point to test it, and forgot about it. I have seen that the console hangs whenever HZ is something other than 100. Is this a known issue?
Thanks