This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
Re: arm64 uprobes support showing signs of life
- From: William Cohen <wcohen at redhat dot com>
- To: Pratyush Anand <panand at redhat dot com>, systemtap at sourceware dot org, "arm at lists dot fedoraproject dot org" <arm at lists dot fedoraproject dot org>
- Date: Wed, 07 Jan 2015 08:10:17 -0500
- Subject: Re: arm64 uprobes support showing signs of life
- Authentication-results: sourceware.org; auth=none
- References: <54AAB673 dot 6040200 at redhat dot com> <54AD218B dot 6020002 at redhat dot com>
On 01/07/2015 07:07 AM, Pratyush Anand wrote:
> Hi Will,
>
>
> On Monday 05 January 2015 09:36 PM, William Cohen wrote:
>> Hi All,
>>
>> Pratyush has been implementing uprobes support for aarch64 and has
>> posted a set of patches
>> (http://comments.gmane.org/gmane.linux.ports.arm.kernel/382237) for
>> review. The really new Linux kernels requires a patch to the
>> systemtap runtime because the f_dentry macro has been removed. With
>> the patched systemtap I was able to run the systemtap testsuite and
>> get some test results exercising the uprobes support:
>>
>> https://web.elastic.org/~dejazilla/viewsummary.php?summary=%3D%27%3C54A9E21C.2080504%40redhat.com%3E%27
>>
>> There looked to be a localized fixes for plt support to eliminate the
>> unsupported systemtap.base/list.exp plt-* tests.
>>
>> A number of the tests appear to fail because of userspace arguments
>> cannot be found for sdt probes.
>>
>> The uprobe patches still need some refinement. On a number of
>> systemtap "make installcheck" runs the kernel would get stuck spewing
>> out:
>>
>> Unexpected kernel single-step exception at EL1
>
> There are at least two functions of arm64/uprobe implementation uprobe_breakpoint_handler and uprobe_single_step_handler, where a kprobe insertion might be causing above issue. Currently I have qualified these functions with __kprobe, so that one can not insert a kprobe there. With this you should not be able to see the above message.
>
> However, I am still investigating if a kprobe insertion be allowed to these functions or any other function which is called directly from debug exception handler (do_debug_exception)
>
Hi Pratyush,
Are there any other places that need to be protected from kprobe probing in the arm64 code?
> Update code is here:
>
> https://github.com/pratyushanand/linux.git : ml_arm64_uprobe_devel_v2
>
> ~Pratyush
I will give the new kernel a try.
-Will
>
>>
>> However, things are looking better for user-space probing on arm64.
>>
>> -Will
>>