Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1738594 > unrolled thread

[PATCH] PM / PCI: Do not resume any devices in pci_pm_prepare()

Started by"Rafael J. Wysocki" <rjw@rjwysocki.net>
First post2017-09-25 01:50 +0200
Last post2017-09-26 23:50 +0200
Articles 5 — 3 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] PM / PCI: Do not resume any devices in pci_pm_prepare() "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2017-09-25 01:50 +0200
    Re: [PATCH] PM / PCI: Do not resume any devices in pci_pm_prepare() Bjorn Helgaas <helgaas@kernel.org> - 2017-09-26 23:40 +0200
      Re: [PATCH] PM / PCI: Do not resume any devices in pci_pm_prepare() "Rafael J. Wysocki" <rafael@kernel.org> - 2017-09-26 23:50 +0200
    Re: [PATCH] PM / PCI: Do not resume any devices in pci_pm_prepare() Bjorn Helgaas <helgaas@kernel.org> - 2017-09-26 23:40 +0200
      Re: [PATCH] PM / PCI: Do not resume any devices in pci_pm_prepare() "Rafael J. Wysocki" <rafael@kernel.org> - 2017-09-26 23:50 +0200

#1738594 — [PATCH] PM / PCI: Do not resume any devices in pci_pm_prepare()

From"Rafael J. Wysocki" <rjw@rjwysocki.net>
Date2017-09-25 01:50 +0200
Subject[PATCH] PM / PCI: Do not resume any devices in pci_pm_prepare()
Message-ID<utoOR-6Hv-9@gated-at.bofh.it>
From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

It should not be necessary to resume devices with ignore_children set
in pci_pm_prepare(), because they should be resumed explcitly by
their children drivers during suspend if need be and they will be
resumed by pci_pm_suspend() after that anyway, so avoid doing that.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
---
 drivers/pci/pci-driver.c |    7 -------
 1 file changed, 7 deletions(-)

