panic: WARNING: circular locking detected: kernel.fsContextMutex -> kernfs.filesystemRWMutex: goroutine 571 [running]: gvisor.dev/gvisor/pkg/sync/locking.(*ancestorsAtomicPtrMap).RangeRepeatable(0xc0003d2ec0, 0xc000ddb160) bazel-out/k8-fastbuild/bin/pkg/sync/locking/atomicptrmap_ancestors_unsafe.go:440 +0x1e8 gvisor.dev/gvisor/pkg/sync/locking.checkLock(0xc00019ad80, 0xc0003d2ea0, {0x0, 0x0, 0x0}) pkg/sync/locking/lockdep.go:112 +0x48a gvisor.dev/gvisor/pkg/sync/locking.AddGLock(0xc00019ad80, 0xffffffffffffffff) pkg/sync/locking/lockdep.go:144 +0x2ec gvisor.dev/gvisor/pkg/sentry/fsimpl/kernfs.(*filesystemRWMutex).Lock(0xc0013353d0) bazel-out/k8-fastbuild/bin/pkg/sentry/fsimpl/kernfs/filesystem_mutex.go:31 +0x3c gvisor.dev/gvisor/pkg/sentry/fsimpl/kernfs.(*Dentry).DecRef(0xc0006f67e0, {0x2116790, 0xc000c0f908}) pkg/sentry/fsimpl/kernfs/kernfs.go:303 +0xaf gvisor.dev/gvisor/pkg/sentry/vfs.(*Dentry).DecRef(...) pkg/sentry/vfs/dentry.go:156 gvisor.dev/gvisor/pkg/sentry/vfs.VirtualDentry.DecRef({0xc0003428f0?, 0xc0006f67e0?}, {0x2116790, 0xc000c0f908}) pkg/sentry/vfs/vfs.go:1114 +0x6b gvisor.dev/gvisor/pkg/sentry/kernel.(*FSContext).SetWorkingDirectory(0xc000cb9400, {0x2116790, 0xc000c0f908}, {0xc0003428f0, 0xc0008a65a0}) pkg/sentry/kernel/fs_context.go:144 +0x1f2 gvisor.dev/gvisor/pkg/sentry/syscalls/linux.Fchdir(0xc000c0f908, 0xc000d9c710?, {{0x3}, {0x0}, {0x0}, {0x0}, {0x0}, {0x0}}) pkg/sentry/syscalls/linux/sys_file.go:361 +0x325 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).executeSyscall(0xc000c0f908, 0x51, {{0x3}, {0x0}, {0x0}, {0x0}, {0x0}, {0x0}}) pkg/sentry/kernel/task_syscall.go:143 +0x94c gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscallInvoke(0xc000c0f908, 0x51, {{0x3}, {0x0}, {0x0}, {0x0}, {0x0}, {0x0}}) pkg/sentry/kernel/task_syscall.go:323 +0x72 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscallEnter(0xc000c0f908, 0x51, {{0x3}, {0x0}, {0x0}, {0x0}, {0x0}, {0x0}}) pkg/sentry/kernel/task_syscall.go:283 +0x94 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscall(0xc000c0f908) pkg/sentry/kernel/task_syscall.go:258 +0x490 gvisor.dev/gvisor/pkg/sentry/kernel.(*runApp).execute(0xc000c0f908?, 0xc000c0f908) pkg/sentry/kernel/task_run.go:269 +0x1ec9 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).run(0xc000c0f908, 0x45) pkg/sentry/kernel/task_run.go:97 +0x4ca created by gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).Start in goroutine 662 pkg/sentry/kernel/task_start.go:416 +0x15c known lock chain: kernfs.filesystemRWMutex -> kernel.taskSetRWMutex -> kernel.fsContextMutex ====== kernfs.filesystemRWMutex -> kernel.taskSetRWMutex ===== goroutine 226 [running]: gvisor.dev/gvisor/pkg/sentry/kernel.(*taskSetRWMutex).RLock(0xc000230140) bazel-out/k8-fastbuild/bin/pkg/sentry/kernel/taskset_mutex.go:59 +0x3c gvisor.dev/gvisor/pkg/sentry/kernel.(*PIDNamespace).IDOfThreadGroup(0xc0002ee310, 0xc0001ef808) pkg/sentry/kernel/threads.go:328 +0x45 gvisor.dev/gvisor/pkg/sentry/fsimpl/proc.(*selfSymlink).Readlink(0xc00019e230, {0x2116790, 0xc0005c8008}, 0x489e69?) pkg/sentry/fsimpl/proc/tasks_files.go:62 +0xb8 gvisor.dev/gvisor/pkg/sentry/fsimpl/proc.(*selfSymlink).Getlink(0xc00019e230, {0x2116790, 0xc0005c8008}, 0xc000342d10) pkg/sentry/fsimpl/proc/tasks_files.go:70 +0x45 gvisor.dev/gvisor/pkg/sentry/fsimpl/kernfs.(*Filesystem).stepExistingLocked(0xc0002f4780, {0x2116790, 0xc0005c8008}, 0xc000258d88, 0xc000590510) pkg/sentry/fsimpl/kernfs/filesystem.go:83 +0x4cf gvisor.dev/gvisor/pkg/sentry/fsimpl/kernfs.(*Filesystem).walkExistingLocked(0xc0002f4780, {0x2116790, 0xc0005c8008}, 0xc000258d88) pkg/sentry/fsimpl/kernfs/filesystem.go:197 +0xc5 gvisor.dev/gvisor/pkg/sentry/fsimpl/kernfs.(*Filesystem).ReadlinkAt(0xc0002f4780, {0x2116790, 0xc0005c8008}, 0xc000258d88) pkg/sentry/fsimpl/kernfs/filesystem.go:697 +0x136 gvisor.dev/gvisor/pkg/sentry/vfs.(*VirtualFilesystem).ReadlinkAt(0xc0000049e0, {0x2116790, 0xc0005c8008}, 0xc0001683c0, 0xc000047588) pkg/sentry/vfs/vfs.go:512 +0xed gvisor.dev/gvisor/pkg/sentry/syscalls/linux.readlinkat(0xc0005c8008, 0xffffff9c, 0xc000110070, 0xc000122d00, 0x80) pkg/sentry/syscalls/linux/sys_file.go:1096 +0x26c gvisor.dev/gvisor/pkg/sentry/syscalls/linux.Readlinkat(0xc0005c8008, 0xc00001c090?, {{0xffffffffffffff9c}, {0xc000110070}, {0xc000122d00}, {0x80}, {0x0}, {0x0}}) pkg/sentry/syscalls/linux/sys_file.go:1067 +0x46 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).executeSyscall(0xc0005c8008, 0x10b, {{0xffffffffffffff9c}, {0xc000110070}, {0xc000122d00}, {0x80}, {0x0}, {0x0}}) pkg/sentry/kernel/task_syscall.go:143 +0x94c gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscallInvoke(0xc0005c8008, 0x10b, {{0xffffffffffffff9c}, {0xc000110070}, {0xc000122d00}, {0x80}, {0x0}, {0x0}}) pkg/sentry/kernel/task_syscall.go:323 +0x72 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscallEnter(0xc0005c8008, 0x10b, {{0xffffffffffffff9c}, {0xc000110070}, {0xc000122d00}, {0x80}, {0x0}, {0x0}}) pkg/sentry/kernel/task_syscall.go:283 +0x94 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).doSyscall(0xc0005c8008) pkg/sentry/kernel/task_syscall.go:258 +0x490 gvisor.dev/gvisor/pkg/sentry/kernel.(*runApp).execute(0xc0005c8008?, 0xc0005c8008) pkg/sentry/kernel/task_run.go:269 +0x1ec9 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).run(0xc0005c8008, 0x1) pkg/sentry/kernel/task_run.go:97 +0x4ca created by gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).Start in goroutine 1 pkg/sentry/kernel/task_start.go:416 +0x15c ====== kernel.taskSetRWMutex -> kernel.fsContextMutex ===== goroutine 237 [running]: gvisor.dev/gvisor/pkg/sentry/kernel.(*fsContextMutex).Lock(0xc0006460c8) bazel-out/k8-fastbuild/bin/pkg/sentry/kernel/fs_context_mutex.go:33 +0x3c gvisor.dev/gvisor/pkg/sentry/kernel.(*FSContext).checkAndPreventSharingOutsideTG(0xc0006460c0, 0xc0001f1008) pkg/sentry/kernel/fs_context.go:209 +0x130 gvisor.dev/gvisor/pkg/sentry/kernel.(*runExecveAfterExecveCredsLock).execute(0xc000300de0, 0xc0002ea588) pkg/sentry/kernel/task_exec.go:156 +0x388 gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).run(0xc0002ea588, 0x14) pkg/sentry/kernel/task_run.go:97 +0x4ca created by gvisor.dev/gvisor/pkg/sentry/kernel.(*Task).Start in goroutine 276 pkg/sentry/kernel/task_start.go:416 +0x15c