linux/arch/sparc64/kernel
David S. Miller 9843099ff4 sparc64: Fix SMP bootup with CONFIG_STACK_DEBUG or ftrace.
Based upon a report by Meelis Roos.

Any function call can try to access the current
thread register via the _mcount hooks when the kernel
is built with -pg (via ftrace or STACK_DEBUG).

That can't be setup properly very early on during
the bootup of other cpus for sun4u and some early
sun4v systems.

So add notrace markers to these specific functions, so
that _mcount doesn't get invoked too early.

Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-16 11:44:00 -07:00
..
asm-offsets.c
audit.c sparc64: Kill CONFIG_SPARC32_COMPAT 2008-04-26 21:41:19 -07:00
auxio.c sparc: don't use asm/of_device.h 2008-08-07 15:33:36 -07:00
central.c sparc64/kernel/: make code static 2008-07-17 21:38:08 -07:00
cherrs.S sparc64: Split entry.S up into seperate files. 2008-04-28 00:47:20 -07:00
chmc.c [SPARC64]: Fix memory controller register access when non-SMP. 2007-12-07 01:10:14 -08:00
compat_audit.c sparc, sparc64: use arch/sparc/include 2008-07-27 23:00:59 +02:00
cpu.c [SPARC64]: Fix sparse warnings in arch/sparc64/kernel/{cpu,setup}.c 2008-03-25 21:51:40 -07:00
ds.c sparc64/kernel/: make code static 2008-07-17 21:38:08 -07:00
dtlb_miss.S [SPARC64]: More TLB/TSB handling fixes. 2006-03-20 01:13:34 -08:00
dtlb_prot.S sparc64: remove CVS keywords 2008-05-20 00:33:43 -07:00
ebus.c sparc: don't use asm/of_device.h 2008-08-07 15:33:36 -07:00
entry.h sparc64: tracehook syscall 2008-07-27 17:28:55 -07:00
etrap.S sparc64: remove CVS keywords 2008-05-20 00:33:43 -07:00
fpu_traps.S sparc64: Split entry.S up into seperate files. 2008-04-28 00:47:20 -07:00
ftrace.c ftrace: store mcount address in rec->ip 2008-06-23 22:10:56 +02:00
getsetcc.S sparc64: Split entry.S up into seperate files. 2008-04-28 00:47:20 -07:00
head.S sparc64: Split entry.S up into seperate files. 2008-04-28 00:47:20 -07:00
helpers.S sparc64: Split entry.S up into seperate files. 2008-04-28 00:47:20 -07:00
hvapi.c sparc64: Add missing hypervisor service group numbers. 2008-07-18 00:43:52 -07:00
hvcalls.S sparc64: Split entry.S up into seperate files. 2008-04-28 00:47:20 -07:00
hvtramp.S [SPARC64]: Fix cpu trampoline et al. mismatch warnings. 2008-02-20 22:22:16 -08:00
idprom.c sparc64: remove CVS keywords 2008-05-20 00:33:43 -07:00
init_task.c [PATCH] take init_files to fs/file.c 2008-05-16 17:22:20 -04:00
iommu.c [SPARC64]: NUMA device infrastructure. 2008-04-23 23:32:16 -07:00
iommu_common.h PAGE_ALIGN(): correctly handle 64-bit values on 32-bit architectures 2008-07-24 10:47:21 -07:00
irq.c sparc64: Fix SMP bootup with CONFIG_STACK_DEBUG or ftrace. 2008-09-16 11:44:00 -07:00
itlb_miss.S [SPARC64]: Fix _PAGE_EXEC_4U check in sun4u I-TLB miss handler. 2007-05-29 02:50:15 -07:00
ivec.S sparc64: Split entry.S up into seperate files. 2008-04-28 00:47:20 -07:00
kgdb.c sparc: Add kgdb support. 2008-04-29 02:38:50 -07:00
kprobes.c kprobes: improve kretprobe scalability with hashed locking 2008-07-25 10:53:30 -07:00
kstack.h sparc64: Handle stack trace attempts before irqstacks are setup. 2008-08-13 17:20:04 -07:00
ktlb.S [SPARC64]: Fix build with SPARSEMEM_VMEMMAP disabled. 2008-01-12 21:52:16 -08:00
ldc.c sparc64: Fix lockdep issues in LDC protocol layer. 2008-07-22 22:34:29 -07:00
Makefile sparc64: add ftrace support. 2008-05-23 22:36:13 +02:00
mdesc.c [SPARC64]: Initialize MDESC earlier and use lmb_alloc() 2008-04-23 23:32:12 -07:00
misctrap.S sparc: Add kgdb support. 2008-04-29 02:38:50 -07:00
module.c [SPARC]: Remove duplicate includes. 2007-11-06 21:23:11 -08:00
of_device.c sparc: Fix resource flags for PCI children in OF device tree. 2008-08-28 22:59:10 -07:00
pci.c sparc64: fix up bus_id changes in sparc core code 2008-07-21 21:55:03 -07:00
pci_common.c sparc: don't use asm/of_device.h 2008-08-07 15:33:36 -07:00
pci_fire.c [SPARC64]: NUMA device infrastructure. 2008-04-23 23:32:16 -07:00
pci_impl.h sparc64: Stop creating dummy root PCI host controller devices. 2008-05-02 05:22:50 -07:00
pci_msi.c sparc64/kernel/: make code static 2008-07-17 21:38:08 -07:00
pci_psycho.c sparc64: Fix OOPS in psycho_pcierr_intr_other(). 2008-09-16 09:53:42 -07:00
pci_sabre.c sparc: don't use asm/of_device.h 2008-08-07 15:33:36 -07:00
pci_schizo.c sparc: don't use asm/of_device.h 2008-08-07 15:33:36 -07:00
pci_sun4v.c sparc64/kernel/: make code static 2008-07-17 21:38:08 -07:00
pci_sun4v.h [SPARC64]: Add PCI MSI support on Niagara. 2007-02-10 23:50:37 -08:00
pci_sun4v_asm.S [SPARC64]: Add PCI MSI support on Niagara. 2007-02-10 23:50:37 -08:00
power.c sparc: don't use asm/of_device.h 2008-08-07 15:33:36 -07:00
process.c sparc64: Implement IRQ stacks. 2008-08-12 18:33:56 -07:00
prom.c sparc64: Fix interrupt register calculations on Psycho and Sabre. 2008-09-10 14:08:27 -07:00
ptrace.c sparc: Fix user_regset 'n' field values. 2008-09-12 15:55:44 -07:00
rtrap.S sparc64: tracehook: TIF_NOTIFY_RESUME 2008-07-27 17:32:19 -07:00
sbus.c sparc64: remove CVS keywords 2008-05-20 00:33:43 -07:00
setup.c sparc64: remove CVS keywords 2008-05-20 00:33:43 -07:00
signal.c arch/sparc64/kernel/signal.c: removed duplicated #include 2008-08-04 13:51:36 -07:00
signal32.c sparc64: tracehook_signal_handler 2008-07-27 17:32:35 -07:00
smp.c sparc64: Prevent sparc64 from invoking irq handlers on offline CPUs 2008-09-03 02:15:30 -07:00
sparc64_ksyms.c sparc64: Kill __show_regs(). 2008-07-31 20:33:43 -07:00
spiterrs.S sparc64: Split entry.S up into seperate files. 2008-04-28 00:47:20 -07:00
sstate.c [SPARC64]: Report proper system soft state to the hypervisor. 2007-05-29 02:49:29 -07:00
stacktrace.c sparc64: Handle stack trace attempts before irqstacks are setup. 2008-08-13 17:20:04 -07:00
starfire.c sparc64: remove CVS keywords 2008-05-20 00:33:43 -07:00
sun4v_ivec.S [SPARC64]: Use sun4v VIRQ interfaces as intended. 2007-10-13 21:53:16 -07:00
sun4v_tlb_miss.S [SPARC64]: %l6 trap return handling no longer necessary. 2008-04-24 03:15:22 -07:00
sys32.S sparc64: remove CVS keywords 2008-05-20 00:33:43 -07:00
sys_sparc.c flag parameters: pipe 2008-07-24 10:47:28 -07:00
sys_sparc32.c sparc64: Use kernel/uid16.c helpers instead of own copy. 2008-08-06 23:11:08 -07:00
syscalls.S sparc64: tracehook syscall 2008-07-27 17:28:55 -07:00
sysfs.c sysdev: Pass the attribute to the low level sysdev show/store function 2008-07-21 21:55:02 -07:00
systbls.h [SPARC]: Remove SunOS and Solaris binary support. 2008-04-21 15:10:15 -07:00
systbls.S sparc64: Use kernel/uid16.c helpers instead of own copy. 2008-08-06 23:11:08 -07:00
time.c sparc: don't use asm/of_device.h 2008-08-07 15:33:36 -07:00
trampoline.S sparc64: remove CVS keywords 2008-05-20 00:33:43 -07:00
traps.c sparc64: Fix SMP bootup with CONFIG_STACK_DEBUG or ftrace. 2008-09-16 11:44:00 -07:00
tsb.S [SPARC64]: %l6 trap return handling no longer necessary. 2008-04-24 03:15:22 -07:00
ttable.S sparc64: Convert to generic helpers for IPI function calls. 2008-07-17 23:44:50 -07:00
una_asm.S
unaligned.c sparc: Use new '%pS' infrastructure to print symbols. 2008-07-17 22:11:32 -07:00
us2e_cpufreq.c [CPUFREQ] move policy's governor initialisation out of low-level drivers into cpufreq core 2007-10-04 18:40:57 -04:00
us3_cpufreq.c [SPARC64]: kzalloc() conversion 2006-03-20 01:14:19 -08:00
utrap.S sparc64: Split entry.S up into seperate files. 2008-04-28 00:47:20 -07:00
vio.c sparc64: fix up bus_id changes in sparc core code 2008-07-21 21:55:03 -07:00
viohs.c viohs: extern on function definition 2007-07-26 11:11:56 -07:00
visemul.c [SPARC64]: Call do_mathemu on illegal instruction traps too. 2006-12-10 02:39:32 -08:00
vmlinux.lds.S all archs: consolidate init and exit sections in vmlinux.lds.h 2008-01-28 23:21:17 +01:00
winfixup.S [SPARC64]: %l6 trap return handling no longer necessary. 2008-04-24 03:15:22 -07:00