[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Pine.LNX.4.44L0.1211091131190.1702-100000@iolanthe.rowland.org>
Date: Fri, 9 Nov 2012 11:41:51 -0500 (EST)
From: Alan Stern <stern@...land.harvard.edu>
To: Huang Ying <ying.huang@...el.com>
cc: "Rafael J. Wysocki" <rjw@...k.pl>, <linux-kernel@...r.kernel.org>,
<linux-pm@...r.kernel.org>
Subject: Re: [BUGFIX] PM: Fix active child counting when disabled and forbidden
On Fri, 9 Nov 2012, Huang Ying wrote:
> On Thu, 2012-11-08 at 12:07 -0500, Alan Stern wrote:
> > On Thu, 8 Nov 2012, Rafael J. Wysocki wrote:
> >
> > > > > > is it a good idea to allow to set device state to SUSPENDED if the device
> > > > > > is disabled?
> > > > >
> > > > > No, it is not. The status should always be ACTIVE as long as usage_count > 0.
> >
> > That isn't strictly true, because pm_runtime_get_noresume violates this
> > rule. What the PM core actually does is prevent a transition from the
> > ACTIVE state to the SUSPENDING/SUSPENDED state if usage_count > 0,
> > _provided_ runtime PM is enabled. There's no such restriction when it
> > is disabled.
>
> Usage count may be not a issue for the end user. But "on" in "control"
> sysfs file + SUSPENDED can be confusing for the end user. Maybe we need
> to check dev->power.runtime_auto in pm_runtime_set_suspended().
You are confusing the issue by raising two separate (though related)
questions.
The first question: How should the PCI subsystem prevent the parents of
driverless VGA devices from being runtime suspended while userspace is
accessing them?
The second question: Should the PM core allow devices that are disabled
for runtime PM to be in the SUSPENDED state when
dev->power.runtime_auto is clear?
Assuming we don't want to allow this, there's a third question: Should
pm_runtime_allow call pm_runtime_set_suspended if the device is
disabled?
Alan Stern
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists