diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2017-06-02 15:03:07 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2017-06-02 15:03:07 -0400 |
commit | 65d03328aace31043be98f807f6e20332cdb19c8 (patch) | |
tree | 762fc34b1fbabd93d31e4768ed74082917e35411 /drivers/block | |
parent | 60c42a31dc0fd307098486221dcb43b59057110f (diff) | |
parent | 6ac56951dc10232e24419f6972fc8131dd0166e0 (diff) |
Merge tag 'ceph-for-4.12-rc4' of git://github.com/ceph/ceph-client
Pull ceph fix from Ilya Dryomov:
"A small fix for rbd FALLOC_FL_ZERO_RANGE/PUNCH_HOLE handling breakage
introduced in -rc1"
* tag 'ceph-for-4.12-rc4' of git://github.com/ceph/ceph-client:
rbd: implement REQ_OP_WRITE_ZEROES
Diffstat (limited to 'drivers/block')
-rw-r--r-- | drivers/block/rbd.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c index 454bf9c34882..c16f74547804 100644 --- a/drivers/block/rbd.c +++ b/drivers/block/rbd.c | |||
@@ -4023,6 +4023,7 @@ static void rbd_queue_workfn(struct work_struct *work) | |||
4023 | 4023 | ||
4024 | switch (req_op(rq)) { | 4024 | switch (req_op(rq)) { |
4025 | case REQ_OP_DISCARD: | 4025 | case REQ_OP_DISCARD: |
4026 | case REQ_OP_WRITE_ZEROES: | ||
4026 | op_type = OBJ_OP_DISCARD; | 4027 | op_type = OBJ_OP_DISCARD; |
4027 | break; | 4028 | break; |
4028 | case REQ_OP_WRITE: | 4029 | case REQ_OP_WRITE: |
@@ -4420,6 +4421,7 @@ static int rbd_init_disk(struct rbd_device *rbd_dev) | |||
4420 | q->limits.discard_granularity = segment_size; | 4421 | q->limits.discard_granularity = segment_size; |
4421 | q->limits.discard_alignment = segment_size; | 4422 | q->limits.discard_alignment = segment_size; |
4422 | blk_queue_max_discard_sectors(q, segment_size / SECTOR_SIZE); | 4423 | blk_queue_max_discard_sectors(q, segment_size / SECTOR_SIZE); |
4424 | blk_queue_max_write_zeroes_sectors(q, segment_size / SECTOR_SIZE); | ||
4423 | 4425 | ||
4424 | if (!ceph_test_opt(rbd_dev->rbd_client->client, NOCRC)) | 4426 | if (!ceph_test_opt(rbd_dev->rbd_client->client, NOCRC)) |
4425 | q->backing_dev_info->capabilities |= BDI_CAP_STABLE_WRITES; | 4427 | q->backing_dev_info->capabilities |= BDI_CAP_STABLE_WRITES; |