All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 0/2] poll_refs armoring
@ 2022-11-20 16:57 Pavel Begunkov
  2022-11-20 16:57 ` [PATCH v3 1/2] io_uring: cmpxchg for poll arm refs release Pavel Begunkov
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Pavel Begunkov @ 2022-11-20 16:57 UTC (permalink / raw)
  To: io-uring; +Cc: Jens Axboe, asml.silence

Make poll_refs more robust and protected from overflows. The mechanism
description is in 2/2. 1/2 helps to make the second patch a little bit
cleaner by tunnelling all edge cases from arming to a tw.

A good way to test is to set IO_POLL_REF_BIAS to 0 and 1. 0 will make
the slowpath to be hit every single time, and 1 triggers it in case of
races.

v2: clear the retry flag before vfs_poll()
v3: fix not handling arm_poll* refs release edge cases with patch 1/2

Pavel Begunkov (2):
  io_uring: cmpxchg for poll arm refs release
  io_uring: make poll refs more robust

 io_uring/poll.c | 44 ++++++++++++++++++++++++++++++++++++++------
 1 file changed, 38 insertions(+), 6 deletions(-)

-- 
2.38.1


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2022-11-25 13:55 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-11-20 16:57 [PATCH v3 0/2] poll_refs armoring Pavel Begunkov
2022-11-20 16:57 ` [PATCH v3 1/2] io_uring: cmpxchg for poll arm refs release Pavel Begunkov
2022-11-25 13:51   ` Pavel Begunkov
2022-11-25 13:55     ` Jens Axboe
2022-11-20 16:57 ` [PATCH v3 2/2] io_uring: make poll refs more robust Pavel Begunkov
2022-11-21 17:10 ` [PATCH v3 0/2] poll_refs armoring Jens Axboe

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.