v1
2026-10-30
io_uring新增utimensat · v1
为 io_uring 增加 IORING_OP_UTIMENSAT,将文件时间戳设置纳入异步环,减少 NFS/SMB 批量拷贝的同步往返。
原始补丁链接
子 Patch(3)
1/3
fs: add filename_utimensat()
Copy utilities that preserve timestamps, like cp -p or a file manager, set the times of every copy after its last write. To do that through io_uring, the request needs the utimensat() lookup on a name
2/3
io_uring: add support for utimensat
A program that copies many files sets the times of every copy after its last write. On NFS and SMB each of those calls is a round trip to the server, and with io_uring it is one of the steps of the co
3/3
io_uring: set times inline when the filesystem cannot sleep
IORING_OP_UTIMENSAT always went to io-wq. On tmpfs the setattr only changes the inode in memory, so the handoff to a worker cost more than the work: 2000 files took 7 ms with utimensat(2) and 20 ms th