Re: [Fastboot] Re: Re: tg3: issue for reboot/kexec
From: Eric W. Biederman <hidden>
Date: 2005-08-18 18:42:05
Also in:
linux-pm
From: Eric W. Biederman <hidden>
Date: 2005-08-18 18:42:05
Also in:
linux-pm
Khalid Aziz [off-list ref] writes:
On Thu, 2005-06-30 at 17:52 -0600, Eric W. Biederman wrote: I have found that I can not walk reboot_notifier list in all cases before kexec'ing a new kernel. For instance, when handling INIT on ia64, we are running in interrupt context and atleast some of the reboot notifier callbacks call schedule(). Calling schedule() is not gonna work when we are running in interrupt context. I have the same concern for when panic gets called in interrupt context. So I added a shutdown function to e1000 driver instead. Patch is attached. This patch has worked for me.
Thanks. I will look at your e1000 driver and see if it works on the hardware I have here. You changes are at least to places that could have fixed the problem I am seeing. For the panic case calling any of the shutdown/reboot notifier bits is actually wrong. That kernel that takes over needs to cope with hardware left in any state.
As soon as I have all the issues sorted out with kexec'ing on INIT on ia64, I will post a fully updated kexec patch for ia64. I now have kexec working solid on INIT with e1000 driver and it can handle multiple back to back INITs and come up in kexec'd kernel every time. I am now trying to sort some issues out with tg3 driver (another driver with no shutdown routine :(
In the normal case (not kexec on panic) user space should down the interfaces before calling kexec. Is your user space doing that? Eric