[dm-devel] [PATCH v6 6/6] loop: Add support for REQ_ALLOCATE

Darrick J. Wong darrick.wong at oracle.com
Wed Feb 12 20:44:59 UTC 2020


On Wed, Feb 12, 2020 at 11:00:15PM +0300, Kirill Tkhai wrote:
> 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 at virtuozzo.com>
> >> Reviewed-by: Bob Liu <bob.liu at oracle.com>
> >> ---
> >>  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().
> > 
> > With that fixed,
> > 
> > Reviewed-by: Darrick J. Wong <darrick.wong at oracle.com>
> 
> Just to clarify. Is this "Reviewed-by:" tag for this patch or for the whole series?

Only that patch.

--D

> Kirill





More information about the dm-devel mailing list