Arjan van de Ven wrote: > On Thu, 15 Nov 2007 04:00:47 GMT > Linux Kernel Mailing List <linux-kernel@vger.kernel.org> wrote: > > >> Gitweb: >> http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=35d5d08a085c56f153458c3f5d8ce24123617faf >> Commit: 35d5d08a085c56f153458c3f5d8ce24123617faf Parent: >> 7eea436433b7b18045f272562e256976f593f7c0 Author: Andrew Morton >> <[EMAIL PROTECTED]> AuthorDate: Wed Nov 14 17:00:41 2007 -0800 >> Committer: Linus Torvalds <[EMAIL PROTECTED]> >> CommitDate: Wed Nov 14 18:45:44 2007 -0800 >> >> x86: disable preemption in delay_tsc() >> >> Marin Mitov points out that delay_tsc() can misbehave if it is >> preempted and rescheduled on a different CPU which has a skewed TSC. >> Fix it by disabling preemption. >> >> > > this worries me.. this appears to effectively disable preemption during > udelay() and mdelay() loops... which are very obvious latency inducers. > > Now you can argue that if you're preemptible you should have used > msleep() and co, and I'll totally buy that. > > > Maybe we should just check if we're still on the same cpu or something, > or have a cheap way to pin a process to a cpu.... but both are longer > term solutions. > >
You can use preemption notifiers to get a callback when you are preempted. Not sure what you'd to with that callback, though. -- Do not meddle in the internals of kernels, for they are subtle and quick to panic. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/