Index: linux-pm/drivers/pci/pci-driver.c
===================================================================
--- linux-pm.orig/drivers/pci/pci-driver.c
+++ linux-pm/drivers/pci/pci-driver.c
@@ -680,13 +680,6 @@ static int pci_pm_prepare(struct device
 {
 	struct device_driver *drv = dev->driver;
 
-	/*
-	 * Devices having power.ignore_children set may still be necessary for
-	 * suspending their children in the next phase of device suspend.
-	 */
-	if (dev->power.ignore_children)
-		pm_runtime_resume(dev);
-
 	if (drv && drv->pm && drv->pm->prepare) {
 		int error = drv->pm->prepare(dev);
 		if (error)

[toc] | [next] | [standalone]


#1740228

FromBjorn Helgaas <helgaas@kernel.org>
Date2017-09-26 23:40 +0200
Message-ID<uu5Ka-1HA-41@gated-at.bofh.it>
In reply to#1738594
On Mon, Sep 25, 2017 at 01:33:13AM +0200, Rafael J. Wysocki wrote:
> From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> 
> It should not be necessary to resume devices with ignore_children set
> in pci_pm_prepare(), because they should be resumed explcitly by

s/explcitly/explicitly/

> their children drivers during suspend if need be and they will be
> resumed by pci_pm_suspend() after that anyway, so avoid doing that.
> 
> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

Acked-by: Bjorn Helgaas <bhelgaas@google.com>

I think your previous patches to this file mostly used a "PCI / PM"
subject line prefix (as opposed to the "PM / PCI" here).  But maybe
the difference means something?

> ---
>  drivers/pci/pci-driver.c |    7 -------
>  1 file changed, 7 deletions(-)
> 
> Index: linux-pm/drivers/pci/pci-driver.c
> ===================================================================
> --- linux-pm.orig/drivers/pci/pci-driver.c
> +++ linux-pm/drivers/pci/pci-driver.c
> @@ -680,13 +680,6 @@ static int pci_pm_prepare(struct device
>  {
>  	struct device_driver *drv = dev->driver;
>  
> -	/*
> -	 * Devices having power.ignore_children set may still be necessary for
> -	 * suspending their children in the next phase of device suspend.
> -	 */
> -	if (dev->power.ignore_children)
> -		pm_runtime_resume(dev);
> -
>  	if (drv && drv->pm && drv->pm->prepare) {
>  		int error = drv->pm->prepare(dev);
>  		if (error)
> 

[toc] | [prev] | [next] | [standalone]


#1740235

From"Rafael J. Wysocki" <rafael@kernel.org>
Date2017-09-26 23:50 +0200
Message-ID<uu5TQ-1KX-17@gated-at.bofh.it>
In reply to#1740228
On Tue, Sep 26, 2017 at 11:34 PM, Bjorn Helgaas <helgaas@kernel.org> wrote:
> On Mon, Sep 25, 2017 at 01:33:13AM +0200, Rafael J. Wysocki wrote:
>> From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
>>
>> It should not be necessary to resume devices with ignore_children set
>> in pci_pm_prepare(), because they should be resumed explcitly by
>
> s/explcitly/explicitly/

Yup.

>> their children drivers during suspend if need be and they will be
>> resumed by pci_pm_suspend() after that anyway, so avoid doing that.
>>
>> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
>
> Acked-by: Bjorn Helgaas <bhelgaas@google.com>
>
> I think your previous patches to this file mostly used a "PCI / PM"
> subject line prefix (as opposed to the "PM / PCI" here).  But maybe
> the difference means something?

No, it doesn't.  I'll change it to match the previous ones. :-)

Thanks,
Rafael

[toc] | [prev] | [next] | [standalone]


#1740229

FromBjorn Helgaas <helgaas@kernel.org>
Date2017-09-26 23:40 +0200
Message-ID<uu5Ka-1HA-37@gated-at.bofh.it>
In reply to#1738594
On Mon, Sep 25, 2017 at 01:33:13AM +0200, Rafael J. Wysocki wrote:
> From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> 
> It should not be necessary to resume devices with ignore_children set
> in pci_pm_prepare(), because they should be resumed explcitly by
> their children drivers during suspend if need be and they will be
> resumed by pci_pm_suspend() after that anyway, so avoid doing that.
> 
> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

Oh, and I meant to also say that you've merged the PM-related things
here in the past, so I assume you'll take this one :)

> ---
>  drivers/pci/pci-driver.c |    7 -------
>  1 file changed, 7 deletions(-)
> 
> Index: linux-pm/drivers/pci/pci-driver.c
> ===================================================================
> --- linux-pm.orig/drivers/pci/pci-driver.c
> +++ linux-pm/drivers/pci/pci-driver.c
> @@ -680,13 +680,6 @@ static int pci_pm_prepare(struct device
>  {
>  	struct device_driver *drv = dev->driver;
>  
> -	/*
> -	 * Devices having power.ignore_children set may still be necessary for
> -	 * suspending their children in the next phase of device suspend.
> -	 */
> -	if (dev->power.ignore_children)
> -		pm_runtime_resume(dev);
> -
>  	if (drv && drv->pm && drv->pm->prepare) {
>  		int error = drv->pm->prepare(dev);
>  		if (error)
> 

[toc] | [prev] | [next] | [standalone]


#1740233

From"Rafael J. Wysocki" <rafael@kernel.org>
Date2017-09-26 23:50 +0200
Message-ID<uu5TP-1KX-7@gated-at.bofh.it>
In reply to#1740229
On Tue, Sep 26, 2017 at 11:35 PM, Bjorn Helgaas <helgaas@kernel.org> wrote:
> On Mon, Sep 25, 2017 at 01:33:13AM +0200, Rafael J. Wysocki wrote:
>> From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
>>
>> It should not be necessary to resume devices with ignore_children set
>> in pci_pm_prepare(), because they should be resumed explcitly by
>> their children drivers during suspend if need be and they will be
>> resumed by pci_pm_suspend() after that anyway, so avoid doing that.
>>
>> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
>
> Oh, and I meant to also say that you've merged the PM-related things
> here in the past, so I assume you'll take this one :)

I will. :-)

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web