From 0d60d7de5db10af7b1c1574520d3ab3c0f64d530 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Wed, 15 Dec 2004 09:16:13 +0000 Subject: Updated to fedora-glibc-20041215T0847 --- nptl/ChangeLog | 12 ++++++++ nptl/sysdeps/powerpc/tcb-offsets.sym | 1 + .../unix/sysv/linux/powerpc/powerpc32/clone.S | 3 ++ .../unix/sysv/linux/powerpc/powerpc64/clone.S | 3 ++ nptl/tst-getpid1.c | 34 ++++++++++++---------- 5 files changed, 38 insertions(+), 15 deletions(-) create mode 100644 nptl/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S create mode 100644 nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S (limited to 'nptl') diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 981781807b..7d9054481f 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,15 @@ +2004-12-15 Ulrich Drepper + + * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: New file. + +2004-12-14 Ulrich Drepper + + * sysdeps/powerpc/tcb-offsets.sym: Add TID. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: New file. + + * tst-getpid1.c: If child crashes, report this first. Print which + signal. + 2004-12-09 Ulrich Drepper * init.c (__pthread_initialize_minimal_internal): Also unblock diff --git a/nptl/sysdeps/powerpc/tcb-offsets.sym b/nptl/sysdeps/powerpc/tcb-offsets.sym index fddd466f08..a9701fb5b7 100644 --- a/nptl/sysdeps/powerpc/tcb-offsets.sym +++ b/nptl/sysdeps/powerpc/tcb-offsets.sym @@ -12,3 +12,4 @@ MULTIPLE_THREADS_OFFSET thread_offsetof (header.multiple_threads) #endif PID thread_offsetof (pid) +TID thread_offsetof (tid) diff --git a/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S b/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S new file mode 100644 index 0000000000..e19579e842 --- /dev/null +++ b/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S @@ -0,0 +1,3 @@ +#define RESET_PID +#include +#include diff --git a/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S b/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S new file mode 100644 index 0000000000..f87adf4737 --- /dev/null +++ b/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S @@ -0,0 +1,3 @@ +#define RESET_PID +#include +#include diff --git a/nptl/tst-getpid1.c b/nptl/tst-getpid1.c index 061b48d735..497bebed56 100644 --- a/nptl/tst-getpid1.c +++ b/nptl/tst-getpid1.c @@ -1,5 +1,6 @@ #include #include +#include #include #include #include @@ -66,20 +67,6 @@ do_test (void) } while (si.si_signo != sig || si.si_code != SI_QUEUE); - if (si.si_int != (int) p) - { - printf ("expected PID %d, got si_int %d\n", (int) p, si.si_int); - kill (p, SIGKILL); - return 1; - } - - if (si.si_pid != p) - { - printf ("expected PID %d, got si_pid %d\n", (int) p, (int) si.si_pid); - kill (p, SIGKILL); - return 1; - } - int e; if (waitpid (p, &e, __WCLONE) != p) { @@ -89,7 +76,10 @@ do_test (void) } if (!WIFEXITED (e)) { - puts ("did not terminate correctly"); + if (WIFSIGNALED (e)) + printf ("died from signal %s\n", strsignal (WTERMSIG (e))); + else + puts ("did not terminate correctly"); return 1; } if (WEXITSTATUS (e) != 0) @@ -98,6 +88,20 @@ do_test (void) return 1; } + if (si.si_int != (int) p) + { + printf ("expected PID %d, got si_int %d\n", (int) p, si.si_int); + kill (p, SIGKILL); + return 1; + } + + if (si.si_pid != p) + { + printf ("expected PID %d, got si_pid %d\n", (int) p, (int) si.si_pid); + kill (p, SIGKILL); + return 1; + } + if (getpid () != mypid) { puts ("my PID changed"); -- cgit v1.2.3-70-g09d2