All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mika Westerberg <mika.westerberg@linux.intel.com>
To: "Rafael J. Wysocki" <rjw@rjwysocki.net>
Cc: Peter Wu <lekensteyn@gmail.com>,
	Bastien Traverse <bastien.traverse@gmail.com>,
	linux-kernel@vger.kernel.org, francis.moro@gmail.com,
	linux-pm@vger.kernel.org
Subject: Re: 3.12: ethernet controller missing after resuming from suspend to RAM
Date: Mon, 10 Feb 2014 14:20:35 +0200	[thread overview]
Message-ID: <20140210122035.GY18029@intel.com> (raw)
In-Reply-To: <1747020.MhBDqPO9oJ@vostro.rjw.lan>

On Mon, Feb 10, 2014 at 01:10:19PM +0100, Rafael J. Wysocki wrote:
> On Monday, February 10, 2014 02:15:22 AM Peter Wu wrote:
> > On Monday 10 February 2014 01:52:14 Rafael J. Wysocki wrote:
> > > > Could the following commit have something to do with it?
> > > >
> > > > 
> > > >
> > > > commit 4ebe34503baa0644c9352bcd76d4cf573bffe206
> > > > Author: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> > > > Date:   Tue Jul 16 22:10:35 2013 +0200
> > > >
> > > > 
> > > >     ACPI / hotplug / PCI: Check for new devices on enabled slots
> > > 
> > > This one, or another one in that series.  I rather suspect
> > > 
> > > ab1225901da2 Revert "ACPI / hotplug / PCI: Avoid doing too much for spurious
> > > notifies"
> > > 
> > > from Mika, but it really doesn't matter.
> > > 
> > > Can you please check the patch below (it is on top of 3.14-rc1, but I think
> > > it'll still apply to 3.13) and report back?
> > 
> > I applied the following patch:
> > 
> > --- drivers/pci/hotplug/acpiphp_glue.c.orig	2014-02-10 01:46:59.678124018 +0100
> > +++ drivers/pci/hotplug/acpiphp_glue.c	2014-02-10 01:48:59.634124004 +0100
> > @@ -552,10 +552,10 @@
> >  	struct pci_dev *dev;
> >  	struct pci_bus *bus = slot->bus;
> >  	struct acpiphp_func *func;
> > -	int max, pass;
> > +	int nr_found, max, pass, bridges_scanned = 0;
> >  	LIST_HEAD(add_list);
> >  
> > -	acpiphp_rescan_slot(slot);
> > +	nr_found = acpiphp_rescan_slot(slot);
> >  	max = acpiphp_max_busnr(bus);
> >  	for (pass = 0; pass < 2; pass++) {
> >  		list_for_each_entry(dev, &bus->devices, bus_list) {
> > @@ -571,9 +571,16 @@
> >  					__pci_bus_size_bridges(dev->subordinate,
> >  							       &add_list);
> >  				}
> > +				bridges_scanned++;
> >  			}
> >  		}
> >  	}
> > +	/* Nothing more to do here if there are no new devices on this bus. */
> > +	if (!nr_found && !bridges_scanned && (slot->flags & SLOT_ENABLED)) {
> > +		pr_debug("No more new devices on this bus.\n");
> > +		return;
> > +	}
> > +
> >  	__pci_bus_assign_resources(bus, &add_list, NULL);
> >  
> >  	acpiphp_sanitize_bus(bus);
> > 
> > Unfortunately, the adapter still vanishes. dmesg is below this message.
> > 
> > Peter
> > 
> > [   44.558995] CPU3 is up
> > [   44.561438] ACPI: Waking up from system sleep state S3
> > [   45.254084] ehci-pci 0000:00:1a.0: System wakeup disabled by ACPI
> > [   45.280727] ehci-pci 0000:00:1d.0: System wakeup disabled by ACPI
> > [   45.307403] xhci_hcd 0000:02:00.0: System wakeup disabled by ACPI
> > [   45.361012] PM: noirq resume of devices complete after 133.354 msecs
> > [   45.361292] PM: early resume of devices complete after 0.233 msecs
> > [   45.361680] iwlwifi 0000:05:00.0: RF_KILL bit toggled to enable radio.
> > [   45.361731] pcieport 0000:00:1c.1: System wakeup disabled by ACPI
> > [   45.470912] snd_hda_intel 0000:00:1b.0: irq 48 for MSI/MSI-X
> > [   45.700502] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
> > [   45.700533] ata5: SATA link down (SStatus 0 SControl 300)
> > [   45.701385] ata1.00: configured for UDMA/133
> > [   45.701503] sd 0:0:0:0: [sda] Starting disk
> > [   45.707139] ata2: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
> > [   45.872011] ata2.00: configured for UDMA/100
> > [   46.791141] PM: resume of devices complete after 1430.658 msecs
> > [   46.791560] PM: Finishing wakeup.
> > [   46.791565] acpiphp_glue: hotplug_event: Bus check notify on \_SB_.PCI0.RP03
> > [   46.791568] acpiphp_glue: hotplug_event: re-enumerating slots under \_SB_.PCI0.RP03
> > [   46.791642] acpiphp_glue: No more new devices on this bus.
> > [   46.791571] Restarting tasks ... done.
> > [   46.793204] video LNXVIDEO:00: Restoring backlight state
> > [   46.793211] video LNXVIDEO:01: Restoring backlight state
> > [   47.246425] ACPI: \_SB_.AC__: ACPI_NOTIFY_BUS_CHECK event: unsupported
> > [   47.251540] jme 0000:04:00.5: irq 50 for MSI/MSI-X
> > [   47.276949] jme 0000:04:00.5 eth0: Link is down
> 
> I'm wondering why these two messages are printed here.
> 
> > [   47.276974] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
> > [   47.278423] iwlwifi 0000:05:00.0: L1 Enabled; Disabling L0S
> > [   47.285758] iwlwifi 0000:05:00.0: Radio type=0x1-0x3-0x1
> > [   47.393492] acpiphp_glue: hotplug_event: Bus check notify on \_SB_.PCI0.RP01
> > [   47.393495] acpiphp_glue: hotplug_event: re-enumerating slots under \_SB_.PCI0.RP01
> > [   47.393517] acpiphp_glue: No more new devices on this bus.
> > [   47.393525] acpiphp_glue: hotplug_event: Bus check notify on \_SB_.PCI0.RP02
> > [   47.393527] acpiphp_glue: hotplug_event: re-enumerating slots under \_SB_.PCI0.RP02
> 
> Anyway, the message you've added to the patch is not printed for this bridge,
> so the condition is not satified for its bus.  We need to find out why it isn't
> satisfied and what exactly happens to the devices that appear to go away.

