public inbox for systemtap@sourceware.org
 help / color / mirror / Atom feed
From: William Cohen <wcohen@redhat.com>
To: Pratyush Anand <panand@redhat.com>
Cc: David Long <dave.long@linaro.org>,
	systemtap@sourceware.org,        Mark Brown <broonie@linaro.org>,
	Jeremy Linton <jlinton@redhat.com>,
	       David Smith <dsmith@redhat.com>,
	"Frank Ch. Eigler" <fche@redhat.com>
Subject: Re: exercising current aarch64 kprobe support with systemtap
Date: Wed, 17 Aug 2016 14:36:00 -0000	[thread overview]
Message-ID: <eb6bb817-64f7-0a50-5f20-7797fd84b822@redhat.com> (raw)
In-Reply-To: <fd49a38c-a429-545f-be76-b63faf92c084@redhat.com>

On 08/04/2016 04:50 PM, William Cohen wrote:
> On 08/04/2016 10:35 AM, Pratyush Anand wrote:
>> Hi Will,
>>
>> On 04/08/2016:09:56:45 AM, William Cohen wrote:
> ...
>>> Hi,
>>>
>>> The OOM errors came before the otf_stress_hard_iter_5000 test that previous triggered the infinite unexpected EL1, so can't really say that the proposed patch has fixed the problem.
>>
>> Yes, yes, previously also we were getting OOM, and then that OOM was triggering
>> infinite unexpected EL1, because OOM message uses WARN_ON() to print, and
>> WARN_ON() uses "BRK BUG_BRK_IMM". Now when it is printing though BRK, we were
>> hitting kprobe at print_worker_info() which was resulting in unexpected EL1.
>>
>> Proposed patch fixes kprobe tracing within none kprobe BRK context such as
>> uprobe or WARN_ON() breakpoint handler etc. So, now a kprobe at
>> print_worker_info() will work while printing message of WARN_ON().
>>
>>
>>>
>>> Any thoughts on how to track down the oom issue?  Are you able to replicate it running the systemtap onthefly/kprobes_onthefly.exp tests?
>>
>> Sure, will look into. Have reserved a seattle.
>>
>> ~Pratyush
>>
> 
> Hi Pratyush,
> 
> The stack backtrace of http://paste.stg.fedoraproject.org/5375/ is:
> 
> 
> [  668.676682] [<fffffc00082386fc>] page_counter_cancel+0x54/0x60
> [  668.682508] [<fffffc000823885c>] page_counter_uncharge+0x2c/0x40
> [  668.688509] [<fffffc0008239c68>] cancel_charge+0x40/0xe0
> [  668.693815] [<fffffc000823fdfc>] mem_cgroup_cancel_charge+0x2c/0x38
> [  668.700088] [<fffffc00081c96a8>] uprobe_write_opcode+0x4e8/0x688
> [  668.706089] [<fffffc00081c9878>] set_swbp+0x30/0x40
> [  668.710962] [<fffffc00081c98e4>] install_breakpoint.isra.10+0x5c/0x2b8
> [  668.717484] [<fffffc00081ca6d8>] uprobe_mmap+0x248/0x2a8
> [  668.722791] [<fffffc000820fbac>] mmap_region+0x204/0x558
> [  668.728097] [<fffffc0008210164>] do_mmap+0x264/0x320
> [  668.733057] [<fffffc00081f2238>] vm_mmap_pgoff+0xb0/0xd8
> [  668.738363] [<fffffc00081f22d0>] vm_mmap+0x70/0xa0
> [  668.743149] [<fffffc00082a62c8>] elf_map+0x80/0xf8
> [  668.747934] [<fffffc00082a7a48>] load_elf_binary+0x480/0xb90
> [  668.753588] [<fffffc0008252e7c>] search_binary_handler+0xbc/0x210
> [  668.759674] [<fffffc0008253810>] do_execveat_common+0x4b0/0x620
> [  668.765587] [<fffffc0008253c74>] SyS_execve+0x44/0x58
> [  668.770633] [<fffffc0008082c4c>] __sys_trace_return+0x0/0x4
> 
> There is some uprobe code running in the traceback.  It looks like things are going wrong when uprobes are being installed on a newly loaded executable.
> 
> -Will
> 

Hi,

I was able to locally build uptream_arm64-devel branch of  https://github.com/pratyushanand/linux.git with the configure from fedora rawhide and run the systemtap tests. Pratyush were there changes in patches between these versions?  The only other difference is that the machine above was a fedora 24 machine rather than a RHELSA, so there would be differences in the compiler and other tools. The results (systemtap.log and systemtap.sum) are at:

http://people.redhat.com/wcohen/aarch64/20160817/

