All of lore.kernel.org
 help / color / mirror / Atom feed
From: wangnan0@huawei.com (Wang Nan)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v14 7/7] ARM: kprobes: enable OPTPROBES for ARM 32
Date: Mon, 8 Dec 2014 21:48:04 +0800	[thread overview]
Message-ID: <5485AC14.1000207@huawei.com> (raw)
In-Reply-To: <1418044934.3647.61.camel@linaro.org>

On 2014/12/8 21:22, Jon Medhurst (Tixy) wrote:
> On Mon, 2014-12-08 at 20:31 +0800, Wang Nan wrote:
>> On 2014/12/8 20:06, Wang Nan wrote:
>>> On 2014/12/8 19:50, Jon Medhurst (Tixy) wrote:
>>>> On Mon, 2014-12-08 at 19:15 +0800, Wang Nan wrote:
>>>>> On 2014/12/8 19:04, Jon Medhurst (Tixy) wrote:
>>>>>> On Mon, 2014-12-08 at 14:28 +0800, Wang Nan wrote:
>> [...]
>>>>
>>>> so another CPU could find and delete next before this one has finished
>>>> doing so. Would the list end up in a consistent state where no loops
>>>> develop and no probes are missed? I don't know the answer and a full
>>>> analysis would be complicated, but my gut feeling is that if a cpu can
>>>> observe the links in the list in an inconsistent state then only bad
>>>> things can result.
>>>>
>>>
>>> I see the problem.
>>>
>>> I'm thinking about making core.c and opt-arm.c to share stop_machine() code.
>>> stop_machine() is required when removing breakpoint, so I'd like to define
>>> a "remove_breakpoint" function in core.c and make opt-arm.c to call it.
>>> Do you think it is a good idea?
>>>
>>>
>>
>> What I mean is something like this:
> 
> Yes, that should work, though as remove_breakpoint is a globally visible
> symbol, I suggest a less generic name for it, perhaps
> remove_kprobe_breakpoint ?
> 

I don't think it is globally visible. Only files in arm/probes/kprobes
can include "core.h". However, I do agree that remove_breakpoint() is not
a good name. In my v15 patch, I'd like to rename it to kprobe_remove_breakpoint(),
due to may of names defined in core.h are called kprobes_xxx.

Thank you!

WARNING: multiple messages have this Message-ID (diff)
From: Wang Nan <wangnan0@huawei.com>
To: "Jon Medhurst (Tixy)" <tixy@linaro.org>
Cc: <masami.hiramatsu.pt@hitachi.com>, <linux@arm.linux.org.uk>,
	<lizefan@huawei.com>, <linux-kernel@vger.kernel.org>,
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH v14 7/7] ARM: kprobes: enable OPTPROBES for ARM 32
Date: Mon, 8 Dec 2014 21:48:04 +0800	[thread overview]
Message-ID: <5485AC14.1000207@huawei.com> (raw)
In-Reply-To: <1418044934.3647.61.camel@linaro.org>

On 2014/12/8 21:22, Jon Medhurst (Tixy) wrote:
> On Mon, 2014-12-08 at 20:31 +0800, Wang Nan wrote:
>> On 2014/12/8 20:06, Wang Nan wrote:
>>> On 2014/12/8 19:50, Jon Medhurst (Tixy) wrote:
>>>> On Mon, 2014-12-08 at 19:15 +0800, Wang Nan wrote:
>>>>> On 2014/12/8 19:04, Jon Medhurst (Tixy) wrote:
>>>>>> On Mon, 2014-12-08 at 14:28 +0800, Wang Nan wrote:
>> [...]
>>>>
>>>> so another CPU could find and delete next before this one has finished
>>>> doing so. Would the list end up in a consistent state where no loops
>>>> develop and no probes are missed? I don't know the answer and a full
>>>> analysis would be complicated, but my gut feeling is that if a cpu can
>>>> observe the links in the list in an inconsistent state then only bad
>>>> things can result.
>>>>
>>>
>>> I see the problem.
>>>
>>> I'm thinking about making core.c and opt-arm.c to share stop_machine() code.
>>> stop_machine() is required when removing breakpoint, so I'd like to define
>>> a "remove_breakpoint" function in core.c and make opt-arm.c to call it.
>>> Do you think it is a good idea?
>>>
>>>
>>
>> What I mean is something like this:
> 
> Yes, that should work, though as remove_breakpoint is a globally visible
> symbol, I suggest a less generic name for it, perhaps
> remove_kprobe_breakpoint ?
> 

I don't think it is globally visible. Only files in arm/probes/kprobes
can include "core.h". However, I do agree that remove_breakpoint() is not
a good name. In my v15 patch, I'd like to rename it to kprobe_remove_breakpoint(),
due to may of names defined in core.h are called kprobes_xxx.

Thank you!



  reply	other threads:[~2014-12-08 13:48 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-12-08  6:27 [PATCH v14 0/7] ARM: kprobes: OPTPROBES and other improvements Wang Nan
2014-12-08  6:27 ` Wang Nan
2014-12-08  6:27 ` [PATCH v14 1/7] ARM: probes: move all probe code to dedicate directory Wang Nan
2014-12-08  6:27   ` Wang Nan
2014-12-08  6:27 ` [PATCH v14 2/7] ARM: kprobes: introduces checker Wang Nan
2014-12-08  6:27   ` Wang Nan
2014-12-08  6:28 ` [PATCH v14 3/7] ARM: kprobes: collects stack consumption for store instructions Wang Nan
2014-12-08  6:28   ` Wang Nan
2014-12-08  6:28 ` [PATCH v14 4/7] ARM: kprobes: disallow probing stack consuming instructions Wang Nan
2014-12-08  6:28   ` Wang Nan
2014-12-08  6:28 ` [PATCH v14 5/7] ARM: kprobes: Add test cases for " Wang Nan
2014-12-08  6:28   ` Wang Nan
2014-12-08  6:28 ` [PATCH v14 6/7] kprobes: Pass the original kprobe for preparing optimized kprobe Wang Nan
2014-12-08  6:28   ` Wang Nan
2014-12-08  6:28 ` [PATCH v14 7/7] ARM: kprobes: enable OPTPROBES for ARM 32 Wang Nan
2014-12-08  6:28   ` Wang Nan
2014-12-08 11:04   ` Jon Medhurst (Tixy)
2014-12-08 11:04     ` Jon Medhurst (Tixy)
2014-12-08 11:15     ` Wang Nan
2014-12-08 11:15       ` Wang Nan
2014-12-08 11:50       ` Jon Medhurst (Tixy)
2014-12-08 11:50         ` Jon Medhurst (Tixy)
2014-12-08 12:06         ` Wang Nan
2014-12-08 12:06           ` Wang Nan
2014-12-08 12:31           ` Wang Nan
2014-12-08 12:31             ` Wang Nan
2014-12-08 13:22             ` Jon Medhurst (Tixy)
2014-12-08 13:22               ` Jon Medhurst (Tixy)
2014-12-08 13:48               ` Wang Nan [this message]
2014-12-08 13:48                 ` Wang Nan
2014-12-09 10:14         ` Masami Hiramatsu
2014-12-09 10:14           ` Masami Hiramatsu
2014-12-09 10:30           ` Jon Medhurst (Tixy)
2014-12-09 10:30             ` Jon Medhurst (Tixy)
2014-12-09 15:13             ` Masami Hiramatsu
2014-12-09 15:13               ` Masami Hiramatsu

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=5485AC14.1000207@huawei.com \
    --to=wangnan0@huawei.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.