diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index fe1c4be0dcb..b0fcac7c314 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2010-01-11  Doug Evans  <dje@google.com>
+
+	* gdb.server/ext-run.exp: "info os processes" requires xml support.
+
 2010-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
 
 	Implement binary numbers parsing.
diff --git a/gdb/testsuite/gdb.server/ext-run.exp b/gdb/testsuite/gdb.server/ext-run.exp
index 978e4a114e0..5797c802381 100644
--- a/gdb/testsuite/gdb.server/ext-run.exp
+++ b/gdb/testsuite/gdb.server/ext-run.exp
@@ -31,7 +31,11 @@ if  { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {deb
     return -1
 }
 
+# Start with a fresh gdb, gdb_skip_xml_test must be called while gdb
+# is not running.
+
 gdb_exit
+set do_xml_test [expr ![gdb_skip_xml_test]]
 gdb_start
 gdb_load $binfile
 gdb_reinitialize_dir $srcdir/$subdir
@@ -46,7 +50,10 @@ gdb_test "run" "Breakpoint.* main .*" "continue to main"
 
 if { [istarget *-*-linux*] } {
     # On Linux, gdbserver can also report the list of processes.
-    gdb_test "info os processes" ".*pid +user +command.*1 +root +\[/a-z\]*init.*" "get process list"
+    # But only if xml support is compiled in.
+    if { $do_xml_test } {
+	gdb_test "info os processes" ".*pid +user +command.*1 +root +\[/a-z\]*init.*" "get process list"
+    }
 }
 
 gdb_test "kill" "" "kill" "Kill the program being debugged.*" "y"