2011-03-17 05:51:48

by Eric Dumazet

[permalink] [raw]
Subject: [BUG] usb_wwan: build error

commit 16871dcac74c (usb_wwan: error case of resume) added a build error
if CONFIG_PM_RUNTIME is not defined.

CC [M] drivers/usb/serial/usb_wwan.o
drivers/usb/serial/usb_wwan.c: In function ‘play_delayed’:
drivers/usb/serial/usb_wwan.c:702: error: ‘struct dev_pm_info’ has no
member named ‘usage_count’

I suspect we should use pm_runtime_put_noidle() instead

Signed-off-by: Eric Dumazet <[email protected]>
---
drivers/usb/serial/usb_wwan.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/usb/serial/usb_wwan.c b/drivers/usb/serial/usb_wwan.c
index a65ddd5..916405c 100644
--- a/drivers/usb/serial/usb_wwan.c
+++ b/drivers/usb/serial/usb_wwan.c
@@ -698,8 +698,7 @@ static void play_delayed(struct usb_serial_port *port)
/* we have to throw away the rest */
do {
unbusy_queued_urb(urb, portdata);
- //extremely dirty
- atomic_dec(&port->serial->interface->dev.power.usage_count);
+ pm_runtime_put_noidle(&port->serial->interface->dev);
} while ((urb = usb_get_from_anchor(&portdata->delayed)));
break;
}


2011-03-17 06:02:00

by Oliver Neukum

[permalink] [raw]
Subject: Re: [BUG] usb_wwan: build error

Am Donnerstag, 17. März 2011, 06:51:40 schrieb Eric Dumazet:
> commit 16871dcac74c (usb_wwan: error case of resume) added a build error
> if CONFIG_PM_RUNTIME is not defined.
>
> CC [M] drivers/usb/serial/usb_wwan.o
> drivers/usb/serial/usb_wwan.c: In function ‘play_delayed’:
> drivers/usb/serial/usb_wwan.c:702: error: ‘struct dev_pm_info’ has no
> member named ‘usage_count’
>
> I suspect we should use pm_runtime_put_noidle() instead

Yes. I don't understand why it compiled for me. Has it been removed?

Regards
Oliver

PS: patch about to follow

2011-03-17 17:07:34

by Randy Dunlap

[permalink] [raw]
Subject: Re: [BUG] usb_wwan: build error

On Thu, 17 Mar 2011 07:02:28 +0100 Oliver Neukum wrote:

> Am Donnerstag, 17. März 2011, 06:51:40 schrieb Eric Dumazet:
> > commit 16871dcac74c (usb_wwan: error case of resume) added a build error
> > if CONFIG_PM_RUNTIME is not defined.
> >
> > CC [M] drivers/usb/serial/usb_wwan.o
> > drivers/usb/serial/usb_wwan.c: In function ‘play_delayed’:
> > drivers/usb/serial/usb_wwan.c:702: error: ‘struct dev_pm_info’ has no
> > member named ‘usage_count’
> >
> > I suspect we should use pm_runtime_put_noidle() instead
>
> Yes. I don't understand why it compiled for me. Has it been removed?

usage_count is only there when CONFIG_PM_RUNTIME is enabled.
Building with CONFIG_PM_RUNTIME disabled produces a build error.


> Regards
> Oliver
>
> PS: patch about to follow

---
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***