Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1328200

Re: [PATCH] prctl: Add PR_SET_TIMERSLACK_PID for setting timer slack of an arbitrary thread.

From John Stultz <john.stultz@linaro.org>
Newsgroups linux.kernel
Subject Re: [PATCH] prctl: Add PR_SET_TIMERSLACK_PID for setting timer slack of an arbitrary thread.
Date 2016-02-06 04:00 +0100
Message-ID <qZ1gm-OQ-3@gated-at.bofh.it> (permalink)
References (5 earlier) <qYVuh-5aD-3@gated-at.bofh.it> <qYVDY-5dV-5@gated-at.bofh.it> <qYXcJ-6kF-3@gated-at.bofh.it> <qYZoe-7TF-5@gated-at.bofh.it> <qZ0DD-Aw-9@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Fri, Feb 5, 2016 at 6:15 PM, Arjan van de Ven <arjan@linux.intel.com> wrote:
> On 2/5/2016 4:51 PM, John Stultz wrote:
>>
>> Arjan/Thomas:  One curious thing I noticed here while writing some
>> documentation. The timer_slack_ns value in the task struct is a
>> unsigned long.
>>
>> So this means PR_SET_TIMERSLACK limits the maximum slack on 32 bit
>> machines to ~4 seconds. Where on 64bit machines it can be quite a bit
>> longer (unreasonably long, really :).
>
>
> originally when we created timerslack, 4 seconds was an eternity and good
> enough for everyone
> by a mile... (assumption was practical upper limit being in the 15 msec
> range)
> and most of the RT guys would only tolerate a little bit of it
>
> is there any real/practial use of going longer than 4 seconds? if there
> is then yeah fixing it makes sense.
> if it's just theoretical... shrug... 32 bit systems have a bunch of
> other limits/differences a well.

So I'd think it would be mostly theoretical, but in my testing on a
VM, setting the timerslack for bash to 10 secs made time sleep 1 take
~10.5 seconds. So its apparently not too hard to coalesce fairly far
out (I need to spend a bit more time to verify that events really
weren't happening during that time and we're not just doing
unnecessary delays with the extra slack).

But yea. My main concern is that if we do a consistent 64bit interface
for all arches in the /proc/<pid>/timerslack_ns interface, it will
make PR_GET_TIMERSLACK return incorrect results on 32bit systems when
the slack is >= 2^32.

I've got a first pass of the patch done which just uses ULONG_MAX on
the respective arch, but I've got to close up for the day, so I'll see
about doing a follow on patch that makes the task timer_slack_ns value
be a u64 and extends the interface to use that as well on all arches,
and send out both on monday so folks can see which they prefer.

thanks
-john

thanks
-john

Back to linux.kernel | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

[PATCH] prctl: Add PR_SET_TIMERSLACK_PID for setting timer slack of an arbitrary thread. John Stultz <john.stultz@linaro.org> - 2016-02-05 19:10 +0100
  Re: [PATCH] prctl: Add PR_SET_TIMERSLACK_PID for setting timer slack  of an arbitrary thread. Kees Cook <keescook@chromium.org> - 2016-02-05 21:20 +0100
    Re: [PATCH] prctl: Add PR_SET_TIMERSLACK_PID for setting timer slack  of an arbitrary thread. John Stultz <john.stultz@linaro.org> - 2016-02-05 21:20 +0100
  Re: [PATCH] prctl: Add PR_SET_TIMERSLACK_PID for setting timer  slack of an arbitrary thread. Andrew Morton <akpm@linux-foundation.org> - 2016-02-05 21:20 +0100
    Re: [PATCH] prctl: Add PR_SET_TIMERSLACK_PID for setting timer slack  of an arbitrary thread. John Stultz <john.stultz@linaro.org> - 2016-02-05 21:30 +0100
      Re: [PATCH] prctl: Add PR_SET_TIMERSLACK_PID for setting timer  slack of an arbitrary thread. Andrew Morton <akpm@linux-foundation.org> - 2016-02-05 21:40 +0100
        Re: [PATCH] prctl: Add PR_SET_TIMERSLACK_PID for setting timer slack  of an arbitrary thread. John Stultz <john.stultz@linaro.org> - 2016-02-05 21:40 +0100
          Re: [PATCH] prctl: Add PR_SET_TIMERSLACK_PID for setting timer slack  of an arbitrary thread. Kees Cook <keescook@chromium.org> - 2016-02-05 21:50 +0100
            Re: [PATCH] prctl: Add PR_SET_TIMERSLACK_PID for setting timer  slack of an arbitrary thread. Andrew Morton <akpm@linux-foundation.org> - 2016-02-05 22:00 +0100
              Re: [PATCH] prctl: Add PR_SET_TIMERSLACK_PID for setting timer slack  of an arbitrary thread. John Stultz <john.stultz@linaro.org> - 2016-02-05 23:40 +0100
                Re: [PATCH] prctl: Add PR_SET_TIMERSLACK_PID for setting timer slack  of an arbitrary thread. John Stultz <john.stultz@linaro.org> - 2016-02-06 02:00 +0100
                Re: [PATCH] prctl: Add PR_SET_TIMERSLACK_PID for setting timer  slack of an arbitrary thread. Andrew Morton <akpm@linux-foundation.org> - 2016-02-06 03:00 +0100
                Re: [PATCH] prctl: Add PR_SET_TIMERSLACK_PID for setting timer slack  of an arbitrary thread. John Stultz <john.stultz@linaro.org> - 2016-02-06 03:50 +0100
                Re: [PATCH] prctl: Add PR_SET_TIMERSLACK_PID for setting timer slack  of an arbitrary thread. Arjan van de Ven <arjan@linux.intel.com> - 2016-02-06 03:20 +0100
                Re: [PATCH] prctl: Add PR_SET_TIMERSLACK_PID for setting timer slack  of an arbitrary thread. Arjan van de Ven <arjan@linux.intel.com> - 2016-02-06 04:00 +0100
                Re: [PATCH] prctl: Add PR_SET_TIMERSLACK_PID for setting timer slack  of an arbitrary thread. John Stultz <john.stultz@linaro.org> - 2016-02-06 04:00 +0100

csiph-web