From: Peter Zijlstra <a.p.zijlstra@chello.nl>
To: Michael Kerrisk <mtk.manpages@googlemail.com>
Cc: Michael Kerrisk <mtk.manpages@gmail.com>,
Eugene Teo <eugeneteo@kernel.sg>,
linux-kernel@vger.kernel.org, Neil Horman <nhorman@tuxdriver.com>,
Ingo Molnar <mingo@elte.hu>
Subject: Re: [PATCH] proc: Add RLIMIT_RTTIME to /proc/<pid>/limits
Date: Fri, 11 Apr 2008 09:45:30 +0200 [thread overview]
Message-ID: <1207899930.7074.23.camel@twins> (raw)
In-Reply-To: <cfd18e0f0804110038q3b7740c9q1a96858d9531ab92@mail.gmail.com>
On Fri, 2008-04-11 at 09:38 +0200, Michael Kerrisk wrote:
> On Thu, Feb 28, 2008 at 5:50 PM, Peter Zijlstra <a.p.zijlstra@chello.nl> wrote:
> >
> > On Thu, 2008-02-28 at 16:44 +0100, Michael Kerrisk wrote:
> > > Peter,
> > >
> > > Thanks for the text.
> > >
> > > On Thu, Feb 28, 2008 at 4:21 PM, Peter Zijlstra <a.p.zijlstra@chello.nl> wrote:
> > > >
> > > > On Thu, 2008-02-28 at 16:12 +0100, Michael Kerrisk wrote:
> > > > > Peter,
> > > > >
> > > > > Could you please provide some text describing RLIMIT_RTTIMEfor the
> > > > > getrlimit.2 man page.
> > > >
> > > > The rlimit sets a timeout in [us] for SCHED_RR and SCHED_FIFO tasks.
> > > > This time is measured between sleeps, so a schedule in RR or a
> > > > preemption in either is not a sleep - the task needs to be dequeued and
> > > > enqueued for the timer to reset.
> > >
> > > Just to clarify: sleep here means a call to some blocking syscall
> > > (e.g., nanosleep(), read(), select(), etc.), right? Is there anything
> > > else that falls under the category of "sleep"? What about a call to
> > > sched_yield() where the process explicitly lets go of the CPU?
> >
> > Yes, and yes, others would be blocking on futexes and the like.
>
> Peter,
>
> I've been testing this patch. Above you seemed to be saying that
> doing a sched_yield() would be equivalent to a sleep, causing the rt
> counter to be reset to zero. Howver, the results I'm seeing suggest
> that a sched_yield() does not cause the counter to be reset to zero
> (i.e., despite calling sched_yield() at frequent intervals, the
> process still encounters the RLIM_RTTIME soft limit and gets SIGXCPU).
> Can you comment?
It appears you are right. I must have been staring at something else
than code when I said that :-(, yield() will indeed _not_ reset the
counter.
Now, I think it makes some sense to reset it, because we do try to play
nice by calling yield. OTOH we don't actually block and become
unrunnable - we'll still be contending for CPU time.
next prev parent reply other threads:[~2008-04-11 7:45 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-08 14:59 [PATCH] proc: Add RLIMIT_RTTIME to /proc/<pid>/limits Eugene Teo
2008-02-08 15:10 ` Peter Zijlstra
2008-02-28 15:12 ` Michael Kerrisk
2008-02-28 15:21 ` Peter Zijlstra
2008-02-28 15:44 ` Michael Kerrisk
2008-02-28 15:50 ` Peter Zijlstra
2008-04-11 7:38 ` Michael Kerrisk
2008-04-11 7:45 ` Peter Zijlstra [this message]
2008-04-11 8:01 ` Michael Kerrisk
2008-02-29 12:32 ` Neil Horman
2008-04-11 8:56 ` Michael Kerrisk
2008-04-11 9:01 ` Peter Zijlstra
2008-04-11 9:16 ` Michael Kerrisk
2008-04-11 9:21 ` Peter Zijlstra
2008-04-11 9:27 ` Michael Kerrisk
2008-04-11 9:32 ` Peter Zijlstra
2008-04-11 9:38 ` Michael Kerrisk
[not found] ` <cfd18e0f0804110238l66fb60c8pa8ac934a2a43baa7-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-04-18 16:52 ` RLIMIT_RTTIME documentation for getrlimit.2 Michael Kerrisk
2008-04-18 16:52 ` Michael Kerrisk
[not found] ` <4808D1CC.80103-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2008-04-28 11:44 ` Michael Kerrisk
2008-04-28 11:44 ` Michael Kerrisk
[not found] ` <cfd18e0f0804280444jd558060g6cf5ee7df0248ee1-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-04-28 12:09 ` Peter Zijlstra
2008-04-28 12:09 ` Peter Zijlstra
2008-04-28 12:14 ` Michael Kerrisk
2008-04-28 12:14 ` Michael Kerrisk
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=1207899930.7074.23.camel@twins \
--to=a.p.zijlstra@chello.nl \
--cc=eugeneteo@kernel.sg \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=mtk.manpages@gmail.com \
--cc=mtk.manpages@googlemail.com \
--cc=nhorman@tuxdriver.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.