One thing, I noticed when checking the DSDT:

	Device (J380)
	{
		Method (_STA, 0, NotSerialized)  // _STA: Status
		{
			If (LNotEqual (DVID, 0xFFFFFFFF))
			{
				Return (0x0A)
			}
			Else
			{
				Return (Zero)
			}
		}

_STA() returns 0x0A instead of 0x0F. Could there be something missing in
the ACPI hotplug code that overlooks this and removes the device on resume?

  reply	other threads:[~2014-02-10 12:13 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-05 23:42 3.12: ethernet controller missing after resuming from suspend to RAM Bastien Traverse
2014-02-06  7:38 ` Francis Moreau
2014-02-06 12:40   ` Rafael J. Wysocki
2014-02-06 13:33     ` Francis Moreau
2014-02-06 23:15     ` Bastien Traverse
2014-02-07  7:29       ` Francis Moreau
2014-02-06 21:08 ` Peter Wu
2014-02-06 23:28   ` Rafael J. Wysocki
2014-02-06 23:27     ` Peter Wu
2014-02-06 23:48       ` Rafael J. Wysocki
2014-02-07 13:43         ` Peter Wu
2014-02-08 15:01           ` Rafael J. Wysocki
2014-02-08 21:34             ` Peter Wu
2014-02-09 21:46               ` Rafael J. Wysocki
2014-02-09 23:18                 ` Peter Wu
2014-02-10  0:52                   ` Rafael J. Wysocki
2014-02-10  1:15                     ` Peter Wu
2014-02-10 12:10                       ` Rafael J. Wysocki
2014-02-10 12:20                         ` Mika Westerberg [this message]
2014-02-10 22:39                           ` Rafael J. Wysocki
2014-02-11 10:42                             ` Mika Westerberg
2014-02-11 12:57                               ` Rafael J. Wysocki
2014-02-11 18:17                               ` Peter Wu
2014-02-11 23:58                                 ` Rafael J. Wysocki
2014-02-12  7:44                                   ` Francis Moreau
2014-02-12 14:04                                     ` Rafael J. Wysocki
2014-02-18 12:18                                       ` Bastien Traverse
2014-02-12  9:21                                   ` Mika Westerberg
2014-02-06 23:41     ` Bastien Traverse
2014-02-07  1:19       ` Rafael J. Wysocki
2014-02-09 18:44         ` Bastien Traverse
2014-02-09 22:07           ` Peter Wu
2014-02-11 18:14             ` Bastien Traverse
2014-02-10  8:17           ` Francis Moreau
  -- strict thread matches above, loose matches on Subject: below --
2013-12-12  8:00 Francis Moreau
2013-12-12  9:28 ` Francis Moreau
2013-12-12 14:57 ` Rafael J. Wysocki
2013-12-12 17:43   ` Francis Moreau
2013-12-12 17:58     ` Rafael J. Wysocki
2013-12-12 19:17       ` Francis Moreau
2013-12-17  8:05         ` Francis Moreau

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140210122035.GY18029@intel.com \
    --to=mika.westerberg@linux.intel.com \
    --cc=bastien.traverse@gmail.com \
    --cc=francis.moro@gmail.com \
    --cc=lekensteyn@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=rjw@rjwysocki.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.