]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - fs/block_dev.c
fs/block_dev.c: skip rw_page if bdev has integrity
[karo-tx-linux.git] / fs / block_dev.c
index c7e4163ede87f3370a235bdb929cf26e5cd487e8..054ef1bbb821b403f47ab8bd02c7960dac73f6ae 100644 (file)
@@ -376,7 +376,7 @@ int bdev_read_page(struct block_device *bdev, sector_t sector,
                        struct page *page)
 {
        const struct block_device_operations *ops = bdev->bd_disk->fops;
-       if (!ops->rw_page)
+       if (!ops->rw_page || bdev_get_integrity(bdev))
                return -EOPNOTSUPP;
        return ops->rw_page(bdev, sector + get_start_sect(bdev), page, READ);
 }
@@ -407,7 +407,7 @@ int bdev_write_page(struct block_device *bdev, sector_t sector,
        int result;
        int rw = (wbc->sync_mode == WB_SYNC_ALL) ? WRITE_SYNC : WRITE;
        const struct block_device_operations *ops = bdev->bd_disk->fops;
-       if (!ops->rw_page)
+       if (!ops->rw_page || bdev_get_integrity(bdev))
                return -EOPNOTSUPP;
        set_page_writeback(page);
        result = ops->rw_page(bdev, sector + get_start_sect(bdev), page, rw);