]> Cypherpunks repositories - gostls13.git/commitdiff
misc/ios: extra stdout check before run
authorDavid Crawshaw <crawshaw@golang.org>
Tue, 3 Mar 2015 19:18:56 +0000 (14:18 -0500)
committerDavid Crawshaw <crawshaw@golang.org>
Tue, 3 Mar 2015 20:03:32 +0000 (20:03 +0000)
On one recent job I saw an unexpected SIGSTOP, which I suspect is
simply the job timeout. But the lack of other diagnostics suggests
lldb just didn't see the "run" command.

-----

process handle SIGHUP  --stop false --pass true --notify false
process handle SIGPIPE --stop false --pass true --notify false
process handle SIGUSR1 --stop false --pass true --notify false
process handle SIGSEGV --stop false --pass true --notify false
process handle SIGBUS  --stop false --pass true --notify false
breakpoint set -n getwd
run
(lldb) NAME        PASS   STOP   NOTIFY
==========  =====  =====  ======
SIGHUP      true   false  false
(lldb) NAME        PASS   STOP   NOTIFY
==========  =====  =====  ======
SIGPIPE     true   false  false
(lldb) NAME        PASS   STOP   NOTIFY
==========  =====  =====  ======
SIGUSR1     true   false  false
(lldb) NAME        PASS   STOP   NOTIFY
==========  =====  =====  ======
SIGSEGV     true   false  false
(lldb) NAME        PASS   STOP   NOTIFY
==========  =====  =====  ======
SIGBUS      true   false  false
(lldb) Breakpoint 1: where = libsystem_c.dylib`getwd, address = 0x2f7f7294
(lldb) Process 23755 stopped
* thread #1: tid = 0x104c02, 0x1febb000 dyld`_dyld_start, stop reason = signal SIGSTOP
    frame #0: 0x1febb000 dyld`_dyld_start
dyld`_dyld_start:
-> 0x1febb000:  mov    r8, sp
   0x1febb004:  sub    sp, sp, #0x10
   0x1febb008:  bic    sp, sp, #0x7
   0x1febb00c:  ldr    r3, [pc, #112]            ; _dyld_start + 132
(lldb) go_darwin_arm_exec: timeout (stage br getwd)
FAIL compress/gzip 359.226s

Change-Id: Ifc2123f5ceaa6d3f9b31bb5cb6e77a2c8ec23818
Reviewed-on: https://go-review.googlesource.com/6613
Reviewed-by: Hyang-Ah Hana Kim <hyangah@gmail.com>
misc/ios/go_darwin_arm_exec.go

index bca8f16e508305f87bea5b01a9de3857d8a77e23..b7aaf5580941022744e13b9bf3335e4452016b86 100644 (file)
@@ -179,8 +179,15 @@ func run(bin string, args []string) error {
        do(`process handle SIGUSR1 --stop false --pass true --notify false`)
        do(`process handle SIGSEGV --stop false --pass true --notify false`) // does not work
        do(`process handle SIGBUS  --stop false --pass true --notify false`) // does not work
+       if err := waitFor("handlers set", "(lldb)"); err != nil {
+               return err
+       }
 
        do(`breakpoint set -n getwd`) // in runtime/cgo/gcc_darwin_arm.go
+       if err := waitFor("breakpoint set", "(lldb)"); err != nil {
+               return err
+       }
+
        do(`run`)
        if err := waitFor("br getwd", "stop reason = breakpoint"); err != nil {
                return err