linux-stable-rt/arch/ia64/kernel
Christoph Lameter a2a64769d0 [IA64] Fix race condition in the rt_sigprocmask fastcall
current->blocked will be set to the value of current->thread_info->flags if the
cmpxchg to update thread_info->flags fails. For performance reasons the store into
current->blocked was placed in the cmpxchg loop. However, the cmpxchg overwrites the
register holding the value to be stored. In the rare case of a retry the value of
thread_info->flags will be written into current->blocked.

The fix is to use another register so that the register containing the current->blocked
value is not overwritten.

Signed-off-by: Christoph Lameter <clameter@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
2005-06-09 13:04:30 -07:00
..
Makefile
acpi-ext.c
acpi.c
asm-offsets.c
brl_emu.c
cyclone.c
domain.c
efi.c
efi_stub.S
entry.S [IA64] Avoid .spillpsp directive in handcoded assembly 2005-05-10 13:52:00 -07:00
entry.h
fsys.S [IA64] Fix race condition in the rt_sigprocmask fastcall 2005-06-09 13:04:30 -07:00
gate-data.S
gate.S
gate.lds.S
head.S
ia64_ksyms.c
init_task.c
iosapic.c
irq.c
irq_ia64.c
irq_lsapic.c
ivt.S
machvec.c
mca.c [IA64] Cleanup compile warnings for ski config 2005-06-01 15:20:17 -07:00
mca_asm.S
mca_drv.c
mca_drv.h
mca_drv_asm.S
minstate.h
module.c [IA64] Module gp must point to valid memory 2005-06-08 11:41:31 -07:00
pal.S
palinfo.c
patch.c
perfmon.c [IA64] Use "PER_CPU" form of EXPORT macro 2005-05-31 10:38:32 -07:00
perfmon_default_smpl.c
perfmon_generic.h
perfmon_itanium.h
perfmon_mckinley.h
process.c
ptrace.c [PATCH] ia64: fix floating-point preemption problem 2005-06-08 16:21:14 -07:00
sal.c
salinfo.c
semaphore.c
setup.c [IA64] Update comment to describe modes set in default control register. 2005-06-08 12:12:48 -07:00
sigframe.h
signal.c
smp.c
smpboot.c [IA64] fix "section mismatch" compile-time-error 2005-05-09 10:16:17 -07:00
sys_ia64.c [IA64] sys_mmap doesn't follow posix.1 when parameter len=0 2005-05-26 10:19:07 -07:00
time.c
topology.c
traps.c [PATCH] ia64: fix floating-point preemption problem 2005-06-08 16:21:14 -07:00
unaligned.c
unwind.c
unwind_decoder.c
unwind_i.h
vmlinux.lds.S