On Sun, 13 Oct 2024 14:28:05 -0400, Olivier Langlois wrote: > the actual napi tracking strategy is inducing a non-negligeable overhead. > Everytime a multishot poll is triggered or any poll armed, if the napi is > enabled on the ring a lookup is performed to either add a new napi id into > the napi_list or its timeout value is updated. > > For many scenarios, this is overkill as the napi id list will be pretty > much static most of the time. To address this common scenario, the concept of io_uring_napi_tracking_strategy has been created. > the tracking strategy can be specified when io_register_napi() is called. > > [...] Applied, thanks! [1/6] io_uring/napi: protect concurrent io_napi_entry timeout accesses commit: d54db33e51090f68645fecb252a3ad22f28512cf [2/6] io_uring/napi: fix io_napi_entry RCU accesses commit: 613dbde4863699fe88e601ddd7315f04c1aa3239 [3/6] io_uring/napi: improve __io_napi_add commit: e17bd6f1106d8c45e186a52d3ac0412f17e657c3 [4/6] io_uring/napi: Use lock guards commit: 6710c043c8e9d8fa9649fffd8855e3ad883bf001 [5/6] io_uring/napi: clean up __io_napi_do_busy_loop commit: c596060fbe5a1c094d46d8f7191a866879fe6672 [6/6] io_uring/napi: add static napi tracking strategy commit: cc909543d239912669b14250e796bbd877f8128a Best regards, -- Jens Axboe