Message ID | 64163d8bfafd6d576218cffe5687e23043b4f675.1396987789.git.josh.durgin@inktank.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c index 4f6f48a..78433df 100644 --- a/drivers/block/rbd.c +++ b/drivers/block/rbd.c @@ -2755,7 +2755,8 @@ static bool rbd_img_obj_request_simple(struct rbd_obj_request *obj_request) obj_size = (u64) 1 << rbd_dev->header.obj_order; /* Read requests didn't need special handling */ - if (!img_request_write_test(img_request)) + if (!img_request_write_test(img_request) && + !img_request_discard_test(img_request)) return true; /* No-layered writes are simple requests*/ if (!img_request_layered_test(img_request))
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> --- drivers/block/rbd.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)