syzbot


DATA RACE in stack.(*TransportEndpointInfo).AddrNetProto

Status: fixed on 2020/03/10 21:06
Fix commit: c15b8515eb4a Fix datarace on TransportEndpointInfo.ID and clean up semantics.
First crash: 1734d, last: 1726d

Sample crash report:
WARNING: DATA RACE
Read at 0x00c0003b8d90 by goroutine 354:
  gvisor.dev/gvisor/pkg/tcpip/stack.(*TransportEndpointInfo).AddrNetProto()
      pkg/tcpip/stack/stack.go:573 +0x79
  gvisor.dev/gvisor/pkg/tcpip/transport/udp.(*endpoint).checkV4Mapped()
      pkg/tcpip/transport/udp/endpoint.go:931 +0xee
  gvisor.dev/gvisor/pkg/tcpip/transport/udp.(*endpoint).Connect()
      pkg/tcpip/transport/udp/endpoint.go:984 +0x6c
  gvisor.dev/gvisor/pkg/sentry/socket/netstack.(*SocketOperations).Connect()
      pkg/sentry/socket/netstack/netstack.go:698 +0x4c5
  gvisor.dev/gvisor/pkg/sentry/syscalls/linux.Connect()
      pkg/sentry/syscalls/linux/sys_socket.go:280 +0x251
  gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).executeSyscall()
      pkg/sentry/kernel/task_syscall.go:170 +0x44d
  gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscallInvoke()
      pkg/sentry/kernel/task_syscall.go:291 +0xb4
  gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscallEnter()
      pkg/sentry/kernel/task_syscall.go:252 +0x109
DIAGNOSIS:
I0301 09:41:44.946032   42808 main.go:305] ***************************
I0301 09:41:44.946182   42808 main.go:306] Args: [/syzkaller/managers/ptrace-proxy-sandbox-race/current/image -root /syzkaller/managers/ptrace-proxy-sandbox-race/workdir/gvisor_root -watchdog-action=panic -network=none -debug -alsologtostderr -platform=ptrace -file-access=shared -network=sandbox -TESTONLY-unsafe-nonroot debug -stacks --ps ci-gvisor-ptrace-proxy-sandbox-race-1]
I0301 09:41:44.946380   42808 main.go:307] Version release-20200219.0-72-gce4d1e45bb88
I0301 09:41:44.946459   42808 main.go:308] PID: 42808
I0301 09:41:44.946546   42808 main.go:309] UID: 0, GID: 0
I0301 09:41:44.946648   42808 main.go:310] Configuration:
I0301 09:41:44.946755   42808 main.go:311] 		RootDir: /syzkaller/managers/ptrace-proxy-sandbox-race/workdir/gvisor_root
I0301 09:41:44.946894   42808 main.go:312] 		Platform: ptrace
I0301 09:41:44.946962   42808 main.go:313] 		FileAccess: shared, overlay: false
I0301 09:41:44.947093   42808 main.go:314] 		Network: sandbox, logging: false
I0301 09:41:44.947211   42808 main.go:315] 		Strace: false, max size: 1024, syscalls: []
I0301 09:41:44.947292   42808 main.go:316] ***************************
W0301 09:41:44.947397   42808 main.go:321] Block the TERM signal. This is only safe in tests!
D0301 09:41:44.947573   42808 container.go:159] Load container "/syzkaller/managers/ptrace-proxy-sandbox-race/workdir/gvisor_root" "ci-gvisor-ptrace-proxy-sandbox-race-1"
D0301 09:41:44.956962   42808 container.go:592] Signal container "ci-gvisor-ptrace-proxy-sandbox-race-1": signal 0
D0301 09:41:44.957138   42808 sandbox.go:806] Signal sandbox "ci-gvisor-ptrace-proxy-sandbox-race-1"
D0301 09:41:44.957245   42808 sandbox.go:318] Connecting to sandbox "ci-gvisor-ptrace-proxy-sandbox-race-1"
D0301 09:41:44.957675   42808 urpc.go:534] urpc: successfully marshalled 117 bytes.
I0301 09:41:45.040940   42808 debug.go:122] Found sandbox "ci-gvisor-ptrace-proxy-sandbox-race-1", PID: 34015
I0301 09:41:45.041064   42808 debug.go:131] Retrieving sandbox stacks
D0301 09:41:45.041150   42808 sandbox.go:924] Stacks sandbox "ci-gvisor-ptrace-proxy-sandbox-race-1"
D0301 09:41:45.041546   42808 sandbox.go:318] Connecting to sandbox "ci-gvisor-ptrace-proxy-sandbox-race-1"
W0301 09:41:45.041733   42808 error.go:48] FATAL ERROR: retrieving stacks: connecting to control server at PID 34015: connection refused
retrieving stacks: connecting to control server at PID 34015: connection refused
W0301 09:41:45.042171   42808 main.go:338] Failure to execute command, err: 1


