[PATCH] image: let mksquashfs4 use all processors
Paul Spooren
mail at aparcar.org
Mon Feb 28 03:22:44 PST 2022
Hi team,
> On 19. Feb 2022, at 19:21, Phillip Lougher <phillip.lougher at gmail.com> wrote:
>
> On Sat, Feb 19, 2022 at 4:01 PM Felix Fietkau <nbd at nbd.name> wrote:
>>
>> On 19.02.22 16:54, Stijn Tintel wrote:
>>> Drop the -processors argument from the mksquashfs4 call, so it will use
>>> all available processors. This dramatically reduces the time to create
>>> squashfs filesystems.
>>>
>>> The times below are observed when building an image for my main router,
>>> the WatchGuard Firebox M300 (qoriq target):
>>>
>>> Before:
>>> real 4m45,973s
>>>
>>> After:
>>> real 0m23,497s
>>>
>>> Signed-off-by: Stijn Tintel <stijn at linux-ipv6.be>
>> We need to verify that this doesn't break reproducible builds...
>>
>
> It won't break reproducible builds. Since Mksquashfs version 4.4 the
> ordering is guaranteed to be the same, irrespective of how many
> threads or processors are used.
I think OpenWrt uses `squashfskit`[1] which is a fork some squashfs-tools version. I think it happened due to stalled development some years ago. Anyway, if squashfs-tools is actively maintained we should consider moving back to the upstream version.
Some time ago I already wanted to make the move but squashfskit uses some downstream patches which expose more compression options, are those now part of squashfs-tools[2]? If not, do we need those anyway?
Thanks for all further information, I’d be happy to have upstream squashfs-tools with reproducible multithread support within OpenWrt!
Sunshine,
Paul
[1]: https://github.com/squashfskit/squashfskit
[2]: https://github.com/squashfskit/squashfskit/commit/5568b6a7d7db01c8f60a502d549a431a2b7219ae
More information about the openwrt-devel
mailing list