diff options
author | gVisor bot <gvisor-bot@google.com> | 2019-08-17 00:42:24 +0000 |
---|---|---|
committer | gVisor bot <gvisor-bot@google.com> | 2019-08-17 00:42:24 +0000 |
commit | e2b43d815e1e98b93c578058832a52a6aa117ce0 (patch) | |
tree | e50460ef42521e7a7bd3c3e7156e30610b8f2bdf /pkg | |
parent | 2c2fb24a621e341cfca57a8755561ebc705c92b1 (diff) | |
parent | 2a1303357c3d928cca95601241fc16baca0e5f41 (diff) |
Merge 2a130335 (automated)
Diffstat (limited to 'pkg')
-rw-r--r-- | pkg/sentry/platform/ptrace/subprocess.go | 3 | ||||
-rwxr-xr-x | pkg/sentry/platform/ring0/defs_impl.go | 2 |
2 files changed, 4 insertions, 1 deletions
diff --git a/pkg/sentry/platform/ptrace/subprocess.go b/pkg/sentry/platform/ptrace/subprocess.go index 79501682d..6bf7cd097 100644 --- a/pkg/sentry/platform/ptrace/subprocess.go +++ b/pkg/sentry/platform/ptrace/subprocess.go @@ -354,6 +354,9 @@ func (t *thread) wait(outcome waitOutcome) syscall.Signal { continue // Spurious stop. } if stopSig == syscall.SIGTRAP { + if status.TrapCause() == syscall.PTRACE_EVENT_EXIT { + t.dumpAndPanic("wait failed: the process exited") + } // Re-encode the trap cause the way it's expected. return stopSig | syscall.Signal(status.TrapCause()<<8) } diff --git a/pkg/sentry/platform/ring0/defs_impl.go b/pkg/sentry/platform/ring0/defs_impl.go index acae012dc..a30a9dd4a 100755 --- a/pkg/sentry/platform/ring0/defs_impl.go +++ b/pkg/sentry/platform/ring0/defs_impl.go @@ -1,12 +1,12 @@ package ring0 import ( - "fmt" "gvisor.dev/gvisor/pkg/cpuid" "io" "reflect" "syscall" + "fmt" "gvisor.dev/gvisor/pkg/sentry/platform/ring0/pagetables" "gvisor.dev/gvisor/pkg/sentry/usermem" ) |