Re: Re: [PATCH -tip v4 0/6] kprobes: introduce NOKPROBE_SYMBOL()and fixes crash bugs

From: Masami Hiramatsu
Date: Wed Dec 04 2013 - 18:32:28 EST


(2013/12/04 17:46), Sandeepa Prabhu wrote:
> On 4 December 2013 13:09, Masami Hiramatsu
> <masami.hiramatsu.pt@xxxxxxxxxxx> wrote:
>> (2013/12/04 11:54), Sandeepa Prabhu wrote:
>>> On 4 December 2013 06:58, Masami Hiramatsu
>>> <masami.hiramatsu.pt@xxxxxxxxxxx> wrote:
>>>> Hi,
>>>> Here is the version 4 of NOKPORBE_SYMBOL series.
>>>>
>>>> In this version, I removed the cleanup patches and
>>>> add bugfixes I've found, since those bugs will be
>>>> critical.
>>>> Rest of the cleanup and visible blacklists will be
>>>> proposed later in another series.
>>>>
>>>> Oh, just one new thing, I added a new RFC patch which
>>>> removes the dependency of notify_die() from kprobes
>>>> miss-hit/recovery path. Since the notify_die() involves
>>>> locking and lockdep code which invokes a lot of heavy
>>>> printk functions etc. This helped me to minimize the
>>>> blacklist and provides more stability for kprobes.
>>>> Actually, most of int3 handlers are already called
>>>> from do_int3 directly, I think this change is acceptable
>>>> too.
>>>>
>>>> Here is the updates about NOKPROBE_SYMBOL().
>>>> - Now _ASM_NOKPROBE() macro is introduced for assembly
>>>> symbols on x86.
>>>> - Rename kprobe_blackpoint to kprobe_blacklist_entry
>>>> and simplify it. Also NOKPROBE_SYMBOL() macro just
>>>> saves the address of non-probe-able symbols.
>>>>
>>>> ---
>>>>
>>>> Masami Hiramatsu (6):
>>>
>>>> kprobes: Prohibit probing on .entry.text code
>>>> kprobes: Introduce NOKPROBE_SYMBOL() macro for blacklist
>>> Hi Masami,
>>> Is it good idea to split "arch/x86" code from generic kernel changes?
>>> Then we just need to take above two patches for verifying it on arm64
>>> or other platforms.
>>
>> Yeah, it can be.
>> However I think you can apply it without any problem on arm64 tree too,
>> since it "just adds" an asm macro in arch/x86/include/asm/asm.h.
>> It should not have any effect for other arch. Could you try it? :)
> Hmm, for the second patch, git am failed with: "error: patch failed:
> kernel/sched/core.c:2662",
> manually patched to resolve it. aarch64 tree is right now at Linux 3.13-rc2.

Ah I see, that must be changed because it is the change related to introducing
new blacklist itself. It is not solved by splitting arch/x86 change.

Thank you,

--
Masami HIRAMATSU
IT Management Research Dept. Linux Technology Center
Hitachi, Ltd., Yokohama Research Laboratory
E-mail: masami.hiramatsu.pt@xxxxxxxxxxx


--
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/