On 7/12/23 07:47, Dave Chinner wrote:
On Tue, Jul 11, 2023 at 07:40:24PM +0800, Hao Xu wrote:
From: Hao Xu <howeyxu@xxxxxxxxxxx>
This series introduce getdents64 to io_uring, the code logic is similar
with the snychronized version's. It first try nowait issue, and offload
it to io-wq threads if the first try fails.
v2->v3:
- removed the kernfs patches
- add f_pos_lock logic
- remove the "reduce last EOF getdents try" optimization since
Dominique reports that doesn't make difference
- remove the rewind logic, I think the right way is to introduce lseek
to io_uring not to patch this logic to getdents.
- add Singed-off-by of Stefan Roesch for patch 1 since checkpatch
complained that Co-developed-by someone should be accompanied with
Signed-off-by same person, I can remove them if Stefan thinks that's
not proper.
Dominique Martinet (1):
fs: split off vfs_getdents function of getdents64 syscall
Hao Xu (2):
vfs_getdents/struct dir_context: add flags field
io_uring: add support for getdents
So what filesystem actually uses this new NOWAIT functionality?
Unless I'm blind (quite possibly) I don't see any filesystem
implementation of this functionality in the patch series.
I know I posted a prototype for XFS to use it, and I expected that
it would become part of this patch series to avoid the "we don't add
unused code to the kernel" problem. i.e. the authors would take the
XFS prototype, make it work, add support into for the new io_uring
operation to fsstress in fstests and then use that to stress test
the new infrastructure before it gets merged....
But I don't see any of this?
-Dave.
Hi Dave,
You are right, currently no real filesystem supports that from my
investigation, I saw the xfs prototype, I'd like to make it work first.
That may cause some time.
Thanks,
Hao