There is a bug that uboot can't load LZO compressed data extent while kernel can handle it without any problem.
It turns out to be a page boundary case. The 2nd patch is the proper fix, backported from btrfs-progs. The first patch is just to make my eyes less hurt. I guess it's time to backport proper code from btrfs-progs, other than using tons of immediate numbers. Qu Wenruo (2): uboot: fs/btrfs: Use LZO_LEN to replace immediate number uboot: fs/btrfs: Fix LZO false decompression error caused by pending zero fs/btrfs/compression.c | 42 ++++++++++++++++++++++++++++++++---------- 1 file changed, 32 insertions(+), 10 deletions(-) -- 2.25.1