Optimizing write_uncompressed_file_from_fd()
Gao Xiang
hsiangkao at linux.alibaba.com
Thu Aug 31 19:48:50 AEST 2023
Hi Daan,
On 2023/8/31 17:33, Daan De Meyer wrote:
> Hi,
>
> For hacking on systemd, we build disk images using mkosi, and use an erofs filesystem for the /usr directory. When hacking on systemd, we would like to be able to rebuild the disk image as fast as possible. One part of rebuilding the image that takes a while is generating the erofs filesystem. I had a look at the mkfs source code for erofs and noticed that in
> write_uncompressed_file_from_fd(), there is no usage of FICLONERANGE or copy_file_range() to speed up copying data from the filesystem to the erofs filesystem. Would it be possible to use either of these to make copying data in mkfs.erofs faster when the data does not need to be compressed?
Thanks for the email!
Yes, that is indeed useful, actually mmap I/Os can be used
to boost up write_uncompressed_file_from_fd () as well...
Actually many enhancements are limited by the current
development resource (multithreaded compression support might
be the top-1 priority for userspace side from end users),
but I have to resolve them one-by-one since EROFS is still a
quite young project compared to other approaches and beyond
the original targeted use cases (so most Android vendors won't
pay any attention to improvements that are not critically
important for their scenarios.)
I mostly focus on some kernel improvements since Google needs
us to support 16k page size + 4k EROFS block size. That is
currently my top thing to resolve first...
(quite limited by real world time...)
Thanks,
Gao Xiang
>
> Cheers,
>
> Daan De Meyer
More information about the Linux-erofs
mailing list