diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c index 6f26cf38c6f9c732bfa3293c1b129919a6e245f3..128e7df5b807222ba2d6f50148cb164919a308f7 100644 --- a/drivers/block/rbd.c +++ b/drivers/block/rbd.c @@ -3780,6 +3780,9 @@ static int rbd_init_disk(struct rbd_device *rbd_dev) blk_queue_max_discard_sectors(q, segment_size / SECTOR_SIZE); q->limits.discard_zeroes_data = 1; + if (!ceph_test_opt(rbd_dev->rbd_client->client, NOCRC)) + q->backing_dev_info.capabilities |= BDI_CAP_STABLE_WRITES; + disk->queue = q; q->queuedata = rbd_dev;