On lunedì 14 febbraio 2022 04:44:25 CET Tejun Heo wrote: > Hello, > > On Mon, Feb 14, 2022 at 10:08:00AM +0900, Tetsuo Handa wrote: > > + destroy_workqueue(srp_tl_err_wq); > > > > Then, we can call WARN_ON() if e.g. flush_workqueue() is called on system-wide workqueues. > > Yeah, this is the right thing to do. It makes no sense at all to call > flush_workqueue() on the shared workqueues as the caller has no idea what > it's gonna end up waiting for. It was on my todo list a long while ago but > slipped through the crack. If anyone wanna take a stab at it (including > scrubbing the existing users, of course), please be my guest. > Just to think and understand... what if the system-wide WQ were allocated as unbound ordered (i.e., as in alloc_ordered_workqueue()) with "max_active" of one? 1) Would it solve the locks dependency problem? 2) Would it introduce performance penalties (bottlenecks)? Greetings, Fabio > > Thanks. > > -- > tejun >