From: Jens Axboe <axboe@kernel.dk>
To: Pavel Begunkov <asml.silence@gmail.com>,
Hao Xu <haoxu@linux.alibaba.com>
Cc: io-uring@vger.kernel.org, Joseph Qi <joseph.qi@linux.alibaba.com>
Subject: Re: [PATCH RFC 5.13 1/2] io_uring: add support for ns granularity of io_sq_thread_idle
Date: Wed, 28 Apr 2021 08:54:31 -0600 [thread overview]
Message-ID: <f9ab9cff-8b4d-e43a-be92-bbbe2a31e02b@kernel.dk> (raw)
In-Reply-To: <03eab1ba-3fe6-1996-326a-7d78ace4af34@gmail.com>
On 4/28/21 8:53 AM, Pavel Begunkov wrote:
> On 4/28/21 3:16 PM, Jens Axboe wrote:
>> On 4/28/21 8:07 AM, Pavel Begunkov wrote:
>>>> diff --git a/include/uapi/linux/io_uring.h b/include/uapi/linux/io_uring.h
>>>> index e1ae46683301..311532ff6ce3 100644
>>>> --- a/include/uapi/linux/io_uring.h
>>>> +++ b/include/uapi/linux/io_uring.h
>>>> @@ -98,6 +98,7 @@ enum {
>>>> #define IORING_SETUP_CLAMP (1U << 4) /* clamp SQ/CQ ring sizes */
>>>> #define IORING_SETUP_ATTACH_WQ (1U << 5) /* attach to existing wq */
>>>> #define IORING_SETUP_R_DISABLED (1U << 6) /* start with ring disabled */
>>>> +#define IORING_SETUP_IDLE_NS (1U << 7) /* unit of thread_idle is nano second */
>>>>
>>>> enum {
>>>> IORING_OP_NOP,
>>>> @@ -259,7 +260,7 @@ struct io_uring_params {
>>>> __u32 cq_entries;
>>>> __u32 flags;
>>>> __u32 sq_thread_cpu;
>>>> - __u32 sq_thread_idle;
>>>> + __u64 sq_thread_idle;
>>>
>>> breaks userspace API
>>
>> And I don't think we need to. If you're using IDLE_NS, then the value
>> should by definition be small enough that it'd fit in 32-bits. If you
>> need higher timeouts, don't set it and it's in usec instead.
>>
>> So I'd just leave this one alone.
>
> Sounds good
>
> u64 time_ns = p->sq_thread_idle;
> if (!IDLE_NS)
> time_ns *= NSEC_PER_MSEC;
> idel = ns_to_jiffies(time_ns);
Precisely! With the overlap being there, there's no need to make it bigger.
And having nsec granularity if your idle time is in the msecs doesn't make
a lot of sense.
--
Jens Axboe
next prev parent reply other threads:[~2021-04-28 14:57 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-04-28 13:32 [PATCH RFC 5.13 0/2] adaptive sqpoll and its wakeup optimization Hao Xu
2021-04-28 13:32 ` [PATCH RFC 5.13 1/2] io_uring: add support for ns granularity of io_sq_thread_idle Hao Xu
2021-04-28 14:07 ` Pavel Begunkov
2021-04-28 14:16 ` Jens Axboe
2021-04-28 14:53 ` Pavel Begunkov
2021-04-28 14:54 ` Jens Axboe [this message]
2021-04-29 3:41 ` Hao Xu
2021-04-29 9:11 ` Pavel Begunkov
2021-05-05 14:07 ` Hao Xu
2021-05-05 17:40 ` Pavel Begunkov
2021-04-29 3:28 ` Hao Xu
2021-04-29 22:15 ` Pavel Begunkov
2021-09-26 10:00 ` Hao Xu
2021-09-28 10:51 ` Pavel Begunkov
2021-09-29 7:52 ` Hao Xu
2021-09-29 9:24 ` Hao Xu
2021-09-29 11:37 ` Pavel Begunkov
2021-09-29 12:13 ` Hao Xu
2021-09-30 8:51 ` Pavel Begunkov
2021-09-30 12:04 ` Pavel Begunkov
2021-10-05 15:00 ` Hao Xu
2021-04-28 13:32 ` [PATCH RFC 5.13 2/2] io_uring: submit sqes in the original context when waking up sqthread Hao Xu
2021-04-28 14:12 ` Jens Axboe
2021-04-29 4:12 ` Hao Xu
2021-04-28 14:34 ` Pavel Begunkov
2021-04-28 14:37 ` Pavel Begunkov
2021-04-29 4:37 ` Hao Xu
2021-04-29 9:28 ` Pavel Begunkov
2021-05-05 11:20 ` Hao Xu
2021-04-28 14:39 ` Jens Axboe
2021-04-28 14:50 ` Pavel Begunkov
2021-04-28 14:53 ` Jens Axboe
2021-04-28 14:56 ` Pavel Begunkov
2021-04-28 15:09 ` Jens Axboe
2021-04-29 4:43 ` Hao Xu
2021-04-29 8:44 ` Hao Xu
2021-04-29 22:10 ` Pavel Begunkov
2021-05-05 13:10 ` Hao Xu
2021-05-05 17:44 ` Pavel Begunkov
2021-04-29 22:02 ` Pavel Begunkov
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 \
--in-reply-to=f9ab9cff-8b4d-e43a-be92-bbbe2a31e02b@kernel.dk \
--to=axboe@kernel.dk \
--cc=asml.silence@gmail.com \
--cc=haoxu@linux.alibaba.com \
--cc=io-uring@vger.kernel.org \
--cc=joseph.qi@linux.alibaba.com \
/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 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.