[PATCH v4 9/9] riscv: Fixup lockdep_assert_held(&text_mutex) in patch_insn_write
Guo Ren
guoren at kernel.org
Wed Oct 21 04:27:02 EDT 2020
Why?
funca:
nop addi sp,sp, -8
nop sd ra, 0(sp)
nop, nop auipc ra, 0x?
nop, nop -> jalr -?(ra)
nop ld ra,0(sp)
nop addi sp,sp, 8
When CPU0 has only changed half of them, CPU1 call funca then CPU1 broken.
On Wed, Oct 21, 2020 at 4:41 AM Steven Rostedt <rostedt at goodmis.org> wrote:
>
> On Tue, 20 Oct 2020 19:18:01 +0800
> Guo Ren <guoren at kernel.org> wrote:
>
> > > What platform are you testing ? We are seeing a crash while enabling
> > > any of the tracers multiple times
> > > on Qemu/HiFive Unleashed.
> > I use qemu for testing. I've changed dynamic ftrace mechanism from
> > mcount to -fpatchable-entry.
> >
> > The problem is made by the lockdep checking of text_mutex.
>
> If you are switching to "patchable-entry" you shouldn't need to use
> stop_machine for the updates. No?
>
> -- Steve
--
Best Regards
Guo Ren
ML: https://lore.kernel.org/linux-csky/
More information about the linux-riscv
mailing list