Re: [patch 07/16] sched: expire invalid runtime

From: Hidetoshi Seto
Date: Wed Jun 22 2011 - 05:39:24 EST


(2011/06/21 16:16), Paul Turner wrote:
> Since quota is managed using a global state but consumed on a per-cpu basis
> we need to ensure that our per-cpu state is appropriately synchronized.
> Most importantly, runtime that is state (from a previous period) should not be
> locally consumable.
>
> We take advantage of existing sched_clock synchronization about the jiffy to
> efficiently detect whether we have (globally) crossed a quota boundary above.
>
> One catch is that the direction of spread on sched_clock is undefined,
> specifically, we don't know whether our local clock is behind or ahead
> of the one responsible for the current expiration time.
>
> Fortunately we can differentiate these by considering whether the
> global deadline has advanced. If it has not, then we assume our clock to be
> "fast" and advance our local expiration; otherwise, we know the deadline has
> truly passed and we expire our local runtime.
>
> Signed-off-by: Paul Turner <pjt@xxxxxxxxxx>
> Reviewed-by: Hidetoshi Seto <seto.hidetoshi@xxxxxxxxxxxxxx>
>
> ---

Reviewed-by: Hidetoshi Seto <seto.hidetoshi@xxxxxxxxxxxxxx>


Thanks,
H.Seto

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