kernel-ark/arch
John Hawkes f5899b5d4f [IA64] disable preemption in udelay()
The udelay() inline for ia64 uses the ITC.  If CONFIG_PREEMPT is enabled
and the platform has unsynchronized ITCs and the calling task migrates
to another CPU while doing the udelay loop, then the effective delay may
be too short or very, very long.

This patch disables preemption around 100 usec chunks of the overall
desired udelay time.  This minimizes preemption-holdoffs.

udelay() is now too big to be inline, move it out of line and export it.

Signed-off-by: John Hawkes <hawkes@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
2005-12-16 10:00:24 -08:00
..
alpha [PATCH] arch/alpha/kernel/machvec_impl.h: C99 struct initializer 2005-12-15 10:04:31 -08:00
arm [ARM] 3205/1: Handle new EABI relocations when loading kernel modules. 2005-12-14 22:04:22 +00:00
arm26
cris
frv [PATCH] FRV: Make the FRV arch work again 2005-11-28 14:42:23 -08:00
h8300
i386 [PATCH] i386,amd64: ioremap.c __iomem annotations 2005-12-15 10:04:30 -08:00
ia64 [IA64] disable preemption in udelay() 2005-12-16 10:00:24 -08:00
m32r [PATCH] m32r: M3A-2170(Mappi-III) IDE support 2005-11-28 14:42:24 -08:00
m68k
m68knommu
mips [PATCH] mips: setup_zero_pages count 1 2005-12-12 08:57:43 -08:00
parisc [PARISC] Remove unused variable in signal.c 2005-11-17 16:43:52 -05:00
powerpc [PATCH] arch/powerpc/kernel/syscalls.c __user annotations 2005-12-15 10:04:31 -08:00
ppc [PATCH] ppc32: set smp_tb_synchronized on UP with SMP kernel 2005-12-12 14:26:39 +11:00
s390
sh
sh64
sparc [PATCH] arch/sparc/kernel/led.c __user annotations 2005-12-15 10:01:29 -08:00
sparc64 [PATCH] kprobes: increment kprobe missed count for multiprobes 2005-12-12 08:57:45 -08:00
um [PATCH] uml: fix compile error for tt 2005-12-12 08:57:43 -08:00
v850 [PATCH] v850: use generic hardirq code 2005-11-15 08:59:20 -08:00
x86_64 [PATCH] i386,amd64: ioremap.c __iomem annotations 2005-12-15 10:04:30 -08:00
xtensa