linux-stable/arch/sparc64/kernel
Keshavamurthy Anil S eb3a72921c [PATCH] kprobes: fix race in recovery of reentrant probe
There is a window where a probe gets removed right after the probe is hit
on some different cpu.  In this case probe handlers can't find a matching
probe instance related to break address.  In this case we need to read the
original instruction at break address to see if that is not a break/int3
instruction and recover safely.

Previous code had a bug where we were not checking for the above race in
case of reentrant probes and the below patch fixes this race.

Tested on IA64, Powerpc, x86_64.

Signed-off-by: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-01-11 18:42:12 -08:00
..
asm-offsets.c kbuild: frv,m32r,sparc64 introduce fake asm-offsets.h file 2005-09-09 22:47:53 +02:00
auxio.c [SPARC64]: Get rid of fast IRQ feature. 2005-06-27 17:04:45 -07:00
binfmt_aout32.c [PATCH] dump_thread() cleanup 2006-01-10 08:01:25 -08:00
binfmt_elf32.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
central.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
chmc.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cpu.c [SPARC64]: Use ARRAY_SIZE macro 2005-11-09 12:03:42 -08:00
devices.c [SPARC64]: Probe D/I/E-cache config and use. 2005-09-26 00:32:17 -07:00
dtlb_backend.S [SPARC64]: Kill SZ_BITS define from dtlb_backend.S 2005-09-21 19:23:48 -07:00
dtlb_base.S [SPARC64]: Fix boot failures on SunBlade-150 2005-10-12 12:22:46 -07:00
dtlb_prot.S [SPARC64]: Fix boot failures on SunBlade-150 2005-10-12 12:22:46 -07:00
ebus.c [PATCH] PCI: pci_find_device remove (sparc64/kernel/ebus.c) 2006-01-09 12:13:15 -08:00
entry.S [SPARC64]: Fix ptrace/strace 2006-01-09 14:35:50 -08:00
etrap.S [SPARC64]: Replace cheetah+ code patching with variables. 2005-10-04 15:23:20 -07:00
head.S [SPARC64]: Fix boot failures on SunBlade-150 2005-10-12 12:22:46 -07:00
idprom.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
init_task.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
iommu_common.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
iommu_common.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
irq.c [SPARC64]: Fix compile error in irq.c 2005-10-08 21:12:04 -07:00
isa.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
itlb_base.S [SPARC64]: Fix boot failures on SunBlade-150 2005-10-12 12:22:46 -07:00
kprobes.c [PATCH] kprobes: fix race in recovery of reentrant probe 2006-01-11 18:42:12 -08:00
ktlb.S [SPARC64]: Fix boot failures on SunBlade-150 2005-10-12 12:22:46 -07:00
Makefile [PATCH] sanitize building of fs/compat_ioctl.c 2006-01-10 08:01:33 -08:00
module.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
pci.c [PATCH] Make sparc64 use setup-res.c 2005-09-08 14:57:25 -07:00
pci_common.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
pci_impl.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
pci_iommu.c [SPARC64]: Eliminate PCI IOMMU dma mapping size limit. 2005-10-13 22:15:24 -07:00
pci_psycho.c [SPARC64]: Consolidate common PCI IOMMU init code. 2005-10-13 21:10:08 -07:00
pci_sabre.c [SPARC64]: Consolidate common PCI IOMMU init code. 2005-10-13 21:10:08 -07:00
pci_schizo.c [SPARC64]: Consolidate common PCI IOMMU init code. 2005-10-13 21:10:08 -07:00
power.c [SPARC64]: Add needed pm_power_off symbol. 2006-01-09 14:12:50 -08:00
process.c [PATCH] sched: resched and cpu_idle rework 2005-11-09 07:56:33 -08:00
ptrace.c [PATCH] use ptrace_get_task_struct in various places 2006-01-08 20:13:51 -08:00
rtrap.S [SPARC64]: Fix userland FPU state corruption. 2005-10-07 13:30:49 -07:00
sbus.c [PATCH] unpaged: fix sound Bad page states 2005-11-22 09:13:43 -08:00
semaphore.c [SPARC64]: Avoid membar instructions in delay slots. 2005-06-27 15:42:04 -07:00
setup.c [SPARC64]: Restore 2.4.x /proc/cpuinfo behavior for "ncpus probed" field. 2005-11-11 12:48:56 -08:00
signal.c [PATCH] convert signal handling of NODEFER to act like other Unix boxes. 2005-08-29 10:03:11 -07:00
signal32.c [SPARC64] mm: don't re-evaluate *ptep 2005-11-07 14:08:46 -08:00
smp.c [SPARC64]: Restore 2.4.x /proc/cpuinfo behavior for "ncpus probed" field. 2005-11-11 12:48:56 -08:00
sparc64_ksyms.c [PATCH] dump_thread() cleanup 2006-01-10 08:01:25 -08:00
starfire.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sunos_ioctl32.c [SPARC]: Kill remaining kbio.h references. 2005-11-07 14:12:21 -08:00
sys32.S [SPARC64]: Fix fault handling in unaligned trap handler. 2005-09-28 20:41:45 -07:00
sys_sparc.c [PATCH] Avoiding mmap fragmentation 2005-06-21 18:46:16 -07:00
sys_sparc32.c [PATCH] common compat_sys_timer_create 2006-01-10 08:01:32 -08:00
sys_sunos32.c [SPARC]: Kill CHILD_MAX. 2005-12-22 23:10:03 -08:00
systbls.S Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6 2006-01-10 08:28:53 -08:00
time.c [SPARC64]: Kill off dummy_tick_ops. 2005-11-07 14:10:10 -08:00
trampoline.S [SPARC64]: Replace cheetah+ code patching with variables. 2005-10-04 15:23:20 -07:00
traps.c [SPARC64]: Rewrite convoluted physical memory probing. 2005-09-29 17:58:26 -07:00
ttable.S [SPARC64]: Revamp Spitfire error trap handling. 2005-08-29 12:45:11 -07:00
una_asm.S [SPARC64]: Fix fault handling in unaligned trap handler. 2005-09-28 20:41:45 -07:00
unaligned.c [SPARC64]: Fix fault handling in unaligned trap handler. 2005-09-28 20:41:45 -07:00
us2e_cpufreq.c [PATCH] kfree cleanup: arch 2005-11-07 07:54:06 -08:00
us3_cpufreq.c [PATCH] kfree cleanup: arch 2005-11-07 07:54:06 -08:00
vmlinux.lds.S [SPARC]: Use STABS_DEBUG and DWARF_DEBUG macros in vmlinux.lds.S 2005-12-28 13:22:54 -08:00
winfixup.S [SPARC64]: Replace cheetah+ code patching with variables. 2005-10-04 15:23:20 -07:00