syzbot


DATA RACE in mqfs.FilesystemType.GetFilesystem

Status: fixed on 2022/02/01 09:59
Fix commit: d1dadc9c19a1 Remove dentry_cache_limit mount option from mqfs.
First crash: 1043d, last: 1043d

Sample crash report:
WARNING: DATA RACE
Write at 0x00c0005a2268 by goroutine 666:
  gvisor.dev/gvisor/pkg/sentry/fsimpl/mqfs.FilesystemType.GetFilesystem()
      pkg/sentry/fsimpl/mqfs/mqfs.go:87 +0x31b
  gvisor.dev/gvisor/pkg/sentry/fsimpl/mqfs.(*FilesystemType).GetFilesystem()
      <autogenerated>:1 +0xe4
  gvisor.dev/gvisor/pkg/sentry/vfs.(*VirtualFilesystem).MountDisconnected()
      pkg/sentry/vfs/mount.go:219 +0x1d2
  gvisor.dev/gvisor/pkg/sentry/vfs.(*VirtualFilesystem).MountAt()
      pkg/sentry/vfs/mount.go:307 +0xec
  gvisor.dev/gvisor/pkg/sentry/syscalls/linux/vfs2.Mount()
      pkg/sentry/syscalls/linux/vfs2/mount.go:143 +0x75a
  gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).executeSyscall()
      pkg/sentry/kernel/task_syscall.go:116 +0x594
  gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscallInvoke()
      pkg/sentry/kernel/task_syscall.go:291 +0xd1
  gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscallEnter()
      pkg/sentry/kernel/task_syscall.go:238 +0x156
  gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscall()
      pkg/sentry/kernel/task_syscall.go:205 +0x2b0
  gvisor.dev/gvisor/pkg/sentry/kernel.(*runApp).execute()
      pkg/sentry/kernel/task_run.go:296 +0x150a
  gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).run()
      pkg/sentry/kernel/task_run.go:100 +0x2f1

Previous write at 0x00c0005a2268 by goroutine 457:
  gvisor.dev/gvisor/pkg/sentry/fsimpl/mqfs.FilesystemType.GetFilesystem()
      pkg/sentry/fsimpl/mqfs/mqfs.go:87 +0x31b
  gvisor.dev/gvisor/pkg/sentry/fsimpl/mqfs.(*FilesystemType).GetFilesystem()
      <autogenerated>:1 +0xe4
  gvisor.dev/gvisor/pkg/sentry/vfs.(*VirtualFilesystem).MountDisconnected()
      pkg/sentry/vfs/mount.go:219 +0x1d2
  gvisor.dev/gvisor/pkg/sentry/vfs.(*VirtualFilesystem).MountAt()
      pkg/sentry/vfs/mount.go:307 +0xec
  gvisor.dev/gvisor/pkg/sentry/syscalls/linux/vfs2.Mount()
      pkg/sentry/syscalls/linux/vfs2/mount.go:143 +0x75a
  gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).executeSyscall()
      pkg/sentry/kernel/task_syscall.go:116 +0x594
  gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscallInvoke()
      pkg/sentry/kernel/task_syscall.go:291 +0xd1
  gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscallEnter()
      pkg/sentry/kernel/task_syscall.go:238 +0x156
  gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscall()
      pkg/sentry/kernel/task_syscall.go:205 +0x2b0
  gvisor.dev/gvisor/pkg/sentry/kernel.(*runApp).execute()
      pkg/sentry/kernel/task_run.go:296 +0x150a
  gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).run()
      pkg/sentry/kernel/task_run.go:100 +0x2f1

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2022/01/17 20:37 gvisor 6d15b0ee64f1 731a2d23 .config console log report info ci-gvisor-ptrace-1-race-cover DATA RACE in mqfs.FilesystemType.GetFilesystem
* Struck through repros no longer work on HEAD.