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

From: Marek Szyprowski
Date: Fri Jun 03 2022 - 10:10:37 EST


Hi Matthew,

On 03.06.2022 14:59, Matthew Wilcox wrote:
> On Fri, Jun 03, 2022 at 02:54:21PM +0200, Marek Szyprowski wrote:
>> 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.
> How large are these files? Just a few kilobytes?

Yes, they are small, most of them are smaller than 16KB, some about
128KB and a few about 256KB. I've sent a detailed list in private mail.

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