|
From: Masami H. <mhi...@re...> - 2010-02-24 16:23:36
|
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: mhi...@re...
|