Hi Dave,

On Thu, Aug 24, 2017 at 09:36:12AM -0700, Dave Watson wrote:
> On 08/23/17 11:30 AM, Philippe De Muyter wrote:
> > Hi,
> > 
> > I cloned libunwind yesterday (hash e9e50d0) and built it on my armv7hl
> > board with suse linux 13.1.
> > 
> > Unfortunately, 'make check' fails with :
> > 
> > /home/phdm/libunwind/src/.libs/libunwind.a(Lex_tables.o): In function 
> > `arm_search_unwind_table':
> > /home/phdm/libunwind/src/arm/Gex_tables.c:388: multiple definition of 
> > `arm_search_unwind_table'
> > ../src/.libs/libunwind-arm.a(Gex_tables.o):/home/phdm/libunwind/src/arm/Gex_tables.c:388:
> >  first defined here
> > collect2: error: ld returned 1 exit status
> 
> One of these two should work, not sure which:
> 
> diff --git a/src/arm/Gex_tables.c b/src/arm/Gex_tables.c
> index 3f6b5cf..88c36a3 100644
> --- a/src/arm/Gex_tables.c
> +++ b/src/arm/Gex_tables.c
> @@ -381,7 +381,7 @@ arm_exidx_extract (struct dwarf_cursor *c, uint8_t *buf)
>    return nbuf;
>  }
>  
> -PROTECTED int
> +static int
>  arm_search_unwind_table (unw_addr_space_t as, unw_word_t ip,
>                          unw_dyn_info_t *di, unw_proc_info_t *pi,
>                          int need_unwind_info, void *arg)
> 
> 
> or maybe
> 
> diff --git a/include/tdep-arm/ex_tables.h b/include/tdep-arm/ex_tables.h
> index 9df5e0a..0b5388a 100644
> --- a/include/tdep-arm/ex_tables.h
> +++ b/include/tdep-arm/ex_tables.h
> @@ -47,6 +47,7 @@ struct arm_exbuf_data
>  #define arm_exidx_extract       UNW_OBJ(arm_exidx_extract)
>  #define arm_exidx_decode        UNW_OBJ(arm_exidx_decode)
>  #define arm_exidx_apply_cmd     UNW_OBJ(arm_exidx_apply_cmd)
> +#define arm_search_unwind_table UNW_OBJ(arm_search_unwind_table)
>  
>  int arm_exidx_extract (struct dwarf_cursor *c, uint8_t *buf);
>  int arm_exidx_decode (const uint8_t *buf, uint8_t len, struct dwarf_cursor 
> *c);

