linux/fs
Linus Torvalds bf4e7080ae fix directory locking scheme on rename
broken in 6.5; we really can't lock two unrelated directories
 without holding ->s_vfs_rename_mutex first and in case of
 same-parent rename of a subdirectory 6.5 ends up doing just
 that.
 
 Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQqUNBr3gm4hGXdBJlZ7Krx/gZQ6wUCZZ+lyQAKCRBZ7Krx/gZQ
 60MWAP94hTqeMIpjhsUIkrTnylrIFaiw4UCWFJzIRG1QQYKqCgD/XUaWI9np7dL6
 0wR/j4CQSdJjiEFKUFE2pD3QoSuJYAQ=
 =+x0+
 -----END PGP SIGNATURE-----

Merge tag 'pull-rename' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs

Pull rename updates from Al Viro:
 "Fix directory locking scheme on rename

  This was broken in 6.5; we really can't lock two unrelated directories
  without holding ->s_vfs_rename_mutex first and in case of same-parent
  rename of a subdirectory 6.5 ends up doing just that"

* tag 'pull-rename' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
  rename(): avoid a deadlock in the case of parents having no common ancestor
  kill lock_two_inodes()
  rename(): fix the locking of subdirectories
  f2fs: Avoid reading renamed directory if parent does not change
  ext4: don't access the source subdirectory content on same-directory rename
  ext2: Avoid reading renamed directory if parent does not change
  udf_rename(): only access the child content on cross-directory rename
  ocfs2: Avoid touching renamed directory if parent does not change
  reiserfs: Avoid touching renamed directory if parent does not change
