* [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.