Re: question about periodic clocks

From: Jeremy Fitzhardinge
Date: Sat Mar 10 2007 - 10:51:09 EST


Thomas Gleixner wrote:
> Good point. I never thought about that and we set the period in the
> clock event device itself. You are right, the clockevents layer should
> hand over the period either with the set_mode call or seperately.
> Probably with the set_mode call, as it is needed exactly there and we
> don't want to have a "if (dev->mode == XXX)" check in set_next_event().
>
> I look into this.
>
>

So, in the meantime, the period is 1/HZ?

I also have a question about clockevent cpumasks. I was using the lapic
clockevent as a model, but as I understand it there's a lapic per CPU,
which explains why it registers a clockevent per cpu with that cpu alone
in the cpumask.

The Xen timer is a bit different; I guess more like hpet. There's a
single (virtual-)machine-wide timer, which is "owned" by the last cpu
with programmed it; ie, that cpu is the one which gets the resulting
event interrupt. Does this mean I should register a single clockevent
device with a cpumask of CPU_MASK_ALL? Or should I constrain it to a
single cpu?

There's a comment in hpet.c saying

* Start hpet with the boot cpu mask and make it
* global after the IO_APIC has been initialized.

but I don't see any place where the hpet cpumask is updated.

Thanks,
J

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