From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 26565 invoked by alias); 20 Oct 2011 14:37:00 -0000 Received: (qmail 26131 invoked by uid 22791); 20 Oct 2011 14:36:59 -0000 X-SWARE-Spam-Status: No, hits=-6.7 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_HI,RP_MATCHES_RCVD,SPF_HELO_PASS,TW_DW,TW_TM X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 20 Oct 2011 14:36:39 +0000 Received: from int-mx12.intmail.prod.int.phx2.redhat.com (int-mx12.intmail.prod.int.phx2.redhat.com [10.5.11.25]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id p9KEabfK007185 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Thu, 20 Oct 2011 10:36:38 -0400 Received: from springer.wildebeest.org (ovpn-116-43.ams2.redhat.com [10.36.116.43]) by int-mx12.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id p9KEaair022746 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Thu, 20 Oct 2011 10:36:37 -0400 Received: by springer.wildebeest.org (Postfix, from userid 500) id 83AE840AD2; Thu, 20 Oct 2011 16:36:35 +0200 (CEST) Subject: Re: Enabling dwarf unwinder for ppc64 From: Mark Wielaard To: systemtap@sourceware.org In-Reply-To: <1318544454.17642.24.camel@springer.wildebeest.org> References: <1317986514.3351.26.camel@springer.wildebeest.org> <1318544454.17642.24.camel@springer.wildebeest.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Date: Thu, 20 Oct 2011 14:37:00 -0000 Message-ID: <1319121395.15833.42.camel@springer.wildebeest.org> Mime-Version: 1.0 Mailing-List: contact systemtap-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: systemtap-owner@sourceware.org X-SW-Source: 2011-q4/txt/msg00085.txt.bz2 On Fri, 2011-10-14 at 00:20 +0200, Mark Wielaard wrote: > On Fri, 2011-10-07 at 13:21 +0200, Mark Wielaard wrote: > > It isn't perfect yet, but good enough to make all context.exp > > kernel/cross-module backtrace tests work. For kernel unwinding it seems > > good. For user space unwinding there are a couple of issues. > > Specifically symbol lookup seems broken. We discussed this some time ago > > on this list and this is what I am going to look into next, because that > > obscures all other issues (32-on-64 doesn't work and vma-vdso tests > > failing). > [...] > If you have a ppc64 setup, please test it out and let me know of any > issues. The test results already look better, but there are still some, > like the big exelib.exp testcase that fail (I haven't fully figured out > why yet). So, after a couple of tweaks and working around a latent elfutils libdwfl bug exposed by the powerpc code all exelib.exp tests also succeed. Things are not perfect yet, but the test results between x86 and powerpc begin to be comparable. My two test systems are not really equal. The x86_64 setup is running Fedora 14, the powerpc one is running RHEL 6.2 beta. Also I forgot to install a 32bit development environment on the powerpc system, so some differences are because of that. Host: Linux springer.wildebeest.org 2.6.35.14-97.fc14.x86_64 #1 SMP Sat Sep 17 00:15:37 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux Snapshot: version 1.7/0.152 commit release-1.6-336-g0542632 GCC: 4.5.1 [gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)] Distro: Fedora release 14 (Laughlin) # of expected passes 3112 # of unexpected failures 37 # of unexpected successes 8 # of expected failures 256 # of untested testcases 62 # of unsupported tests 2 Host: Linux ibm-ps701-01-lp2.rhts.eng.bos.redhat.com 2.6.32-209.el6.ppc64 #1 SMP Wed Oct 12 03:52:18 EDT 2011 ppc64 ppc64 ppc64 GNU/Linux Snapshot: version 1.7/0.152 commit release-1.6-336-g0542632 GCC: 4.4.6 [gcc (GCC) 4.4.6 20110731 (Red Hat 4.4.6-3)] Distro: Red Hat Enterprise Linux Server release 6.2 Beta (Santiago) # of expected passes 2822 # of unexpected failures 122 # of unexpected successes 9 # of expected failures 255 # of untested testcases 140 # of unsupported tests 4 Here are some of the differences from systemtap.sum: +Running /root/systemtap/testsuite/systemtap.base/backtrace.exp ... +FAIL: backtrace (1 0) +FAIL: backtrace-unwindsyms (1 0) This depends on the kernel supporting dump_trace(), which it does on x86_64, but doesn't on powerpc. It is the fallback we use when we don't have any registers to work with for a probe (begin, end, tracepoints). +Running /root/systemtap/testsuite/systemtap.base/cast-scope.exp ... +FAIL: compiling cast-scope.cxx +UNTESTED: cast-scope.cxx run Cased by cast-scope.cxx:1:21: error: sys/sdt.h: No such file or directory. Hmmm, that seems like a testcase failure, lets fix that... OK, commit 7fc4f1e makes sure the testcase now compiles on both systems. They now FAIL in exactly the same way: FAIL: cast-scope line 1: expected "function direct: {._M_dataplus=3D{._M_p=3D"Hello World!"}= }" Got "function direct: {._M_dataplus=3D{._M_p=3D""}}" +FAIL: stmt_rel stmt_rel (0) Caused by bad debuginfo: spawn stap -c ./stmt_rel.x -e probe process("./stmt_rel.x").statement("Move= @stmt _rel.c+1") {printf("Move %d\n",$s1)} semantic error: not accessible at this address (0x100007f8, dieoffset: 0x54= 6): i dentifier '$s1' at :1:82 source: probe process("./stmt_rel.x").statement("Move@stmt_rel.c+1"= ) {pr intf("Move %d\n",$s1)} =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= =20=20=20=20=20 ^ Pass 2: analysis failed. Try again with another '--vp 01' option. +FAIL: vma_vdso-m64 +FAIL: vma_vdso.c compile -m32 +UNTESTED: vma_vdso-m32 The vdso vma tracker is busted on powerpc, I haven't investigated yet why. The -m32 FAIL comes from not installing the 32bit devel packages of course. +FAIL: vta-test.c compile -m32 -PASS: 32-bit func_alias direct -PASS: 32-bit func_alias wildcard -PASS: 32_BIT_UTRACE_SYSCALL_ARGS startup -PASS: 32_BIT_UTRACE_SYSCALL_ARGS load generation -PASS: 32_BIT_UTRACE_SYSCALL_ARGS shutdown and output More 32bit devel package uninstalled failures. -PASS: RUN1-(-m64) wasn't cached -PASS: RUN2-(-m64) wasn't cached -PASS: RUN1-(-m32) wasn't cached -PASS: RUN2-(-m32) wasn't cached +UNSUPPORTED: gtod Yes, that seems to not match up, but it really seems that is what is happening, weird... O wait, that output is just a typo. Fixed in commit cd4c71e. Now it just says: UNSUPPORTED: hash_add_buildid Dunno why yet. -PASS: plt -PASS: plt -PASS: plt glob +UNTESTED: plt plt probes aren't supported on powerpc yet. -PASS: rep_ret.c compile -m64 -PASS: rep_ret-m64 -PASS: rep_ret.c compile -m32 -PASS: rep_ret-m32 +UNSUPPORTED: rep_ret rep_ret is x86 specific. -PASS: sdt -O2 V2_uprobe +XFAIL: sdt -O2 V2_uprobe -PASS: sdt -O3 V2_uprobe +XFAIL: sdt -O3 V2_uprobe -XFAIL: sdt_misc types types ptr_char_var ptr_short_int_var unsigned_short_int_var ptr_int_var unsigned_int_var ptr_long_long_int_var arr_char_var arr_struct_var V3_uprobe -O2 +XFAIL: sdt_misc types types V3_uprobe -O2 -XFAIL: sdt_misc types types ptr_char_var ptr_short_int_var unsigned_short_int_var ptr_int_var unsigned_int_var ptr_long_long_int_var arr_char_var arr_struct_var V3_uprobe -O3 +XFAIL: sdt_misc types types V3_uprobe -O3 -PASS: sdt_misc compiling sdt_asm.S -PASS: sdt_misc asm (65) I don't know where these differences come from. +FAIL: usymbols -m64 +FAIL: unable to compile usymbols_lib.c -m32 If I install the 32bit devel package the second one does PASS. I think the -m64 variant fails because we are extracting the syscall argument/user pointer wrongly. Needs investigation. -UNTESTED: systemtap.examples/locks/bkl build -UNTESTED: systemtap.examples/locks/bkl run -UNTESTED: systemtap.examples/locks/bkl_stats build -UNTESTED: systemtap.examples/locks/bkl_stats run -PASS: systemtap.examples/memory/hw_watch_addr support -PASS: systemtap.examples/memory/hw_watch_addr build -PASS: systemtap.examples/memory/hw_watch_addr run -PASS: systemtap.examples/memory/hw_watch_sym support -PASS: systemtap.examples/memory/hw_watch_sym build -PASS: systemtap.examples/memory/hw_watch_sym run +PASS: systemtap.examples/locks/bkl support +PASS: systemtap.examples/locks/bkl build +PASS: systemtap.examples/locks/bkl run +PASS: systemtap.examples/locks/bkl_stats support +PASS: systemtap.examples/locks/bkl_stats build +PASS: systemtap.examples/locks/bkl_stats run +UNTESTED: systemtap.examples/memory/hw_watch_addr build +UNTESTED: systemtap.examples/memory/hw_watch_addr run +UNTESTED: systemtap.examples/memory/hw_watch_sym build +UNTESTED: systemtap.examples/memory/hw_watch_sym run -UNTESTED: systemtap.examples/network/autofs4 build -UNTESTED: systemtap.examples/network/autofs4 run +PASS: systemtap.examples/network/autofs4 support +PASS: systemtap.examples/network/autofs4 build +PASS: systemtap.examples/network/autofs4 run These look like hust a difference between Fedora14 and RHEL6.2Beta. +FAIL: systemtap.examples/network/netdev build +FAIL: systemtap.examples/network/netdev run Bad debuginfo: attempting command stap -p4 netdev.stp OUT semantic error: not accessible at this address (0xc0000000004d5078, die= offse t: 0x2f25314): identifier '$dev' at /root/install/share/systemtap/tapset/ne= twork ing.stp:159:29 source: dev_name =3D get_netdev_name($dev) ^ semantic error: not accessible at this address (0xc0000000004d5078, dieoffs= et: 0 x2f2530b): identifier '$flags' at :160:10 source: flags =3D $flags ^ Pass 2: analysis failed. Try again with another '--vp 01' option. -PASS: buildok/memory-mmap.stp +XFAIL: buildok/memory-mmap.stp -PASS: buildok/networking-change_rx_flag.stp +XFAIL: buildok/networking-change_rx_flag.stp -XFAIL: buildok/scheduler-ctxswitch.stp +PASS: buildok/scheduler-ctxswitch.stp Haven't investigated, look like this was expected (XFAIL/PASS)? +FAIL: shared buffer guest +FAIL: shared buffer guest2 +FAIL: buffer sharing (0, 0) I am not sure what is going on here... WARNING: ".stp_print_flush_test1" [/tmp/stapyqx0i5/stap_fa908cad8c23790d2e3= ca8aec57cab15_796.ko] undefined! Error inserting module '/tmp/stapyqx0i5/stap_fa908cad8c23790d2e3ca8aec57cab= 15_796.ko': Unknown symbol in module Warning: /root/install/bin/staprun exited with status: 1 +FAIL: 64-bit net1 nd_syscall +FAIL: 64-bit signal nd_syscall Not yet investigated. Plus lots of 32-bit syscall differences, because there are no 32bit devel packages installed. All other differences/extra FAILs (about 100!) all come from systemtap.server and the systemtap.unprivileged tests. I am seeing about 16 FAILs for systemtap.unpriviliged also on my x86_64 setup.