This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RFC: Some expect cleanups for the threads tests


These patches fix some testsuite problems on my setup - compiler and
assembler both support TLS, but the C library doesn't.  I think you get a
different error (earlier) if the kernel doesn't support TLS; I'll have to
check at some point.

Elena, how do the two TLS changes look?  The print-threads.exp just handles
the case where we weren't switching threads before reporting the SIGTRAP, so
the zombie notice was never printed.  If you say "info threads" at that
point GDB crashes.  I'll get that one later today.

-- 
Daniel Jacobowitz
MontaVista Software                         Debian GNU/Linux Developer

2003-07-26  Daniel Jacobowitz  <drow@mvista.com>

	* gdb.threads/print-threads.exp (test_all_threads): Loosen KFAIL
	pattern.
	* gdb.threads/tls-shared.exp: Don't use gdb_suppress_entire_file.
	* gdb.threads/tls.exp: Recognize one case of the host library not
	supporting TLS.

Index: gdb/testsuite/gdb.threads/print-threads.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.threads/print-threads.exp,v
retrieving revision 1.4
diff -u -p -r1.4 print-threads.exp
--- gdb/testsuite/gdb.threads/print-threads.exp	29 Jun 2003 19:29:42 -0000	1.4
+++ gdb/testsuite/gdb.threads/print-threads.exp	26 Jul 2003 16:00:40 -0000
@@ -94,7 +94,7 @@ proc test_all_threads { name kill } {
 		fail "all threads ran once ($name) (total $i threads ran)"
 	    }
 	}
-	-re "Program received signal SIGTRAP.*Thread \[0-9\]* \\(zombie\\).*$gdb_prompt $" {
+	-re "Program received signal SIGTRAP.*(Thread \[0-9\]* \\(zombie\\)|0x00000000 in ).*$gdb_prompt $" {
 	    if { $kill == 1 } {
 		kfail "gdb/1265" "Running threads ($name) (zombie thread)"
 	    } else {
Index: gdb/testsuite/gdb.threads/tls-shared.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.threads/tls-shared.exp,v
retrieving revision 1.1
diff -u -p -r1.1 tls-shared.exp
--- gdb/testsuite/gdb.threads/tls-shared.exp	22 Jul 2003 15:49:45 -0000	1.1
+++ gdb/testsuite/gdb.threads/tls-shared.exp	26 Jul 2003 16:00:40 -0000
@@ -78,7 +78,7 @@ if { ($gcc_compiled 
 }
 
 if {[gdb_compile_pthreads "${objdir}/${subdir}/${testfile}.o ${objdir}/${subdir}/${libfile}.so" "${binfile}" executable [list debug $additional_flags]] != ""} {
-    gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail."
+    return -1
 }
 
 
Index: gdb/testsuite/gdb.threads/tls.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.threads/tls.exp,v
retrieving revision 1.2
diff -u -p -r1.2 tls.exp
--- gdb/testsuite/gdb.threads/tls.exp	23 Jul 2003 03:08:26 -0000	1.2
+++ gdb/testsuite/gdb.threads/tls.exp	26 Jul 2003 16:00:40 -0000
@@ -172,6 +172,10 @@ gdb_test "b [gdb_get_line_number "before
 
 send_gdb "continue\n"
 gdb_expect {
+    -re ".*Program received signal SIGSEGV.*a_thread_local = 0;.*$gdb_prompt $" {
+        unsupported "continue to first thread: system does not support TLS"
+        return -1
+    }
     -re ".*Program exited normally.*$gdb_prompt $" {
         fail "continue to first thread: program runaway"
     }


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]