diff options
| -rw-r--r-- | tests/ChangeLog | 12 | ||||
| -rw-r--r-- | tests/backtrace-data.c | 2 | ||||
| -rw-r--r-- | tests/backtrace-dwarf.c | 13 | ||||
| -rw-r--r-- | tests/backtrace.c | 13 |
4 files changed, 15 insertions, 25 deletions
diff --git a/tests/ChangeLog b/tests/ChangeLog index 0c112cf2..63b7bed7 100644 --- a/tests/ChangeLog +++ b/tests/ChangeLog @@ -1,5 +1,17 @@ 2014-01-04 Mark Wielaard <[email protected]> + * backtrace-data.c (main): Don't assert if raise returns. + * backtrace-dwarf.c (report_pid): Call dwfl_linux_proc_attach with + assume_ptrace_attached true. + (ptrace_detach_stopped): Removed function. + (main): Don't call ptrace_detach_stopped. + * backtrace.c (ptrace_detach_stopped): Removed function. + (report_pid): Call dwfl_linux_proc_attach with assume_ptrace_attached + true. + (exec_dump): Don't call ptrace_detach_stopped. + +2014-01-04 Mark Wielaard <[email protected]> + * backtrace-subr.sh (check_native_core): Skip, exit 77, the test if we cannot adjust core ulimit. diff --git a/tests/backtrace-data.c b/tests/backtrace-data.c index 9fa3c4a9..dd74160a 100644 --- a/tests/backtrace-data.c +++ b/tests/backtrace-data.c @@ -278,7 +278,7 @@ main (int argc __attribute__ ((unused)), char **argv __attribute__ ((unused))) assert_perror (errno); assert (l == 0); raise (SIGUSR1); - assert (0); + return 0; default: break; } diff --git a/tests/backtrace-dwarf.c b/tests/backtrace-dwarf.c index 3a3e7632..f75e1202 100644 --- a/tests/backtrace-dwarf.c +++ b/tests/backtrace-dwarf.c @@ -42,7 +42,7 @@ report_pid (Dwfl *dwfl, pid_t pid) if (dwfl_report_end (dwfl, NULL, NULL) != 0) error (2, 0, "dwfl_report_end: %s", dwfl_errmsg (-1)); - result = dwfl_linux_proc_attach (dwfl, pid, false); + result = dwfl_linux_proc_attach (dwfl, pid, true); if (result < 0) error (2, 0, "dwfl_linux_proc_attach: %s", dwfl_errmsg (-1)); else if (result > 0) @@ -106,15 +106,6 @@ thread_callback (Dwfl_Thread *thread, void *thread_arg) error (1, 0, "dwfl_thread_getframes: %s", dwfl_errmsg (-1)); } -static void -ptrace_detach_stopped (pid_t pid) -{ - errno = 0; - long l = ptrace (PTRACE_DETACH, pid, NULL, (void *) (intptr_t) SIGSTOP); - assert_perror (errno); - assert (l == 0); -} - int main (int argc __attribute__ ((unused)), char **argv) { @@ -151,8 +142,6 @@ main (int argc __attribute__ ((unused)), char **argv) assert (WIFSTOPPED (status)); assert (WSTOPSIG (status) == SIGABRT); - ptrace_detach_stopped (pid); - Dwfl *dwfl = pid_to_dwfl (pid); dwfl_getthreads (dwfl, thread_callback, NULL); diff --git a/tests/backtrace.c b/tests/backtrace.c index 64f90c43..758dfed6 100644 --- a/tests/backtrace.c +++ b/tests/backtrace.c @@ -260,15 +260,6 @@ prepare_thread (pid_t pid2 __attribute__ ((unused)), #define tgkill(pid, tid, sig) syscall (__NR_tgkill, (pid), (tid), (sig)) static void -ptrace_detach_stopped (pid_t pid) -{ - errno = 0; - long l = ptrace (PTRACE_DETACH, pid, NULL, (void *) (intptr_t) SIGSTOP); - assert_perror (errno); - assert (l == 0); -} - -static void report_pid (Dwfl *dwfl, pid_t pid) { int result = dwfl_linux_proc_report (dwfl, pid); @@ -280,7 +271,7 @@ report_pid (Dwfl *dwfl, pid_t pid) if (dwfl_report_end (dwfl, NULL, NULL) != 0) error (2, 0, "dwfl_report_end: %s", dwfl_errmsg (-1)); - result = dwfl_linux_proc_attach (dwfl, pid, false); + result = dwfl_linux_proc_attach (dwfl, pid, true); if (result < 0) error (2, 0, "dwfl_linux_proc_attach: %s", dwfl_errmsg (-1)); else if (result > 0) @@ -397,8 +388,6 @@ exec_dump (const char *exec) prepare_thread (pid2, jmp); } dwfl_end (dwfl); - ptrace_detach_stopped (pid); - ptrace_detach_stopped (pid2); check_tid = pid2; dwfl = pid_to_dwfl (pid); dump (dwfl); |
