diff mbox

arm qemu boot failures in -next due to 'PM / Domains: add setter for dev.pm_domain'

Message ID 20160111185459.GZ12777@atomide.com (mailing list archive)
State New, archived
Headers show

Commit Message

Tony Lindgren Jan. 11, 2016, 6:55 p.m. UTC
* Guenter Roeck <linux@roeck-us.net> [160111 09:51]:
> Hi,
> 
> I see 6 out of 24 arm qemu tests failing in next-20160111. Bisect points
> to commit 989561de9b51 ("PM / Domains: add setter for dev.pm_domain").
> Failures are silent - there is no output on the console.
> Affected tests are
> 
> arm:beagle:multi_v7_defconfig:omap3-beagle
> arm:beaglexm:multi_v7_defconfig:omap3-beagle-xm
> arm:overo:multi_v7_defconfig:omap3-overo-tobi
> arm:beagle:omap2plus_defconfig:omap3-beagle
> arm:beaglexm:omap2plus_defconfig:omap3-beagle-xm
> arm:overo:omap2plus_defconfig:omap3-overo-tobi
> 
> For details please see the 'next' column at http://server.roeck-us.net:8010/builders.
> 
> Reverting the offending commit fixes the problems.
> 
> Please let me know if there is anything I can do to help tracking down the problem.

The following fixes the booting, but I wonder if it's a
proper fix?

Comments

Guenter Roeck Jan. 11, 2016, 8:04 p.m. UTC | #1
On Mon, Jan 11, 2016 at 10:55:00AM -0800, Tony Lindgren wrote:
> * Guenter Roeck <linux@roeck-us.net> [160111 09:51]:
> > Hi,
> > 
> > I see 6 out of 24 arm qemu tests failing in next-20160111. Bisect points
> > to commit 989561de9b51 ("PM / Domains: add setter for dev.pm_domain").
> > Failures are silent - there is no output on the console.
> > Affected tests are
> > 
> > arm:beagle:multi_v7_defconfig:omap3-beagle
> > arm:beaglexm:multi_v7_defconfig:omap3-beagle-xm
> > arm:overo:multi_v7_defconfig:omap3-overo-tobi
> > arm:beagle:omap2plus_defconfig:omap3-beagle
> > arm:beaglexm:omap2plus_defconfig:omap3-beagle-xm
> > arm:overo:omap2plus_defconfig:omap3-overo-tobi
> > 
> > For details please see the 'next' column at http://server.roeck-us.net:8010/builders.
> > 
> > Reverting the offending commit fixes the problems.
> > 
> > Please let me know if there is anything I can do to help tracking down the problem.
> 
> The following fixes the booting, but I wonder if it's a

Yes, it does. 

Tested-by: Guenter Roeck <linux@roeck-us.net>

> proper fix?
> 
That I don't know.

Guenter

> --- a/drivers/base/power/common.c
> +++ b/drivers/base/power/common.c
> @@ -145,9 +145,10 @@ void dev_pm_domain_set(struct device *dev, struct dev_pm_domain *pd)
>  {
>  	if (dev->pm_domain == pd)
>  		return;
> -
> -	WARN(device_is_bound(dev),
> -	     "PM domains can only be changed for unbound devices\n");
> +	if (device_is_registered(dev)) {
> +		WARN(device_is_bound(dev),
> +		     "PM domains can only be changed for unbound devices\n");
> +	}
>  	dev->pm_domain = pd;
>  	device_pm_check_callbacks(dev);
>  }
Fabio Estevam Jan. 11, 2016, 8:14 p.m. UTC | #2
[Adding Rafael]

On Mon, Jan 11, 2016 at 4:55 PM, Tony Lindgren <tony@atomide.com> wrote:

