syzbot


DATA RACE in semaphore.(*Set).checkPerms

Status: fixed on 2018/06/28 09:29
Fix commit: 6b6852bceb12 Fix semaphore data races
First crash: 2347d, last: 2343d

Sample crash report:
WARNING: DATA RACE
Read at 0x00c42029033e by goroutine 126:
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel/semaphore.(*Set).checkPerms()
      pkg/sentry/kernel/semaphore/semaphore.go:432 +0x49
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel/semaphore.(*Registry).FindOrCreate()
      pkg/sentry/kernel/semaphore/semaphore.go:123 +0x455
  gvisor.googlesource.com/gvisor/pkg/sentry/syscalls/linux.Semget()
      pkg/sentry/syscalls/linux/sys_sem.go:42 +0x113
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*Task).executeSyscall()
      pkg/sentry/kernel/task_syscall.go:162 +0x14e
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*Task).doSyscallInvoke()
      pkg/sentry/kernel/task_syscall.go:278 +0x7d
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*Task).doSyscallEnter()
      pkg/sentry/kernel/task_syscall.go:241 +0xc3
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*Task).doSyscall()
      pkg/sentry/kernel/task_syscall.go:216 +0x19c
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*runApp).execute()
      pkg/sentry/kernel/task_run.go:217 +0x157c
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*Task).run()
      pkg/sentry/kernel/task_run.go:95 +0x264

Previous write at 0x00c420290338 by goroutine 128:
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel/semaphore.(*Set).Change()
      pkg/sentry/kernel/semaphore/semaphore.go:261 +0x120
  gvisor.googlesource.com/gvisor/pkg/sentry/syscalls/linux.ipcSet()
      pkg/sentry/syscalls/linux/sys_sem.go:145 +0x18d
  gvisor.googlesource.com/gvisor/pkg/sentry/syscalls/linux.Semctl()
      pkg/sentry/syscalls/linux/sys_sem.go:115 +0x2ab
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*Task).executeSyscall()
      pkg/sentry/kernel/task_syscall.go:162 +0x14e
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*Task).doSyscallInvoke()
      pkg/sentry/kernel/task_syscall.go:278 +0x7d
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*Task).doSyscallEnter()
      pkg/sentry/kernel/task_syscall.go:241 +0xc3
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*Task).doSyscall()
      pkg/sentry/kernel/task_syscall.go:216 +0x19c
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*runApp).execute()
      pkg/sentry/kernel/task_run.go:217 +0x157c
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*Task).run()
      pkg/sentry/kernel/task_run.go:95 +0x264

Crashes (21):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2018/06/24 05:15 https://github.com/dvyukov/gvisor.git race 60dbbdc2d54b 2064fc5c .config console log report syz C ci-gvisor-ptrace-proxy-sandbox-race
2018/06/28 05:39 https://github.com/dvyukov/gvisor.git race 53efb512bdf7 43e60f7e .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/06/28 05:19 https://github.com/dvyukov/gvisor.git race 53efb512bdf7 43e60f7e .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/06/28 04:37 https://github.com/dvyukov/gvisor.git race 53efb512bdf7 43e60f7e .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/06/28 01:22 https://github.com/dvyukov/gvisor.git race 53efb512bdf7 43e60f7e .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/06/28 00:51 https://github.com/dvyukov/gvisor.git race 53efb512bdf7 43e60f7e .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/06/27 23:31 https://github.com/dvyukov/gvisor.git race 53efb512bdf7 43e60f7e .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/06/27 12:21 https://github.com/dvyukov/gvisor.git race 53efb512bdf7 b0294c53 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/06/26 22:16 https://github.com/dvyukov/gvisor.git race fb36f579ec12 089f1181 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/06/26 20:04 https://github.com/dvyukov/gvisor.git race fb36f579ec12 089f1181 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/06/26 19:29 https://github.com/dvyukov/gvisor.git race fb36f579ec12 089f1181 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/06/26 10:47 https://github.com/dvyukov/gvisor.git race 60dbbdc2d54b 2064fc5c .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/06/26 05:24 https://github.com/dvyukov/gvisor.git race 60dbbdc2d54b 2064fc5c .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/06/26 03:17 https://github.com/dvyukov/gvisor.git race 60dbbdc2d54b 2064fc5c .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/06/26 01:12 https://github.com/dvyukov/gvisor.git race 60dbbdc2d54b 2064fc5c .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/06/26 00:38 https://github.com/dvyukov/gvisor.git race 60dbbdc2d54b 2064fc5c .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/06/25 20:08 https://github.com/dvyukov/gvisor.git race 60dbbdc2d54b 2064fc5c .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/06/25 18:56 https://github.com/dvyukov/gvisor.git race 60dbbdc2d54b 2064fc5c .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/06/25 15:21 https://github.com/dvyukov/gvisor.git race 60dbbdc2d54b 2064fc5c .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/06/24 16:49 https://github.com/dvyukov/gvisor.git race 60dbbdc2d54b 2064fc5c .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/06/24 04:59 https://github.com/dvyukov/gvisor.git race 60dbbdc2d54b 2064fc5c .config console log report ci-gvisor-ptrace-proxy-sandbox-race
* Struck through repros no longer work on HEAD.