For PPC64 we need access to the OPD table which we get through the shdrs
but for the deleted-lib we only have phdrs.  So we don't have the name of
the function. But since we should find the EH_FRAME through phdrs just
fine, we can unwind into main. Skip the libfunc name check for now till
we find a nice way to enable the lookup without opd:
https://bugzilla.redhat.com/show_bug.cgi?id=1176238

Signed-off-by: Mark Wielaard <[email protected]>
---
 tests/ChangeLog      | 4 ++++
 tests/run-deleted.sh | 8 +++++++-
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/tests/ChangeLog b/tests/ChangeLog
index 94058fd..59048f6 100644
--- a/tests/ChangeLog
+++ b/tests/ChangeLog
@@ -1,5 +1,9 @@
 2014-12-19  Mark Wielaard  <[email protected]>
 
+       * run-deleted.sh: Don't check libfunc on ppc64.
+
+2014-12-19  Mark Wielaard  <[email protected]>
+
        * vdsosyms.c (vdso_seen): Removed.
        (vdso_syms): New global.
        (module_callback): Set and check vdso_syms.
diff --git a/tests/run-deleted.sh b/tests/run-deleted.sh
index 95d9444..2b5a9a8 100755
--- a/tests/run-deleted.sh
+++ b/tests/run-deleted.sh
@@ -38,5 +38,11 @@ cat bt bt.err
 kill -9 $pid
 wait
 check_native_unsupported bt.err deleted
-grep -qw libfunc bt
+# For PPC64 we need access to the OPD table which we get through the shdrs
+# (see backends/ppc64_init.c) but for the deleted-lib we only have phdrs.
+# So we don't have the name of the function. But since we should find
+# the EH_FRAME through phdrs just fine, we can unwind into main.
+if test "`uname -m`" != "ppc64"; then
+  grep -qw libfunc bt
+fi
 grep -qw main bt
-- 
1.8.3.1

Reply via email to