On 2015/06/02 1:32, Eugene Shatokhin wrote:
> Kprobes' "boost" feature allows to avoid single-stepping in some cases, along 
> with its overhead.
> It is useful for the Kprobes that cannot be optimized for some reason.
> 
> Currently, "boost" cannot be applied to the instructions of 10 and 11 bytes 
> in size, including 
> some rather commonly used kinds of MOV.
> 
> The first of the two patches in this series fixes the code that checks if the 
> jump needed for
> the boost fits in the insn slot (the conditional is too strict). This allows 
> to apply "boost"
> to 10-byte instructions.
> 
> As a side effect of commit 91e5ed49fca0 ("x86/asm/decoder: Fix and enforce 
> max instruction
> size in the insn decoder"), the size of the instruction slot became 1 byte 
> smaller, 15 bytes
> VS 16 bytes before that change. The second patch makes the size of each insn 
> slot 16 bytes
> again (while keeping MAX_INSN_SIZE as 15). This allows to apply "boost" to 
> 11-byte
> instructions as well.
> 
> I have checked that "boost" does happen for at least "movq $0x1,0x100(%rbx)"
> (48 c7 83 00 01 00 00 01 00 00 00) in the kernel 4.1-rc6 after these changes.

Ah, I didn't expected that such long instruction existed without redundant 
prefixes.
I have some comment on that, but basically agree to support this.

Thank you!

-- 
Masami HIRAMATSU
Linux Technology Research Center, System Productivity Research Dept.
Center for Technology Innovation - Systems Engineering
Hitachi, Ltd., Research & Development Group
E-mail: masami.hiramatsu...@hitachi.com
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to