Hello, On Mon, Mar 28, 2022 at 12:09:27PM +0200, Marc Kleine-Budde wrote: > > Having a kthread per "low-latency" tty instance is something I would > > prefer. The kwork corner is an anonymous worker instance and probably > > does more harm than good. Especially if it is a knob for everyone which > > is used for the wrong reasons and manages to be harmful in the end. > > With a special kthread for a particular tty, the thread can be assigned > > with the desired priority within the system and ttyS1 can be > > distinguished from ttyS0 (and so on). This turned out to be useful in a > > few setups over the years. > > +1 > > The networking subsystem has gone the same/similar way with NAPI. NAPI > handling can be switched from the softirq to kernel thread on a per > interface basis. I wonder whether it'd be useful to provide a set of wrappers which can make switching between workqueue and kworker easy. Semantics-wise, they're already mostly aligned and it shouldn't be too difficult to e.g. make an unbounded workqueue be backed by a dedicated kthread_worker instead of shared pool depending on a flag, or even allow switching dynamically. Thanks. -- tejun