Messages in this thread | | | Date | Fri, 5 Feb 2016 12:50:08 -0800 | From | Andrew Morton <> | Subject | Re: [PATCH] prctl: Add PR_SET_TIMERSLACK_PID for setting timer slack of an arbitrary thread. |
| |
On Fri, 5 Feb 2016 12:44:04 -0800 Kees Cook <keescook@chromium.org> wrote:
> On Fri, Feb 5, 2016 at 12:39 PM, John Stultz <john.stultz@linaro.org> wrote: > > On Fri, Feb 5, 2016 at 12:32 PM, Andrew Morton > > <akpm@linux-foundation.org> wrote: > >> On Fri, 5 Feb 2016 12:23:13 -0800 John Stultz <john.stultz@linaro.org> wrote: > >>> On Fri, Feb 5, 2016 at 12:13 PM, Andrew Morton > >>> <akpm@linux-foundation.org> wrote: > >>>> > >>>> IOW, it would be more consistent to add sys_set_timer_slack()? > >>> > >>> I'm fine with moving this way. > >>> > >>> Ruchi/Rom: Any objections to that idea? > >>> > >>> Thomas/Arjan: Any other functionality we should consider including > >>> when adding a syscall to tweak timer slack? > >> > >> A syscall is quite a bit more fuss - implement it on x86_64, provide a > >> no-op default in sys_ni.c, add a test suite into > >> tools/testing/selftests (mainly for arch maintainers), wait for the > >> various arch maintainers to wire it up. > > > > Yea. It is. And I'm not excited to start over on this, but this > > functionality has already run into trouble in the Android tree, as the > > PR_SET_TIMERSLACK_PID value has hit multiple collisions over time. So > > this functionality upstream would help resolve that pain. > > > >> Fortunately the build system now emits little messages which tell > >> maintainers that there's a new syscall which needs looking at. > >> > >> And a manpage will be needed, but a prctl manpage patch would have been > >> needed anyway. > > > > Yea. > > Could this be exposed as a writable /proc entry instead? Like the oom_* stuff?
/proc/<pid>/timer_slack_ns, guarded by ptrace_may_access(), documented under Documentation/? Yup, that would work. It's there for all architectures from day one and there is precedent. It's not as nice, but /proc nasties will always be with us.
| |