[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Libunwind-devel] [PATCH] testsuite evaluation/fixes for ARM
From: |
David Mosberger-Tang |
Subject: |
Re: [Libunwind-devel] [PATCH] testsuite evaluation/fixes for ARM |
Date: |
Mon, 21 Apr 2008 13:45:34 -0600 |
Bruna,
I checked your patches into the GIT tree (please speak up if anyone
has a problem with these patches...).
I think it would be useful to summarize your test-results for ARM in
the README (** Expected results on ARM...). Do you want to send me a
patch for that?
Thanks,
--david
On 4/17/08, Bruna Moreira <address@hidden> wrote:
> Hi all,
>
> We have done a quick evaluation of current libunwind status on ARM
> using the internal testsuite. Libunwind from development git tree [1]
> (last change 5 Feb 2008). The following tests have failed or received
> SIGSEGV on ARM. Detailed descriptions about errors can be found below:
>
> * Gtest-bt and Ltest-bt
> Issue: The stack size passed to sigaltstack() is too small for ARM
> thus causing segmentation fault due to stack overflow.
> Feature affected: None (testcase bug)
>
> * Gtest-exc and Ltest-exc
> Issue: unw_resume() is not implemented
> Feature affected: Resume execution at a different stack frame
> (useful for e.g. exception handling)
>
> * Gtest-resume-sig and Ltest-resume-sig
> Issue: Currently it PASS but their results depend on unw_resume()
> which is not implemented on ARM, so they should FAIL
> Feature affected: Resume execution from a signal handler
>
> * Gtest-dyn1 and Ltest-dyn1:
> Issue: Size code definition of dynamic function (template()) on
> testcase is too big for ARM architecture so memcpy() reads invalid
> memory. After match the sizes, the test will still fail because
> unw_is_signal_frame() is not implemented on ARM
> Feature affected: Stack unwinding of dynamic (at run-time) generated code
>
> * run-check-namespace:
> Issue: Some "bashisms" in check-namespace.sh.in causes the script
> to fail to run on N8XX's busybox shell. After fixing those, the test
> still fails because the ARM version of libunwind have _Unwind_*
> interfaces disabled
> Feature affected: break exceptions completely for ARM [2]
>
> * test-ptrace:
> Issue: Some register maps are missing for ARM in
> _UPT_reg_offset.c. After add them, we have the current implementation
> is not able to retrieve the function name of the attached program,
> probably because the offset of the dynamic linked list where these
> informations are found is different from others archs. The function
> get_list_addr() is returning -UNW_ENOINFO (just implemented for IA64)
> Feature affected: Remote backtraces on ARM
>
> * run-ptrace-mapper and run-ptrace-misc:
> Issue: Needs test-ptrace working. Result invalid
> Feature affected: Not tested
>
> * test-setjmp
> Issue: The test is in infinite loop. There are some issues there:
> definition of JB_SP is incorrect for ARM on file
> include/tdep-arm/jmpbuf.h. Implementation of longjmp() in libunwind
> API is not recovering the SP register value
> Feature affected: Internal support for non-local gotos
>
>
> Please, see attached the following patches:
> - libunwind_arm_fixes.patch: add some missing bits on ARM platform.
> - libunwind_testsuite_fixes.patch: fix some testsuite issues on ARM
> (Gtest-bt, Gtest-dyn1 and check-name-space.in).
>
>
> Any comments/suggestions are welcome!
>
>
> BR,
> Bruna.
>
> References:
> [1] The official libunwind git repository. URL:
>
> http://git.kernel.org/gitweb.cgi?p=libs/libunwind/libunwind.git;a=commit;h=3842dac7333e42aa44531eda34ba55200b99ccf8
> [2] libunwind ARM port. URL:
> http://thread.gmane.org/gmane.comp.lib.unwind.devel/270/focus=276
>
>
>
> --
> Bruna Moreira
> Instituto Nokia de Tecnologia
> Manaus - Brazil
>
> _______________________________________________
> Libunwind-devel mailing list
> address@hidden
> http://lists.nongnu.org/mailman/listinfo/libunwind-devel
>
>
>
--
Mosberger Consulting LLC, http://www.mosberger-consulting.com/