diff options
author | Josh Durgin <josh.durgin@inktank.com> | 2014-04-04 17:49:12 -0700 |
---|---|---|
committer | Ilya Dryomov <idryomov@redhat.com> | 2014-10-14 21:03:34 +0400 |
commit | 1c220881e307b62cc2f77d911219de332aa3f61e (patch) | |
tree | 6ce1baba2f79c5560f2a531fa7b6560702787250 /drivers/block/rbd.c | |
parent | d0265de7c358d71a494dcd1ee28206b32754bb0f (diff) | |
download | op-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.c | 3 |
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 */ |