lkml.org 
[lkml]   [2018]   [May]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] brcmfmac: stop watchdog before detach and free everything
From
Date
On 5/28/2018 5:33 PM, Michael Nazzareno Trimarchi wrote:
> Hi Andy
>
> The problem seems really easy to solve:
>
> diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
> b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
> index 412a05b..ba60b151 100644
> --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
> +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
> @@ -4227,13 +4227,7 @@ struct brcmf_sdio *brcmf_sdio_probe(struct
> brcmf_sdio_dev *sdiodev)
> timer_setup(&bus->timer, brcmf_sdio_watchdog, 0);
> /* Initialize watchdog thread */
> init_completion(&bus->watchdog_wait);
> - bus->watchdog_tsk = kthread_run(brcmf_sdio_watchdog_thread,
> - bus, "brcmf_wdog/%s",
> - dev_name(&sdiodev->func1->dev));
> - if (IS_ERR(bus->watchdog_tsk)) {
> - pr_warn("brcmf_watchdog thread failed to start\n");
> - bus->watchdog_tsk = NULL;
> - }
> +
> /* Initialize DPC thread */
> bus->dpc_triggered = false;
> bus->dpc_running = false;
> @@ -4281,6 +4275,14 @@ struct brcmf_sdio *brcmf_sdio_probe(struct
> brcmf_sdio_dev *sdiodev)
> goto fail;
> }
>
> + bus->watchdog_tsk = kthread_run(brcmf_sdio_watchdog_thread,
> + bus, "brcmf_wdog/%s",
> + dev_name(&sdiodev->func1->dev));
> + if (IS_ERR(bus->watchdog_tsk)) {
> + pr_warn("brcmf_watchdog thread failed to start\n");
> + bus->watchdog_tsk = NULL;
> + }
> +
> return bus;

Hi Michael,

That makes no sense. Or are you saying the function
brcmf_fw_get_firmwares() fails for you? Oh wait, you mentioned the
driver was built-in, right? The above change does not solve the issue.
It just makes it less likely to occur. So I think your initial fix is
the best solution for this.

Regards,
Arend

\
 
 \ /
  Last update: 2018-05-29 11:24    [W:0.063 / U:4.632 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site