From: yangerkun <[email protected]>
To: Pavel Begunkov <[email protected]>,
Jens Axboe <[email protected]>, <[email protected]>
Subject: Re: [PATCH 16/16] io_uring: return back safer resurrect
Date: Tue, 11 May 2021 09:11:04 +0800 [thread overview]
Message-ID: <[email protected]> (raw)
In-Reply-To: <[email protected]>
在 2021/5/10 17:15, Pavel Begunkov 写道:
> On 5/10/21 3:22 AM, yangerkun wrote:
>> 在 2021/4/11 8:46, Pavel Begunkov 写道:
>>> Revert of revert of "io_uring: wait potential ->release() on resurrect",
>>> which adds a helper for resurrect not racing completion reinit, as was
>>> removed because of a strange bug with no clear root or link to the
>>> patch.
>>>
>>> Was improved, instead of rcu_synchronize(), just wait_for_completion()
>>> because we're at 0 refs and it will happen very shortly. Specifically
>>> use non-interruptible version to ignore all pending signals that may
>>> have ended prior interruptible wait.
>>>
>>> This reverts commit cb5e1b81304e089ee3ca948db4d29f71902eb575.
>>>
>>> Signed-off-by: Pavel Begunkov <[email protected]>
>>
>> I have a question. Compare with the logical before this patch. We need call reinit_completion(&ctx->ref_comp) to make sure the effective use of the ref_comp.
>>
>> Does we forget to do this? Or I miss something?
> If percpu_ref_tryget() there succeeds, it should have not called
> complete by design, otherwise it do complete once (+1 completion
> count) following with a single wait(-1 completion count), so +1 -1
> should return it back to zero. See how struct completion works,
> e.g. completion.rst, number of completions is counted inside.
Got it. Thanks for your explain!
>
> btw, you have a strange mail encoding, apparently it's not Unicode
Yeah... I have change to Unicode!
Thanks,
Kun.
>
next prev parent reply other threads:[~2021-05-11 1:11 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-04-11 0:46 [PATCH 5.13 00/16] random 5.13 patches Pavel Begunkov
2021-04-11 0:46 ` [PATCH 01/16] io_uring: unify task and files cancel loops Pavel Begunkov
2021-04-11 0:46 ` [PATCH 02/16] io_uring: track inflight requests through counter Pavel Begunkov
2021-04-11 0:46 ` [PATCH 03/16] io_uring: unify files and task cancel Pavel Begunkov
2021-04-11 0:46 ` [PATCH 04/16] io_uring: refactor io_close Pavel Begunkov
2021-04-11 0:46 ` [PATCH 05/16] io_uring: enable inline completion for more cases Pavel Begunkov
2021-04-11 0:46 ` [PATCH 06/16] io_uring: refactor compat_msghdr import Pavel Begunkov
2021-04-11 0:46 ` [PATCH 07/16] io_uring: optimise non-eventfd post-event Pavel Begunkov
2021-04-11 0:46 ` [PATCH 08/16] io_uring: always pass cflags into fill_event() Pavel Begunkov
2021-04-11 0:46 ` [PATCH 09/16] io_uring: optimise fill_event() by inlining Pavel Begunkov
2021-04-11 0:46 ` [PATCH 10/16] io_uring: simplify io_rsrc_data refcounting Pavel Begunkov
2021-04-11 0:46 ` [PATCH 11/16] io_uring: add buffer unmap helper Pavel Begunkov
2021-04-11 0:46 ` [PATCH 12/16] io_uring: cleanup buffer register Pavel Begunkov
2021-04-11 0:46 ` [PATCH 13/16] io_uring: split file table from rsrc nodes Pavel Begunkov
2021-04-11 0:46 ` [PATCH 14/16] io_uring: improve sqo stop Pavel Begunkov
2021-04-11 0:46 ` [PATCH 15/16] io_uring: improve hardlink code generation Pavel Begunkov
2021-04-11 0:46 ` [PATCH 16/16] io_uring: return back safer resurrect Pavel Begunkov
2021-05-10 2:22 ` yangerkun
2021-05-10 9:15 ` Pavel Begunkov
2021-05-11 1:11 ` yangerkun [this message]
2022-03-16 16:18 ` [PATCH] " Lee Jones
2022-03-16 16:38 ` Greg KH
2022-03-16 16:46 ` Lee Jones
2021-04-11 2:38 ` [PATCH 5.13 00/16] random 5.13 patches Jens Axboe
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox