On Fri, Mar 30, 2018 at 05:05:15PM +0800, r@xxxxxx wrote: > From: Heiher <r@xxxxxx> Please can you add a proper commit description, explaining the problem and what your patch does to fix it. > > Signed-off-by: Heiher <r@xxxxxx> > --- > arch/mips/kernel/genex.S | 19 +++++++++++++++++++ > 1 file changed, 19 insertions(+) > > diff --git a/arch/mips/kernel/genex.S b/arch/mips/kernel/genex.S > index 37b9383eacd3..9e0857fbe281 100644 > --- a/arch/mips/kernel/genex.S > +++ b/arch/mips/kernel/genex.S > @@ -354,6 +354,17 @@ NESTED(ejtag_debug_handler, PT_SIZE, sp) > sll k0, k0, 30 # Check for SDBBP. > bgez k0, ejtag_return > > +#ifdef CONFIG_SMP > + PTR_LA k0, ejtag_debug_buffer > +1: sync Is the sync necessary? Or is that one of those platform specific workarounds? > + ll k0, LONGSIZE(k0) > + bnez k0, 1b > + PTR_LA k0, ejtag_debug_buffer > + sc k0, LONGSIZE(k0) > + beqz k0, 1b > + sync > +#endif > + > PTR_LA k0, ejtag_debug_buffer > LONG_S k1, 0(k0) > SAVE_ALL > @@ -363,6 +374,11 @@ NESTED(ejtag_debug_handler, PT_SIZE, sp) > PTR_LA k0, ejtag_debug_buffer > LONG_L k1, 0(k0) > > +#ifdef CONFIG_SMP > + sw zero, LONGSIZE(k0) > + sync Same question. Its about to deret anyway which should cover that I think? > +#endif > + > ejtag_return: > MFC0 k0, CP0_DESAVE Not specific to your patch, but I wonder whether there should be a back_to_back_c0_hazard (ehb on r2+) somewhere before this MFC0. Cheers James
Attachment:
signature.asc
Description: Digital signature