Error collecting stacks: failed to run ["/syzkaller/managers/ptrace-proxy-sandbox-race/current/image" "-root" "/syzkaller/managers/ptrace-proxy-sandbox-race/workdir/gvisor_root" "-watchdog-action=panic" "-network=none" "-debug" "-alsologtostderr" "-platform=ptrace" "-file-access=shared" "-network=sandbox" "-TESTONLY-unsafe-nonroot" "debug" "-stacks" "--ps" "ci-gvisor-ptrace-proxy-sandbox-race-1"]: exit status 128
I0301 09:41:44.946032   42808 main.go:305] ***************************
I0301 09:41:44.946182   42808 main.go:306] Args: [/syzkaller/managers/ptrace-proxy-sandbox-race/current/image -root /syzkaller/managers/ptrace-proxy-sandbox-race/workdir/gvisor_root -watchdog-action=panic -network=none -debug -alsologtostderr -platform=ptrace -file-access=shared -network=sandbox -TESTONLY-unsafe-nonroot debug -stacks --ps ci-gvisor-ptrace-proxy-sandbox-race-1]
I0301 09:41:44.946380   42808 main.go:307] Version release-20200219.0-72-gce4d1e45bb88
I0301 09:41:44.946459   42808 main.go:308] PID: 42808
I0301 09:41:44.946546   42808 main.go:309] UID: 0, GID: 0
I0301 09:41:44.946648   42808 main.go:310] Configuration:
I0301 09:41:44.946755   42808 main.go:311] 		RootDir: /syzkaller/managers/ptrace-proxy-sandbox-race/workdir/gvisor_root
I0301 09:41:44.946894   42808 main.go:312] 		Platform: ptrace
I0301 09:41:44.946962   42808 main.go:313] 		FileAccess: shared, overlay: false
I0301 09:41:44.947093   42808 main.go:314] 		Network: sandbox, logging: false
I0301 09:41:44.947211   42808 main.go:315] 		Strace: false, max size: 1024, syscalls: []
I0301 09:41:44.947292   42808 main.go:316] ***************************
W0301 09:41:44.947397   42808 main.go:321] Block the TERM signal. This is only safe in tests!
D0301 09:41:44.947573   42808 container.go:159] Load container "/syzkaller/managers/ptrace-proxy-sandbox-race/workdir/gvisor_root" "ci-gvisor-ptrace-proxy-sandbox-race-1"
D0301 09:41:44.956962   42808 container.go:592] Signal container "ci-gvisor-ptrace-proxy-sandbox-race-1": signal 0
D0301 09:41:44.957138   42808 sandbox.go:806] Signal sandbox "ci-gvisor-ptrace-proxy-sandbox-race-1"
D0301 09:41:44.957245   42808 sandbox.go:318] Connecting to sandbox "ci-gvisor-ptrace-proxy-sandbox-race-1"
D0301 09:41:44.957675   42808 urpc.go:534] urpc: successfully marshalled 117 bytes.
I0301 09:41:45.040940   42808 debug.go:122] Found sandbox "ci-gvisor-ptrace-proxy-sandbox-race-1", PID: 34015
I0301 09:41:45.041064   42808 debug.go:131] Retrieving sandbox stacks
D0301 09:41:45.041150   42808 sandbox.go:924] Stacks sandbox "ci-gvisor-ptrace-proxy-sandbox-race-1"
D0301 09:41:45.041546   42808 sandbox.go:318] Connecting to sandbox "ci-gvisor-ptrace-proxy-sandbox-race-1"
W0301 09:41:45.041733   42808 error.go:48] FATAL ERROR: retrieving stacks: connecting to control server at PID 34015: connection refused
retrieving stacks: connecting to control server at PID 34015: connection refused
W0301 09:41:45.042171   42808 main.go:338] Failure to execute command, err: 1
  gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscall()
      pkg/sentry/kernel/task_syscall.go:227 +0x1b3
  gvisor.dev/gvisor/pkg/sentry/kernel.(*runApp).execute()
      pkg/sentry/kernel/task_run.go:232 +0x1aaa
  gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).run()
      pkg/sentry/kernel/task_run.go:92 +0x320

