ext4: use fs_holder_ops for the log device
authorChristoph Hellwig <hch@lst.de>
Wed, 2 Aug 2023 15:41:29 +0000 (17:41 +0200)
committerChristian Brauner <brauner@kernel.org>
Fri, 11 Aug 2023 11:15:04 +0000 (13:15 +0200)
Use the generic fs_holder_ops to shut down the file system when the
log device goes away instead of duplicating the logic.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Jan Kara <jack@suse.cz>
Message-Id: <20230802154131.2221419-11-hch@lst.de>
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/ext4/super.c

index 47e3272..60d2815 100644 (file)
@@ -1097,15 +1097,6 @@ void ext4_update_dynamic_rev(struct super_block *sb)
         */
 }
 
-static void ext4_bdev_mark_dead(struct block_device *bdev)
-{
-       ext4_force_shutdown(bdev->bd_holder, EXT4_GOING_FLAGS_NOLOGFLUSH);
-}
-
-static const struct blk_holder_ops ext4_holder_ops = {
-       .mark_dead              = ext4_bdev_mark_dead,
-};
-
 /*
  * Open the external journal device
  */
@@ -1114,7 +1105,7 @@ static struct block_device *ext4_blkdev_get(dev_t dev, struct super_block *sb)
        struct block_device *bdev;
 
        bdev = blkdev_get_by_dev(dev, BLK_OPEN_READ | BLK_OPEN_WRITE, sb,
-                                &ext4_holder_ops);
+                                &fs_holder_ops);
        if (IS_ERR(bdev))
                goto fail;
        return bdev;