public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Masami Hiramatsu <mhiramat@redhat.com>
To: Mathieu Desnoyers <compudj@krystal.dyndns.org>
Cc: Frederic Weisbecker <fweisbec@gmail.com>,
	Ingo Molnar <mingo@elte.hu>,
	Ananth N Mavinakayanahalli <ananth@in.ibm.com>,
	lkml <linux-kernel@vger.kernel.org>,
	Jim Keniston <jkenisto@us.ibm.com>,
	Srikar Dronamraju <srikar@linux.vnet.ibm.com>,
	Christoph Hellwig <hch@infradead.org>,
	Steven Rostedt <rostedt@goodmis.org>,
	"H. Peter Anvin" <hpa@zytor.com>,
	Anders Kaseorg <andersk@ksplice.com>,
	Tim Abbott <tabbott@ksplice.com>,
	Andi Kleen <andi@firstfloor.org>, Jason Baron <jbaron@redhat.com>,
	systemtap <systemtap@sources.redhat.com>,
	DLE <dle-develop@lists.sourceforge.net>
Subject: Re: [PATCH -tip v8 0/9] kprobes: Kprobes jump optimization support
Date: Fri, 22 Jan 2010 15:59:39 -0500	[thread overview]
Message-ID: <4B5A11BB.9010801@redhat.com> (raw)
In-Reply-To: <20100122185816.GB25202@Krystal>

Mathieu Desnoyers wrote:
> * Masami Hiramatsu (mhiramat@redhat.com) wrote:
>> Hi,
>>
>> Here are the patchset of the kprobes jump optimization v8
>> (a.k.a. Djprobe). This version is just moving onto
>> 2.6.33-rc4-tip. Ingo, I assume its a good timing to
>> push this code onto -tip tree (maybe developing branch?),
>> since people can test it with perf-probe.
>>
>> I've decided to make a separated series of patches of
>> jump optimization with text_poke_smp() which is
>> 'officially' supported on Intel's processors.
>> So, this version of patches are just updated against
>> the latest tip/master, no other updates are included.
>>
>> I know that int3-bypassing method (text_poke_fixup())
>> is currently unofficially believed as safe. But we
>> need to get more official answers from x86 vendors.
>> Moreover, we need to tweak entry_*.S for preventing
>> recursive NMI, because int3 inside NMI handler will
>> unblock NMI blocking. I'd like to push it after this
>> series of patches are merged.
>>
>> Anyway, thanks Mathieu and Peter, for helping me to
>> implement it and organizing discussion points about
>> int3-bypass XMC!
>>
>> These patches can be applied on the latest -tip.
>>
>> Changes in v8:
>>  - Update patches against the latest tip/master.
>>  - Drop text_poke_fixup() related patches.
>>  - Update benchmark results and add jprobes and kprobe(post-handler)
>>    results.
>>
>> And kprobe stress test didn't found any regressions - from kprobes,
>> under kvm/x86.
>>
>> TODO:
>>  - Support NMI-safe int3-bypassing text_poke.
> 
> Please have a look at:
> 
> "x86 NMI-safe INT3 and Page Fault"
> http://git.kernel.org/?p=linux/kernel/git/compudj/linux-2.6-lttng.git;a=commit;h=90516e3c718e0502f6f2eb616fad4447645ca47d
> 
> and
> 
> "x86_64 page fault NMI-safe"
> http://git.kernel.org/?p=linux/kernel/git/compudj/linux-2.6-lttng.git;a=commit;h=ad1bf11a68c35a44edd8d686a0842896f408e17c
> 
> That turns this TODO into the "done" section ;)
> 
> I've been using these patches in the lttng tree for 1-2 years.

Hi Mathieu,

Sure, those looks good to me too. Thanks!

I'd just like to separate this issue from kprobe jump optimization
itself this time, because;
- text_poke_fixup() is not necessary to kprobes :-)
- the int3-bypassing text_poke method is still unofficially ensured
  by intel people. and we also need to require answers from other
  x86 compatible processor vendors. 

Anyway, my next series of patches will contain those patches.

BTW, I think your 2nd patch seems good to send to upstream separately.

Thank you!

-- 
Masami Hiramatsu

Software Engineer
Hitachi Computer Products (America), Inc.
Software Solutions Division

e-mail: mhiramat@redhat.com


      reply	other threads:[~2010-01-22 21:00 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-01-22 18:54 [PATCH -tip v8 0/9] kprobes: Kprobes jump optimization support Masami Hiramatsu
2010-01-22 18:54 ` [PATCH -tip v8 1/9] kprobes/x86: Cleanup RELATIVEJUMP_INSTRUCTION to RELATIVEJUMP_OPCODE Masami Hiramatsu
2010-01-22 18:55 ` [PATCH -tip v8 2/9] kprobes: Introduce generic insn_slot framework Masami Hiramatsu
2010-01-22 18:55 ` [PATCH -tip v8 3/9] kprobes: Introduce kprobes jump optimization Masami Hiramatsu
2010-01-22 18:55 ` [PATCH -tip v8 4/9] kprobes: Jump optimization sysctl interface Masami Hiramatsu
2010-01-22 18:55 ` [PATCH -tip v8 5/9] kprobes/x86: Boost probes when reentering Masami Hiramatsu
2010-01-22 18:55 ` [PATCH -tip v8 6/9] kprobes/x86: Cleanup save/restore registers Masami Hiramatsu
2010-01-22 18:55 ` [PATCH -tip v8 7/9] x86: Add text_poke_smp for SMP cross modifying code Masami Hiramatsu
2010-01-22 18:55 ` [PATCH -tip v8 8/9] kprobes/x86: Support kprobes jump optimization on x86 Masami Hiramatsu
2010-01-22 18:55 ` [PATCH -tip v8 9/9] kprobes: Add documents of jump optimization Masami Hiramatsu
2010-01-22 18:58 ` [PATCH -tip v8 0/9] kprobes: Kprobes jump optimization support Mathieu Desnoyers
2010-01-22 20:59   ` Masami Hiramatsu [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4B5A11BB.9010801@redhat.com \
    --to=mhiramat@redhat.com \
    --cc=ananth@in.ibm.com \
    --cc=andersk@ksplice.com \
    --cc=andi@firstfloor.org \
    --cc=compudj@krystal.dyndns.org \
    --cc=dle-develop@lists.sourceforge.net \
    --cc=fweisbec@gmail.com \
    --cc=hch@infradead.org \
    --cc=hpa@zytor.com \
    --cc=jbaron@redhat.com \
    --cc=jkenisto@us.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=rostedt@goodmis.org \
    --cc=srikar@linux.vnet.ibm.com \
    --cc=systemtap@sources.redhat.com \
    --cc=tabbott@ksplice.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox