Re: [PATCH 01/13] hrtimer: round up relative start time

From: Ingo Molnar
Date: Mon Feb 13 2006 - 09:44:28 EST



* Roman Zippel <zippel@xxxxxxxxxxxxxx> wrote:

> Hi,
>
> On Mon, 13 Feb 2006, Ingo Molnar wrote:
>
> > but there is no 'old behavior' to restore to. The +1 to itimer intervals
> > caused artifacts that were hitting users and caused 2.4 -> 2.6 itimer
> > regressions, which hrtimers fixed. E.g.:
> >
> > http://bugzilla.kernel.org/show_bug.cgi?id=3289
>
> Ingo, please read correctly, this is mainly about interval timers,
> which my patch doesn't change. My patch only fixes the initial start
> time.

Yeah, i know it's about the start time - what else could it possibly be
about? As i wrote:

> > so i dont think restoring the first timeout of an interval timer to
> > be increased by resolution [which your patch does] has any meaning.
> > It 'restores' to half of what 2.6 did prior hrtimers. Doing that
> > would be inconsistent and would push the 'sum-up' errors observed
> > for interval timers above to be again observable in user-space (if
> > user-space does a series of timeouts). What's the point?

Your change changes the initial start time to be longer by +1 jiffy. My
"restores to half of what 2.6 did" observation was in reference to the
start time. The other half is the interval time between timeouts. If you
add a +1 jiffy to the start time, you ought to do it for the interval
time too. Or do it for neither - which is what we chose to do.

Yes, the 2.6 regression in the bugzilla was _mainly_ about the intervals
adding a comulative +1, but obviously the behavior should be symmetric:
if we use our higher resolution for intervals, we should use it for the
start time too.

In other words: your patch re-introduces half of the bug on low-res
platforms. Users doing a series of one-shot itimer calls would be
exposed to the same kind of (incorrect and unnecessary) summing-up
errors. What's the point?

Ingo
-
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/