Re: [PATCH 12/13] hrtimer: create a "timer_slack" field in the taskstruct

From: Arjan van de Ven
Date: Mon Sep 08 2008 - 10:22:27 EST


On Mon, 8 Sep 2008 16:15:55 +0200
Pavel Machek <pavel@xxxxxxx> wrote:

> On Mon 2008-09-08 06:40:02, Arjan van de Ven wrote:
> > On Mon, 8 Sep 2008 15:27:16 +0200
> > Pavel Machek <pavel@xxxxxxx> wrote:
> > > >
> > > > ... which nobody uses today.
> > > > It's not just new syscalls, it's a new glibc api as well at that
> > > > point.
> > >
> > > ...and new applications, yes. I believe applications should
> > > explicitely enable slacking timers.
> >
> > timers are slacking today, at least for select() and poll(), and
> > are a great deal more so than the defaults in this patchkit.
>
> Ok, so select()/poll() may default to non-zero slack for legacy apps.

that's whats there
>
> > The great advantage of the prctl() approach (which is usable) over
> > new system calls and glibc APIs is that it will get used, because
> > the admin can use it just like he uses the "nice" command, on
> > existing software.
>
> Yes, it is a great advantage, but it feels like a hack. Maybe it is
> better done with LD_PRELOAD or something?

that's not working very well in general, and doesn't work across exec
etc.

>
> I'd certianly want the applications to specify slack themselves in
> like 10 years.

We've been talking to Ulrich to figure out what the right API for this
is (eg how to extend select/poll for this) and I still plan to work on
this, but both Linus and Ulrich seem to be very ademant that it means
only few apps will use it (and I agree with that, just look at how many
apps use linux specific APIs such as sendfile(), linux AIO etc... )


--
If you want to reach me at my work email, use arjan@xxxxxxxxxxxxxxx
For development, discussion and tips for power savings,
visit http://www.lesswatts.org
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/