[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <0fdb07bd-fe66-5087-9740-1f87f14e4b60@linux.vnet.ibm.com>
Date: Thu, 1 Mar 2018 11:02:07 +0530
From: Ravi Bangoria <ravi.bangoria@...ux.vnet.ibm.com>
To: Masami Hiramatsu <mhiramat@...nel.org>
Cc: peterz@...radead.org, mingo@...hat.com, acme@...nel.org,
alexander.shishkin@...ux.intel.com, jolsa@...hat.com,
namhyung@...nel.org, linux-kernel@...r.kernel.org,
rostedt@...dmis.org, ananth@...ux.vnet.ibm.com,
naveen.n.rao@...ux.vnet.ibm.com, srikar@...ux.vnet.ibm.com,
oleg@...hat.com, Ravi Bangoria <ravi.bangoria@...ux.vnet.ibm.com>
Subject: Re: [RFC 0/4] trace_uprobe: Support SDT markers having semaphore
On 02/28/2018 07:55 PM, Masami Hiramatsu wrote:
> Hi Ravi,
>
> Thank you for your great work!
Thanks Masami.
> On Wed, 28 Feb 2018 13:23:41 +0530
> Ravi Bangoria <ravi.bangoria@...ux.vnet.ibm.com> wrote:
>
>> Userspace Statically Defined Tracepoints[1] are dtrace style markers
>> inside userspace applications. These markers are added by developer at
>> important places in the code. Each marker source expands to a single
>> nop instruction in the compiled code but there may be additional
>> overhead for computing the marker arguments which expands to couple of
>> instructions. If this computaion is quite more, execution of it can be
>> ommited by runtime if() condition when no one is tracing on the marker:
...
>>
>> Semaphore offset is 0x10036. I don't have educated 'perf probe'
>> about semaphore. So instead of using 'perf probe' command, I'm
>> manually adding entry in the <tracefs>/uprobe_events file.
> Ok, it is easy to pass semaphore address via perf probe :)
Yes, it should be fairly easy to parse semaphore at buildid-cache time.
Will add a patch for that.
>
>> Special char * denotes semaphore offset.
>>
>>
>> # echo "p:sdt_tick/loop2 /tmp/tick:0x6e4 *0x10036" > uprobe_events
> IMHO, this syntax is no good, separate with space is only for arguments.
> Since the semaphore is per-probe-point based, that should be specified with probe point.
> (there are no 2 or more semaphores on 1 event, are there?)
> So something like
>
> # echo "p:sdt_tick/loop2 /tmp/tick:0x6e4(0x10036)" > uprobe_events
This is great suggestion. Will change it.
Please review patch 3 and 4 which contains actual implementation.
Thanks for the review,
Ravi
Powered by blists - more mailing lists