Re: preempt-timing-2.6.8-rc1

William Lee Irwin III
2004-07-13T12:54:44Z

William Lee Irwin III wrote:
>>+ unsigned long preempt_exit
>>+ = (unsigned long)__builtin_return_address(0);
>>+ hold = sched_clock() - __get_cpu_var(preempt_timings) +
>>999999;
>>+ do_div(hold, 1000000);
>>+ if (preempt_thresh && hold > preempt_thresh &&
>>+ printk_ratelimit()) {

On Tue, Jul 13, 2004 at 10:51:24PM +1000, Nick Piggin wrote:
> This looks wrong. This means hold times of 1ns to 1000000ns trigger the
> exceeded 1ms threshold, 1000001 to 2000000 trigger the 2ms one, etc.
> Removing the + 999999 gives the correct result:
> 1000000 - 1999999ns triggers the 1ms threshold
> 2000000 - 2999999ns triggers the 2ms threshold
> etc
> Or have I missed something?

AFAICT this is nothing more than rounding up.

-- wli