panic: WARNING: circular locking detected: mm.mappingRWMutex -> tmpfs.filesystemRWMutex: goroutine 5884 [running]: gvisor.dev/gvisor/pkg/sync/locking.(*ancestorsAtomicPtrMap).RangeRepeatable(0xc0003cfa00, 0xc000a76650) bazel-out/k8-fastbuild/bin/pkg/sync/locking/atomicptrmap_ancestors_unsafe.go:440 +0x326 gvisor.dev/gvisor/pkg/sync/locking.checkLock(0xc0003cfc20, 0xc0003cf9e0, {0x0, 0x0, 0x0}) pkg/sync/locking/lockdep.go:112 +0x505 gvisor.dev/gvisor/pkg/sync/locking.AddGLock(0xc0003cfc20, 0xffffffffffffffff) pkg/sync/locking/lockdep.go:144 +0x390 gvisor.dev/gvisor/pkg/sentry/fsimpl/tmpfs.(*filesystemRWMutex).RLock(0xc000ac73e8) bazel-out/k8-fastbuild/bin/pkg/sentry/fsimpl/tmpfs/filesystem_mutex.go:59 +0x4d gvisor.dev/gvisor/pkg/sentry/fsimpl/tmpfs.(*filesystem).StatAt(0xc000ac7380, {0x205f270, 0xc0007fea80}, 0xc0008d2488, {0x44?, 0x0?}) pkg/sentry/fsimpl/tmpfs/filesystem.go:760 +0xa8 gvisor.dev/gvisor/pkg/sentry/vfs.(*FileDescription).Stat(0xc000642a80, {0x205f270, 0xc0007fea80}, {0xa?, 0x0?}) pkg/sentry/vfs/file_description.go:540 +0x322 gvisor.dev/gvisor/pkg/sentry/vfs.(*FileDescription).DeviceID(0xc000642a80) pkg/sentry/vfs/file_description.go:823 +0x65 gvisor.dev/gvisor/pkg/sentry/mm.(*MemoryManager).appendVMAMapsEntryLocked(0xc00093c100?, {0x205f0c0, 0xc0021dc008}, {0xc000a92d08?, 0xc000a76fb8?}, 0xc001846ba0) pkg/sentry/mm/procfs.go:118 +0x19d gvisor.dev/gvisor/pkg/sentry/mm.(*MemoryManager).vmaSmapsEntryIntoLocked(0xc0006bd008, {0x205f0c0, 0xc0021dc008}, {0xc000a92d08?, 0x48352c?}, 0xc00093c100) pkg/sentry/mm/procfs.go:160 +0xb5 gvisor.dev/gvisor/pkg/sentry/mm.(*MemoryManager).ReadSmapsDataInto(0xc0006bd008, {0x205f0c0, 0xc0021dc008}, 0xc00093c100) pkg/sentry/mm/procfs.go:141 +0x12e gvisor.dev/gvisor/pkg/sentry/fsimpl/proc.(*smapsData).Generate(0xc002088388, {0x205f0c0, 0xc0021dc008}, 0xc00093c100) pkg/sentry/fsimpl/proc/task_files.go:631 +0xa5 gvisor.dev/gvisor/pkg/sentry/vfs.(*DynamicBytesFileDescriptionImpl).preadLocked(0xc00093c0e0, {0x205f0c0, 0xc0021dc008}, {{0x2055d58, 0xc0006bd008}, {0x0, 0x1, 0x0, 0x0}, {0x0, ...}}, ...) pkg/sentry/vfs/file_description_impl_util.go:310 +0x1df gvisor.dev/gvisor/pkg/sentry/vfs.(*DynamicBytesFileDescriptionImpl).Read(0xc00093c0e0, {0x205f0c0, 0xc0021dc008}, {{0x2055d58, 0xc0006bd008}, {0x0, 0x1, 0x0, 0x0}, {0x0, ...}}, ...) pkg/sentry/vfs/file_description_impl_util.go:337 +0x12e gvisor.dev/gvisor/pkg/sentry/fsimpl/kernfs.(*DynamicBytesFD).Read(0xc00093c0e0, {0x205f0c0, 0xc0021dc008}, {{0x2055d58, 0xc0006bd008}, {0x0, 0x1, 0x0, 0x0}, {0x0, ...}}, ...) pkg/sentry/fsimpl/kernfs/dynamic_bytes_file.go:127 +0xa5 gvisor.dev/gvisor/pkg/sentry/vfs.(*FileDescription).Read(0xc00093c140, {0x205f0c0, 0xc0021dc008}, {{0x2055d58, 0xc0006bd008}, {0x0, 0x1, 0x0, 0x0}, {0x0, ...}}, ...) pkg/sentry/vfs/file_description.go:648 +0x15a gvisor.dev/gvisor/pkg/sentry/syscalls/linux.read(0xc0021dc008, 0xc00093c140, {{0x2055d58, 0xc0006bd008}, {0x0, 0x1, 0x0, 0x0}, {0x0, 0x1}}, ...) pkg/sentry/syscalls/linux/sys_read_write.go:93 +0xa5 gvisor.dev/gvisor/pkg/sentry/syscalls/linux.Read(0xc0021dc008, 0x0?, {{0x4}, {0x0}, {0x0}, {0x0}, {0x0}, {0x0}}) pkg/sentry/syscalls/linux/sys_read_write.go:62 +0x38f gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).executeSyscall(0xc0021dc008, 0x0, {{0x4}, {0x0}, {0x0}, {0x0}, {0x0}, {0x0}}) pkg/sentry/kernel/task_syscall.go:143 +0xb9f gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscallInvoke(0xc0021dc008, 0x0, {{0x4}, {0x0}, {0x0}, {0x0}, {0x0}, {0x0}}) pkg/sentry/kernel/task_syscall.go:323 +0x85 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscallEnter(0xc0021dc008, 0x0, {{0x4}, {0x0}, {0x0}, {0x0}, {0x0}, {0x0}}) pkg/sentry/kernel/task_syscall.go:283 +0xc7 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscall(0xc0021dc008) pkg/sentry/kernel/task_syscall.go:258 +0x54a gvisor.dev/gvisor/pkg/sentry/kernel.(*runApp).execute(0xc0021dc008?, 0xc0021dc008) pkg/sentry/kernel/task_run.go:269 +0x2295 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).run(0xc0021dc008, 0x53d) pkg/sentry/kernel/task_run.go:97 +0x41b created by gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).Start in goroutine 5869 pkg/sentry/kernel/task_start.go:400 +0x185 known lock chain: tmpfs.filesystemRWMutex -> tmpfs.inodeMutex -> mm.mappingRWMutex ====== tmpfs.filesystemRWMutex -> tmpfs.inodeMutex ===== goroutine 1 [running]: gvisor.dev/gvisor/pkg/sentry/fsimpl/tmpfs.(*inodeMutex).Lock(0xc000ac1888) bazel-out/k8-fastbuild/bin/pkg/sentry/fsimpl/tmpfs/inode_mutex.go:33 +0x4d gvisor.dev/gvisor/pkg/sentry/fsimpl/tmpfs.(*inode).touchCMtime(0xc000ac1858) pkg/sentry/fsimpl/tmpfs/tmpfs.go:824 +0xb8 gvisor.dev/gvisor/pkg/sentry/fsimpl/tmpfs.(*filesystem).doCreateAt(0xc000ac7380, {0x205f390, 0xc00072da80}, 0xc000ac4908, 0x0, 0xc00065dc68) pkg/sentry/fsimpl/tmpfs/filesystem.go:219 +0x633 gvisor.dev/gvisor/pkg/sentry/fsimpl/tmpfs.(*filesystem).SymlinkAt(0xc000ac7380, {0x205f390, 0xc00072da80}, 0xc000ac4908, {0x1e4803c, 0xd}) pkg/sentry/fsimpl/tmpfs/filesystem.go:783 +0xf3 gvisor.dev/gvisor/pkg/sentry/vfs.(*VirtualFilesystem).SymlinkAt(0xc0001fb1e0, {0x205f390, 0xc00072da80}, 0xc0001ac840, 0xc0003b6190, {0x1e4803c, 0xd}) pkg/sentry/vfs/vfs.go:695 +0x303 gvisor.dev/gvisor/pkg/sentry/fsimpl/dev.userspaceInit({0x205f390, 0xc00072da80}, 0xc0001fb1e0, 0xc0001ac840, {0xc000cf40b0?, 0xc000ac1808?}, 0x0) pkg/sentry/fsimpl/dev/dev.go:164 +0x33e gvisor.dev/gvisor/pkg/sentry/fsimpl/dev.FilesystemType.GetFilesystem({}, {0x205f390, 0xc00072da80}, 0xc0001fb1e0, 0xc0001ac840, {0x0, 0x0}, {0x1, {0x0, 0x0}, ...}) pkg/sentry/fsimpl/dev/dev.go:60 +0x36e gvisor.dev/gvisor/pkg/sentry/vfs.(*VirtualFilesystem).NewFilesystem(0xc0001fb1e0, {0x205f390, 0xc00072da80}, 0xc0001ac840, {0x0, 0x0}, {0x1e3e65d, 0x3}, 0xc000ab0740) pkg/sentry/vfs/mount.go:252 +0x1d4 gvisor.dev/gvisor/pkg/sentry/vfs.(*VirtualFilesystem).MountDisconnected(0xc0001fb1e0, {0x205f390, 0xc00072da80}, 0xc0001ac840, {0x0, 0x0}, {0x1e3e65d, 0x3}, 0xc000ab0740) pkg/sentry/vfs/mount.go:271 +0xc5 gvisor.dev/gvisor/pkg/sentry/vfs.(*VirtualFilesystem).MountAt(0xc0001fb1e0, {0x205f390, 0xc00072da80}, 0xc0001ac840, {0x0, 0x0}, 0xc00065e520, {0x1e3e65d, 0x3}, 0xc000ab0740) pkg/sentry/vfs/mount.go:632 +0xe5 gvisor.dev/gvisor/runsc/boot.(*containerMounter).mountSubmount(0xc000863e10, {0x205f390, 0xc00072da80}, 0xc00003e2d0, 0xc0004d4608, 0xc0007ffda0, 0xc0001ac840, 0xc0003bad48) runsc/boot/vfs.go:850 +0xb52 gvisor.dev/gvisor/runsc/boot.(*containerMounter).mountSubmounts(0xc000863e10, {0x205f390, 0xc00072da80}, 0xc00003e2d0, 0xc0004d4608, 0xc0007ffda0, 0xc0001ac840) runsc/boot/vfs.go:739 +0x9ed gvisor.dev/gvisor/runsc/boot.(*containerMounter).mountAll(0xc000863e10, {0x205f390, 0xc00072da80}, 0xc0001ac840, 0xc00003e2d0, 0xc0004d4608, 0xc00087c000) runsc/boot/vfs.go:468 +0x585 gvisor.dev/gvisor/runsc/boot.setupContainerVFS({0x205f390, 0xc00072d8a0}, 0xc000040298, 0xc000863e10, 0xc0000402c8) runsc/boot/vfs.go:177 +0x2ce gvisor.dev/gvisor/runsc/boot.(*Loader).createContainerProcess(0xc000040288, 0xc000040298) runsc/boot/loader.go:1159 +0xb1b gvisor.dev/gvisor/runsc/boot.(*Loader).run(0xc000040288) runsc/boot/loader.go:917 +0x372 gvisor.dev/gvisor/runsc/boot.(*Loader).Run(0xc000040288) runsc/boot/loader.go:865 +0x2f gvisor.dev/gvisor/runsc/cmd.(*Boot).Execute(0xc00059cc40, {0xc0001ae118?, 0x13?}, 0xc0001d7650, {0xc0003a2300, 0x2, 0xc0003a2300?}) runsc/cmd/boot.go:564 +0x3525 github.com/google/subcommands.(*Commander).Execute(0xc0001d8000, {0x204e990, 0x3d3f820}, {0xc0003a2300, 0x2, 0x2}) external/com_github_google_subcommands/subcommands.go:200 +0x684 github.com/google/subcommands.Execute(...) external/com_github_google_subcommands/subcommands.go:481 gvisor.dev/gvisor/runsc/cli.Main() runsc/cli/main.go:216 +0x210f main.main() runsc/main.go:31 +0x1d ====== tmpfs.inodeMutex -> mm.mappingRWMutex ===== goroutine 1767 [running]: gvisor.dev/gvisor/pkg/sentry/mm.(*mappingRWMutex).RLock(0xc00147205c) bazel-out/k8-fastbuild/bin/pkg/sentry/mm/mapping_mutex.go:59 +0x4d gvisor.dev/gvisor/pkg/sentry/mm.(*MemoryManager).withInternalMappings(0xc001472008, {0x205f0c0, 0xc000a76588}, {0x485195?, 0x2cbc228?}, {0x1?, 0x0?, 0x0?}, 0x0, 0xc0007b3080) pkg/sentry/mm/io.go:544 +0x145 gvisor.dev/gvisor/pkg/sentry/mm.(*MemoryManager).withVecInternalMappings(0xc001472008, {0x205f0c0, 0xc000a76588}, {0x0?, 0x0?, 0x0?, 0xc00051ef90?}, {0x1, 0x0, 0x0}, ...) pkg/sentry/mm/io.go:606 +0x8ae gvisor.dev/gvisor/pkg/sentry/mm.(*MemoryManager).CopyInTo(0xc001472008, {0x205f0c0, 0xc000a76588}, {0x0?, 0x3?, 0x484ca9?, 0xc0006a1130?}, {0x203ba80, 0xc00051ef90}, {0x0, ...}) pkg/sentry/mm/io.go:324 +0x2f0 gvisor.dev/gvisor/pkg/usermem.IOSequence.CopyInTo({{0x2055d58, 0xc001472008}, {0x0, 0x1, 0x7f4a92800000, 0x2000}, {0x0, 0x1}}, {0x205f0c0, 0xc000a76588}, ...) pkg/usermem/usermem.go:516 +0xcf gvisor.dev/gvisor/pkg/sentry/fsimpl/tmpfs.(*regularFileFD).pwrite(0xc0017f3700, {0x205f0c0, 0xc000a76588}, {{0x2055d58, 0xc001472008}, {0x0, 0x1, 0x7f4a92800000, 0x2000}, {0x0, ...}}, ...) pkg/sentry/fsimpl/tmpfs/regular_file.go:553 +0x91b gvisor.dev/gvisor/pkg/sentry/fsimpl/tmpfs.(*regularFileFD).Write(0xc0017f3700, {0x205f0c0, 0xc000a76588}, {{0x2055d58, 0xc001472008}, {0x0, 0x1, 0x7f4a92800000, 0x2000}, {0x0, ...}}, ...) pkg/sentry/fsimpl/tmpfs/regular_file.go:570 +0x12a gvisor.dev/gvisor/pkg/sentry/vfs.(*FileDescription).Write(0xc0017f3700, {0x205f0c0, 0xc000a76588}, {{0x2055d58, 0xc001472008}, {0x0, 0x1, 0x7f4a92800000, 0x2000}, {0x0, ...}}, ...) pkg/sentry/vfs/file_description.go:679 +0x145 gvisor.dev/gvisor/pkg/sentry/syscalls/linux.write(0xc000a76588, 0xc0017f3700, {{0x2055d58, 0xc001472008}, {0x0, 0x1, 0x7f4a92800000, 0x2000}, {0x0, 0x1}}, ...) pkg/sentry/syscalls/linux/sys_read_write.go:347 +0xa5 gvisor.dev/gvisor/pkg/sentry/syscalls/linux.Write(0xc000a76588, 0x0?, {{0x3}, {0x7f4a92800000}, {0x2000}, {0xc6}, {0x0}, {0x176}}) pkg/sentry/syscalls/linux/sys_read_write.go:316 +0x38f gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).executeSyscall(0xc000a76588, 0x1, {{0x3}, {0x7f4a92800000}, {0x2000}, {0xc6}, {0x0}, {0x176}}) pkg/sentry/kernel/task_syscall.go:143 +0xb9f gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscallInvoke(0xc000a76588, 0x1, {{0x3}, {0x7f4a92800000}, {0x2000}, {0xc6}, {0x0}, {0x176}}) pkg/sentry/kernel/task_syscall.go:323 +0x85 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscallEnter(0xc000a76588, 0x1, {{0x3}, {0x7f4a92800000}, {0x2000}, {0xc6}, {0x0}, {0x176}}) pkg/sentry/kernel/task_syscall.go:283 +0xc7 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscall(0xc000a76588) pkg/sentry/kernel/task_syscall.go:258 +0x54a gvisor.dev/gvisor/pkg/sentry/kernel.(*runApp).execute(0xc000a76588?, 0xc000a76588) pkg/sentry/kernel/task_run.go:269 +0x2295 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).run(0xc000a76588, 0x135) pkg/sentry/kernel/task_run.go:97 +0x41b created by gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).Start in goroutine 1663 pkg/sentry/kernel/task_start.go:400 +0x185