Binding timer interrupt to a cpu core
Robert Watson
rwatson at FreeBSD.org
Wed Jan 21 06:25:43 PST 2009
On Wed, 21 Jan 2009, Barney Cordoba wrote:
>> Interrupts can be bound to CPUs but only by using APIs within the kernel
>> (there's no userland utility for it).
>
> I'm asking HOW, to do it within the kernel.
>
> When I said timer, I meant software interrupts created with timeout()
This is supported in FreeBSD 8.x, but not yet 7.x and earlier. Whoever added
this support failed to update the timeout(9) man page, however, so the source
is the reference -- take a look at callout.h, but gist is that you can call
callout_reset_on(), callout_reset_curcpu(), callout_schedule_on(), and
callout_schedule_curcpu() to specify the next CPU that the callout should run
on.
(Jeff Roberson CC'd to remind him that he wants to update timeout.9, or find
someone to help him do that, so that it includes the new interfaces).
Robert N M Watson
Computer Laboratory
University of Cambridge
More information about the freebsd-current
mailing list