Crashes (148):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2020/03/01 09:43 gvisor ce4d1e45bb88 c88c7b75 .config console log report syz ci-gvisor-ptrace-proxy-sandbox-race
2020/02/29 21:21 gvisor ce4d1e45bb88 c88c7b75 .config console log report syz ci-gvisor-ptrace-proxy-sandbox-race
2020/02/29 08:50 gvisor ce4d1e45bb88 c88c7b75 .config console log report syz ci-gvisor-ptrace-proxy-sandbox-race
2020/02/29 08:29 gvisor ce4d1e45bb88 c88c7b75 .config console log report syz ci-gvisor-ptrace-proxy-sandbox-race
2020/02/28 11:39 gvisor c96bb4d2ebc6 c88c7b75 .config console log report syz ci-gvisor-ptrace-proxy-sandbox-race
2020/02/27 19:02 gvisor de0b2ebf8635 40bcfdd5 .config console log report syz ci-gvisor-ptrace-proxy-sandbox-race
2020/02/27 13:44 gvisor de0b2ebf8635 40bcfdd5 .config console log report syz ci-gvisor-ptrace-proxy-sandbox-race
2020/02/27 13:18 gvisor de0b2ebf8635 40bcfdd5 .config console log report syz ci-gvisor-ptrace-proxy-sandbox-race
2020/02/27 12:17 gvisor de0b2ebf8635 40bcfdd5 .config console log report syz ci-gvisor-ptrace-proxy-sandbox-race
2020/02/27 11:58 gvisor de0b2ebf8635 40bcfdd5 .config console log report syz ci-gvisor-ptrace-proxy-sandbox-race
2020/03/05 19:02 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/05 12:08 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/05 10:26 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/05 08:59 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/05 07:32 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/05 06:31 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/05 05:31 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/05 03:43 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/05 02:01 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/04 23:58 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/04 22:36 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/04 20:41 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/04 17:24 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/04 16:20 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/04 13:50 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/04 10:43 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/04 08:34 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/04 05:12 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/04 01:23 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/03 23:58 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/03 22:52 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/03 20:24 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/03 18:35 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/03 16:07 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/03 14:57 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/03 13:41 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/03 12:37 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/03 09:42 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/03 07:11 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/03 03:35 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/03 00:59 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/02 21:27 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/02 16:42 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/02 14:33 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/02 10:13 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/02 04:21 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/02 02:58 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/02 02:22 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/02 00:44 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/01 22:46 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/01 21:24 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/01 19:57 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/01 15:53 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/01 13:56 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/01 12:37 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/03/01 09:18 gvisor ce4d1e45bb88 c88c7b75 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
2020/02/27 10:19 gvisor de0b2ebf8635 40bcfdd5 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
* Struck through repros no longer work on HEAD.