On 28.03.2022 07:39:25, Tejun Heo wrote: > 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. For NAPI a sysfs entry was added to switch to threaded mode: | 5fdd2f0e5c64 net: add sysfs attribute to control napi threaded mode | 29863d41bb6e net: implement threaded-able napi poll loop support | 898f8015ffe7 net: extract napi poll functionality to __napi_poll() regards, Marc -- Pengutronix e.K. | Marc Kleine-Budde | Embedded Linux | https://www.pengutronix.de | Vertretung West/Dortmund | Phone: +49-231-2826-924 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
Attachment:
signature.asc
Description: PGP signature