This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH -tip v10 0/9] kprobes: Kprobes jump optimization support


Masami Hiramatsu wrote:
> Steven Rostedt wrote:
>> On Thu, 2010-02-18 at 17:12 -0500, Masami Hiramatsu wrote:
>>
>>> This version of patch series uses text_poke_smp() which
>>> update kernel text by stop_machine(). That is 'officially'
>>> supported on Intel's processors. text_poke_smp() can't
>>> be used for modifying NMI code,
>>
>> But it can be made to use with NMI code. If you look at what I did to
>> allow ftrace to modify NMI code, it may be able to do the same thing.
> 
> Yeah, I know. But basically, kprobes doesn't support probing NMI.
> Maybe, it's possibly the next step. :)

I mean that it may be overkill for this series, because the kprobes
itself doesn't support NMI. So I think it should be done by another
series (for simplify patches).


BTW, now there are two candidates for NMI supported text_poke()
on x86. AFAIK, those have following issues/features.

- text_poke_fixup()
  - Send IPI twice instead of kstop_machine.
  - Need a detour buffer if replacing code is not a jump.
  - Unofficial method for x86.

- generic ftrace_modify_code
  - Use kstop_machine and wait an NMI.
  - Temporarily clear the kernel text read-only flag entirely 
    (can we use text_poke instead?)

Thank you,

-- 
Masami Hiramatsu
e-mail: mhiramat@redhat.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]