On 12.02.2020 20:01, Darrick J. Wong wrote: > On Mon, Feb 10, 2020 at 12:34:04PM +0300, Kirill Tkhai wrote: >> Support for new modifier of REQ_OP_WRITE_ZEROES command. >> This results in allocation extents in backing file instead >> of actual blocks zeroing. >> >> Signed-off-by: Kirill Tkhai <ktkhai@xxxxxxxxxxxxx> >> Reviewed-by: Bob Liu <bob.liu@xxxxxxxxxx> >> --- >> drivers/block/loop.c | 15 ++++++++++++--- >> 1 file changed, 12 insertions(+), 3 deletions(-) >> >> diff --git a/drivers/block/loop.c b/drivers/block/loop.c >> index 739b372a5112..bfe76d9adf09 100644 >> --- a/drivers/block/loop.c >> +++ b/drivers/block/loop.c >> @@ -581,6 +581,15 @@ static int lo_rw_aio(struct loop_device *lo, struct loop_cmd *cmd, >> return 0; >> } >> >> +static unsigned int write_zeroes_to_fallocate_mode(unsigned int flags) >> +{ >> + if (flags & REQ_ALLOCATE) >> + return 0; >> + if (flags & REQ_NOUNMAP) >> + return FALLOC_FL_ZERO_RANGE; >> + return FALLOC_FL_PUNCH_HOLE; >> +} >> + >> static int do_req_filebacked(struct loop_device *lo, struct request *rq) >> { >> struct loop_cmd *cmd = blk_mq_rq_to_pdu(rq); >> @@ -604,9 +613,7 @@ static int do_req_filebacked(struct loop_device *lo, struct request *rq) >> * write zeroes the range. Otherwise, punch them out. >> */ > > Please update this comment to reflect the new REQ_ALLOCATE mode, and > move it to where you define write_zeroes_to_fallocate_mode(). Ok, I'll update it in v7 > With that fixed, > > Reviewed-by: Darrick J. Wong <darrick.wong@xxxxxxxxxx> Thanks