Kernel 4.14: SQUASHFS error: xz decompression failed, data probably corrupt

Pintu Agarwal pintu.ping at gmail.com
Mon Jun 14 03:39:15 PDT 2021


Hi All,

With Kernel 4.14 we are getting squashfs error during bootup resulting
in kernel panic.
The details are below:
Device: ARM-32 board with Cortex-A7 (Single Core)
Storage: NAND Flash 512MiB
Kernel Version: 4.14.170 (maybe with some Linaro updates)
File system: Simple busybox with systemd (without Android)
File system type: UBIFS + SQUASHFS
UBI Volumes supported: rootfs (ro), others (rw)
-------------------

When we try to flash the UBI images and then try to boot the device,
we observe the below errors:
{{{
[    5.608810] SQUASHFS error: xz decompression failed, data probably corrupt
[    5.608846] SQUASHFS error: squashfs_read_data failed to read block 0x4d7ffe
[    5.614745] SQUASHFS error: Unable to read data cache entry [4d7ffe]
[    5.621939] SQUASHFS error: Unable to read page, block 4d7ffe, size 7a3c
[    5.628274] SQUASHFS error: Unable to read data cache entry [4d7ffe]
[    5.634934] SQUASHFS error: Unable to read page, block 4d7ffe, size 7a3c
[    5.641309] SQUASHFS error: Unable to read data cache entry [4d7ffe]
[    5.647954] SQUASHFS error: Unable to read page, block 4d7ffe, size 7a3c
[    5.654304] SQUASHFS error: Unable to read data cache entry [4d7ffe]
[    5.660977] SQUASHFS error: Unable to read page, block 4d7ffe, size 7a3c
[    5.667309] SQUASHFS error: Unable to read data cache entry [4d7ffe]
[    5.673997] SQUASHFS error: Unable to read page, block 4d7ffe, size 7a3c
[    5.680497] Kernel panic - not syncing: Attempted to kill init!
exitcode=0x00007f00
[....]
}}}
We also observed that some of our Yocto build images will work and
boots fine, while sometimes the build images cause this issue.

So we wanted to know:
a) What could be the root cause of this issue ?
b) Is it related to squashfs ?
c) If yes, are there any fixes available already in the latest mainline ?
    Please share some references.

Please let us know if anybody encountered this similar issue with
squashfs and how did you handle it ?

Note:
Our current commit in fs/squashfs is pointing at:
Squashfs: Compute expected length from inode size rather than block length


Thanks,
Pintu



More information about the linux-mtd mailing list