summaryrefslogtreecommitdiffstats
path: root/drivers/block/rbd.c
diff options
context:
space:
mode:
authorJosh Durgin <josh.durgin@inktank.com>2014-04-04 17:49:12 -0700
committerIlya Dryomov <idryomov@redhat.com>2014-10-14 21:03:34 +0400
commit1c220881e307b62cc2f77d911219de332aa3f61e (patch)
tree6ce1baba2f79c5560f2a531fa7b6560702787250 /drivers/block/rbd.c
parentd0265de7c358d71a494dcd1ee28206b32754bb0f (diff)
downloadop-kernel-dev-1c220881e307b62cc2f77d911219de332aa3f61e.zip
op-kernel-dev-1c220881e307b62cc2f77d911219de332aa3f61e.tar.gz
rbd: make discard trigger copy-on-write
Discard requests are a form of write, so they should go through the same process as plain write requests and trigger copy-on-write for layered images. Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
Diffstat (limited to 'drivers/block/rbd.c')
-rw-r--r--drivers/block/rbd.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c
index 835a96a..6fb93cd 100644
--- a/drivers/block/rbd.c
+++ b/drivers/block/rbd.c
@@ -2851,7 +2851,8 @@ static bool img_obj_request_simple(struct rbd_obj_request *obj_request)
rbd_dev = img_request->rbd_dev;
/* Reads */
- if (!img_request_write_test(img_request))
+ if (!img_request_write_test(img_request) &&
+ !img_request_discard_test(img_request))
return true;
/* Non-layered writes */
OpenPOWER on IntegriCloud