syzbot


DATA RACE in dev.(*randomDevice).GetFile

Status: fixed on 2019/04/01 09:44
Fix commit: 645af7cdd8a1 Dev device methods should take pointer receiver.
First crash: 2071d, last: 2071d

Sample crash report:
WARNING: DATA RACE
Read at 0x00c0002a83c8 by goroutine 445:
  gvisor.googlesource.com/gvisor/pkg/sentry/fs/dev.(*randomDevice).GetFile()
      <autogenerated>:1 +0x5b
  gvisor.googlesource.com/gvisor/pkg/sentry/fs.(*Inode).GetFile()
      pkg/sentry/fs/inode.go:243 +0x1f9
  gvisor.googlesource.com/gvisor/pkg/sentry/fs.overlayFile()
      pkg/sentry/fs/file_overlay.go:52 +0xec
  gvisor.googlesource.com/gvisor/pkg/sentry/fs.overlayGetFile()
      pkg/sentry/fs/inode_overlay.go:430 +0x113
  gvisor.googlesource.com/gvisor/pkg/sentry/fs.(*Inode).GetFile()
      pkg/sentry/fs/inode.go:240 +0xef
  gvisor.googlesource.com/gvisor/pkg/sentry/syscalls/linux.openAt.func1()
      pkg/sentry/syscalls/linux/sys_file.go:180 +0x387
  gvisor.googlesource.com/gvisor/pkg/sentry/syscalls/linux.fileOpOn()
      pkg/sentry/syscalls/linux/sys_file.go:112 +0x242
  gvisor.googlesource.com/gvisor/pkg/sentry/syscalls/linux.openAt()
      pkg/sentry/syscalls/linux/sys_file.go:141 +0x147
  gvisor.googlesource.com/gvisor/pkg/sentry/syscalls/linux.Openat()
      pkg/sentry/syscalls/linux/sys_file.go:413 +0xfe
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*Task).executeSyscall()
      pkg/sentry/kernel/task_syscall.go:165 +0x407
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*Task).doSyscallInvoke()
      pkg/sentry/kernel/task_syscall.go:283 +0xb4
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*Task).doSyscallEnter()
      pkg/sentry/kernel/task_syscall.go:244 +0x109
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*Task).doSyscall()
      pkg/sentry/kernel/task_syscall.go:219 +0x1b6
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*runApp).execute()
      pkg/sentry/kernel/task_run.go:215 +0x1852
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*Task).run()
      pkg/sentry/kernel/task_run.go:91 +0x2e5

Previous write at 0x00c0002a83c8 by goroutine 553:
  gvisor.googlesource.com/gvisor/pkg/sentry/fs.(*UnstableAttr).SetTimestamps()
      pkg/sentry/fs/attr.go:215 +0x121
  gvisor.googlesource.com/gvisor/pkg/sentry/fs/fsutil.(*InodeSimpleAttributes).SetTimestamps()
      pkg/sentry/fs/fsutil/inode.go:145 +0x9e
  gvisor.googlesource.com/gvisor/pkg/sentry/fs/dev.(*randomDevice).SetTimestamps()
      <autogenerated>:1 +0xb4
  gvisor.googlesource.com/gvisor/pkg/sentry/fs.overlaySetTimestamps()
      pkg/sentry/fs/inode_overlay.go:550 +0x1a4
  gvisor.googlesource.com/gvisor/pkg/sentry/fs.(*Inode).SetTimestamps()
      pkg/sentry/fs/inode.go:329 +0xf5
  gvisor.googlesource.com/gvisor/pkg/sentry/syscalls/linux.utimes.func1()
      pkg/sentry/syscalls/linux/sys_file.go:1691 +0x15b
  gvisor.googlesource.com/gvisor/pkg/sentry/syscalls/linux.utimes()
      pkg/sentry/syscalls/linux/sys_file.go:1712 +0x1ea
  gvisor.googlesource.com/gvisor/pkg/sentry/syscalls/linux.Utimensat()
      pkg/sentry/syscalls/linux/sys_file.go:1801 +0x11e
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*Task).executeSyscall()
      pkg/sentry/kernel/task_syscall.go:165 +0x407
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*Task).doSyscallInvoke()
      pkg/sentry/kernel/task_syscall.go:283 +0xb4
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*Task).doSyscallEnter()
      pkg/sentry/kernel/task_syscall.go:244 +0x109
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*Task).doSyscall()
      pkg/sentry/kernel/task_syscall.go:219 +0x1b6
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*runApp).execute()
      pkg/sentry/kernel/task_run.go:215 +0x1852
  gvisor.googlesource.com/gvisor/pkg/sentry/kernel.(*Task).run()
      pkg/sentry/kernel/task_run.go:91 +0x2e5

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2019/03/27 05:24 https://gvisor.googlesource.com/gvisor master cea1dd7d21b9 55684ce1 .config console log report ci-gvisor-ptrace-proxy-sandbox-race
* Struck through repros no longer work on HEAD.