Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b6b7922f authored by David S. Miller's avatar David S. Miller
Browse files

sparc64: Don't MAGIC_SYSRQ ifdef smp_fetch_global_regs and support code.



Based upon a report and initial patch by Friedrich Oslage.

The intention is to provide this facility for
__trigger_all_cpu_backtrace even if MAGIC_SYSRQ is not set.

The only part that should have MAGIC_SYSRQ ifdef protection is the
sparc_globalreg_op sysrq regitration and immediate code.

Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 433c5f70
Loading
Loading
Loading
Loading
+0 −4
Original line number Diff line number Diff line
@@ -858,9 +858,7 @@ void smp_tsb_sync(struct mm_struct *mm)
extern unsigned long xcall_flush_tlb_mm;
extern unsigned long xcall_flush_tlb_pending;
extern unsigned long xcall_flush_tlb_kernel_range;
#ifdef CONFIG_MAGIC_SYSRQ
extern unsigned long xcall_fetch_glob_regs;
#endif
extern unsigned long xcall_receive_signal;
extern unsigned long xcall_new_mmu_context_version;
#ifdef CONFIG_KGDB
@@ -1005,12 +1003,10 @@ void kgdb_roundup_cpus(unsigned long flags)
}
#endif

#ifdef CONFIG_MAGIC_SYSRQ
void smp_fetch_global_regs(void)
{
	smp_cross_call(&xcall_fetch_glob_regs, 0, 0, 0);
}
#endif

/* We know that the window frames of the user have been flushed
 * to the stack before we get here because all callers of us
+0 −2
Original line number Diff line number Diff line
@@ -480,7 +480,6 @@ xcall_sync_tick:
	b		rtrap_xcall
	 ldx		[%sp + PTREGS_OFF + PT_V9_TSTATE], %l1

#ifdef CONFIG_MAGIC_SYSRQ
	.globl		xcall_fetch_glob_regs
xcall_fetch_glob_regs:
	sethi		%hi(global_reg_snapshot), %g1
@@ -511,7 +510,6 @@ xcall_fetch_glob_regs:
	membar		#StoreStore
	stx		%g3, [%g1 + GR_SNAP_THREAD]
	retry
#endif /* CONFIG_MAGIC_SYSRQ */

#ifdef DCACHE_ALIASING_POSSIBLE
	.align		32