>> I see 6 out of 24 arm qemu tests failing in next-20160111. Bisect points
>> to commit 989561de9b51 ("PM / Domains: add setter for dev.pm_domain").
>> Failures are silent - there is no output on the console.
>> Affected tests are
>>
>> arm:beagle:multi_v7_defconfig:omap3-beagle
>> arm:beaglexm:multi_v7_defconfig:omap3-beagle-xm
>> arm:overo:multi_v7_defconfig:omap3-overo-tobi
>> arm:beagle:omap2plus_defconfig:omap3-beagle
>> arm:beaglexm:omap2plus_defconfig:omap3-beagle-xm
>> arm:overo:omap2plus_defconfig:omap3-overo-tobi
>>
>> For details please see the 'next' column at http://server.roeck-us.net:8010/builders.
>>
>> Reverting the offending commit fixes the problems.
>>
>> Please let me know if there is anything I can do to help tracking down the problem.
>
> The following fixes the booting, but I wonder if it's a
> proper fix?
>
> --- a/drivers/base/power/common.c
> +++ b/drivers/base/power/common.c
> @@ -145,9 +145,10 @@ void dev_pm_domain_set(struct device *dev, struct dev_pm_domain *pd)
>  {
>         if (dev->pm_domain == pd)
>                 return;
> -
> -       WARN(device_is_bound(dev),
> -            "PM domains can only be changed for unbound devices\n");
> +       if (device_is_registered(dev)) {
> +               WARN(device_is_bound(dev),
> +                    "PM domains can only be changed for unbound devices\n");
> +       }
>         dev->pm_domain = pd;
>         device_pm_check_callbacks(dev);

Commit 989561de9b51 ("PM / Domains: add setter for dev.pm_domain")
causes issues for me after doing a 'reboot' command.

Rafael proposed a patch which fixed the 'reboot' problem:
http://www.spinics.net/lists/arm-kernel/msg473562.html
Guenter Roeck Jan. 11, 2016, 8:48 p.m. UTC | #3
On Mon, Jan 11, 2016 at 06:14:31PM -0200, Fabio Estevam wrote:
> [Adding Rafael]
> 
> On Mon, Jan 11, 2016 at 4:55 PM, Tony Lindgren <tony@atomide.com> wrote:
> 
> >> I see 6 out of 24 arm qemu tests failing in next-20160111. Bisect points
> >> to commit 989561de9b51 ("PM / Domains: add setter for dev.pm_domain").
> >> Failures are silent - there is no output on the console.
> >> Affected tests are
> >>
> >> arm:beagle:multi_v7_defconfig:omap3-beagle
> >> arm:beaglexm:multi_v7_defconfig:omap3-beagle-xm
> >> arm:overo:multi_v7_defconfig:omap3-overo-tobi
> >> arm:beagle:omap2plus_defconfig:omap3-beagle
> >> arm:beaglexm:omap2plus_defconfig:omap3-beagle-xm
> >> arm:overo:omap2plus_defconfig:omap3-overo-tobi
> >>
> >> For details please see the 'next' column at http://server.roeck-us.net:8010/builders.
> >>
> >> Reverting the offending commit fixes the problems.
> >>
> >> Please let me know if there is anything I can do to help tracking down the problem.
> >
> > The following fixes the booting, but I wonder if it's a
> > proper fix?
> >
> > --- a/drivers/base/power/common.c
> > +++ b/drivers/base/power/common.c
> > @@ -145,9 +145,10 @@ void dev_pm_domain_set(struct device *dev, struct dev_pm_domain *pd)
> >  {
> >         if (dev->pm_domain == pd)
> >                 return;
> > -
> > -       WARN(device_is_bound(dev),
> > -            "PM domains can only be changed for unbound devices\n");
> > +       if (device_is_registered(dev)) {
> > +               WARN(device_is_bound(dev),
> > +                    "PM domains can only be changed for unbound devices\n");
> > +       }
> >         dev->pm_domain = pd;
> >         device_pm_check_callbacks(dev);
> 
> Commit 989561de9b51 ("PM / Domains: add setter for dev.pm_domain")
> causes issues for me after doing a 'reboot' command.
> 
> Rafael proposed a patch which fixed the 'reboot' problem:
> http://www.spinics.net/lists/arm-kernel/msg473562.html

Looks like a different problem.

Guenter
Rafael J. Wysocki Jan. 11, 2016, 10:51 p.m. UTC | #4
On Monday, January 11, 2016 12:48:19 PM Guenter Roeck wrote:
> On Mon, Jan 11, 2016 at 06:14:31PM -0200, Fabio Estevam wrote:
> > [Adding Rafael]
> > 
> > On Mon, Jan 11, 2016 at 4:55 PM, Tony Lindgren <tony@atomide.com> wrote:
> > 
> > >> I see 6 out of 24 arm qemu tests failing in next-20160111. Bisect points
> > >> to commit 989561de9b51 ("PM / Domains: add setter for dev.pm_domain").
> > >> Failures are silent - there is no output on the console.
> > >> Affected tests are
> > >>
> > >> arm:beagle:multi_v7_defconfig:omap3-beagle
> > >> arm:beaglexm:multi_v7_defconfig:omap3-beagle-xm
> > >> arm:overo:multi_v7_defconfig:omap3-overo-tobi
> > >> arm:beagle:omap2plus_defconfig:omap3-beagle
> > >> arm:beaglexm:omap2plus_defconfig:omap3-beagle-xm
> > >> arm:overo:omap2plus_defconfig:omap3-overo-tobi
> > >>
> > >> For details please see the 'next' column at http://server.roeck-us.net:8010/builders.
> > >>
> > >> Reverting the offending commit fixes the problems.
> > >>
> > >> Please let me know if there is anything I can do to help tracking down the problem.
> > >
> > > The following fixes the booting, but I wonder if it's a
> > > proper fix?
> > >
> > > --- a/drivers/base/power/common.c
> > > +++ b/drivers/base/power/common.c
> > > @@ -145,9 +145,10 @@ void dev_pm_domain_set(struct device *dev, struct dev_pm_domain *pd)
> > >  {
> > >         if (dev->pm_domain == pd)
> > >                 return;
> > > -
> > > -       WARN(device_is_bound(dev),
> > > -            "PM domains can only be changed for unbound devices\n");
> > > +       if (device_is_registered(dev)) {
> > > +               WARN(device_is_bound(dev),
> > > +                    "PM domains can only be changed for unbound devices\n");
> > > +       }
> > >         dev->pm_domain = pd;
> > >         device_pm_check_callbacks(dev);
> > 
> > Commit 989561de9b51 ("PM / Domains: add setter for dev.pm_domain")
> > causes issues for me after doing a 'reboot' command.
> > 
> > Rafael proposed a patch which fixed the 'reboot' problem:
> > http://www.spinics.net/lists/arm-kernel/msg473562.html
> 
> Looks like a different problem.

Yes, it is a different problem.

Fabio, thanks for CCing me.

Thanks,
Rafael
diff mbox

Patch

--- a/drivers/base/power/common.c
+++ b/drivers/base/power/common.c
@@ -145,9 +145,10 @@  void dev_pm_domain_set(struct device *dev, struct dev_pm_domain *pd)
 {
 	if (dev->pm_domain == pd)
 		return;
-
-	WARN(device_is_bound(dev),
-	     "PM domains can only be changed for unbound devices\n");
+	if (device_is_registered(dev)) {
+		WARN(device_is_bound(dev),
+		     "PM domains can only be changed for unbound devices\n");
+	}
 	dev->pm_domain = pd;
 	device_pm_check_callbacks(dev);
 }