Thread (21 messages) flat view 21 messages, 6 authors, 2018-07-07

Re: [PATCHv3 3/4] drivers/base: clean up the usage of devices_kset_move_last()

From: Pingfan Liu <hidden>
Date: 2018-07-04 04:40:27
Also in: linux-pci, lkml

On Tue, Jul 3, 2018 at 10:28 PM Rafael J. Wysocki [off-list ref] wrote:
On Tuesday, July 3, 2018 8:50:41 AM CEST Pingfan Liu wrote:
quoted
Clean up the referring to the code in commit 52cdbdd49853 ("driver core:
correct device's shutdown order"). So later we can revert it safely.

Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Rafael J. Wysocki <redacted>
Cc: Grygorii Strashko <grygorii.strashko@ti.com>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Bjorn Helgaas <helgaas@kernel.org>
Cc: Dave Young <redacted>
Cc: linux-pci@vger.kernel.org
Cc: linuxppc-dev@lists.ozlabs.org
Signed-off-by: Pingfan Liu <redacted>
---
 drivers/base/core.c | 7 -------
 1 file changed, 7 deletions(-)
diff --git a/drivers/base/core.c b/drivers/base/core.c
index 684b994..db3deb8 100644
--- a/drivers/base/core.c
+++ b/drivers/base/core.c
@@ -127,13 +127,6 @@ static int device_reorder_to_tail(struct device *dev, void *not_used)
 {
      struct device_link *link;

-     /*
-      * Devices that have not been registered yet will be put to the ends
-      * of the lists during the registration, so skip them here.
-      */
-     if (device_is_registered(dev))
-             devices_kset_move_last(dev);
-
      if (device_pm_initialized(dev))
              device_pm_move_last(dev);
You can't do this.

If you do it, that will break power management in some situations.
Could you shed light on it? I had a quick browsing of pm code, but it
is a big function, and I got lost in it.
If the above code causes failure, then does it imply that the seq in
devices_kset should be the same as dpm_list? But in device_shutdown(),
it only intersect with pm by
pm_runtime_get_noresume(dev) and pm_runtime_barrier(dev). How do these
function affect the seq in dpm_list? Need your help to see how to
handle this issue.

Thanks and regards,
Pingfan
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help