Both patches solve the link error, but the check results are not good :(
The first patch gives slightly better results (19 FAIL's instead of 20)

I have attached both logs

Philippe
=========================================
   libunwind 1.2: tests/test-suite.log
=========================================

# TOTAL: 34
# PASS:  13
# SKIP:  0
# XFAIL: 2
# FAIL:  19
# XPASS: 0
# ERROR: 0

.. contents:: :depth: 2

FAIL: Gtest-bt
==============

FAIL Gtest-bt (exit status: 139)

FAIL: Ltest-bt
==============

FAIL Ltest-bt (exit status: 139)

FAIL: Gtest-init
================

FAIL Gtest-init (exit status: 139)

FAIL: Ltest-init
================

FAIL Ltest-init (exit status: 139)

FAIL: Gtest-concurrent
======================

FAIL Gtest-concurrent (exit status: 139)

FAIL: Ltest-concurrent
======================

FAIL Ltest-concurrent (exit status: 139)

FAIL: Gtest-trace
=================

FAIL Gtest-trace (exit status: 139)

FAIL: Ltest-trace
=================

FAIL Ltest-trace (exit status: 139)

FAIL: Ltest-init-local-signal
=============================

FAIL Ltest-init-local-signal (exit status: 139)

FAIL: test-async-sig
====================

FAIL test-async-sig (exit status: 139)

FAIL: test-flush-cache
======================

FAIL test-flush-cache (exit status: 139)

FAIL: test-init-remote
======================

FAIL test-init-remote (exit status: 139)

FAIL: Ltest-varargs
===================

FAIL Ltest-varargs (exit status: 139)

FAIL: Ltest-nomalloc
====================

FAIL Ltest-nomalloc (exit status: 139)

FAIL: Ltest-nocalloc
====================

FAIL Ltest-nocalloc (exit status: 139)

FAIL: Lrs-race
==============

FAIL Lrs-race (exit status: 139)

FAIL: test-ptrace
=================

Automated test (self,/bin/ls,/usr,(null))
unw_get_proc_info(ip=0x76f151a0) failed: ret=-10
FAIL test-ptrace (exit status: 139)

XFAIL: run-ptrace-mapper
========================

unw_get_proc_info(ip=0x76df8d9c) failed: ret=-10
./run-ptrace-mapper: line 2: 31022 Segmentation fault      ./test-ptrace -c -n 
-t ./mapper $*
XFAIL run-ptrace-mapper (exit status: 139)

XFAIL: run-ptrace-misc
======================

unw_get_proc_info(ip=0x76e00d9c) failed: ret=-10
./run-ptrace-misc: line 2: 31043 Segmentation fault      ./test-ptrace -c -t 
./test-ptrace-misc
XFAIL run-ptrace-misc (exit status: 139)

FAIL: run-coredump-unwind
=========================

FAIL run-coredump-unwind (exit status: 1)

FAIL: run-coredump-unwind-mdi
=============================

FAIL run-coredump-unwind-mdi (exit status: 1)

=========================================
   libunwind 1.2: tests/test-suite.log
=========================================

# TOTAL: 34
# PASS:  12
# SKIP:  0
# XFAIL: 2
# FAIL:  20
# XPASS: 0
# ERROR: 0

.. contents:: :depth: 2

FAIL: Gtest-bt
==============

FAIL Gtest-bt (exit status: 139)

FAIL: Ltest-bt
==============

FAIL Ltest-bt (exit status: 139)

FAIL: Gtest-init
================

FAIL Gtest-init (exit status: 139)

FAIL: Ltest-init
================

FAIL Ltest-init (exit status: 139)

FAIL: Gtest-concurrent
======================

FAIL Gtest-concurrent (exit status: 139)

FAIL: Ltest-concurrent
======================

FAIL Ltest-concurrent (exit status: 139)

FAIL: Gtest-trace
=================

FAIL Gtest-trace (exit status: 139)

FAIL: Ltest-trace
=================

FAIL Ltest-trace (exit status: 139)

FAIL: Ltest-init-local-signal
=============================

FAIL Ltest-init-local-signal (exit status: 139)

FAIL: test-async-sig
====================

FAIL test-async-sig (exit status: 139)

FAIL: test-flush-cache
======================

FAIL test-flush-cache (exit status: 139)

FAIL: test-init-remote
======================

FAIL test-init-remote (exit status: 139)

FAIL: Ltest-varargs
===================

FAIL Ltest-varargs (exit status: 139)

FAIL: Ltest-nomalloc
====================

FAIL Ltest-nomalloc (exit status: 139)

FAIL: Ltest-nocalloc
====================

FAIL Ltest-nocalloc (exit status: 139)

FAIL: Lrs-race
==============

FAIL Lrs-race (exit status: 139)

FAIL: test-ptrace
=================

Automated test (self,/bin/ls,/usr,(null))
unw_get_proc_info(ip=0x76fe91a0) failed: ret=-10
FAIL test-ptrace (exit status: 139)

FAIL: run-check-namespace
=========================

  ERROR: Extraneous symbols:
0000478c T _ULarm_arm_search_unwind_table
  ERROR: Extraneous symbols:
00005670 T _Uarm_arm_search_unwind_table
FAILURE: Detected 2 errors
FAIL run-check-namespace (exit status: 1)

XFAIL: run-ptrace-mapper
========================

unw_get_proc_info(ip=0x76e0ed9c) failed: ret=-10
./run-ptrace-mapper: line 2: 24004 Segmentation fault      ./test-ptrace -c -n 
-t ./mapper $*
XFAIL run-ptrace-mapper (exit status: 139)

XFAIL: run-ptrace-misc
======================

unw_get_proc_info(ip=0x76dfdd9c) failed: ret=-10
./run-ptrace-misc: line 2: 24025 Segmentation fault      ./test-ptrace -c -t 
./test-ptrace-misc
XFAIL run-ptrace-misc (exit status: 139)

FAIL: run-coredump-unwind
=========================

FAIL run-coredump-unwind (exit status: 1)

FAIL: run-coredump-unwind-mdi
=============================

FAIL run-coredump-unwind-mdi (exit status: 1)

_______________________________________________
Libunwind-devel mailing list
Libunwind-devel@nongnu.org
https://lists.nongnu.org/mailman/listinfo/libunwind-devel

Reply via email to