* [PATCH] rt2x00: usb: fix reset resume
@ 2012-10-16 12:34 Stanislaw Gruszka
2012-10-16 14:48 ` Gertjan van Wingerde
2012-10-24 18:35 ` Stanislaw Gruszka
0 siblings, 2 replies; 5+ messages in thread
From: Stanislaw Gruszka @ 2012-10-16 12:34 UTC (permalink / raw)
To: John W. Linville; +Cc: linux-wireless, users, David Herrmann, Stephen Boyd
Patch fixes warnings like below happened on resume:
WARNING: at net/mac80211/driver-ops.h:12 check_sdata_in_driver+0x32/0x34()
Problem is that in __ieee80211_susped() we remove sdata (i.e wlan0
interface) and then during resume we call usb_unbind_interface() ->
ieee80211_unregister_hw() with sdata removed.
Patch fixes problem by adding .reset_resume calback, hence we do not
unbind usb device on resume. This callback can be the same as normal
.resume callback, sice we do all needed initalization during interface
start, which is performed on resume [ ieee80211_resume() ->
ieee80211_reconfig() -> rt2x00mac_start() -> rt2x00lib_start ].
Resolves:
https://bugzilla.kernel.org/show_bug.cgi?id=48041
Reported-by: David Herrmann <dh.herrmann@googlemail.com>
Reported-and-tested-by: Stephen Boyd <bebarino@gmail.com>
Cc: stable@vger.kernel.org
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
---
drivers/net/wireless/rt2x00/rt2500usb.c | 1 +
drivers/net/wireless/rt2x00/rt2800usb.c | 1 +
drivers/net/wireless/rt2x00/rt73usb.c | 1 +
3 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/drivers/net/wireless/rt2x00/rt2500usb.c b/drivers/net/wireless/rt2x00/rt2500usb.c
index a12e84f..6b2e1e4 100644
--- a/drivers/net/wireless/rt2x00/rt2500usb.c
+++ b/drivers/net/wireless/rt2x00/rt2500usb.c
@@ -1988,6 +1988,7 @@ static struct usb_driver rt2500usb_driver = {
.disconnect = rt2x00usb_disconnect,
.suspend = rt2x00usb_suspend,
.resume = rt2x00usb_resume,
+ .reset_resume = rt2x00usb_resume,
.disable_hub_initiated_lpm = 1,
};
diff --git a/drivers/net/wireless/rt2x00/rt2800usb.c b/drivers/net/wireless/rt2x00/rt2800usb.c
index c9e9370..3b8fb5a 100644
--- a/drivers/net/wireless/rt2x00/rt2800usb.c
+++ b/drivers/net/wireless/rt2x00/rt2800usb.c
@@ -1282,6 +1282,7 @@ static struct usb_driver rt2800usb_driver = {
.disconnect = rt2x00usb_disconnect,
.suspend = rt2x00usb_suspend,
.resume = rt2x00usb_resume,
+ .reset_resume = rt2x00usb_resume,
.disable_hub_initiated_lpm = 1,
};
diff --git a/drivers/net/wireless/rt2x00/rt73usb.c b/drivers/net/wireless/rt2x00/rt73usb.c
index e5eb43b..24eec66 100644
--- a/drivers/net/wireless/rt2x00/rt73usb.c
+++ b/drivers/net/wireless/rt2x00/rt73usb.c
@@ -2535,6 +2535,7 @@ static struct usb_driver rt73usb_driver = {
.disconnect = rt2x00usb_disconnect,
.suspend = rt2x00usb_suspend,
.resume = rt2x00usb_resume,
+ .reset_resume = rt2x00usb_resume,
.disable_hub_initiated_lpm = 1,
};
--
1.7.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH] rt2x00: usb: fix reset resume
2012-10-16 12:34 [PATCH] rt2x00: usb: fix reset resume Stanislaw Gruszka
@ 2012-10-16 14:48 ` Gertjan van Wingerde
2012-10-24 18:35 ` Stanislaw Gruszka
1 sibling, 0 replies; 5+ messages in thread
From: Gertjan van Wingerde @ 2012-10-16 14:48 UTC (permalink / raw)
To: Stanislaw Gruszka
Cc: John W. Linville, linux-wireless, users, David Herrmann,
Stephen Boyd
On Tue, Oct 16, 2012 at 2:34 PM, Stanislaw Gruszka <sgruszka@redhat.com> wrote:
> Patch fixes warnings like below happened on resume:
>
> WARNING: at net/mac80211/driver-ops.h:12 check_sdata_in_driver+0x32/0x34()
>
> Problem is that in __ieee80211_susped() we remove sdata (i.e wlan0
> interface) and then during resume we call usb_unbind_interface() ->
> ieee80211_unregister_hw() with sdata removed.
>
> Patch fixes problem by adding .reset_resume calback, hence we do not
> unbind usb device on resume. This callback can be the same as normal
> .resume callback, sice we do all needed initalization during interface
> start, which is performed on resume [ ieee80211_resume() ->
> ieee80211_reconfig() -> rt2x00mac_start() -> rt2x00lib_start ].
>
> Resolves:
> https://bugzilla.kernel.org/show_bug.cgi?id=48041
>
> Reported-by: David Herrmann <dh.herrmann@googlemail.com>
> Reported-and-tested-by: Stephen Boyd <bebarino@gmail.com>
> Cc: stable@vger.kernel.org
> Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
Acked-by: Gertjan van Wingerde <gwingerde@gmail.com>
> ---
> drivers/net/wireless/rt2x00/rt2500usb.c | 1 +
> drivers/net/wireless/rt2x00/rt2800usb.c | 1 +
> drivers/net/wireless/rt2x00/rt73usb.c | 1 +
> 3 files changed, 3 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/net/wireless/rt2x00/rt2500usb.c b/drivers/net/wireless/rt2x00/rt2500usb.c
> index a12e84f..6b2e1e4 100644
> --- a/drivers/net/wireless/rt2x00/rt2500usb.c
> +++ b/drivers/net/wireless/rt2x00/rt2500usb.c
> @@ -1988,6 +1988,7 @@ static struct usb_driver rt2500usb_driver = {
> .disconnect = rt2x00usb_disconnect,
> .suspend = rt2x00usb_suspend,
> .resume = rt2x00usb_resume,
> + .reset_resume = rt2x00usb_resume,
> .disable_hub_initiated_lpm = 1,
> };
>
> diff --git a/drivers/net/wireless/rt2x00/rt2800usb.c b/drivers/net/wireless/rt2x00/rt2800usb.c
> index c9e9370..3b8fb5a 100644
> --- a/drivers/net/wireless/rt2x00/rt2800usb.c
> +++ b/drivers/net/wireless/rt2x00/rt2800usb.c
> @@ -1282,6 +1282,7 @@ static struct usb_driver rt2800usb_driver = {
> .disconnect = rt2x00usb_disconnect,
> .suspend = rt2x00usb_suspend,
> .resume = rt2x00usb_resume,
> + .reset_resume = rt2x00usb_resume,
> .disable_hub_initiated_lpm = 1,
> };
>
> diff --git a/drivers/net/wireless/rt2x00/rt73usb.c b/drivers/net/wireless/rt2x00/rt73usb.c
> index e5eb43b..24eec66 100644
> --- a/drivers/net/wireless/rt2x00/rt73usb.c
> +++ b/drivers/net/wireless/rt2x00/rt73usb.c
> @@ -2535,6 +2535,7 @@ static struct usb_driver rt73usb_driver = {
> .disconnect = rt2x00usb_disconnect,
> .suspend = rt2x00usb_suspend,
> .resume = rt2x00usb_resume,
> + .reset_resume = rt2x00usb_resume,
> .disable_hub_initiated_lpm = 1,
> };
>
> --
> 1.7.1
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
---
Gertjan
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] rt2x00: usb: fix reset resume
2012-10-16 12:34 [PATCH] rt2x00: usb: fix reset resume Stanislaw Gruszka
2012-10-16 14:48 ` Gertjan van Wingerde
@ 2012-10-24 18:35 ` Stanislaw Gruszka
2012-10-24 21:44 ` John W. Linville
1 sibling, 1 reply; 5+ messages in thread
From: Stanislaw Gruszka @ 2012-10-24 18:35 UTC (permalink / raw)
To: John W. Linville; +Cc: linux-wireless, users, David Herrmann, Stephen Boyd
On Tue, Oct 16, 2012 at 02:34:12PM +0200, Stanislaw Gruszka wrote:
> Patch fixes warnings like below happened on resume:
>
> WARNING: at net/mac80211/driver-ops.h:12 check_sdata_in_driver+0x32/0x34()
>
> Problem is that in __ieee80211_susped() we remove sdata (i.e wlan0
> interface) and then during resume we call usb_unbind_interface() ->
> ieee80211_unregister_hw() with sdata removed.
>
> Patch fixes problem by adding .reset_resume calback, hence we do not
> unbind usb device on resume. This callback can be the same as normal
> .resume callback, sice we do all needed initalization during interface
> start, which is performed on resume [ ieee80211_resume() ->
> ieee80211_reconfig() -> rt2x00mac_start() -> rt2x00lib_start ].
>
> Resolves:
> https://bugzilla.kernel.org/show_bug.cgi?id=48041
>
> Reported-by: David Herrmann <dh.herrmann@googlemail.com>
> Reported-and-tested-by: Stephen Boyd <bebarino@gmail.com>
> Cc: stable@vger.kernel.org
> Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
NACK for this patch, Randomly I'm able to reproduce strange crashes
when suspending and transiting data, which seem to not happen without
this patch. Until I'll figure this out, let's not apply the patch.
Stanislaw
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] rt2x00: usb: fix reset resume
2012-10-24 18:35 ` Stanislaw Gruszka
@ 2012-10-24 21:44 ` John W. Linville
2012-10-25 13:03 ` Stanislaw Gruszka
0 siblings, 1 reply; 5+ messages in thread
From: John W. Linville @ 2012-10-24 21:44 UTC (permalink / raw)
To: Stanislaw Gruszka; +Cc: linux-wireless, users, David Herrmann, Stephen Boyd
On Wed, Oct 24, 2012 at 08:35:26PM +0200, Stanislaw Gruszka wrote:
> On Tue, Oct 16, 2012 at 02:34:12PM +0200, Stanislaw Gruszka wrote:
> > Patch fixes warnings like below happened on resume:
> >
> > WARNING: at net/mac80211/driver-ops.h:12 check_sdata_in_driver+0x32/0x34()
> >
> > Problem is that in __ieee80211_susped() we remove sdata (i.e wlan0
> > interface) and then during resume we call usb_unbind_interface() ->
> > ieee80211_unregister_hw() with sdata removed.
> >
> > Patch fixes problem by adding .reset_resume calback, hence we do not
> > unbind usb device on resume. This callback can be the same as normal
> > .resume callback, sice we do all needed initalization during interface
> > start, which is performed on resume [ ieee80211_resume() ->
> > ieee80211_reconfig() -> rt2x00mac_start() -> rt2x00lib_start ].
> >
> > Resolves:
> > https://bugzilla.kernel.org/show_bug.cgi?id=48041
> >
> > Reported-by: David Herrmann <dh.herrmann@googlemail.com>
> > Reported-and-tested-by: Stephen Boyd <bebarino@gmail.com>
> > Cc: stable@vger.kernel.org
> > Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
>
> NACK for this patch, Randomly I'm able to reproduce strange crashes
> when suspending and transiting data, which seem to not happen without
> this patch. Until I'll figure this out, let's not apply the patch.
Of course, I just applied this today...any chance for a fixup?
John
--
John W. Linville Someday the world will need a hero, and you
linville@tuxdriver.com might be all we have. Be ready.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] rt2x00: usb: fix reset resume
2012-10-24 21:44 ` John W. Linville
@ 2012-10-25 13:03 ` Stanislaw Gruszka
0 siblings, 0 replies; 5+ messages in thread
From: Stanislaw Gruszka @ 2012-10-25 13:03 UTC (permalink / raw)
To: John W. Linville; +Cc: linux-wireless, users, David Herrmann, Stephen Boyd
On Wed, Oct 24, 2012 at 05:44:55PM -0400, John W. Linville wrote:
> On Wed, Oct 24, 2012 at 08:35:26PM +0200, Stanislaw Gruszka wrote:
> > On Tue, Oct 16, 2012 at 02:34:12PM +0200, Stanislaw Gruszka wrote:
> > > Patch fixes warnings like below happened on resume:
> > >
> > > WARNING: at net/mac80211/driver-ops.h:12 check_sdata_in_driver+0x32/0x34()
> > >
> > > Problem is that in __ieee80211_susped() we remove sdata (i.e wlan0
> > > interface) and then during resume we call usb_unbind_interface() ->
> > > ieee80211_unregister_hw() with sdata removed.
> > >
> > > Patch fixes problem by adding .reset_resume calback, hence we do not
> > > unbind usb device on resume. This callback can be the same as normal
> > > .resume callback, sice we do all needed initalization during interface
> > > start, which is performed on resume [ ieee80211_resume() ->
> > > ieee80211_reconfig() -> rt2x00mac_start() -> rt2x00lib_start ].
> > >
> > > Resolves:
> > > https://bugzilla.kernel.org/show_bug.cgi?id=48041
> > >
> > > Reported-by: David Herrmann <dh.herrmann@googlemail.com>
> > > Reported-and-tested-by: Stephen Boyd <bebarino@gmail.com>
> > > Cc: stable@vger.kernel.org
> > > Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
> >
> > NACK for this patch, Randomly I'm able to reproduce strange crashes
> > when suspending and transiting data, which seem to not happen without
> > this patch. Until I'll figure this out, let's not apply the patch.
>
> Of course, I just applied this today...any chance for a fixup?
This problem is tricky, I'm not expecting fix soon. However I can not
reproduce it on 3.7 and can on 3.6. So I think patch can go to 3.7 .
Could you remove cc stable from it? If not, I'll NACK backported patch,
when GregKH will send information about the backport.
Stanislaw
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2012-10-25 13:04 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-10-16 12:34 [PATCH] rt2x00: usb: fix reset resume Stanislaw Gruszka
2012-10-16 14:48 ` Gertjan van Wingerde
2012-10-24 18:35 ` Stanislaw Gruszka
2012-10-24 21:44 ` John W. Linville
2012-10-25 13:03 ` Stanislaw Gruszka
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).