Re: radeon breaks with clocksource_jiffies

From: john stultz
Date: Fri Feb 23 2007 - 17:13:26 EST


Crud, my poor gmail skills dropped lkml on the CC list for this one.

On 2/23/07, john stultz <johnstul@xxxxxxxxxx> wrote:
On 2/23/07, David Miller <davem@xxxxxxxxxxxxx> wrote:
> While probeing PLL information via radeon_get_pllinfo(), it does a
> "gettimeofday(); do_something(); gettimeofday();" type sequence
> explicitly with interrupts disabled, so ends up with a zero
> measurement which then results in a bunch of divisions by zero.

This is at module init time? If so I just sent out a patch yesterday
to akpm that might help this issue (assuming other clocksources are
available on the hardware).


> We should decide whether gettimeofday() can be expected to advance with
> interrupts disabled, or that clocksource_jiffies is simply invalid because
> of this behavior.

Some arches have no fine-grained timekeeping, so I don't think it can
always be assumed, but where hardware is available it should function.

It should be noted that with older kernels, if interrupts were
disabled right before a tick, it would be possible that
gettimeofday()'s limiting code would cause time to stop advancing
until interrupts were re-enabled. So theoretically its not really a
new issue.

The timekeeping_is_continuous() function could be used to flag this
sort of "software driven vs continuous" clocksource cases.

thanks
-john

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