The quilt patch titled Subject: Revert "squashfs: provide backing_dev_info in order to disable read-ahead" has been removed from the -mm tree. Its filename was revert-squashfs-provide-backing_dev_info-in-order-to-disable-read-ahead.patch This patch was dropped because an updated version will be merged ------------------------------------------------------ From: Hsin-Yi Wang <hsinyi@xxxxxxxxxxxx> Subject: Revert "squashfs: provide backing_dev_info in order to disable read-ahead" Date: Wed, 1 Jun 2022 18:39:20 +0800 Patch series "Implement readahead for squashfs", v4. Commit c1f6925e1091("mm: put readahead pages in cache earlier") requires fs to implement readahead callback. Otherwise there will be a performance regression. Commit 9eec1d897139("squashfs: provide backing_dev_info in order to disable read-ahead") mitigates the performance drop issue for squashfs by closing readahead for it. This series implements readahead callback for squashfs. The previous discussion are in [1] and [2]. [1] https://lore.kernel.org/all/CAJMQK-g9G6KQmH-V=BRGX0swZji9Wxe_2c7ht-MMAapdFy2pXw@xxxxxxxxxxxxxx/T/ [2] https://lore.kernel.org/linux-mm/Yn5Yij9pRPCzDozt@xxxxxxxxxxxxxxxxxxxx/t/#m4af4473b94f98a4996cb11756b633a07e5e059d1 This patch (of 3): This reverts commit 9eec1d897139e ("squashfs: provide backing_dev_info in order to disable read-ahead"). Revert closing the readahead to squashfs since the readahead callback for squashfs is implemented. Link: https://lkml.kernel.org/r/20220601103922.1338320-1-hsinyi@xxxxxxxxxxxx Link: https://lkml.kernel.org/r/20220601103922.1338320-2-hsinyi@xxxxxxxxxxxx Signed-off-by: Hsin-Yi Wang <hsinyi@xxxxxxxxxxxx> Suggested-by: Xiongwei Song <Xiongwei.Song@xxxxxxxxxxxxx> Cc: Hou Tao <houtao1@xxxxxxxxxx> Cc: kernel test robot <lkp@xxxxxxxxx> Cc: Matthew Wilcox <willy@xxxxxxxxxxxxx> Cc: Miao Xie <miaoxie@xxxxxxxxxx> Cc: Phillip Lougher <phillip@xxxxxxxxxxxxxxx> Cc: Zhang Yi <yi.zhang@xxxxxxxxxx> Cc: Zheng Liang <zhengliang6@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- fs/squashfs/super.c | 33 --------------------------------- 1 file changed, 33 deletions(-) --- a/fs/squashfs/super.c~revert-squashfs-provide-backing_dev_info-in-order-to-disable-read-ahead +++ a/fs/squashfs/super.c @@ -29,7 +29,6 @@ #include <linux/module.h> #include <linux/magic.h> #include <linux/xattr.h> -#include <linux/backing-dev.h> #include "squashfs_fs.h" #include "squashfs_fs_sb.h" @@ -113,24 +112,6 @@ static const struct squashfs_decompresso return decompressor; } -static int squashfs_bdi_init(struct super_block *sb) -{ - int err; - unsigned int major = MAJOR(sb->s_dev); - unsigned int minor = MINOR(sb->s_dev); - - bdi_put(sb->s_bdi); - sb->s_bdi = &noop_backing_dev_info; - - err = super_setup_bdi_name(sb, "squashfs_%u_%u", major, minor); - if (err) - return err; - - sb->s_bdi->ra_pages = 0; - sb->s_bdi->io_pages = 0; - - return 0; -} static int squashfs_fill_super(struct super_block *sb, struct fs_context *fc) { @@ -146,20 +127,6 @@ static int squashfs_fill_super(struct su TRACE("Entered squashfs_fill_superblock\n"); - /* - * squashfs provides 'backing_dev_info' in order to disable read-ahead. For - * squashfs, I/O is not deferred, it is done immediately in read_folio, - * which means the user would always have to wait their own I/O. So the effect - * of readahead is very weak for squashfs. squashfs_bdi_init will set - * sb->s_bdi->ra_pages and sb->s_bdi->io_pages to 0 and close readahead for - * squashfs. - */ - err = squashfs_bdi_init(sb); - if (err) { - errorf(fc, "squashfs init bdi failed"); - return err; - } - sb->s_fs_info = kzalloc(sizeof(*msblk), GFP_KERNEL); if (sb->s_fs_info == NULL) { ERROR("Failed to allocate squashfs_sb_info\n"); _ Patches currently in -mm which might be from hsinyi@xxxxxxxxxxxx are squashfs-implement-readahead.patch