All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] driver core: always handle dpm_order
@ 2012-03-15  9:58 Linus Walleij
  2012-03-15 15:43 ` Greg Kroah-Hartman
  0 siblings, 1 reply; 9+ messages in thread
From: Linus Walleij @ 2012-03-15  9:58 UTC (permalink / raw)
  To: linux-kernel, Greg Kroah-Hartman; +Cc: Rabin Vincent, Linus Walleij

From: Rabin Vincent <rabin.vincent@stericsson.com>

If !dev->class, device_move() does not respect the dpm_order.
Fix it to do so.

Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Reviewed-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
[Fixed a small dangling label compile warning]
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
---
 drivers/base/core.c |   36 ++++++++++++++++++------------------
 1 file changed, 18 insertions(+), 18 deletions(-)

diff --git a/drivers/base/core.c b/drivers/base/core.c
index 74dda4f..be07591 100644
--- a/drivers/base/core.c
+++ b/drivers/base/core.c
@@ -1746,25 +1746,25 @@ int device_move(struct device *dev, struct device *new_parent,
 		set_dev_node(dev, dev_to_node(new_parent));
 	}
 
-	if (!dev->class)
-		goto out_put;
-	error = device_move_class_links(dev, old_parent, new_parent);
-	if (error) {
-		/* We ignore errors on cleanup since we're hosed anyway... */
-		device_move_class_links(dev, new_parent, old_parent);
-		if (!kobject_move(&dev->kobj, &old_parent->kobj)) {
-			if (new_parent)
-				klist_remove(&dev->p->knode_parent);
-			dev->parent = old_parent;
-			if (old_parent) {
-				klist_add_tail(&dev->p->knode_parent,
-					       &old_parent->p->klist_children);
-				set_dev_node(dev, dev_to_node(old_parent));
+	if (dev->class) {
+		error = device_move_class_links(dev, old_parent, new_parent);
+		if (error) {
+			/* We ignore errors on cleanup since we're hosed anyway... */
+			device_move_class_links(dev, new_parent, old_parent);
+			if (!kobject_move(&dev->kobj, &old_parent->kobj)) {
+				if (new_parent)
+					klist_remove(&dev->p->knode_parent);
+				dev->parent = old_parent;
+				if (old_parent) {
+					klist_add_tail(&dev->p->knode_parent,
+						       &old_parent->p->klist_children);
+					set_dev_node(dev, dev_to_node(old_parent));
+				}
 			}
+			cleanup_glue_dir(dev, new_parent_kobj);
+			put_device(new_parent);
+			goto out;
 		}
-		cleanup_glue_dir(dev, new_parent_kobj);
-		put_device(new_parent);
-		goto out;
 	}
 	switch (dpm_order) {
 	case DPM_ORDER_NONE:
@@ -1779,7 +1779,7 @@ int device_move(struct device *dev, struct device *new_parent,
 		device_pm_move_last(dev);
 		break;
 	}
-out_put:
+
 	put_device(old_parent);
 out:
 	device_pm_unlock();
-- 
1.7.9.2


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: [PATCH] driver core: always handle dpm_order
  2012-03-15  9:58 [PATCH] driver core: always handle dpm_order Linus Walleij
@ 2012-03-15 15:43 ` Greg Kroah-Hartman
  2012-03-19  8:30   ` Rabin Vincent
  2012-04-10 10:51   ` Linus Walleij
  0 siblings, 2 replies; 9+ messages in thread
From: Greg Kroah-Hartman @ 2012-03-15 15:43 UTC (permalink / raw)
  To: Linus Walleij; +Cc: linux-kernel, Rabin Vincent, Linus Walleij

On Thu, Mar 15, 2012 at 10:58:18AM +0100, Linus Walleij wrote:
> From: Rabin Vincent <rabin.vincent@stericsson.com>
> 
> If !dev->class, device_move() does not respect the dpm_order.
> Fix it to do so.

Is there code today in the kernel that needs this to go in now?  For
older releases?  Or is 3.4 acceptable?

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] driver core: always handle dpm_order
  2012-03-15 15:43 ` Greg Kroah-Hartman
@ 2012-03-19  8:30   ` Rabin Vincent
  2012-04-10 10:51   ` Linus Walleij
  1 sibling, 0 replies; 9+ messages in thread
From: Rabin Vincent @ 2012-03-19  8:30 UTC (permalink / raw)
  To: Greg Kroah-Hartman; +Cc: Linus Walleij, linux-kernel

On Thu, Mar 15, 2012 at 21:13, Greg Kroah-Hartman
<gregkh@linuxfoundation.org> wrote:
> On Thu, Mar 15, 2012 at 10:58:18AM +0100, Linus Walleij wrote:
>> From: Rabin Vincent <rabin.vincent@stericsson.com>
>>
>> If !dev->class, device_move() does not respect the dpm_order.
>> Fix it to do so.
>
> Is there code today in the kernel that needs this to go in now?  For
> older releases?  Or is 3.4 acceptable?

I did not notice any problems with current users.  3.4 should
therefore be OK.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] driver core: always handle dpm_order
  2012-03-15 15:43 ` Greg Kroah-Hartman
  2012-03-19  8:30   ` Rabin Vincent
@ 2012-04-10 10:51   ` Linus Walleij
  2012-04-10 14:36     ` Greg Kroah-Hartman
  2012-04-10 22:21     ` Rafael J. Wysocki
  1 sibling, 2 replies; 9+ messages in thread
