From b0a24e2466eed590ab6c9d9f88bdb9aedbc458fd Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Tue, 20 Oct 2015 12:09:56 +0200 Subject: don't generate pthread(PTRACE_TRACEME) due to a known issue --- prog/analysis.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/prog/analysis.go b/prog/analysis.go index 30c9542da..e1d106d10 100644 --- a/prog/analysis.go +++ b/prog/analysis.go @@ -252,6 +252,12 @@ func sanitizeCall(c *Call) { if uint32(cmd.Val) == uint32(FIFREEZE) { cmd.Val = FITHAW } + case "ptrace": + // PTRACE_TRACEME leads to unkillable processes, see: + // https://groups.google.com/forum/#!topic/syzkaller/uGzwvhlCXAw + if c.Args[0].Val == PTRACE_TRACEME { + c.Args[0].Val = ^uintptr(0) + } case "exit", "exit_group": code := c.Args[0] // These codes are reserved by executor. -- cgit mrf-deployment