remarkable-linux/arch/sparc/kernel
David S. Miller a5a737e090 sparc64: Do not clobber %g2 in xcall_fetch_glob_regs().
%g2 is meant to hold the CPUID number throughout this routine, since
at the very beginning, and at the very end, we use %g2 to calculate
indexes into per-cpu arrays.

However we erroneously clobber it in order to hold the %cwp register
value mid-stream.

Fix this code to use %g3 for the %cwp read and related calulcations
instead.

Reported-by: Meelis Roos <mroos@linux.ee>
Signed-off-by: David S. Miller <davem@davemloft.net>
2012-05-10 11:00:46 -07:00
..
.gitignore
apc.c sparc: Add module.h to files previously implicitly using it. 2011-10-31 19:30:54 -04:00
asm-offsets.c
audit.c
auxio_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
auxio_64.c
btext.c sparc: remove several unnecessary module.h include instances 2011-10-31 19:30:54 -04:00
central.c sparc64: Do not clobber %g2 in xcall_fetch_glob_regs(). 2012-05-10 11:00:46 -07:00
cherrs.S
chmc.c
compat_audit.c
cpu.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
cpumap.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
cpumap.h
devices.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
dma.c sparc: remove several unnecessary module.h include instances 2011-10-31 19:30:54 -04:00
ds.c sparc64: Fix bootup crash on sun4v. 2012-04-13 11:56:22 -07:00
dtlb_miss.S
dtlb_prot.S
ebus.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
entry.h sparc64: Patch sun4v code sequences properly on module load. 2011-11-17 22:44:58 -08:00
entry.S
etrap_32.S
etrap_64.S
fpu_traps.S
ftrace.c
getsetcc.S
head_32.S
head_64.S sparc64: Future proof Niagara cpu detection. 2011-09-16 14:21:33 -07:00
helpers.S
hvapi.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
hvcalls.S sparc: Set reboot-cmd using reboot data hypervisor call if available. 2011-08-02 21:28:52 -07:00
hvtramp.S
idprom.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
init_task.c
iommu.c SPARC: adapt for dma_map_ops changes 2012-03-28 16:36:34 +02:00
iommu_common.h
ioport.c SPARC: adapt for dma_map_ops changes 2012-03-28 16:36:34 +02:00
irq.h Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
irq_32.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
irq_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
itlb_miss.S
ivec.S
jump_label.c sparc: Fix even more fallout from system.h split. 2012-03-29 22:40:52 -07:00
kernel.h sparc: Set reboot-cmd using reboot data hypervisor call if available. 2011-08-02 21:28:52 -07:00
kgdb_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
kgdb_64.c sparc: Fix even more fallout from system.h split. 2012-03-29 22:40:52 -07:00
kprobes.c
kstack.h
ktlb.S sparc: Access kernel TSB using physical addressing when possible. 2011-08-05 00:53:57 -07:00
ldc.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
led.c
leon_kernel.c remove references to cpu_*_map in arch/ 2012-03-29 15:38:30 +10:30
leon_pci.c sparc32,leon: fix leon build 2012-04-04 15:44:39 -07:00
leon_pci_grpci2.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
leon_pmc.c
leon_smp.c sparc32,leon: add notify_cpu_starting() 2012-04-21 16:35:06 -04:00
Makefile sparc: Allow handling signals when stack is corrupted. 2011-08-20 17:14:54 -07:00
mdesc.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
misctrap.S
module.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
muldiv.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
nmi.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
of_device_32.c sparc: remove several unnecessary module.h include instances 2011-10-31 19:30:54 -04:00
of_device_64.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
of_device_common.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
of_device_common.h
pci.c sparc/PCI: convert devtree and arch-probed bus addresses to resource 2012-03-20 10:42:01 -07:00
pci_common.c
pci_fire.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
pci_impl.h
pci_msi.c
pci_psycho.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
pci_sabre.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
pci_schizo.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
pci_sun4v.c SPARC: adapt for dma_map_ops changes 2012-03-28 16:36:34 +02:00
pci_sun4v.h
pci_sun4v_asm.S
pcic.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
pcr.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
perf_event.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
pmc.c sparc: Add module.h to files previously implicitly using it. 2011-10-31 19:30:54 -04:00
power.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
process_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
process_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
prom.h
prom_32.c sparc: remove several unnecessary module.h include instances 2011-10-31 19:30:54 -04:00
prom_64.c sparc: remove several unnecessary module.h include instances 2011-10-31 19:30:54 -04:00
prom_common.c sparc: Use kmemdup rather than duplicating its implementation 2011-12-04 10:46:56 -08:00
prom_irqtrans.c
psycho_common.c
psycho_common.h
ptrace_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
ptrace_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
reboot.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
rtrap_32.S
rtrap_64.S sparc64: Eliminate obsolete __handle_softirq() function 2012-04-13 11:58:38 -07:00
sbus.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
setup_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
setup_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
signal32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
signal_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
signal_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
sigutil.h sparc: Allow handling signals when stack is corrupted. 2011-08-20 17:14:54 -07:00
sigutil_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
sigutil_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
smp_32.c atomic: use <linux/atomic.h> 2011-07-26 16:49:47 -07:00
smp_64.c treewide: Fix typos in various parts of the kernel, and fix some comments. 2011-12-02 14:57:31 +01:00
sparc_ksyms_32.c
sparc_ksyms_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
spiterrs.S
sstate.c sparc: Set reboot-cmd using reboot data hypervisor call if available. 2011-08-02 21:28:52 -07:00
stacktrace.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
starfire.c
sun4c_irq.c
sun4d_irq.c
sun4d_smp.c sparc32: fix fallout from system.h removal 2012-03-30 18:16:58 -07:00
sun4m_irq.c sparc32: forced setting of mode of sun4m per-cpu timers 2012-01-10 16:28:24 -08:00
sun4m_smp.c sparc32: fix fallout from system.h removal 2012-03-30 18:16:58 -07:00
sun4v_ivec.S
sun4v_tlb_miss.S
sys32.S All Arch: remove linkage for sys_nfsservctl system call 2011-08-26 15:09:58 -07:00
sys_sparc32.c sparc: remove several unnecessary module.h include instances 2011-10-31 19:30:54 -04:00
sys_sparc_32.c
sys_sparc_64.c kill mm argument of vm_munmap() 2012-04-21 01:58:20 -04:00
syscalls.S
sysfs.c cpu: convert 'cpu' and 'machinecheck' sysdev_class to a regular subsystem 2011-12-21 14:29:42 -08:00
systbls.h
systbls_32.S sparc: Hook up process_vm_{readv,writev} syscalls. 2011-11-01 00:51:30 -07:00
systbls_64.S sparc: Hook up process_vm_{readv,writev} syscalls. 2011-11-01 00:51:30 -07:00
tadpole.c
time_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
time_64.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
trampoline_32.S
trampoline_64.S
traps_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
traps_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
tsb.S
ttable.S
una_asm_32.S
una_asm_64.S
unaligned_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
unaligned_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
us2e_cpufreq.c
us3_cpufreq.c
utrap.S
vio.c powerpc+sparc/vio: Modernize driver registration 2012-03-28 11:33:24 +11:00
viohs.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
visemul.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
vmlinux.lds.S sparc: Access kernel TSB using physical addressing when possible. 2011-08-05 00:53:57 -07:00
windows.c
winfixup.S
wof.S
wuf.S