linux/arch/i386/kernel
Prasanna S Panchamukhi b4026513b8 [PATCH] kprobes: fix broken fault handling for i386
Provide proper kprobes fault handling, if a user-specified pre/post handlers
tries to access user address space, through copy_from_user(), get_user() etc.

The user-specified fault handler gets called only if the fault occurs while
executing user-specified handlers.  In such a case user-specified handler is
allowed to fix it first, later if the user-specifed fault handler does not fix
it, we try to fix it by calling fix_exception().

The user-specified handler will not be called if the fault happens when single
stepping the original instruction, instead we reset the current probe and
allow the system page fault handler to fix it up.

Signed-off-by: Prasanna S Panchamukhi <prasanna@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-03-26 08:57:04 -08:00
..
acpi [PATCH] EFI: keep physical table addresses in efi structure 2006-03-26 08:56:54 -08:00
cpu [PATCH] sem2mutex: misc static one-file mutexes 2006-03-26 08:56:55 -08:00
timers [PATCH] x86: mark cyc2ns_scale readmostly 2006-03-22 07:53:55 -08:00
.gitignore [PATCH] x86: gitignore some autogenerated files for i386 2006-02-14 16:09:35 -08:00
alternative.c [PATCH] x86: SMP alternatives 2006-03-23 07:38:04 -08:00
apic.c [PATCH] fix implicit declaration of GET_APIC_ID in arch/i386/kernel/apic.c 2006-03-23 07:38:06 -08:00
apm.c [PATCH] kill include/linux/platform.h, default_idle() cleanup 2006-03-24 07:33:21 -08:00
asm-offsets.c
bootflag.c
cpuid.c [PATCH] arch/i386/kernel/cpuid.c: unused variable 2006-01-06 08:33:38 -08:00
crash_dump.c [PATCH] kdump: read previous kernel's memory 2006-01-10 08:01:28 -08:00
crash.c [PATCH] i386: fix uses of user_mode() vs. user_mode_vm() 2006-03-23 07:38:05 -08:00
dmi_scan.c [PATCH] EFI fixes 2006-03-26 08:56:54 -08:00
doublefault.c
early_printk.c
efi_stub.S
efi.c [PATCH] fix array overrun in efi.c 2006-03-26 08:56:57 -08:00
entry.S [PATCH] i386: fix singlestep through an int80 syscall 2006-03-23 07:38:05 -08:00
head.S [PATCH] i386: cleanup after cpu_gdt_descr conversion to per-cpu data 2006-03-23 07:38:06 -08:00
i386_ksyms.c [PATCH] x86: fix broken SMP boot sequence 2006-02-24 14:31:38 -08:00
i387.c
i8237.c
i8259.c Revert "i386: move apic init in init_IRQs" 2005-10-31 19:16:17 -08:00
init_task.c [PATCH] Change maxaligned_in_smp alignemnt macros to internodealigned_in_smp macros 2006-01-08 20:13:38 -08:00
io_apic.c [PATCH] more for_each_cpu() conversions 2006-03-23 07:38:17 -08:00
ioport.c [PATCH] capable/capability.h (arch/) 2006-01-11 18:42:14 -08:00
irq.c [PATCH] Change maxaligned_in_smp alignemnt macros to internodealigned_in_smp macros 2006-01-08 20:13:38 -08:00
kprobes.c [PATCH] kprobes: fix broken fault handling for i386 2006-03-26 08:57:04 -08:00
ldt.c [PATCH] arch/i386/kernel/ldt.c should #include <asm/mmu_context.h> 2005-11-07 07:53:29 -08:00
machine_kexec.c [PATCH] fix kexec asm 2006-03-08 14:15:04 -08:00
Makefile [PATCH] x86: SMP alternatives 2006-03-23 07:38:04 -08:00
mca.c [PATCH] arch/i386: Use ARRAY_SIZE macro 2005-11-07 07:53:28 -08:00
microcode.c [PATCH] sem2mutex: misc static one-file mutexes 2006-03-26 08:56:55 -08:00
module.c [PATCH] x86: SMP alternatives 2006-03-23 07:38:04 -08:00
mpparse.c [PATCH] x86: deterine xapic using apic version 2006-03-23 07:38:06 -08:00
msr.c [PATCH] arch/i386/kernel/msr.c: removed unused variable 2006-01-06 08:33:38 -08:00
nmi.c [PATCH] more for_each_cpu() conversions 2006-03-23 07:38:17 -08:00
numaq.c
pci-dma.c [PATCH] gfp flags annotations - part 1 2005-10-08 15:00:57 -07:00
process.c [PATCH] kretprobe instance recycled by parent process 2006-03-26 08:57:04 -08:00
ptrace.c [PATCH] i386: Don't let ptrace set the nested task bit 2006-03-23 07:38:04 -08:00
quirks.c [PATCH] EDAC: core EDAC support code 2006-01-18 19:20:31 -08:00
reboot_fixups.c [PATCH] arch/i386/kernel/reboot_fixups.c should #include <linux/reboot_fixups.h> 2005-11-07 07:53:29 -08:00
reboot.c [PATCH] i386/x86-64: Don't IPI to offline cpus on shutdown 2006-01-11 19:04:50 -08:00
relocate_kernel.S
scx200.c [PATCH] arch: Replace pci_module_init() with pci_register_driver() 2006-01-09 12:13:21 -08:00
semaphore.c [PATCH] x86: SMP alternatives 2006-03-23 07:38:04 -08:00
setup.c [PATCH] EFI fixes 2006-03-26 08:56:54 -08:00
sigframe.h
signal.c [PATCH] swsusp: finally solve mysqld problem 2006-03-23 07:38:08 -08:00
smp.c [PATCH] on_each_cpu(): disable local interrupts 2006-03-22 07:53:59 -08:00
smpboot.c [PATCH] Check if cpu can be onlined before calling smp_prepare_cpu() 2006-03-25 08:23:01 -08:00
srat.c [PATCH] x86_64: Make i386 compile again with fourth DMA32 zone 2005-11-14 19:55:13 -08:00
summit.c
sys_i386.c [PATCH] Uninline sys_mmap common code (reduce binary size) 2006-03-22 07:54:02 -08:00
syscall_table.S [PATCH] fstatat64 support 2006-02-11 21:41:10 -08:00
sysenter.c
time_hpet.c [PATCH] move rtc_interrupt() prototype to rtc.h 2006-01-08 20:13:47 -08:00
time.c [PATCH] x86: fix potential jiffies overflow in timer_resume() 2006-03-06 18:40:44 -08:00
topology.c [PATCH] x86 topology: don;t create a control file for BSP that cannot be removed 2006-03-23 07:38:07 -08:00
trampoline.S
traps.c [PATCH] i386: pass proper trap numbers to die chain handlers 2006-03-26 08:56:53 -08:00
vm86.c [PATCH] make vm86 call audit_syscall_exit 2006-03-20 14:08:53 -05:00
vmlinux.lds.S Merge master.kernel.org:/pub/scm/linux/kernel/git/sam/kbuild 2006-03-25 08:48:48 -08:00
vsyscall-int80.S
vsyscall-note.S
vsyscall-sigreturn.S
vsyscall-sysenter.S [PATCH] i386: more vsyscall documentation 2006-03-23 07:38:06 -08:00
vsyscall.lds.S
vsyscall.S