Patch "erofs: avoid debugging output for (de)compressed data" has been added to the 6.1-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    erofs: avoid debugging output for (de)compressed data

to the 6.1-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     erofs-avoid-debugging-output-for-de-compressed-data.patch
and it can be found in the queue-6.1 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit a0c25016ada38565c19ebde3ed8cc441fd4b4cd0
Author: Gao Xiang <xiang@xxxxxxxxxx>
Date:   Wed Dec 27 23:19:03 2023 +0800

    erofs: avoid debugging output for (de)compressed data
    
    [ Upstream commit 496530c7c1dfc159d59a75ae00b572f570710c53 ]
    
    Syzbot reported a KMSAN warning,
    erofs: (device loop0): z_erofs_lz4_decompress_mem: failed to decompress -12 in[46, 4050] out[917]
    =====================================================
    BUG: KMSAN: uninit-value in hex_dump_to_buffer+0xae9/0x10f0 lib/hexdump.c:194
      ..
      print_hex_dump+0x13d/0x3e0 lib/hexdump.c:276
      z_erofs_lz4_decompress_mem fs/erofs/decompressor.c:252 [inline]
      z_erofs_lz4_decompress+0x257e/0x2a70 fs/erofs/decompressor.c:311
      z_erofs_decompress_pcluster fs/erofs/zdata.c:1290 [inline]
      z_erofs_decompress_queue+0x338c/0x6460 fs/erofs/zdata.c:1372
      z_erofs_runqueue+0x36cd/0x3830
      z_erofs_read_folio+0x435/0x810 fs/erofs/zdata.c:1843
    
    The root cause is that the printed decompressed buffer may be filled
    incompletely due to decompression failure.  Since they were once only
    used for debugging, get rid of them now.
    
    Reported-and-tested-by: syzbot+6c746eea496f34b3161d@xxxxxxxxxxxxxxxxxxxxxxxxx
    Closes: https://lore.kernel.org/r/000000000000321c24060d7cfa1c@xxxxxxxxxx
    Reviewed-by: Yue Hu <huyue2@xxxxxxxxxxx>
    Signed-off-by: Gao Xiang <hsiangkao@xxxxxxxxxxxxxxxxx>
    Link: https://lore.kernel.org/r/20231227151903.2900413-1-hsiangkao@xxxxxxxxxxxxxxxxx
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/fs/erofs/decompressor.c b/fs/erofs/decompressor.c
index 1eefa4411e066..708bf142b1888 100644
--- a/fs/erofs/decompressor.c
+++ b/fs/erofs/decompressor.c
@@ -248,15 +248,9 @@ static int z_erofs_lz4_decompress_mem(struct z_erofs_lz4_decompress_ctx *ctx,
 	if (ret != rq->outputsize) {
 		erofs_err(rq->sb, "failed to decompress %d in[%u, %u] out[%u]",
 			  ret, rq->inputsize, inputmargin, rq->outputsize);
-
-		print_hex_dump(KERN_DEBUG, "[ in]: ", DUMP_PREFIX_OFFSET,
-			       16, 1, src + inputmargin, rq->inputsize, true);
-		print_hex_dump(KERN_DEBUG, "[out]: ", DUMP_PREFIX_OFFSET,
-			       16, 1, out, rq->outputsize, true);
-
 		if (ret >= 0)
 			memset(out + ret, 0, rq->outputsize - ret);
-		ret = -EIO;
+		ret = -EFSCORRUPTED;
 	} else {
 		ret = 0;
 	}




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux