mirror of
https://github.com/tobast/libunwind-eh_elf.git
synced 2024-11-21 23:27:39 +01:00
Mark run-ptrace-mapper and run-ptrace-misc as XFAIL on MIPS
Though PTRACE_SINGLESTEP is defined on MIPS Linux, the kernel does not support that kind of request. The ptrace call failed and sets errno to EIO and paused process is not resumed. In case of run-ptrace-mapper and run-ptrace-misc this leads to hanged execution because next call to wait4 never returns. This change adds run-ptrace-mapper and run-ptrace-misc to the list of 'expected failed' tests on MIPS targets. Signed-off-by: Simon Atanasyan <simon@atanasyan.com>
This commit is contained in:
parent
1bca6eb8ea
commit
c90a2e02b3
2 changed files with 18 additions and 3 deletions
|
@ -94,9 +94,16 @@ check_SCRIPTS = $(check_SCRIPTS_common) $(check_SCRIPTS_cdep) \
|
||||||
|
|
||||||
|
|
||||||
TESTS = $(check_PROGRAMS) $(check_SCRIPTS)
|
TESTS = $(check_PROGRAMS) $(check_SCRIPTS)
|
||||||
|
XFAIL_TESTS =
|
||||||
|
|
||||||
if !ARCH_IA64
|
if !ARCH_IA64
|
||||||
XFAIL_TESTS = Gtest-dyn1 Ltest-dyn1
|
XFAIL_TESTS += Gtest-dyn1 Ltest-dyn1
|
||||||
|
endif
|
||||||
|
|
||||||
|
if ARCH_MIPS
|
||||||
|
# MIPS kernel does not support PTRACE_SINGLESTEP
|
||||||
|
# ptrace request used in the tests.
|
||||||
|
XFAIL_TESTS += run-ptrace-mapper run-ptrace-misc
|
||||||
endif
|
endif
|
||||||
|
|
||||||
noinst_PROGRAMS = $(noinst_PROGRAMS_common) $(noinst_PROGRAMS_cdep) \
|
noinst_PROGRAMS = $(noinst_PROGRAMS_common) $(noinst_PROGRAMS_cdep) \
|
||||||
|
|
|
@ -303,9 +303,17 @@ main (int argc, char **argv)
|
||||||
{
|
{
|
||||||
do_backtrace ();
|
do_backtrace ();
|
||||||
#if HAVE_DECL_PTRACE_SINGLESTEP
|
#if HAVE_DECL_PTRACE_SINGLESTEP
|
||||||
ptrace (PTRACE_SINGLESTEP, target_pid, 0, pending_sig);
|
if (ptrace (PTRACE_SINGLESTEP, target_pid, 0, pending_sig) < 0)
|
||||||
|
{
|
||||||
|
panic ("ptrace(PTRACE_SINGLESTEP) failed (errno=%d)\n", errno);
|
||||||
|
killed = 1;
|
||||||
|
}
|
||||||
#elif HAVE_DECL_PT_STEP
|
#elif HAVE_DECL_PT_STEP
|
||||||
ptrace (PT_STEP, target_pid, (caddr_t)1, pending_sig);
|
if (ptrace (PT_STEP, target_pid, (caddr_t)1, pending_sig) < 0)
|
||||||
|
{
|
||||||
|
panic ("ptrace(PT_STEP) failed (errno=%d)\n", errno);
|
||||||
|
killed = 1;
|
||||||
|
}
|
||||||
#else
|
#else
|
||||||
#error Singlestep me
|
#error Singlestep me
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in a new issue