From: Linus Walleij @ 2012-04-10 10:51 UTC (permalink / raw)
  To: Greg Kroah-Hartman; +Cc: Linus Walleij, linux-kernel, Rabin Vincent

On Thu, Mar 15, 2012 at 4:43 PM, Greg Kroah-Hartman
<gregkh@linuxfoundation.org> wrote:
> On Thu, Mar 15, 2012 at 10:58:18AM +0100, Linus Walleij wrote:
>> From: Rabin Vincent <rabin.vincent@stericsson.com>
>>
>> If !dev->class, device_move() does not respect the dpm_order.
>> Fix it to do so.
>
> Is there code today in the kernel that needs this to go in now?  For
> older releases?  Or is 3.4 acceptable?

To me it seems it has not been merged to 3.4 yet ... can we have it
for the -rc:s?

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] driver core: always handle dpm_order
  2012-04-10 10:51   ` Linus Walleij
@ 2012-04-10 14:36     ` Greg Kroah-Hartman
  2012-04-11  7:24       ` Linus Walleij
  2012-04-10 22:21     ` Rafael J. Wysocki
  1 sibling, 1 reply; 9+ messages in thread
From: Greg Kroah-Hartman @ 2012-04-10 14:36 UTC (permalink / raw)
  To: Linus Walleij; +Cc: Linus Walleij, linux-kernel, Rabin Vincent

On Tue, Apr 10, 2012 at 12:51:35PM +0200, Linus Walleij wrote:
> On Thu, Mar 15, 2012 at 4:43 PM, Greg Kroah-Hartman
> <gregkh@linuxfoundation.org> wrote:
> > On Thu, Mar 15, 2012 at 10:58:18AM +0100, Linus Walleij wrote:
> >> From: Rabin Vincent <rabin.vincent@stericsson.com>
> >>
> >> If !dev->class, device_move() does not respect the dpm_order.
> >> Fix it to do so.
> >
> > Is there code today in the kernel that needs this to go in now?  For
> > older releases?  Or is 3.4 acceptable?
> 
> To me it seems it has not been merged to 3.4 yet ... can we have it
> for the -rc:s?

Does it fix a bug somewhere?  If so, sure, but I didn't get the
impression that it did, and as it came after the merge window, I was
going to wait.

If this is incorrect, please let me know.

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] driver core: always handle dpm_order
  2012-04-10 10:51   ` Linus Walleij
  2012-04-10 14:36     ` Greg Kroah-Hartman
@ 2012-04-10 22:21     ` Rafael J. Wysocki
  2012-04-11  7:20       ` Linus Walleij
  1 sibling, 1 reply; 9+ messages in thread
From: Rafael J. Wysocki @ 2012-04-10 22:21 UTC (permalink / raw)
  To: Linus Walleij
  Cc: Greg Kroah-Hartman, Linus Walleij, linux-kernel, Rabin Vincent

On Tuesday, April 10, 2012, Linus Walleij wrote:
> On Thu, Mar 15, 2012 at 4:43 PM, Greg Kroah-Hartman
> <gregkh@linuxfoundation.org> wrote:
> > On Thu, Mar 15, 2012 at 10:58:18AM +0100, Linus Walleij wrote:
> >> From: Rabin Vincent <rabin.vincent@stericsson.com>
> >>
> >> If !dev->class, device_move() does not respect the dpm_order.
> >> Fix it to do so.
> >
> > Is there code today in the kernel that needs this to go in now?  For
> > older releases?  Or is 3.4 acceptable?
> 
> To me it seems it has not been merged to 3.4 yet ... can we have it
> for the -rc:s?

Could patch authors CC me on changes related to the code I'm supposed to
maintain (e.g. device PM this particular case), please?

Also, please point me to the patch if that's not a problem.

