diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2015-10-20 12:09:56 +0200 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2015-10-20 15:46:04 +0200 |
| commit | b0a24e2466eed590ab6c9d9f88bdb9aedbc458fd (patch) | |
| tree | ef417e6c59a388b8a905c683c65ce3efa6dc91c8 | |
| parent | 9a3bf1a7c7fda81c99ac232e7ff18f60e3ba223a (diff) | |
don't generate pthread(PTRACE_TRACEME) due to a known issue
| -rw-r--r-- | prog/analysis.go | 6 |
1 files changed, 6 insertions, 0 deletions
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. |
