md/raid5: use bdev_write_cache instead of open coding it
authorChristoph Hellwig <hch@lst.de>
Wed, 9 Nov 2022 10:10:37 +0000 (11:10 +0100)
committerSong Liu <song@kernel.org>
Mon, 14 Nov 2022 18:15:35 +0000 (10:15 -0800)
Use the bdev_write_cache instead of two equivalent open coded checks.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Song Liu <song@kernel.org>
drivers/md/raid5-cache.c
drivers/md/raid5-ppl.c

index a63023a..46182b9 100644 (file)
@@ -3062,7 +3062,6 @@ void r5c_update_on_rdev_error(struct mddev *mddev, struct md_rdev *rdev)
 
 int r5l_init_log(struct r5conf *conf, struct md_rdev *rdev)
 {
-       struct request_queue *q = bdev_get_queue(rdev->bdev);
        struct r5l_log *log;
        int ret;
 
@@ -3091,9 +3090,7 @@ int r5l_init_log(struct r5conf *conf, struct md_rdev *rdev)
        if (!log)
                return -ENOMEM;
        log->rdev = rdev;
-
-       log->need_cache_flush = test_bit(QUEUE_FLAG_WC, &q->queue_flags) != 0;
-
+       log->need_cache_flush = bdev_write_cache(rdev->bdev);
        log->uuid_checksum = crc32c_le(~0, rdev->mddev->uuid,
                                       sizeof(rdev->mddev->uuid));
 
index 31b9157..e495939 100644 (file)
@@ -1301,8 +1301,6 @@ static int ppl_validate_rdev(struct md_rdev *rdev)
 
 static void ppl_init_child_log(struct ppl_log *log, struct md_rdev *rdev)
 {
-       struct request_queue *q;
-
        if ((rdev->ppl.size << 9) >= (PPL_SPACE_SIZE +
                                      PPL_HEADER_SIZE) * 2) {
                log->use_multippl = true;
@@ -1316,8 +1314,7 @@ static void ppl_init_child_log(struct ppl_log *log, struct md_rdev *rdev)
        }
        log->next_io_sector = rdev->ppl.sector;
 
-       q = bdev_get_queue(rdev->bdev);
-       if (test_bit(QUEUE_FLAG_WC, &q->queue_flags))
+       if (bdev_write_cache(rdev->bdev))
                log->wb_cache_on = true;
 }