Thanks,
Rafael

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] driver core: always handle dpm_order
  2012-04-10 22:21     ` Rafael J. Wysocki
@ 2012-04-11  7:20       ` Linus Walleij
  2012-04-18 20:01         ` Greg Kroah-Hartman
  0 siblings, 1 reply; 9+ messages in thread
From: Linus Walleij @ 2012-04-11  7:20 UTC (permalink / raw)
  To: Rafael J. Wysocki
  Cc: Greg Kroah-Hartman, Linus Walleij, linux-kernel, Rabin Vincent

On Wed, Apr 11, 2012 at 12:21 AM, Rafael J. Wysocki <rjw@sisk.pl> wrote:
> On Tuesday, April 10, 2012, Linus Walleij wrote:
>> On Thu, Mar 15, 2012 at 4:43 PM, Greg Kroah-Hartman
>> <gregkh@linuxfoundation.org> wrote:
>> > On Thu, Mar 15, 2012 at 10:58:18AM +0100, Linus Walleij wrote:
>> >> From: Rabin Vincent <rabin.vincent@stericsson.com>
>> >>
>> >> If !dev->class, device_move() does not respect the dpm_order.
>> >> Fix it to do so.
>> >
>> > Is there code today in the kernel that needs this to go in now?  For
>> > older releases?  Or is 3.4 acceptable?
>>
>> To me it seems it has not been merged to 3.4 yet ... can we have it
>> for the -rc:s?
>
> Could patch authors CC me on changes related to the code I'm supposed to
> maintain (e.g. device PM this particular case), please?

Ooops! Sorry.

> Also, please point me to the patch if that's not a problem.

Enjoy:
https://lkml.org/lkml/2012/3/15/70

Thanks for looking into this Rafael!
Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] driver core: always handle dpm_order
  2012-04-10 14:36     ` Greg Kroah-Hartman
@ 2012-04-11  7:24       ` Linus Walleij
  0 siblings, 0 replies; 9+ messages in thread
From: Linus Walleij @ 2012-04-11  7:24 UTC (permalink / raw)
  To: Greg Kroah-Hartman; +Cc: Linus Walleij, linux-kernel, Rabin Vincent

On Tue, Apr 10, 2012 at 4:36 PM, Greg Kroah-Hartman
<gregkh@linuxfoundation.org> wrote:
> On Tue, Apr 10, 2012 at 12:51:35PM +0200, Linus Walleij wrote:
>> On Thu, Mar 15, 2012 at 4:43 PM, Greg Kroah-Hartman
>> <gregkh@linuxfoundation.org> wrote:
>> > On Thu, Mar 15, 2012 at 10:58:18AM +0100, Linus Walleij wrote:
>> >> From: Rabin Vincent <rabin.vincent@stericsson.com>
>> >>
>> >> If !dev->class, device_move() does not respect the dpm_order.
>> >> Fix it to do so.
>> >
>> > Is there code today in the kernel that needs this to go in now?  For
>> > older releases?  Or is 3.4 acceptable?
>>
>> To me it seems it has not been merged to 3.4 yet ... can we have it
>> for the -rc:s?
>
> Does it fix a bug somewhere?  If so, sure, but I didn't get the
> impression that it did, and as it came after the merge window, I was
> going to wait.

Que? It arrived the 15th of march, two weeks ahead of the merge
window... But no big deal, Rafael need to review it so no hurries.

Thanks,
Linus Walleij

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] driver core: always handle dpm_order
  2012-04-11  7:20       ` Linus Walleij
@ 2012-04-18 20:01         ` Greg Kroah-Hartman
  0 siblings, 0 replies; 9+ messages in thread
From: Greg Kroah-Hartman @ 2012-04-18 20:01 UTC (permalink / raw)
  To: Linus Walleij
  Cc: Rafael J. Wysocki, Linus Walleij, linux-kernel, Rabin Vincent

On Wed, Apr 11, 2012 at 09:20:15AM +0200, Linus Walleij wrote:
> On Wed, Apr 11, 2012 at 12:21 AM, Rafael J. Wysocki <rjw@sisk.pl> wrote:
> > On Tuesday, April 10, 2012, Linus Walleij wrote:
> >> On Thu, Mar 15, 2012 at 4:43 PM, Greg Kroah-Hartman
> >> <gregkh@linuxfoundation.org> wrote:
> >> > On Thu, Mar 15, 2012 at 10:58:18AM +0100, Linus Walleij wrote:
> >> >> From: Rabin Vincent <rabin.vincent@stericsson.com>
> >> >>
> >> >> If !dev->class, device_move() does not respect the dpm_order.
> >> >> Fix it to do so.
> >> >
> >> > Is there code today in the kernel that needs this to go in now?  For
> >> > older releases?  Or is 3.4 acceptable?
> >>
> >> To me it seems it has not been merged to 3.4 yet ... can we have it
> >> for the -rc:s?
> >
> > Could patch authors CC me on changes related to the code I'm supposed to
> > maintain (e.g. device PM this particular case), please?
> 
> Ooops! Sorry.
> 
> > Also, please point me to the patch if that's not a problem.
> 
> Enjoy:
> https://lkml.org/lkml/2012/3/15/70
> 
> Thanks for looking into this Rafael!

Now dropped from my queue due to length of delay.  If you still
want/need this, please answer the questions I asked, and resend.

greg k-h

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2012-04-18 20:01 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-03-15  9:58 [PATCH] driver core: always handle dpm_order Linus Walleij
2012-03-15 15:43 ` Greg Kroah-Hartman
2012-03-19  8:30   ` Rabin Vincent
2012-04-10 10:51   ` Linus Walleij
2012-04-10 14:36     ` Greg Kroah-Hartman
2012-04-11  7:24       ` Linus Walleij
2012-04-10 22:21     ` Rafael J. Wysocki
2012-04-11  7:20       ` Linus Walleij
2012-04-18 20:01         ` Greg Kroah-Hartman

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.