android_kernel_xiaomi_sm8350/arch/sparc64/kernel
Prasanna S Panchamukhi b67000962f [PATCH] kprobes: fix broken fault handling for sparc64
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.

I could not test this patch for sparc64.

Signed-off-by: Prasanna S Panchamukhi <prasanna@in.ibm.com>
Cc: "David S. Miller" <davem@davemloft.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-03-26 08:57:05 -08:00
..
asm-offsets.c
auxio.c
binfmt_aout32.c [SPARC64]: Top-down address space allocation for 32-bit tasks. 2006-03-20 01:16:35 -08:00
binfmt_elf32.c [SPARC64]: Increase top of 32-bit process stack. 2006-03-20 01:16:36 -08:00
central.c
chmc.c
cpu.c [SPARC64]: kernel/cpu.c needs asm/spitfire.h 2006-03-20 01:12:05 -08:00
devices.c [SPARC64]: Fix new context version SMP handling. 2006-03-20 01:14:21 -08:00
dtlb_miss.S [SPARC64]: More TLB/TSB handling fixes. 2006-03-20 01:13:34 -08:00
dtlb_prot.S
ebus.c [SPARC64]: kzalloc() conversion 2006-03-20 01:14:19 -08:00
entry.S [SPARC64]: Fix bugs in SUN4V cpu mondo dispatch. 2006-03-20 01:14:09 -08:00
etrap.S [SPARC64]: Fix tl1 trap state capture/dump on SUN4V. 2006-03-20 01:13:12 -08:00
head.S [SPARC64]: Put syscall tables after trap table. 2006-03-20 01:13:59 -08:00
idprom.c
init_task.c
iommu_common.c
iommu_common.h
irq.c [PATCH] s/;;/;/g 2006-03-24 07:33:24 -08:00
isa.c
itlb_miss.S [SPARC64]: Fix _PAGE_EXEC handling. 2006-03-20 01:14:13 -08:00
kprobes.c [PATCH] kprobes: fix broken fault handling for sparc64 2006-03-26 08:57:05 -08:00
ktlb.S [SPARC64]: Fix indexing into kpte_linear_bitmap. 2006-03-20 01:14:07 -08:00
Makefile [SPARC64]: First cut at VIS simulator for Niagara. 2006-03-20 01:14:26 -08:00
module.c
pci_common.c [SPARC64]: kzalloc() conversion 2006-03-20 01:14:19 -08:00
pci_impl.h
pci_iommu.c [SPARC64]: kzalloc() conversion 2006-03-20 01:14:19 -08:00
pci_psycho.c [SPARC64]: Fix new context version SMP handling. 2006-03-20 01:14:21 -08:00
pci_sabre.c [SPARC64]: Fix new context version SMP handling. 2006-03-20 01:14:21 -08:00
pci_schizo.c [SPARC64]: Fix new context version SMP handling. 2006-03-20 01:14:21 -08:00
pci_sun4v_asm.S [SPARC64]: Remove PGLIST_NENTS PCI IOMMU mapping limitation on SUN4V. 2006-03-20 01:13:41 -08:00
pci_sun4v.c [SPARC64]: Fix new context version SMP handling. 2006-03-20 01:14:21 -08:00
pci_sun4v.h [SPARC64]: Remove PGLIST_NENTS PCI IOMMU mapping limitation on SUN4V. 2006-03-20 01:13:41 -08:00
pci.c [SPARC]: Respect vm_page_prot in io_remap_page_range(). 2006-03-22 01:15:13 -08:00
power.c
process.c [SPARC64]: Use sun4v_cpu_idle() in cpu_idle() on SUN4V. 2006-03-20 01:13:54 -08:00
ptrace.c [SPARC64]: Don't do anything in flush_ptrace_access() on SUN4V. 2006-03-20 01:13:33 -08:00
rtrap.S [SPARC64]: Drop %gl to 0 before re-enabling PSTATE_IE in rtrap 2006-03-20 01:13:57 -08:00
sbus.c [SPARC64]: Fix new context version SMP handling. 2006-03-20 01:14:21 -08:00
semaphore.c
setup.c [SPARC64]: CONFIG_BLK_DEV_RAM fix 2006-03-20 01:16:41 -08:00
signal32.c [SPARC]: Add support for *at(), ppoll, and pselect syscalls. 2006-01-19 02:42:49 -08:00
signal.c [SPARC]: Add support for *at(), ppoll, and pselect syscalls. 2006-01-19 02:42:49 -08:00
smp.c [SPARC64]: Keep cpu_present_map in sync with phys_cpu_present_map. 2006-03-25 13:00:17 -08:00
sparc64_ksyms.c [SPARC64]: Move over to sparsemem. 2006-03-20 01:14:22 -08:00
starfire.c
sun4v_ivec.S [SPARC64]: Use TRAP_LOAD_IRQ_WORK() in sun4v device mondo handler. 2006-03-20 01:12:49 -08:00
sun4v_tlb_miss.S [SPARC64]: Add a secondary TSB for hugepage mappings. 2006-03-22 01:15:14 -08:00
sunos_ioctl32.c
sys32.S [SPARC64]: Mark __ex_table section correctly. 2006-03-04 23:23:56 -08:00
sys_sparc32.c [PATCH] consolidate sys32/compat_adjtimex 2006-03-26 08:56:57 -08:00
sys_sparc.c [SPARC64]: Randomize mm->mmap_base when PF_RANDOMIZE is set. 2006-03-20 01:16:37 -08:00
sys_sunos32.c [PATCH] capable/capability.h (arch/) 2006-01-11 18:42:14 -08:00
systbls.S [PATCH] consolidate sys32/compat_adjtimex 2006-03-26 08:56:57 -08:00
time.c [SPARC64]: Fix mini RTC driver reading. 2006-03-20 01:14:15 -08:00
trampoline.S [SPARC64]: Get SUN4V SMP working. 2006-03-20 01:13:22 -08:00
traps.c [SPARC64]: Add a secondary TSB for hugepage mappings. 2006-03-22 01:15:14 -08:00
tsb.S [SPARC64]: Add a secondary TSB for hugepage mappings. 2006-03-22 01:15:14 -08:00
ttable.S [SPARC64]: Fix new context version SMP handling. 2006-03-20 01:14:21 -08:00
una_asm.S [SPARC64]: Mark __ex_table section correctly. 2006-03-04 23:23:56 -08:00
unaligned.c [SPARC64]: SUN4V memory exception trap handlers. 2006-03-20 01:12:07 -08:00
us2e_cpufreq.c [SPARC64]: kzalloc() conversion 2006-03-20 01:14:19 -08:00
us3_cpufreq.c [SPARC64]: kzalloc() conversion 2006-03-20 01:14:19 -08:00
visemul.c [SPARC64]: First cut at VIS simulator for Niagara. 2006-03-20 01:14:26 -08:00
vmlinux.lds.S [SPARC64]: Rename gl_{1,2}insn_patch --> sun4v_{1,2}insn_patch 2006-03-20 01:11:53 -08:00
winfixup.S [SPARC64]: Fix unaligned access winfxup handling on SUN4V. 2006-03-20 01:13:39 -08:00