syzbot


DATA RACE in unix.(*connectionlessEndpoint).UnidirectionalConnect

Status: fixed on 2018/08/19 04:48
Fix commit: 2a44362c0b99 Fix data race in unix.BoundEndpoint.UnidirectionalConnect.
First crash: 2332d, last: 2301d

Sample crash report:
WARNING: DATA RACE
Read at 0x00c4204ae248 by goroutine 140:
  gvisor.googlesource.com/gvisor/pkg/tcpip/transport/unix.(*connectionlessEndpoint).UnidirectionalConnect()
      pkg/tcpip/transport/unix/connectionless.go:70 +0x40
  gvisor.googlesource.com/gvisor/pkg/tcpip/transport/unix.(*connectionlessEndpoint).Connect()
      pkg/tcpip/transport/unix/connectionless.go:107 +0x42
  gvisor.googlesource.com/gvisor/pkg/sentry/socket/unix.(*SocketOperations).Connect()
      pkg/sentry/socket/unix/unix.go:340 +0xe5
  gvisor.googlesource.com/gvisor/pkg/sentry/syscalls/linux.Connect()
      pkg/sentry/syscalls/linux/sys_socket.go:278 +0x21d
  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 0x00c4204ae248 by goroutine 131:
  gvisor.googlesource.com/gvisor/pkg/tcpip/transport/unix.(*connectionlessEndpoint).Close()
      pkg/tcpip/transport/unix/connectionless.go:46 +0x18d
  gvisor.googlesource.com/gvisor/pkg/sentry/socket/unix.(*SocketOperations).DecRef.func1()
      pkg/sentry/socket/unix/unix.go:73 +0x61
  gvisor.googlesource.com/gvisor/pkg/refs.(*AtomicRefCount).DecRefWithDestructor()
      pkg/refs/refcounter.go:293 +0x197
  gvisor.googlesource.com/gvisor/pkg/sentry/socket/unix.(*SocketOperations).DecRef()
      pkg/sentry/socket/unix/unix.go:72 +0x79
  gvisor.googlesource.com/gvisor/pkg/sentry/socket/unix.(*SocketOperations).Release()
      pkg/sentry/socket/unix/unix.go:81 +0x38
  gvisor.googlesource.com/gvisor/pkg/sentry/fs.(*File).DecRef.func1()
      pkg/sentry/fs/file.go:123 +0xe1
  gvisor.googlesource.com/gvisor/pkg/refs.(*AtomicRefCount).DecRefWithDestructor()
      pkg/refs/refcounter.go:293 +0x197
  gvisor.googlesource.com/gvisor/pkg/sentry/fs.(*File).DecRef()
      pkg/sentry/fs/file.go:117 +0x79
  gvisor.googlesource.com/gvisor/pkg/sentry/syscalls/linux.Close()
      pkg/sentry/syscalls/linux/sys_file.go:690 +0x17d
  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 (965):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2018/07/09 04:13 https://github.com/dvyukov/gvisor.git race 54dabe736f40 f25e5770 .config console log report syz C ci-gvisor-ptrace-proxy-sandbox-race
2018/08/08 17:35 https://github.com/dvyukov/gvisor.git race e4ce26c8b9b1 d46deef5 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/08 15:23 https://github.com/dvyukov/gvisor.git race e4ce26c8b9b1 d46deef5 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/08 12:44 https://github.com/dvyukov/gvisor.git race 72627b310e89 14f8a76f .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/08 07:54 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/08 07:50 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/08 06:41 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/08 02:58 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/07 23:06 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/07 21:42 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/07 20:09 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/07 18:30 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/07 16:44 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/07 15:28 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/07 11:51 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/07 10:23 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/07 09:02 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/07 06:29 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/07 04:44 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/07 03:34 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/07 01:38 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/06 20:31 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/06 19:09 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/06 17:51 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/06 16:50 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/06 14:08 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/06 12:39 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/06 11:45 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/06 10:41 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/06 09:02 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/06 07:52 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/06 05:50 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/06 04:37 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/06 03:13 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/06 01:20 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/06 00:17 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/05 22:06 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/05 20:39 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/05 18:56 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/05 17:28 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/05 14:32 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/05 14:21 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/05 13:11 https://github.com/dvyukov/gvisor.git race 72627b310e89 1beb8136 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/08/05 11:13 https://github.com/dvyukov/gvisor.git race 72627b310e89 3476a2df .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2018/07/09 03:55 https://github.com/dvyukov/gvisor.git race 54dabe736f40 f25e5770 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
* Struck through repros no longer work on HEAD.