]> git.itanic.dy.fi Git - linux-stable/commit
loop: revert "make autoclear operation asynchronous"
authorTetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Fri, 11 Feb 2022 07:15:54 +0000 (16:15 +0900)
committerJens Axboe <axboe@kernel.dk>
Fri, 11 Feb 2022 12:51:23 +0000 (05:51 -0700)
commitbf23747ee05320903177809648002601cd140cdd
treed1b844e3b71e140d283aa7c474ed978b90b00d65
parent93e2c52d71a6067d08ee927e2682e9781cb911ef
loop: revert "make autoclear operation asynchronous"

The kernel test robot is reporting that xfstest which does

  umount ext2 on xfs
  umount xfs

sequence started failing, for commit 322c4293ecc58110 ("loop: make
autoclear operation asynchronous") removed a guarantee that fput() of
backing file is processed before lo_release() from close() returns to
user mode.

And syzbot is reporting that deferring destroy_workqueue() from
__loop_clr_fd() to a WQ context did not help [1]. Revert that commit.

Link: https://syzkaller.appspot.com/bug?extid=831661966588c802aae9
Reported-by: kernel test robot <oliver.sang@intel.com>
Acked-by: Jan Kara <jack@suse.cz>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reported-by: syzbot <syzbot+831661966588c802aae9@syzkaller.appspotmail.com>
Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Link: https://lore.kernel.org/r/20220211071554.3424-1-penguin-kernel@I-love.SAKURA.ne.jp
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/block/loop.c
drivers/block/loop.h