diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 7a555645e8..963e679c37 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2010-03-03 Doug Evans + + * gdb.threads/linux-dp.c (shared_random): Call rand instead of rand_r. + * gdb.threads/linux-dp.exp: Compile with gdb_compile_pthreads instead + of gdb_compile. Add another pattern to match android backtrace. + 2010-03-03 Tom Tromey PR gdb/11345: diff --git a/gdb/testsuite/gdb.threads/linux-dp.c b/gdb/testsuite/gdb.threads/linux-dp.c index c3775bd62a..a57938d188 100644 --- a/gdb/testsuite/gdb.threads/linux-dp.c +++ b/gdb/testsuite/gdb.threads/linux-dp.c @@ -71,11 +71,10 @@ shared_printf (char *format, ...) int shared_random () { - static unsigned int seed; int result; pthread_mutex_lock (&random_mutex); - result = rand_r (&seed); + result = rand (); pthread_mutex_unlock (&random_mutex); return result; } diff --git a/gdb/testsuite/gdb.threads/linux-dp.exp b/gdb/testsuite/gdb.threads/linux-dp.exp index 52b0eae953..f2f9b036d7 100644 --- a/gdb/testsuite/gdb.threads/linux-dp.exp +++ b/gdb/testsuite/gdb.threads/linux-dp.exp @@ -49,7 +49,7 @@ if ![istarget *-*-linux-gnu*] then { set testfile "linux-dp" set srcfile ${testfile}.c set binfile ${objdir}/${subdir}/${testfile} -if {[gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug libs=-lpthread}] != ""} { +if {[gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug}] != ""} { return -1 } @@ -247,11 +247,11 @@ gdb_breakpoint "print_philosopher thread 5" gdb_continue_to_breakpoint "thread 5's print" # When there is no debugging info available for the thread library, # the backtrace entry for philosopher's caller looks like: -# #1 0x4001c548 in pthread_create () from /lib/libpthread.so.0 +# #2 0x4001c548 in pthread_create () from /lib/libpthread.so.0 # If you do have debug info, the output obviously depends more on the # exact library in use; under NPTL, you get: # #2 0x0012b7fc in start_thread (arg=0x21) at pthread_create.c:264 -gdb_test "where" "print_philosopher.*philosopher.* \(from .*libpthread\|at pthread_create\).*" \ +gdb_test "where" "print_philosopher.*philosopher.* \(from .*libpthread\|at pthread_create\|in pthread_create\).*" \ "first thread-specific breakpoint hit" # Make sure it's catching the right thread. Try hitting the