Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755175AbZCHVkb (ORCPT ); Sun, 8 Mar 2009 17:40:31 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1754255AbZCHVkU (ORCPT ); Sun, 8 Mar 2009 17:40:20 -0400 Received: from ogre.sisk.pl ([217.79.144.158]:34998 "EHLO ogre.sisk.pl" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754011AbZCHVkS (ORCPT ); Sun, 8 Mar 2009 17:40:18 -0400 From: "Rafael J. Wysocki" To: Yinghai Lu Subject: Re: [PATCH] igb: fix kexec with igb Date: Sun, 8 Mar 2009 22:40:25 +0100 User-Agent: KMail/1.11.1 (Linux/2.6.29-rc7-tst; KDE/4.2.1; x86_64; ; ) Cc: Jesse Brandeburg , David Miller , Ingo Molnar , Andrew Morton , "linux-kernel@vger.kernel.org" , NetDev References: <49B1F934.5050006@kernel.org> <200903082208.42957.rjw@sisk.pl> <49B43622.9070303@kernel.org> In-Reply-To: <49B43622.9070303@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200903082240.26380.rjw@sisk.pl> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3332 Lines: 77 On Sunday 08 March 2009, Yinghai Lu wrote: > Rafael J. Wysocki wrote: > > On Sunday 08 March 2009, Yinghai Lu wrote: > >> Rafael J. Wysocki wrote: > >>> On Saturday 07 March 2009, Yinghai Lu wrote: > >>>> On Fri, Mar 6, 2009 at 11:18 PM, Jesse Brandeburg > >>>> wrote: > >>>>> On Fri, Mar 6, 2009 at 8:33 PM, Yinghai Lu wrote: > >>>>>> Impact: could probe igb > >>>>>> > >>>>>> Found one system with 82575EB, in the kernel that is kexeced, probe igb > >>>>>> failed with -2. > >>>>>> > >>>>>> it looks like the same behavior happened on forcedeth. > >>>>>> > >>>>>> try to check system_state to make sure if put it on D3 > >>>>>> > >>>>>> Signed-off-by: Yinghai Lu > >>>>>> > >>>>>> --- > >>>>>> drivers/net/igb/igb_main.c | 19 ++++++++++++++----- > >>>>>> 1 file changed, 14 insertions(+), 5 deletions(-) > >>>>> I see the point of the patch, but I know for a fact that ixgbe when > >>>>> enabled for MSI-X also doesn't work with kexec. > >>>>> > >>>>> so my questions are: > >>>>> are you going to change every driver? > >>>> i tend to only change driver that i have related HW. > >>>> > >>>>> why can't this be fixed in core kernel code instead? > >>>> will check it. > >>>> > >>>>> Shouldn't pci_enable_device take it out of D3? > >>>>> Or maybe it should be taken out of D3 immediately if someone tries to > >>>>> ioremap any of the BARx registers? > >>>> looks like second kernel can not detect the state any more. > >>> In fact pci_enable_device() calls pci_set_power_state(dev, PCI_D0) as the first > >>> thing. The question is why it doesn't work as expected. > >> not sure... please check the version for forcedeth that you made. > >> > >> commit 3cb5599a84c557c0dd9a19feb63a3788268cf249 > >> Author: Rafael J. Wysocki > >> Date: Fri Sep 5 14:00:19 2008 -0700 > >> > >> 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. > > > > Thanks, I remember now. > > > > This appears to be quirky hardware, doesn't it? > > > all my systems with ck804 and mcp55 need this trick. > > for igb: one system need this trick, and other doesn't need this trick. > could BIOS/ACPI difference or the nic option rom difference. > > but for kexec path, we really don't need put pci devices to D3. Agreed, but pci_set_power_state() may be called for too many different reasons to be a suitable place for a fix IMO. Thanks, Rafael -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/