Re: [PATCH -tip v5 03/10] kprobes: Introduce kprobes jump optimization

From: Masami Hiramatsu
Date: Wed Nov 25 2009 - 16:31:09 EST


Steven Rostedt wrote:
> On Tue, 2009-11-24 at 15:59 -0500, Masami Hiramatsu wrote:
>
>>> I see...so the non-preemptible kernel requirement looks
>>> hard to workaround :-s
>>
>> It's the next challenge I think :-)
>> Even though, kprobes itself still work on preemptive kernel,
>> so we don't lose any functionality.
>
>> From kstop_machine, we could search all tasks to see if any are about to
> resume in the modified location. If there is, we could either
>
> 1) insert a normal kprobe
> 2) modify the return address of the task to jump to some trampoline to
> finish the work and return to the code spot with a direct jump.
>
> #2 is kind of nasty but seems like a fun thing to implement ;-)

Sure, anyway, a normal kprobe is already inserted, so we also can
just wait until all tasks don't resume to the spot :-)
(that's another reason why it uses delayed work for optimization.
we can try it again and again.)
And I think, that code will be shared with ksplice too.

Thank you,


--
Masami Hiramatsu

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

e-mail: mhiramat@xxxxxxxxxx

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/