[PATCH] x86_64: avoid sending LOCAL_TIMER_VECTOR IPI to itself
authorThomas Gleixner <tglx@linutronix.de>
Sat, 24 Mar 2007 00:14:37 +0000 (17:14 -0700)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Sat, 24 Mar 2007 03:21:45 +0000 (20:21 -0700)
commitf33bc55c472295966e520c9347822fdd8b1082cd
tree9532d70dbbead840164fbfd4ad429791476d9f21
parent6ea65ff79ceb36a1195761be857da1fdf9878450
[PATCH] x86_64: avoid sending LOCAL_TIMER_VECTOR IPI to itself

Ray Lee reported, that on an UP kernel with "noapic" command line option
set, the box locks hard during boot.

Adding some debug printks revealed, that the last action on the box
before stalling was "Send IPI" - a debug printk which was put into
smp_send_timer_broadcast_ipi().

It seems that send_IPI_mask(mask, LOCAL_TIMER_VECTOR) fails when
"noapic" is set on the command line on an UP kernel.

Aside of that it does not make much sense to trigger an interrupt
instead of calling the function directly on the CPU which gets the
PIT/HPET interrupt in case of broadcasting.

Reported-by: Ray Lee <ray-lk@madrabbit.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Ray Lee <ray-lk@madrabbit.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
arch/x86_64/kernel/apic.c