Re: kprobes vs __ex_table[]
From: Masami Hiramatsu
Date: Tue Feb 28 2017 - 11:20:07 EST
Hi Peter,
On Fri, 24 Feb 2017 10:26:46 +0100
Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
> One more complication with __ex_table and optimized kprobes is that we
> need to be careful not to clobber __ex_table[].fixup. It would be very
> bad if the optimized probe were to clobber the address we let the fixup
> return to -- or that needs fixups too, _after_ running
> __ex_table[].handler().
This gave me a chance to read closer current code, and I found that
I made a mistake 5 years ago on kprobe-booster. The commit 464846888d9a
("x86/kprobes: Fix a bug which can modify kernel code permanently")
introduced another bug -- which passed the address of copied instruction
instead of probing address to search_exception_tables() when preparing
kprobe-booster (skips singlestep.)
I'll send a fix patch.
Thank you,
--
Masami Hiramatsu <mhiramat@xxxxxxxxxx>