I the results have been sent to dejazilla, but dejazilla appears to be having issues with displaying results (https://web.elastic.org/~dejazilla/viewsummary.php?summary=%3D%27%3Ccdc0ada3-26b8-295d-2d3b-d8a88da83e17%40redhat.com%3E%27)

The results look pretty respectable

		=== systemtap Summary ===

# of expected passes		8809
# of unexpected failures	69
# of unexpected successes	1
# of expected failures		339
# of unknown successes		3
# of known failures		95
# of untested testcases		749
# of unsupported tests		33

There are about a dozen failures due to the the search for atomic regions going beyond the beginning of the function which prevents probes on a number of functions like the following test:

spawn stap /root/systemtap_write/systemtap/testsuite/systemtap.base/bz1027459.stp
WARNING: probe kernel.function("SyS_set_tid_address@kernel/fork.c:1234").call (address 0xfffffc00080cb528) registration error (rc -22)
WARNING: probe kernel.function("SyS_sched_setaffinity@kernel/sched/core.c:4716").call (address 0xfffffc00081051b0) registration error (rc -22)
WARNING: probe kernel.function("SyS_sched_get_priority_min@kernel/sched/core.c:5040").call (address 0xfffffc0008105688) registration error (rc -22)
WARNING: probe kernel.function("SyS_sched_get_priority_max@kernel/sched/core.c:5013").call (address 0xfffffc0008105620) registration error (rc -22)

There are also some differences in the syscalls used on aarch64 that cause some of the tests to fail.

-Will

  reply	other threads:[~2016-08-17 14:36 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-09 16:17 William Cohen
2016-06-09 19:52 ` William Cohen
2016-06-10  3:42   ` David Long
2016-06-10  5:49   ` David Long
2016-06-10 13:43     ` Pratyush Anand
2016-06-10 14:03       ` William Cohen
2016-06-10 14:37         ` David Long
2016-06-10 15:27           ` William Cohen
2016-06-10 14:20       ` David Long
2016-06-10 15:11         ` William Cohen
2016-06-10 17:07         ` Pratyush Anand
2016-07-12 14:33     ` William Cohen
2016-07-13 18:26       ` David Long
2016-07-13 18:47         ` Pratyush Anand
2016-07-13 19:45           ` William Cohen
2016-06-10 21:28 ` William Cohen
2016-06-10 21:37   ` William Cohen
2016-06-13  4:28   ` Pratyush Anand
2016-06-13 13:42     ` William Cohen
2016-06-22 20:24   ` William Cohen
2016-06-23  3:19     ` David Long
2016-06-23 13:42       ` William Cohen
2016-06-23 13:47         ` David Smith
2016-06-23 15:49       ` William Cohen
2016-06-23 18:26         ` David Long
2016-06-23 19:22           ` William Cohen
2016-06-27  2:57             ` David Long
2016-06-27 14:18             ` Pratyush Anand
2016-06-28  3:20               ` William Cohen
2016-07-04 12:46                 ` Pratyush Anand
2016-07-07 19:05                   ` David Long
2016-07-07 19:58                     ` Frank Ch. Eigler
2016-08-03 13:13                       ` Pratyush Anand
2016-08-03 14:51                         ` William Cohen
2016-08-03 15:11                           ` David Long
2016-08-03 17:40                         ` William Cohen
2016-08-03 20:00                           ` Lastest kprobes64 patch David Long
2016-08-03 20:01                             ` Frank Ch. Eigler
2016-08-03 20:08                               ` David Long
2016-08-04  5:03                             ` Pratyush Anand
2016-08-04 13:07                               ` David Long
2016-08-04  4:42                           ` exercising current aarch64 kprobe support with systemtap Pratyush Anand
2016-08-04 13:57                             ` William Cohen
2016-08-04 14:36                               ` Pratyush Anand
2016-08-04 14:50                                 ` William Cohen
2016-08-04 20:51                                 ` William Cohen
2016-08-17 14:36                                   ` William Cohen [this message]
2016-08-17 18:04                                     ` David Smith
2016-08-17 18:28                                       ` William Cohen
2016-08-18 15:07                                         ` David Smith
2016-08-18 15:16                                           ` William Cohen
2016-08-18 15:39                                             ` David Smith
2016-08-18 14:55                                     ` Pratyush Anand
2016-06-13 16:11 ` William Cohen
2016-06-13 16:15   ` William Cohen
2016-06-14  4:27   ` Pratyush Anand

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=eb6bb817-64f7-0a50-5f20-7797fd84b822@redhat.com \
    --to=wcohen@redhat.com \
    --cc=broonie@linaro.org \
    --cc=dave.long@linaro.org \
    --cc=dsmith@redhat.com \
    --cc=fche@redhat.com \
    --cc=jlinton@redhat.com \
    --cc=panand@redhat.com \
    --cc=systemtap@sourceware.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).