-
Notifications
You must be signed in to change notification settings - Fork 59
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Switch live rootfs from squashfs to EROFS #1852
Comments
@jlebon asked me to drop a link to @Conan-Kudo 's work on Fedora Kiwi-built lives here, so see https://pagure.io/fedora-kiwi-descriptions/pull-request/105 . we do also already have an erofs image in the main compose, one of the FEX images for Asahi - https://pagure.io/fedora-kiwi-descriptions/blob/rawhide/f/teams/asahi.xml#_6 . |
Note that erofs is nowhere near as capable or performant as squashfs for compression right now, and erofs image builds take a lot longer than squashfs to reach closer to equivalent storage sizes (almost 3x the time). |
By the way, could you test I wonder the image sizes and build speed out of this combination. |
I've just added a commit to test it in my pull request. Let's see how it goes. |
I know that |
Unfortunately it looks like this one is taking way too long. |
It seems it finishes? |
ok, I didn't know how to parse the raw result. btw, what's the current squashfs build time, do you have some log so I could check too? |
From a recent job with the current settings: https://artifacts.dev.testing-farm.io/18600fee-4f88-4c4e-940b-97c98960f752/ It took 15 minutes based on this log. To test it locally, you can do so on any Fedora 41+ system:
If you want to test with squashfs, just switch to the |
Because I'm afraid -C1048576 will still time out, so try
Ok.
Let me try, thanks. |
btw, can it work in a container (e.g. docker) or VM? |
VM yes, Docker-style container environment no. |
Another question is that I wonder how many CPUs was this job used? I couldn't find any hint in the log though.
I've tried this configuration with a virtual cloud server of Intel(R) Xeon(R) Platinum 8269CY CPU @ 2.50GHz * 32 cores, and the result is
I'm trying It seems the main bottleneck is although the main process of I think the build performance won't be improved with the latest mkfs soon, I have to work out a full multi-threaded |
Well, it took over an hour and a half on my Framework 16, which has an AMD Ryzen 9 7940HS (16 cores). |
I've fixed a bug which could cause slow image building if there is much incompressible data, and the time reduced to 20 mins on my test environment (Intel(R) Xeon(R) Platinum 8269CY CPU @ 2.50GHz * 32 cores):
The result of image size is
The mkfs version can be checked out as need If you're interested, you could try out too. There is still some trick to reduce time even without working on multi-threaded |
@Conan-Kudo how do I check if the produced data is correct? |
Yes. |
But I could find a file(
and the timestamp of
Can this file be changed? |
The |
To state simply, it's nothing to worry about. 😄 |
Currently, we ship a
rootfs.img
CPIO (both as a separate artifact and as part of the live ISO) which contains the rootfs as a squashfs image.Let's switch it over to use EROFS instead. Since EROFS is already in use by composefs, this reduces the number of read-only filesystem image formats we have to care about.
This work would happen in osbuild since that's where our live ISO is now being built.
The text was updated successfully, but these errors were encountered: