Re: [PATCH -v5 05/17] x86/ftrace: Use text_poke()

Peter Zijlstra
2019-11-12T22:24:43Z

On Tue, Nov 12, 2019 at 01:25:36PM -0500, Steven Rostedt wrote:
> On Mon, 11 Nov 2019 14:12:57 +0100
> Peter Zijlstra <peterz@infradead.org> wrote:

> > int ftrace_arch_code_modify_post_process(void)
> > __releases(&text_mutex)
> > {
> > - set_all_modules_text_ro();
> > - set_kernel_text_ro();
> > + text_poke_finish();
>
> Why is the text_poke_finish() needed here? Can we add a comment about
> why?

I think this is because of the text_poke_queue() in
ftrace_modify_code_direct(). I seem to have forgotten the code-flow
between the core and arch parts of ftrace again.

But sure, I can try and dig that out again and write a comment.

> > + text_poke_bp((void *)ip, new, MCOUNT_INSN_SIZE, NULL); // BATCH
>
> What do you mean by "BATCH" ?

Ah, that was a question, can/should we use text_poke_queue() there?