diff -urpN src/gdb/testsuite/gdb.arch/spu-info.exp dev/gdb/testsuite/gdb.arch/spu-info.exp --- src/gdb/testsuite/gdb.arch/spu-info.exp 2008-01-01 23:53:18.000000000 +0100 +++ dev/gdb/testsuite/gdb.arch/spu-info.exp 2008-03-28 09:53:47.000000000 +0100 @@ -200,9 +200,17 @@ gdb_test "finish" "" "finish" # Mailbox Test # 'info spu mailbox' should be empty. c_to "Marker Mbox" -gdb_test "info spu mailbox" \ - "SPU Outbound Mailbox.*0xc0000000.*SPU Outbound Interrupt Mailbox.*0xc0000000.*" \ - "info spu mailbox" +set msg "info spu mailbox" +gdb_test_multiple "info spu mailbox" $msg { + -re "SPU Outbound Mailbox.*0x00000000.*SPU Outbound Interrupt Mailbox.*0x00000000.*$gdb_prompt $" { + pass $msg + } + -re "SPU Outbound Mailbox.*0x.*SPU Outbound Interrupt Mailbox.*0x.*$gdb_prompt $" { + # Older kernels had a bug that caused them to return arbitrary values + # when attempting to read from an empty mailbox via spufs. + xfail $msg + } +} # 'info spu mailbox' should now contain data. c_to "Marker MboxEnd"