syzbot


DATA RACE in fs.Rename (3)

Status: fixed on 2020/01/18 20:38
Fix commit: f1a5178c589d Fix data race in MountNamespace.resolve.
First crash: 1571d, last: 1571d
Similar bugs (3)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
gvisor DATA RACE in fs.Rename (4) syz 2 1387d 1380d 0/26 moderation: reported syz repro on 2020/07/25 18:04
gvisor DATA RACE in fs.Rename C 16 2133d 2143d 0/26 fixed on 2018/07/04 07:42
gvisor DATA RACE in fs.Rename (2) C 433 1857d 1879d 0/26 fixed on 2019/12/06 21:56

Sample crash report:
WARNING: DATA RACE
DIAGNOSIS:
I0117 10:15:55.261278   31397 x:0] ***************************
I0117 10:15:55.261414   31397 x:0] 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-3]
I0117 10:15:55.261596   31397 x:0] Version release-20200115.0-15-g1e7f0c822b3a
I0117 10:15:55.261688   31397 x:0] PID: 31397
I0117 10:15:55.261813   31397 x:0] UID: 0, GID: 0
I0117 10:15:55.261894   31397 x:0] Configuration:
I0117 10:15:55.261930   31397 x:0] 		RootDir: /syzkaller/managers/ptrace-proxy-sandbox-race/workdir/gvisor_root
I0117 10:15:55.261958   31397 x:0] 		Platform: ptrace
I0117 10:15:55.261991   31397 x:0] 		FileAccess: shared, overlay: false
I0117 10:15:55.262052   31397 x:0] 		Network: sandbox, logging: false
I0117 10:15:55.262113   31397 x:0] 		Strace: false, max size: 1024, syscalls: []
I0117 10:15:55.262151   31397 x:0] ***************************
W0117 10:15:55.262196   31397 x:0] Block the TERM signal. This is only safe in tests!
D0117 10:15:55.263420   31397 x:0] Load container "/syzkaller/managers/ptrace-proxy-sandbox-race/workdir/gvisor_root" "ci-gvisor-ptrace-proxy-sandbox-race-3"
D0117 10:15:55.273338   31397 x:0] Signal container "ci-gvisor-ptrace-proxy-sandbox-race-3": signal 0
D0117 10:15:55.273790   31397 x:0] Signal sandbox "ci-gvisor-ptrace-proxy-sandbox-race-3"
D0117 10:15:55.273869   31397 x:0] Connecting to sandbox "ci-gvisor-ptrace-proxy-sandbox-race-3"
D0117 10:15:55.274754   31397 x:0] urpc: successfully marshalled 117 bytes.
I0117 10:15:55.642176   31397 x:0] Found sandbox "ci-gvisor-ptrace-proxy-sandbox-race-3", PID: 5021
I0117 10:15:55.642294   31397 x:0] Retrieving sandbox stacks
D0117 10:15:55.642932   31397 x:0] Stacks sandbox "ci-gvisor-ptrace-proxy-sandbox-race-3"
D0117 10:15:55.643015   31397 x:0] Connecting to sandbox "ci-gvisor-ptrace-proxy-sandbox-race-3"
W0117 10:15:55.643133   31397 x:0] FATAL ERROR: retrieving stacks: connecting to control server at PID 5021: connection refused
retrieving stacks: connecting to control server at PID 5021: connection refused
W0117 10:15:55.643490   31397 x:0] 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-3"]: exit status 128
I0117 10:15:55.261278   31397 x:0] ***************************
I0117 10:15:55.261414   31397 x:0] 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-3]
I0117 10:15:55.261596   31397 x:0] Version release-20200115.0-15-g1e7f0c822b3a
I0117 10:15:55.261688   31397 x:0] PID: 31397
I0117 10:15:55.261813   31397 x:0] UID: 0, GID: 0
I0117 10:15:55.261894   31397 x:0] Configuration:
I0117 10:15:55.261930   31397 x:0] 		RootDir: /syzkaller/managers/ptrace-proxy-sandbox-race/workdir/gvisor_root
I0117 10:15:55.261958   31397 x:0] 		Platform: ptrace
I0117 10:15:55.261991   31397 x:0] 		FileAccess: shared, overlay: false
I0117 10:15:55.262052   31397 x:0] 		Network: sandbox, logging: false
I0117 10:15:55.262113   31397 x:0] 		Strace: false, max size: 1024, syscalls: []
I0117 10:15:55.262151   31397 x:0] ***************************
W0117 10:15:55.262196   31397 x:0] Block the TERM signal. This is only safe in tests!
D0117 10:15:55.263420   31397 x:0] Load container "/syzkaller/managers/ptrace-proxy-sandbox-race/workdir/gvisor_root" "ci-gvisor-ptrace-proxy-sandbox-race-3"
D0117 10:15:55.273338   31397 x:0] Signal container "ci-gvisor-ptrace-proxy-sandbox-race-3": signal 0
D0117 10:15:55.273790   31397 x:0] Signal sandbox "ci-gvisor-ptrace-proxy-sandbox-race-3"
D0117 10:15:55.273869   31397 x:0] Connecting to sandbox "ci-gvisor-ptrace-proxy-sandbox-race-3"
D0117 10:15:55.274754   31397 x:0] urpc: successfully marshalled 117 bytes.
I0117 10:15:55.642176   31397 x:0] Found sandbox "ci-gvisor-ptrace-proxy-sandbox-race-3", PID: 5021
I0117 10:15:55.642294   31397 x:0] Retrieving sandbox stacks
D0117 10:15:55.642932   31397 x:0] Stacks sandbox "ci-gvisor-ptrace-proxy-sandbox-race-3"
D0117 10:15:55.643015   31397 x:0] Connecting to sandbox "ci-gvisor-ptrace-proxy-sandbox-race-3"
W0117 10:15:55.643133   31397 x:0] FATAL ERROR: retrieving stacks: connecting to control server at PID 5021: connection refused
retrieving stacks: connecting to control server at PID 5021: connection refused
W0117 10:15:55.643490   31397 x:0] Failure to execute command, err: 1
Write at 0x00c002c3fbe8 by goroutine 628:
  gvisor.dev/gvisor/pkg/sentry/fs.Rename()
      pkg/sentry/fs/dirent.go:1638 +0x65b
  gvisor.dev/gvisor/pkg/sentry/syscalls/linux.renameAt.func1.1()
      pkg/sentry/syscalls/linux/sys_file.go:2024 +0x1f8
  gvisor.dev/gvisor/pkg/sentry/syscalls/linux.fileOpAt.func1()
      pkg/sentry/syscalls/linux/sys_file.go:57 +0x70
  gvisor.dev/gvisor/pkg/sentry/syscalls/linux.fileOpOn()
      pkg/sentry/syscalls/linux/sys_file.go:111 +0x23f
  gvisor.dev/gvisor/pkg/sentry/syscalls/linux.fileOpAt()
      pkg/sentry/syscalls/linux/sys_file.go:56 +0x120
  gvisor.dev/gvisor/pkg/sentry/syscalls/linux.renameAt.func1()
      pkg/sentry/syscalls/linux/sys_file.go:2012 +0x218
  gvisor.dev/gvisor/pkg/sentry/syscalls/linux.fileOpAt.func1()
      pkg/sentry/syscalls/linux/sys_file.go:57 +0x70
  gvisor.dev/gvisor/pkg/sentry/syscalls/linux.fileOpOn()
      pkg/sentry/syscalls/linux/sys_file.go:111 +0x23f
  gvisor.dev/gvisor/pkg/sentry/syscalls/linux.fileOpAt()
      pkg/sentry/syscalls/linux/sys_file.go:56 +0x120
  gvisor.dev/gvisor/pkg/sentry/syscalls/linux.renameAt()
      pkg/sentry/syscalls/linux/sys_file.go:2000 +0x180
  gvisor.dev/gvisor/pkg/sentry/syscalls/linux.Rename()
      pkg/sentry/syscalls/linux/sys_file.go:2033 +0x60
  gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).executeSyscall()
      pkg/sentry/kernel/task_syscall.go:170 +0x455
  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
  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 +0x1aaf
  gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).run()
      pkg/sentry/kernel/task_run.go:92 +0x308

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2020/01/17 10:16 https://gvisor.googlesource.com/gvisor master 1e7f0c822b3a 3de7aabb .config console log report ci-gvisor-ptrace-proxy-sandbox-race
* Struck through repros no longer work on HEAD.