panic: WARNING: circular locking detected: kernel.fsContextMutex -> tmpfs.filesystemRWMutex: goroutine 24134 [running]: gvisor.dev/gvisor/pkg/sync/locking.(*ancestorsAtomicPtrMap).RangeRepeatable(0xc00030ba00, 0xc001019270) bazel-out/k8-fastbuild/bin/pkg/sync/locking/atomicptrmap_ancestors_unsafe.go:440 +0x1e8 gvisor.dev/gvisor/pkg/sync/locking.checkLock(0xc00030bb90, 0xc00030b9e0, {0xc0018f94c0, 0x1, 0x1}) pkg/sync/locking/lockdep.go:112 +0x48a gvisor.dev/gvisor/pkg/sync/locking.checkLock.func1(0xc00030b9e0, 0xc0010193f8?) pkg/sync/locking/lockdep.go:115 +0x65 gvisor.dev/gvisor/pkg/sync/locking.(*ancestorsAtomicPtrMap).RangeRepeatable(0xc0003c4e30, 0xc0010194b0) bazel-out/k8-fastbuild/bin/pkg/sync/locking/atomicptrmap_ancestors_unsafe.go:440 +0x1e8 gvisor.dev/gvisor/pkg/sync/locking.checkLock(0xc00030bb90, 0xc0003c4e10, {0x0, 0x0, 0x0}) pkg/sync/locking/lockdep.go:112 +0x48a gvisor.dev/gvisor/pkg/sync/locking.AddGLock(0xc00030bb90, 0xffffffffffffffff) pkg/sync/locking/lockdep.go:144 +0x2ec gvisor.dev/gvisor/pkg/sentry/fsimpl/tmpfs.(*filesystemRWMutex).Lock(0xc000c58208) bazel-out/k8-fastbuild/bin/pkg/sentry/fsimpl/tmpfs/filesystem_mutex.go:31 +0x3c gvisor.dev/gvisor/pkg/sentry/fsimpl/tmpfs.(*filesystem).Release(0xc000c581a0, {0x2112f90, 0xc000b0a008}) pkg/sentry/fsimpl/tmpfs/tmpfs.go:356 +0x8f gvisor.dev/gvisor/pkg/sentry/vfs.(*Filesystem).DecRef.func1() pkg/sentry/vfs/filesystem.go:83 +0x102 gvisor.dev/gvisor/pkg/sentry/vfs.(*FilesystemRefs).DecRef(0xc000c581a0, 0xc001019810) bazel-out/k8-fastbuild/bin/pkg/sentry/vfs/filesystem_refs.go:133 +0x6d gvisor.dev/gvisor/pkg/sentry/vfs.(*Filesystem).DecRef(0xc000c581a0, {0x2112f90, 0xc000b0a008}) pkg/sentry/vfs/filesystem.go:79 +0x94 gvisor.dev/gvisor/pkg/sentry/vfs.(*VirtualFilesystem).unlockMounts(0xc0000049e0, {0x2112f90, 0xc000b0a008}) pkg/sentry/vfs/vfs.go:1059 +0x23e gvisor.dev/gvisor/pkg/sentry/vfs.(*Mount).destroy(0xc00077e000, {0x2112f90, 0xc000b0a008}) pkg/sentry/vfs/mount.go:979 +0x745 gvisor.dev/gvisor/pkg/sentry/vfs.(*Mount).DecRef(0xc00077e000, {0x2112f90, 0xc000b0a008}) pkg/sentry/vfs/mount.go:943 +0x6d gvisor.dev/gvisor/pkg/sentry/vfs.VirtualDentry.DecRef({0xc00077e000?, 0xc000a4c808?}, {0x2112f90, 0xc000b0a008}) pkg/sentry/vfs/vfs.go:1115 +0x7f gvisor.dev/gvisor/pkg/sentry/kernel.(*FSContext).destroy(0xc001f88540, {0x2112f90, 0xc000b0a008}) pkg/sentry/kernel/fs_context.go:73 +0x153 gvisor.dev/gvisor/pkg/sentry/kernel.(*runExitMain).execute.(*FSContext).DecRef.func2() pkg/sentry/kernel/fs_context.go:87 +0x47 gvisor.dev/gvisor/pkg/sentry/kernel.(*FSContextRefs).DecRef(0xc001f88540, 0xc001019da0) bazel-out/k8-fastbuild/bin/pkg/sentry/kernel/fs_context_refs.go:133 +0x6d gvisor.dev/gvisor/pkg/sentry/kernel.(*FSContext).DecRef(...) pkg/sentry/kernel/fs_context.go:86 gvisor.dev/gvisor/pkg/sentry/kernel.(*runExitMain).execute(0xc000b0a008?, 0xc000b0a008) pkg/sentry/kernel/task_exit.go:301 +0x82b gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).run(0xc000b0a008, 0x1db7) pkg/sentry/kernel/task_run.go:97 +0x4ca created by gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).Start in goroutine 24112 pkg/sentry/kernel/task_start.go:416 +0x15c known lock chain: tmpfs.filesystemRWMutex -> tmpfs.inodeMutex -> mm.mappingRWMutex -> kernel.fsContextMutex ====== tmpfs.filesystemRWMutex -> tmpfs.inodeMutex ===== goroutine 1 [running]: gvisor.dev/gvisor/pkg/sentry/fsimpl/tmpfs.(*inodeMutex).Lock(0xc0005ab088) bazel-out/k8-fastbuild/bin/pkg/sentry/fsimpl/tmpfs/inode_mutex.go:33 +0x3c gvisor.dev/gvisor/pkg/sentry/fsimpl/tmpfs.(*inode).touchCMtime(0xc0005ab058) pkg/sentry/fsimpl/tmpfs/tmpfs.go:854 +0x74 gvisor.dev/gvisor/pkg/sentry/fsimpl/tmpfs.(*filesystem).doCreateAt(0xc0005a69c0, {0x2113320, 0xc0003d0800}, 0xc000254d88, 0x0, 0xc000019ab0) pkg/sentry/fsimpl/tmpfs/filesystem.go:219 +0x505 gvisor.dev/gvisor/pkg/sentry/fsimpl/tmpfs.(*filesystem).SymlinkAt(0xc0005a69c0, {0x2113320, 0xc0003d0800}, 0xc000254d88, {0x1eab92a, 0xd}) pkg/sentry/fsimpl/tmpfs/filesystem.go:795 +0xe5 gvisor.dev/gvisor/pkg/sentry/vfs.(*VirtualFilesystem).SymlinkAt(0xc0000049e0, {0x2113320, 0xc0003d0800}, 0xc0004181e0, 0xc000019c98, {0x1eab92a, 0xd}) pkg/sentry/vfs/vfs.go:695 +0x216 gvisor.dev/gvisor/pkg/sentry/fsimpl/dev.userspaceInit({0x2113320, 0xc0003d0800}, 0xc0000049e0, 0xc0004181e0, {0xc000370c60?, 0xc0005ab008?}, 0x0) pkg/sentry/fsimpl/dev/dev.go:164 +0x445 gvisor.dev/gvisor/pkg/sentry/fsimpl/dev.FilesystemType.GetFilesystem({}, {0x2113320, 0xc0003d0800}, 0xc0000049e0, 0xc0004181e0, {0x0, 0x0}, {0x1, {0x0, 0x0}, ...}) pkg/sentry/fsimpl/dev/dev.go:60 +0x33d gvisor.dev/gvisor/pkg/sentry/vfs.(*VirtualFilesystem).NewFilesystem(0xc0000049e0, {0x2113320, 0xc0003d0800}, 0xc0004181e0, {0x0, 0x0}, {0x1ea1990, 0x3}, 0xc0001669c0) pkg/sentry/vfs/mount.go:252 +0x18d gvisor.dev/gvisor/pkg/sentry/vfs.(*VirtualFilesystem).MountDisconnected(0xc0000049e0, {0x2113320, 0xc0003d0800}, 0xc0004181e0, {0x0, 0x0}, {0x1ea1990, 0x3}, 0xc0001669c0) pkg/sentry/vfs/mount.go:271 +0xa5 gvisor.dev/gvisor/runsc/boot.(*containerMounter).mountSubmount(0xc00051e9c0, {0x2113320, 0xc0003d0800}, 0xc0004522d0, 0xc00033dc08, 0xc0005452f0, 0xc0004181e0, 0xc00059a038) runsc/boot/vfs.go:872 +0x97b gvisor.dev/gvisor/runsc/boot.(*containerMounter).mountSubmounts(0xc00051e9c0, {0x2113320, 0xc0003d0800}, 0xc0004522d0, 0xc00033dc08, 0xc0005452f0, 0xc0004181e0) runsc/boot/vfs.go:750 +0x9b3 gvisor.dev/gvisor/runsc/boot.(*containerMounter).mountAll(0xc00051e9c0, {0x2113320, 0xc0003d0800}, 0xc0004181e0, 0xc0004522d0, 0xc00033dc08, 0xc00051ea90) runsc/boot/vfs.go:473 +0x525 gvisor.dev/gvisor/runsc/boot.setupContainerVFS({0x2113320, 0xc0003d0560}, 0xc000024018, 0xc00051e9c0, 0xc000024048) runsc/boot/vfs.go:174 +0x48a gvisor.dev/gvisor/runsc/boot.(*Loader).createContainerProcess(0xc000024008, 0xc000024018) runsc/boot/loader.go:1248 +0xaf0 gvisor.dev/gvisor/runsc/boot.(*Loader).run(0xc000024008) runsc/boot/loader.go:1003 +0x332 gvisor.dev/gvisor/runsc/boot.(*Loader).Run(0xc000024008) runsc/boot/loader.go:952 +0x2f gvisor.dev/gvisor/runsc/cmd.(*Boot).Execute(0xc00036aa80, {0xc00003e338?, 0x12?}, 0xc0001d5810, {0xc0001d80e0, 0x2, 0xc0003fe02f?}) runsc/cmd/boot.go:585 +0x3835 github.com/google/subcommands.(*Commander).Execute(0xc000234000, {0x2101e30, 0x3d2bd20}, {0xc0001d80e0, 0x2, 0x2}) external/com_github_google_subcommands/subcommands.go:200 +0x676 github.com/google/subcommands.Execute(...) external/com_github_google_subcommands/subcommands.go:481 gvisor.dev/gvisor/runsc/cli.Main() runsc/cli/main.go:229 +0x249f main.main() runsc/main.go:31 +0x1d ====== tmpfs.inodeMutex -> mm.mappingRWMutex ===== goroutine 427 [running]: gvisor.dev/gvisor/pkg/sentry/mm.(*mappingRWMutex).RLock(0xc0001cd05c) bazel-out/k8-fastbuild/bin/pkg/sentry/mm/mapping_mutex.go:59 +0x3c gvisor.dev/gvisor/pkg/sentry/mm.(*MemoryManager).withInternalMappings(0xc0001cd008, {0x2112f90, 0xc000688588}, {0x48866c?, 0x48a315?}, {0x98?, 0xc1?, 0xd2?}, 0x0, 0xc0010c3018) pkg/sentry/mm/io.go:545 +0xf4 gvisor.dev/gvisor/pkg/sentry/mm.(*MemoryManager).withVecInternalMappings(0xc0001cd008, {0x2112f90, 0xc000688588}, {0x0?, 0xc0000116f8?, 0xc001026fc8?, 0x47b379?}, {0x1, 0x0, 0x0}, ...) pkg/sentry/mm/io.go:607 +0x6db gvisor.dev/gvisor/pkg/sentry/mm.(*MemoryManager).CopyInTo(0xc0001cd008, {0x2112f90, 0xc000688588}, {0x0?, 0x10001?, 0x0?, 0x0?}, {0x20ec240, 0xc0000116f8}, {0x0, ...}) pkg/sentry/mm/io.go:325 +0x23a gvisor.dev/gvisor/pkg/usermem.IOSequence.CopyInTo(...) pkg/usermem/usermem.go:516 gvisor.dev/gvisor/pkg/sentry/fsimpl/tmpfs.(*regularFileFD).pwrite(0xc000235200, {0x2112f90, 0xc000688588}, {{0x2108718, 0xc0001cd008}, {0x0, 0x1, 0x7ff926000000, 0x400000}, {0x0, ...}}, ...) pkg/sentry/fsimpl/tmpfs/regular_file.go:573 +0x8eb gvisor.dev/gvisor/pkg/sentry/fsimpl/tmpfs.(*regularFileFD).Write(0xc000235200, {0x2112f90, 0xc000688588}, {{0x2108718, 0xc0001cd008}, {0x0, 0x1, 0x7ff926000000, 0x400000}, {0x0, ...}}, ...) pkg/sentry/fsimpl/tmpfs/regular_file.go:590 +0x112 gvisor.dev/gvisor/pkg/sentry/vfs.(*FileDescription).Write(0xc000235200, {0x2112f90, 0xc000688588}, {{0x2108718, 0xc0001cd008}, {0x0, 0x1, 0x7ff926000000, 0x400000}, {0x0, ...}}, ...) pkg/sentry/vfs/file_description.go:684 +0x113 gvisor.dev/gvisor/pkg/sentry/syscalls/linux.write(0xc000688588, 0xc000235200, {{0x2108718, 0xc0001cd008}, {0x0, 0x1, 0x7ff926000000, 0x400000}, {0x0, 0x1}}, ...) pkg/sentry/syscalls/linux/sys_read_write.go:347 +0x91 gvisor.dev/gvisor/pkg/sentry/syscalls/linux.Write(0xc000688588, 0xc00087f0d0?, {{0x3}, {0x7ff926000000}, {0x400000}, {0x6c}, {0x0}, {0x103d}}) pkg/sentry/syscalls/linux/sys_read_write.go:316 +0x2b2 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).executeSyscall(0xc000688588, 0x1, {{0x3}, {0x7ff926000000}, {0x400000}, {0x6c}, {0x0}, {0x103d}}) pkg/sentry/kernel/task_syscall.go:143 +0x94c gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscallInvoke(0xc000688588, 0x1, {{0x3}, {0x7ff926000000}, {0x400000}, {0x6c}, {0x0}, {0x103d}}) pkg/sentry/kernel/task_syscall.go:323 +0x72 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscallEnter(0xc000688588, 0x1, {{0x3}, {0x7ff926000000}, {0x400000}, {0x6c}, {0x0}, {0x103d}}) pkg/sentry/kernel/task_syscall.go:283 +0x94 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscall(0xc000688588) pkg/sentry/kernel/task_syscall.go:258 +0x490 gvisor.dev/gvisor/pkg/sentry/kernel.(*runApp).execute(0xc000688588?, 0xc000688588) pkg/sentry/kernel/task_run.go:269 +0x1ec9 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).run(0xc000688588, 0x60) pkg/sentry/kernel/task_run.go:97 +0x4ca created by gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).Start in goroutine 457 pkg/sentry/kernel/task_start.go:416 +0x15c ====== mm.mappingRWMutex -> kernel.fsContextMutex ===== goroutine 494 [running]: gvisor.dev/gvisor/pkg/sentry/kernel.(*fsContextMutex).Lock(0xc0006bcd48) bazel-out/k8-fastbuild/bin/pkg/sentry/kernel/fs_context_mutex.go:33 +0x3c gvisor.dev/gvisor/pkg/sentry/kernel.(*FSContext).RootDirectory(0xc0006bcd40) pkg/sentry/kernel/fs_context.go:150 +0x4a gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).contextValue(0xc000994588, {0x1c123e0, 0x20e1978}, 0x1) pkg/sentry/kernel/task_context.go:99 +0x5d8 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).Value(0xc000994588, {0x1c123e0, 0x20e1978}) pkg/sentry/kernel/task_context.go:61 +0x4a gvisor.dev/gvisor/pkg/sentry/vfs.RootFromContext(...) pkg/sentry/vfs/context.go:88 gvisor.dev/gvisor/pkg/sentry/vfs.(*FileDescription).MappedName(0xc000584100, {0x2112f90, 0xc000994588}) pkg/sentry/vfs/file_description.go:818 +0x77 gvisor.dev/gvisor/pkg/sentry/mm.(*MemoryManager).appendVMAMapsEntryLocked(0xc000ae505c?, {0x2112f90, 0xc000994588}, {0xc0002eed08?, 0xc000676f90?}, 0xc000677048) pkg/sentry/mm/procfs.go:129 +0x2a2 gvisor.dev/gvisor/pkg/sentry/mm.(*MemoryManager).ReadMapsDataInto(0xc000ae5008, {0x2112f90, 0xc000994588}, 0xc000677048) pkg/sentry/mm/procfs.go:85 +0x185 gvisor.dev/gvisor/pkg/sentry/fsimpl/proc.(*mapsData).Generate(0xc000b15508, {0x2112f90, 0xc000994588}, 0xc000d86020) pkg/sentry/fsimpl/proc/task_files.go:651 +0xa9 gvisor.dev/gvisor/pkg/sentry/vfs.(*DynamicBytesFileDescriptionImpl).preadLocked(0xc000d86000, {0x2112f90, 0xc000994588}, {{0x2108718, 0xc000ae5008}, {0x0, 0x1, 0x200000000040, 0x100d}, {0x0, ...}}, ...) pkg/sentry/vfs/file_description_impl_util.go:310 +0x18b gvisor.dev/gvisor/pkg/sentry/vfs.(*DynamicBytesFileDescriptionImpl).Read(0xc000d86000, {0x2112f90, 0xc000994588}, {{0x2108718, 0xc000ae5008}, {0x0, 0x1, 0x200000000040, 0x100d}, {0x0, ...}}, ...) pkg/sentry/vfs/file_description_impl_util.go:337 +0x117 gvisor.dev/gvisor/pkg/sentry/fsimpl/kernfs.(*DynamicBytesFD).Read(0xc000d86000, {0x2112f90, 0xc000994588}, {{0x2108718, 0xc000ae5008}, {0x0, 0x1, 0x200000000040, 0x100d}, {0x0, ...}}, ...) pkg/sentry/fsimpl/kernfs/dynamic_bytes_file.go:128 +0x91 gvisor.dev/gvisor/pkg/sentry/vfs.(*FileDescription).Read(0xc000d86060, {0x2112f90, 0xc000994588}, {{0x2108718, 0xc000ae5008}, {0x0, 0x1, 0x200000000040, 0x100d}, {0x0, ...}}, ...) pkg/sentry/vfs/file_description.go:653 +0x14f gvisor.dev/gvisor/pkg/sentry/syscalls/linux.read(0xc000994588, 0xc000d86060, {{0x2108718, 0xc000ae5008}, {0x0, 0x1, 0x200000000040, 0x100d}, {0x0, 0x1}}, ...) pkg/sentry/syscalls/linux/sys_read_write.go:93 +0x91 gvisor.dev/gvisor/pkg/sentry/syscalls/linux.Read(0xc000994588, 0xc000f80cc0?, {{0x5}, {0x200000000040}, {0x100d}, {0x0}, {0x0}, {0x0}}) pkg/sentry/syscalls/linux/sys_read_write.go:62 +0x2b2 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).executeSyscall(0xc000994588, 0x0, {{0x5}, {0x200000000040}, {0x100d}, {0x0}, {0x0}, {0x0}}) pkg/sentry/kernel/task_syscall.go:143 +0x94c gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscallInvoke(0xc000994588, 0x0, {{0x5}, {0x200000000040}, {0x100d}, {0x0}, {0x0}, {0x0}}) pkg/sentry/kernel/task_syscall.go:323 +0x72 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscallEnter(0xc000994588, 0x0, {{0x5}, {0x200000000040}, {0x100d}, {0x0}, {0x0}, {0x0}}) pkg/sentry/kernel/task_syscall.go:283 +0x94 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscall(0xc000994588) pkg/sentry/kernel/task_syscall.go:258 +0x490 gvisor.dev/gvisor/pkg/sentry/kernel.(*runApp).execute(0xc000994588?, 0xc000994588) pkg/sentry/kernel/task_run.go:269 +0x1ec9 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).run(0xc000994588, 0x76) pkg/sentry/kernel/task_run.go:97 +0x4ca created by gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).Start in goroutine 533 pkg/sentry/kernel/task_start.go:416 +0x15c