Re: How capacious and well-indexed are ext4, xfs and btrfs directories?
From: David Howells <dhowells@redhat.com>
Date: 2021-05-25 22:32:04
Also in:
linux-btrfs, linux-fsdevel, linux-xfs
From: David Howells <dhowells@redhat.com>
Date: 2021-05-25 22:32:04
Also in:
linux-btrfs, linux-fsdevel, linux-xfs
Andreas Dilger [off-list ref] wrote:
As described elsewhere in the thread, allowing concurrent create and unlink in a directory (rename probably not needed) would be invaluable for scaling multi-threaded workloads. Neil Brown posted a prototype patch to add this to the VFS for NFS:
Actually, one thing I'm looking at is using vfs_tmpfile() to create a new file (or a replacement file when invalidation is required) and then using vfs_link() to attach directory entries in the background (possibly using vfs_link() with AT_LINK_REPLACE[1] instead of unlink+link). Any thoughts on how that might scale? vfs_tmpfile() doesn't appear to require the directory inode lock. I presume the directory is required for security purposes in addition to being a way to specify the target filesystem. David [1] https://lore.kernel.org/linux-fsdevel/cover.1580251857.git.osandov@fb.com/ (local)