On Sun, 2024-08-11 at 20:34 -0400, Olivier Langlois wrote: > io_napi_entry() has 2 calling sites. One of them is unlikely to find > an > entry and if it does, the timeout should arguable not be updated. > > The other io_napi_entry() calling site is overwriting the update made > by io_napi_entry() so the io_napi_entry() timeout value update has no > or > little value and therefore is removed. > > Signed-off-by: Olivier Langlois <olivier@xxxxxxxxxxxxxx> > --- > io_uring/napi.c | 1 - > 1 file changed, 1 deletion(-) > > diff --git a/io_uring/napi.c b/io_uring/napi.c > index 73c4159e8405..1de1d4d62925 100644 > --- a/io_uring/napi.c > +++ b/io_uring/napi.c > @@ -26,7 +26,6 @@ static struct io_napi_entry > *io_napi_hash_find(struct hlist_head *hash_list, > hlist_for_each_entry_rcu(e, hash_list, node) { > if (e->napi_id != napi_id) > continue; > - e->timeout = jiffies + NAPI_TIMEOUT; > return e; > } > I am commenting my own patch because I found something curious that I was not sure about when I was reviewing the code. Should the remaining e->timeout assignation be wrapped with a WRITE_ONCE() macro to ensure an atomic store?