2024-01-11 20:00:22 -08:00
..
9p
adfs adfs: remove writepage implementation 2023-12-29 11:58:33 -08:00
affs
afs hardening updates for v6.8-rc1 2024-01-10 11:03:52 -08:00
autofs
bcachefs bcachefs updates for 6.8: 2024-01-10 16:34:17 -08:00
befs
bfs bfs: remove writepage implementation 2023-12-29 11:58:34 -08:00
btrfs for-6.8/block-2024-01-08 2024-01-11 13:58:04 -08:00
cachefiles fix directory locking scheme on rename 2024-01-11 20:00:22 -08:00
ceph Many singleton patches against the MM code. The patch series which 2024-01-09 11:18:47 -08:00
coda sysctl-6.8-rc1 2024-01-10 17:44:36 -08:00
configfs
cramfs
crypto fscrypt: document that CephFS supports fscrypt now 2023-12-26 22:55:42 -06:00
debugfs Merge branches 'acpi-pm', 'acpi-video', 'acpi-apei' and 'acpi-extlog' 2024-01-04 13:19:40 +01:00
devpts fs: Remove the now superfluous sentinel elements from ctl_table array 2023-12-28 04:57:57 -08:00
dlm
ecryptfs fix directory locking scheme on rename 2024-01-11 20:00:22 -08:00
efivarfs
efs
erofs erofs: make erofs_{err,info}() support NULL sb parameter 2024-01-10 19:59:39 +08:00
exfat
exportfs
ext2 fix directory locking scheme on rename 2024-01-11 20:00:22 -08:00
ext4 fix directory locking scheme on rename 2024-01-11 20:00:22 -08:00
f2fs fix directory locking scheme on rename 2024-01-11 20:00:22 -08:00
fat
freevxfs
fscache
fuse vfs-6.8.rw 2024-01-08 11:11:51 -08:00
gfs2 dlm for 6.8 2024-01-10 10:17:23 -08:00
hfs hfs: really remove hfs_writepage 2023-12-29 11:58:34 -08:00
hfsplus Many singleton patches against the MM code. The patch series which 2024-01-09 11:18:47 -08:00
hostfs
hpfs
hugetlbfs Many singleton patches against the MM code. The patch series which 2024-01-09 11:18:47 -08:00
iomap
isofs
jbd2 jbd2: abort journal when detecting metadata writeback error of fs dev 2024-01-04 23:42:21 -05:00
jffs2
jfs jfs: Add missing set_freezable() for freezable kthread 2024-01-02 11:06:52 -06:00
kernfs
lockd sysctl-6.8-rc1 2024-01-10 17:44:36 -08:00
minix minixfs kmap_local_page() switchover and related fixes - very similar to sysv series. 2024-01-11 19:54:18 -08:00
netfs
nfs sysctl-6.8-rc1 2024-01-10 17:44:36 -08:00
nfs_common
nfsd fix directory locking scheme on rename 2024-01-11 20:00:22 -08:00
nilfs2 Quite a lot of kexec work this time around. Many singleton patches in 2024-01-09 11:46:20 -08:00
nls
notify sysctl-6.8-rc1 2024-01-10 17:44:36 -08:00
ntfs sysctl-6.8-rc1 2024-01-10 17:44:36 -08:00
ntfs3
ocfs2 fix directory locking scheme on rename 2024-01-11 20:00:22 -08:00
omfs
openpromfs
orangefs
overlayfs fix directory locking scheme on rename 2024-01-11 20:00:22 -08:00
proc sysctl-6.8-rc1 2024-01-10 17:44:36 -08:00
pstore
qnx4
qnx6
quota sysctl-6.8-rc1 2024-01-10 17:44:36 -08:00
ramfs mm, treewide: rename MAX_ORDER to MAX_PAGE_ORDER 2024-01-08 15:27:15 -08:00
reiserfs fix directory locking scheme on rename 2024-01-11 20:00:22 -08:00
romfs
smb fix directory locking scheme on rename 2024-01-11 20:00:22 -08:00
squashfs
sysfs
sysv sysv: remove writepage implementation 2023-12-29 11:58:35 -08:00
tracefs eventfs: Fix bitwise fields for "is_events" 2024-01-02 15:20:44 -05:00
ubifs
udf
ufs Many singleton patches against the MM code. The patch series which 2024-01-09 11:18:47 -08:00
unicode
vboxsf
verity Networking changes for 6.8. 2024-01-11 10:07:29 -08:00
xfs sysctl-6.8-rc1 2024-01-10 17:44:36 -08:00
zonefs
aio.c sysctl-6.8-rc1 2024-01-10 17:44:36 -08:00
anon_inodes.c
attr.c
backing-file.c
bad_inode.c
binfmt_elf.c
binfmt_elf_fdpic.c
binfmt_elf_test.c
binfmt_flat.c
binfmt_misc.c
binfmt_script.c
buffer.c Many singleton patches against the MM code. The patch series which 2024-01-09 11:18:47 -08:00
char_dev.c
compat_binfmt_elf.c
coredump.c fs: Remove the now superfluous sentinel elements from ctl_table array 2023-12-28 04:57:57 -08:00
d_path.c
dax.c
dcache.c sysctl-6.8-rc1 2024-01-10 17:44:36 -08:00
direct-io.c
drop_caches.c
eventfd.c
eventpoll.c fs: Remove the now superfluous sentinel elements from ctl_table array 2023-12-28 04:57:57 -08:00
exec.c sysctl-6.8-rc1 2024-01-10 17:44:36 -08:00
fcntl.c
fhandle.c
file.c
file_table.c sysctl-6.8-rc1 2024-01-10 17:44:36 -08:00
filesystems.c
fs-writeback.c
fs_context.c
fs_parser.c
fs_pin.c
fs_struct.c
fs_types.c
fsopen.c
init.c
inode.c fix directory locking scheme on rename 2024-01-11 20:00:22 -08:00
internal.h fix directory locking scheme on rename 2024-01-11 20:00:22 -08:00
ioctl.c
Kconfig Many singleton patches against the MM code. The patch series which 2024-01-09 11:18:47 -08:00
Kconfig.binfmt
kernel_read_file.c
libfs.c
locks.c fs: Remove the now superfluous sentinel elements from ctl_table array 2023-12-28 04:57:57 -08:00
Makefile
mbcache.c
mnt_idmapping.c
mount.h
mpage.c fs: convert block_write_full_page to block_write_full_folio 2023-12-29 11:58:35 -08:00
namei.c fix directory locking scheme on rename 2024-01-11 20:00:22 -08:00
namespace.c sysctl-6.8-rc1 2024-01-10 17:44:36 -08:00
nsfs.c
open.c vfs-6.8.rw 2024-01-08 11:11:51 -08:00
pipe.c sysctl-6.8-rc1 2024-01-10 17:44:36 -08:00
pnode.c
pnode.h
posix_acl.c
proc_namespace.c
read_write.c
readdir.c
remap_range.c
select.c
seq_file.c
signalfd.c
splice.c
stack.c
stat.c vfs-6.8.mount 2024-01-08 10:57:34 -08:00
statfs.c
super.c fscrypt updates for 6.8 2024-01-10 10:24:49 -08:00
sync.c
sysctls.c fs: Remove the now superfluous sentinel elements from ctl_table array 2023-12-28 04:57:57 -08:00
timerfd.c
userfaultfd.c sysctl-6.8-rc1 2024-01-10 17:44:36 -08:00
utimes.c
xattr.c