Return-path: Received: from mail-ob0-f174.google.com ([209.85.214.174]:54275 "EHLO mail-ob0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933920Ab3D3WqR (ORCPT ); Tue, 30 Apr 2013 18:46:17 -0400 Received: by mail-ob0-f174.google.com with SMTP id wc20so900107obb.5 for ; Tue, 30 Apr 2013 15:46:16 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: References: <20130304134949.GB3021@redhat.com> <20130304154832.GD3021@redhat.com> From: Bjorn Helgaas Date: Tue, 30 Apr 2013 16:45:56 -0600 Message-ID: (sfid-20130501_004622_099909_B2A2A273) Subject: Re: is L1 really disabled in iwlwifi To: Emmanuel Grumbach Cc: Stanislaw Gruszka , "linux-pci@vger.kernel.org" , linux-wireless , John Linville , Roman Yepishev , "Guy, Wey-Yi" , Matthew Garrett Content-Type: text/plain; charset=ISO-8859-1 Sender: linux-wireless-owner@vger.kernel.org List-ID: [+cc Wei-Yi, Matthew] On Tue, Apr 30, 2013 at 4:57 AM, Emmanuel Grumbach wrote: >> >>> Sorry, I haven't had a chance to look at this yet. Can you please >>> attach the *complete* dmesg and lspci output, not just the parts that >>> mention iwlwifi? Some of this depends on other PCI core stuff, like >>> what happened with the _OSC evaluation when we discovered the PCI host >>> bridge. >>> >> >> Here is the info you wanted. Same config file as before. >> Note that I now have two WiFi NICs connected. > > Any chance you'll find time for me? :-) Thanks for reminding me again; I had forgotten all about this. I opened https://bugzilla.kernel.org/show_bug.cgi?id=57331 and attached your logs there. Synopsis for Wei-Yi and Matthew: after 1a7123cdd9, iwlwifi calls pci_disable_link_state() to prevent the link from entering L1, which avoided "inexplicable PCIe disconnects." pci_disable_link_state() has always been a no-op when aspm_disabled is set, and we set it whenever the BIOS declines to give us _OSC control. In Emmanuel's case, we don't get _OSC control, so pci_disable_link_state() does nothing. I'm not convinced iwlwifi really needs to disable the link power management states in the first place -- the 1a7123cdd9 changelog isn't very convincing, and I'm not aware of any reported issues even though we're actually leaving them enabled in many cases. More generally, I don't think the pci_disable_link_state() interface is very useful because it often doesn't do what it claims, and the caller has no indication. Wei-Yi, can you tell us anything about whether iwlwifi really needs to disable link power management? Bjorn