Re: [PATCH v4 3/3] squashfs: implement readahead

From: Marek Szyprowski
Date: Mon Jun 13 2022 - 13:11:29 EST


Hi Phillip,

On 07.06.2022 09:35, Phillip Lougher wrote:
> On 03/06/2022 13:54, Marek Szyprowski wrote:
>> Hi,
>>
>> On 01.06.2022 12:39, Hsin-Yi Wang wrote:
>>> Implement readahead callback for squashfs. It will read datablocks
>>> which cover pages in readahead request. For a few cases it will
>>> not mark page as uptodate, including:
>>> - file end is 0.
>>> - zero filled blocks.
>>> - current batch of pages isn't in the same datablock or not enough in a
>>>     datablock.
>>> - decompressor error.
>>> Otherwise pages will be marked as uptodate. The unhandled pages will be
>>> updated by readpage later.
>>>
>>> Suggested-by: Matthew Wilcox <willy@xxxxxxxxxxxxx>
>>> Signed-off-by: Hsin-Yi Wang <hsinyi@xxxxxxxxxxxx>
>>> Reported-by: Matthew Wilcox <willy@xxxxxxxxxxxxx>
>>> Reported-by: Phillip Lougher <phillip@xxxxxxxxxxxxxxx>
>>> Reported-by: Xiongwei Song <Xiongwei.Song@xxxxxxxxxxxxx>
>>> ---
>>
>> This patch landed recently in linux-next as commit 95f7a26191de
>> ("squashfs: implement readahead"). I've noticed that it causes serious
>> issues on my test systems (various ARM 32bit and 64bit based boards).
>> The easiest way to observe is udev timeout 'waiting for /dev to be fully
>> populated' and prolonged booting time. I'm using squashfs for deploying
>> kernel modules via initrd. Reverting aeefca9dfae7 & 95f7a26191deon on
>> top of the next-20220603 fixes the issue.
>>
>> Let me know how I can help debugging this issue. There is no hurry
>> though, because the next week I will be on holidays.
>
> Hi Marek,
>
> Can you supply an example Squashfs filesystem and script that
> reproduces the slow-down?  Failing that, can you supply a copy
> of your initrd/root-filesystem that can be run under emulation
> to reproduce the issue? (I don't have any modern ARM embedded
> systems).
>
> Again failing that, are you happy to test some debug code?
>
> Thanks
>
> Phillip (Squashfs maintainer and author).

I've just got back from my holidays.

Is this still relevant? I've noticed that v6 has been posted, but I
failed to apply it on top of next-20220610 as mentioned in the
cover-letter to test. I've also tried also to apply the mentioned
'Squashfs: handle missing pages decompressing into page cache' patchset.
On the other hand, next-20220610 seems to be working fine on my setup now.


Best regards
--
Marek Szyprowski, PhD
Samsung R&D Institute Poland