linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Arend van Spriel <arend.vanspriel@broadcom.com>
To: "Luis R. Rodriguez" <mcgrof@kernel.org>,
	cantabile <cantabile.desu@gmail.com>
Cc: Jakub Kicinski <kubakici@wp.pl>,
	linux-wireless@vger.kernel.org,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Andrew Morton <akpm@linux-foundation.org>
Subject: Re: [PATCH] mt7601u: Fix system freeze after resuming from hibernation
Date: Wed, 28 Feb 2018 20:18:33 +0100	[thread overview]
Message-ID: <5A970089.6030805@broadcom.com> (raw)
In-Reply-To: <20180228184820.GL14069@wotan.suse.de>

On 2/28/2018 7:48 PM, Luis R. Rodriguez wrote:
> On Wed, Feb 28, 2018 at 08:02:59PM +0200, cantabile wrote:
>> On 27/02/18 22:42, Luis R. Rodriguez wrote:
>>> I'd be curious if someone who can trigger the situation can test what
>>> happens if you use:
>>>
>>> diff --git a/drivers/net/wireless/mediatek/mt7601u/mcu.c b/drivers/net/wireless/mediatek/mt7601u/mcu.c
>>> index 65a8004418ea..04cbffd225a1 100644
>>> --- a/drivers/net/wireless/mediatek/mt7601u/mcu.c
>>> +++ b/drivers/net/wireless/mediatek/mt7601u/mcu.c
>>> @@ -421,7 +421,7 @@ static int mt7601u_load_firmware(struct mt7601u_dev *dev)
>>>    					 MT_USB_DMA_CFG_TX_BULK_EN));
>>>    	if (firmware_running(dev))
>>> -		return 0;
>>> +		pr_info("Firmware already loaded but going to reload...");
>>>    	ret = request_firmware(&fw, MT7601U_FIRMWARE, dev->dev);
>>>    	if (ret)
>>>
>>>
>>> Curious, will it really fail?
>>
>> This change brings no new messages from mt7601u in dmesg (other than this
>> pr_info), and the device works fine, as far as I can tell.
>
> OK so we know that the optimization is optional, not a requirement.
> That may be worth extending in documentation on the driver.
>
>>> Note that I see mt7601u_stop() just calls mt7601u_mac_stop(). The big cleanup
>>> happens via mt7601u_cleanup(), but I see mt7601u_disconnect() calls it.
>>>
>>> Just curious, does that not get called on shutdown?
>>>
>>> diff --git a/drivers/net/wireless/mediatek/mt7601u/usb.c b/drivers/net/wireless/mediatek/mt7601u/usb.c
>>> index b9e4f6793138..126ef2ba77c2 100644
>>> --- a/drivers/net/wireless/mediatek/mt7601u/usb.c
>>> +++ b/drivers/net/wireless/mediatek/mt7601u/usb.c
>>> @@ -311,6 +311,7 @@ static void mt7601u_disconnect(struct usb_interface *usb_intf)
>>>    {
>>>    	struct mt7601u_dev *dev = usb_get_intfdata(usb_intf);
>>> +	pr_info("Calling mt7601u_disconnect()...");
>>>    	ieee80211_unregister_hw(dev->hw);
>>>    	mt7601u_cleanup(dev);
>>>
>>> If it does, one option is mt7601u_cleanup() can use some love to really shut down
>>> the device more... But its not clear to me what else could be done and I'm very
>>> inclined to believe its not sensible.
>>>
>> "Calling mt7601u_disconnect" does not appear in journalctl after a reboot.
>
> Oh, I didn't expect it to come up during startup, I was wondering if it did
> trigger while going down on reboot.

Hi Luis,
This driver does not implement a .shutdown() callback so that might be 
one reason and the usb subsystem does not call the disconnect for 
whatever reason.

Regards,
Arend

  reply	other threads:[~2018-02-28 19:18 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-14 11:34 [PATCH] mt7601u: Fix system freeze after resuming from hibernation cantabile
2018-02-15  0:45 ` Jakub Kicinski
2018-02-15 11:38   ` cantabile
2018-02-15 21:47     ` Jakub Kicinski
2018-02-17 11:23       ` cantabile
2018-02-19  5:55         ` Jakub Kicinski
2018-02-19 15:01           ` cantabile
2018-02-25 17:54             ` Luis R. Rodriguez
2018-02-27  2:28               ` Jakub Kicinski
2018-02-27 12:25                 ` cantabile
2018-02-27 16:54                   ` Luis R. Rodriguez
2018-02-27 18:22                     ` Jakub Kicinski
2018-02-27 20:42                       ` Luis R. Rodriguez
2018-02-28 18:02                         ` cantabile
2018-02-28 18:48                           ` Luis R. Rodriguez
2018-02-28 19:18                             ` Arend van Spriel [this message]
2018-02-28 20:41                               ` Luis R. Rodriguez
2018-02-28 21:18                             ` cantabile
2018-03-01  0:28                               ` Luis R. Rodriguez
2018-03-01 14:05                                 ` cantabile
2018-03-01 17:29                                   ` Luis R. Rodriguez
2018-03-01 20:11                                     ` cantabile
2018-03-01 21:01                                       ` Luis R. Rodriguez
2018-03-02 10:43                                         ` cantabile

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5A970089.6030805@broadcom.com \
    --to=arend.vanspriel@broadcom.com \
    --cc=akpm@linux-foundation.org \
    --cc=cantabile.desu@gmail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=kubakici@wp.pl \
    --cc=linux-wireless@vger.kernel.org \
    --cc=mcgrof@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).