Subject: Re: [PATCH] forcedeth: Fix kexec regression

From: "Rafael J. Wysocki" <[email-masked]>
Date: Wed, 20 Aug 2008 15:12:11 +0200

On Wednesday, 20 of August 2008, Eric W. Biederman wrote:
> "Rafael J. Wysocki" <[email-masked]> writes:
> 
> > From: Rafael J. Wysocki <[email-masked]>
> >
> > forcedeth: Fix kexec regression
> >
> > Fix regression tracked as
> > http://bugzilla.kernel.org/show_bug.cgi?id=11361 and
> > caused by commit f735a2a1a4f2a0f5cd823ce323e82675990469e2
> > ("[netdrvr] forcedeth: setup wake-on-lan before shutting down")
> > that makes network adapters integrated into the NVidia
> > MCP55 chipsets fail to work in kexeced kernels.  The problem appears
> > to be that if the adapter is put into D3_hot during ->shutdown(),
> > it cannot be brought back into D0 after kexec (ref.
> > http://marc.info/?l=linux-kernel&m=121900062814967&w=4).  Therefore,
> > only put forcedeth into D3 during ->shutdown() if the system is to be
> > powered off.
> 
> Any chance we can fix this by teaching the forcedeth driver to
> bring a card out of PCI_D3hot?

Maybe, but that's not what I'm able to do at the moment. :-)

Yinghai Lu thinks that the hardware has a problem with that, though.

> The kexec on panic guys are going to need that and it is just generally
> more robust all of the way around than a special case in shutdown
> based on system_state.

Actually, system_state == SYSTEM_POWER_OFF is a special case already, since
it is the only case in which ACPI gets involved.

Thanks,
Rafael