[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Sun, 10 Oct 2021 11:21:49 +0200
From: "Fabio M. De Francesco" <fmdefrancesco@...il.com>
To: Dan Carpenter <dan.carpenter@...cle.com>,
linux-staging@...ts.linux.dev
Cc: gregkh@...uxfoundation.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2] staging: r8188eu: Provide a TODO file for this driver
On Saturday, October 9, 2021 6:31:12 PM CEST Fabio M. De Francesco wrote:
> On Thursday, August 26, 2021 3:54:13 PM CEST Dan Carpenter wrote:
> > Another thing to fix are some of the sleeping in atomic bugs.
> >
> > drivers/staging/r8188eu/core/rtw_ap.c:139 update_BCNTIM() warn: sleeping
> > in atomic context
> > drivers/staging/r8188eu/core/rtw_ap.c:1296 update_bcn_wps_ie() warn:
> > sleeping in atomic context
> >
> > [...]
> >
> Hello Dan,
>
> I'd like to address these kind of bugs, but I have a couple of questions
> about them.
>
> 1) You've listed what looks like the output of a compiler or static
> analyzer.
> How did you get the warnings you copy-pasted above?
>
> 2) I know that both the execution of interrupt handlers (ISRs) as well as
> any
> code blocks that are executed holding spinlocks are "atomic contexts". In
> these cases, "sleeping" is not allowed (for obvious reasons). Besides the
> two
> mentioned above, are there any further cases of "atomic contexts" in the
> kernel?
After some research, I've found that Softirqs and Tasklets are also executed
in "atomic context", as hardware interrupt service routines are.
Furthermore, I've also found a .config option named DEBUG_ATOMIC_SLEEP
that should warn if some code is sleeping in "atomic context". However, the
documentation of that option does not explain where the output of these
checks can be read.
I would appreciate any help on this matter.
Thanks,
Fabio
>
> Thank you in advance,
>
> Fabio
>
>
>
>
Powered by blists - more mailing lists