linux/arch/powerpc/kernel
Paul Mackerras e56a6e20f3 [POWERPC] Clear RI bit in MSR before restoring r13 when returning to userspace
Some instruction tracing tools use the RI (recoverable interrupt) bit
in the MSR to indicate when it's safe to single-step.  Currently we
clear RI after restoring r13 when returning to userspace.  However,
if we single-step past the point where r13 is restored, we'll corrupt
r13 in the exception entry code and not restore it.  This moves the
clearing of RI to just before r13 is restored so this doesn't happen.

Signed-off-by: Paul Mackerras <paulus@samba.org>
2007-02-07 14:03:23 +11:00
..
vdso32 [POWERPC] Support feature fixups in vdso's 2006-10-25 11:54:07 +10:00
vdso64 [POWERPC] Cell timebase bug workaround 2006-10-25 11:54:18 +10:00
align.c [PATCH] powerpc: Implement support for setting little-endian mode via prctl 2006-06-09 21:24:15 +10:00
asm-offsets.c [POWERPC] Fix manual assembly WARN_ON() in enter_rtas(). 2007-01-09 17:03:02 +11:00
audit.c [PATCH] audit: AUDIT_PERM support 2006-09-11 13:32:30 -04:00
binfmt_elf32.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
btext.c [POWERPC] Fix various offb issues 2006-11-01 14:52:48 +11:00
compat_audit.c [PATCH] audit: AUDIT_PERM support 2006-09-11 13:32:30 -04:00
cpu_setup_6xx.S Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
cpu_setup_pa6t.S [POWERPC] pasemi: Idle loops 2007-02-07 14:03:22 +11:00
cpu_setup_ppc970.S [POWERPC] powerpc: Enable DEEPNAP power savings mode on 970MP 2006-10-16 16:32:25 +10:00
cputable.c [POWERPC] pasemi: Idle loops 2007-02-07 14:03:22 +11:00
crash_dump.c [POWERPC] Make doc comments extractable 2006-08-08 17:07:04 +10:00
crash.c [PATCH] Kexec / Kdump: Unify elf note code 2006-12-07 08:39:46 -08:00
dma_64.c [POWERPC] Make direct DMA use node local allocations 2006-12-04 20:38:59 +11:00
entry_32.S Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
entry_64.S [POWERPC] Clear RI bit in MSR before restoring r13 when returning to userspace 2007-02-07 14:03:23 +11:00
firmware.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
fpu.S [POWERPC] Restore copyright notice in arch/powerpc/kernel/fpu.S 2006-08-30 14:45:35 +10:00
head_4xx.S Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
head_8xx.S Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
head_32.S [POWERPC] Remove the broken Gemini support 2007-01-24 21:13:58 +11:00
head_44x.S Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
head_64.S [POWERPC] Fix performance monitor exception 2007-02-07 14:03:23 +11:00
head_booke.h [PATCH] powerpc: Fix Kernel FP unavail exception for BookE 2006-02-10 16:51:50 +11:00
head_fsl_booke.S Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
ibmebus.c [POWERPC] Replace kmalloc+memset with kzalloc 2006-12-04 20:42:09 +11:00
idle_6xx.S Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
idle_power4.S [POWERPC] Lazy interrupt disabling for 64-bit machines 2006-10-16 16:31:36 +10:00
idle.c [POWERPC] cell: use ppc_md->power_save instead of cbe_idle_loop 2006-10-25 14:20:22 +10:00
init_task.c [PATCH] nsproxy: move init_nsproxy into kernel/nsproxy.c 2006-10-02 07:57:20 -07:00
io.c [POWERPC] Merge 32 and 64 bits asm-powerpc/io.h 2006-12-04 20:39:05 +11:00
iomap.c [POWERPC] Remove fastcall function attribute 2007-01-26 01:52:27 -06:00
iommu.c [POWERPC] Refactor 64 bits DMA operations 2006-12-04 20:38:40 +11:00
irq.c [POWERPC] Add IRQ remapping hook 2007-01-24 21:13:59 +11:00
kprobes.c [PATCH] kprobes: enable booster on the preemptible kernel 2006-12-07 08:39:38 -08:00
l2cr_6xx.S Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
legacy_serial.c Merge branch 'merge' 2006-08-25 14:56:07 +10:00
lparcfg.c [POWERPC] clean up pseries hcall interfaces 2006-08-01 16:19:15 +10:00
lparmap.c [PATCH] powerpc: Fix iSeries bug in VMALLOCBASE/VMALLOC_START consolidation 2006-01-09 15:06:06 +11:00
machine_kexec_32.c Storage class should be first 2006-06-26 18:57:34 +02:00
machine_kexec_64.c Merge branch 'merge' 2006-08-25 14:56:07 +10:00
machine_kexec.c [POWERPC] Move some kexec logic into machine_kexec.c 2006-08-17 16:41:10 +10:00
Makefile [POWERPC] pasemi: Idle loops 2007-02-07 14:03:22 +11:00
misc_32.S [POWERPC] Consolidate feature fixup code 2006-10-25 11:42:10 +10:00
misc_64.S [POWERPC] pasemi: UART udbg support 2007-02-07 14:03:22 +11:00
misc.S [POWERPC] convert string i/o operations to C 2006-09-20 14:06:18 +10:00
module_32.c [POWERPC] Add support for R_PPC_ADDR16_HI relocations 2007-01-24 21:13:58 +11:00
module_64.c [POWERPC] Generic BUG for powerpc 2006-12-11 16:35:07 +11:00
nvram_64.c [PATCH] getting rid of all casts of k[cmz]alloc() calls 2006-12-13 09:05:58 -08:00
of_device.c [POWERPC] of_device_register: propagate device_create_file return code 2006-12-08 02:23:07 -06:00
of_platform.c [POWERPC] powerpc: add scanning of ebc bus to of_platform 2006-12-19 15:35:40 +01:00
paca.c [POWERPC] Implement SLB shadow buffer 2006-08-08 17:08:56 +10:00
pci_32.c [POWERPC] Do not write virq back to PCI config space 2007-01-24 21:13:57 +11:00
pci_64.c [POWERPC] Do not write virq back to PCI config space 2007-01-24 21:13:57 +11:00
pci_dn.c [POWERPC] Constify & voidify get_property() 2006-07-31 15:55:04 +10:00
pmc.c [POWERPC] PA6T PMC support 2007-02-07 14:03:19 +11:00
ppc32.h powerpc: move include/asm-ppc64/ppc32.h to arch/powerpc/kernel 2005-11-03 16:03:28 +11:00
ppc_ksyms.c [POWERPC] Compile fixes for arch/powerpc dcr code 2007-02-07 14:03:23 +11:00
proc_ppc64.c [PATCH] struct path: convert powerpc 2006-12-08 08:28:48 -08:00
process.c [POWERPC] Better check in show_instructions 2006-10-16 15:53:30 +10:00
prom_init.c [POWERPC] Support ibm,dynamic-reconfiguration-memory nodes 2006-12-11 13:49:49 +11:00
prom_parse.c [POWERPC] Workaround oldworld OF bug with IRQs & P2P bridges 2006-12-20 16:37:47 +11:00
prom.c [POWERPC] arch/ppc/kernel/prom.c of_node_(get|put) cleanup 2007-01-24 21:13:57 +11:00
ptrace32.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
ptrace-common.h Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
ptrace.c [POWERPC] Mask 32-bit system call arguments to 32 bits on PPC64 in audit code 2007-01-24 21:13:58 +11:00
rtas_flash.c [PATCH] struct path: convert powerpc 2006-12-08 08:28:48 -08:00
rtas_pci.c [POWERPC] Merge 32 and 64 bits asm-powerpc/io.h 2006-12-04 20:39:05 +11:00
rtas-proc.c [POWERPC] Constify & voidify get_property() 2006-07-31 15:55:04 +10:00
rtas-rtc.c [PATCH] powerpc: reorg RTAS delay code 2006-06-09 21:21:06 +10:00
rtas.c [POWERPC] Add rtas_service_present() helper 2006-12-08 17:10:22 +11:00
semaphore.c powerpc: Merge enough to start building in arch/powerpc. 2005-09-26 16:04:21 +10:00
setup_32.c [POWERPC] Distinguish POWER6 partition modes and tell userspace 2006-12-04 20:40:16 +11:00
setup_64.c [POWERPC] Distinguish POWER6 partition modes and tell userspace 2006-12-04 20:40:16 +11:00
setup-common.c [POWERPC] Fix xmon=off and cleanup xmon initialisation 2006-10-04 14:52:22 +10:00
setup.h [PATCH] powerpc: Make early xmon logic immune to location of early parsing 2006-05-19 15:02:12 +10:00
signal_32.c [POWERPC] Fix register save area alignment for swapcontext syscall 2006-12-20 16:37:49 +11:00
signal_64.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
smp-tbsync.c [POWERPC] Replace kmalloc+memset with kzalloc 2006-12-04 20:42:09 +11:00
smp.c [PATCH] Change cpu_up and co from __devinit to __cpuinit 2007-01-11 18:18:20 -08:00
swsusp_32.S [PATCH] Change the name of pagedir_nosave 2006-09-26 08:49:01 -07:00
sys_ppc32.c [POWERPC] fix missing #include in sys_ppc32.c 2006-12-04 20:41:19 +11:00
syscalls.c [PATCH] namespaces: utsname: switch to using uts namespaces 2006-10-02 07:57:21 -07:00
sysfs.c [POWERPC] PA6T PMC support 2007-02-07 14:03:19 +11:00
systbl.S Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
tau_6xx.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
time.c [POWERPC] iSeries: fix time.c for combined build 2006-12-04 20:39:15 +11:00
traps.c [POWERPC] Use is_init() instead of pid==1 2007-01-24 21:13:56 +11:00
udbg_16550.c [POWERPC] pasemi: UART udbg support 2007-02-07 14:03:22 +11:00
udbg.c [POWERPC] pasemi: UART udbg support 2007-02-07 14:03:22 +11:00
vdso.c [PATCH] slab: remove SLAB_KERNEL 2006-12-07 08:39:24 -08:00
vecemu.c [PATCH] powerpc: Move arch/ppc*/kernel/vecemu.c to arch/powerpc 2005-09-21 19:21:07 +10:00
vector.S Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
vio.c [POWERPC] arch/powerpc/kernel/vio.c of_node_put cleanup 2007-01-24 21:13:57 +11:00
vmlinux.lds.S [POWERPC] Generic BUG for powerpc 2006-12-11 16:35:07 +11:00