Re: [RFC] staging: r8188eu: Sleeping in atomic context (SAC) bugs

From: Fabio M. De Francesco
Date: Mon Feb 07 2022 - 12:24:45 EST


On luned? 7 febbraio 2022 15:18:52 CET Fabio M. De Francesco wrote:
> On Mon, Feb 07, 2022 10:21:33 CET Dan Carpenter wrote:
> > On Mon, Feb 07, 2022 at 01:02:17AM +0100, Fabio M. De Francesco wrote:
>
> [...]
>
> You're right: "if (check_fwstate(pmlmepriv, _FW_LINKED))" in _rtw_pwr_wakeup()
> will prevent a call to ips_leave(). Therefore, it seems that we have no problems
> with the mutex in ips_leave().
>
> I had not noticed the above-mentioned "if" test. Sorry :(
> So, let's leave the code as it is.

I'm writing again just to be sure that I made my argument clear. When I wrote
"[] let's leave the code as it is [currently]" I was referring to the mutex_lock()
that is _never_ reached while holding the spinlock that rtw_set_802_11_disassociate()
takes before calling _rtw_pwr_wakeup().

Instead, if no one objects, I want to substitute the two "msleep(10);" with
"mdelay(10);".

However, I'll wait some time just in case someone wants to suggest a better
solution.

Fabio


> Thank you very much.
>
> Regards,
>
> Fabio M. De Francesco
>