Re: [PATCH 5/7] nvmet: Introduce nvmet_dsm_len() helper

From: Chaitanya Kulkarni
Date: Wed Oct 23 2019 - 16:32:03 EST


Looks good.

Reviewed-by: Chaitanya Kulkarni <chaitanya.kulkarni@xxxxxxx>

On 10/23/2019 09:36 AM, Logan Gunthorpe wrote:
> Similar to the nvmet_rw_len helper.
>
> Signed-off-by: Christoph Hellwig <hch@xxxxxx>
> [logang@xxxxxxxxxxxx: separated out of a larger draft patch from hch]
> Signed-off-by: Logan Gunthorpe <logang@xxxxxxxxxxxx>
> ---
> drivers/nvme/target/io-cmd-file.c | 3 +--
> drivers/nvme/target/nvmet.h | 6 ++++++
> 2 files changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/nvme/target/io-cmd-file.c b/drivers/nvme/target/io-cmd-file.c
> index 05453f5d1448..7481556da6e6 100644
> --- a/drivers/nvme/target/io-cmd-file.c
> +++ b/drivers/nvme/target/io-cmd-file.c
> @@ -379,8 +379,7 @@ u16 nvmet_file_parse_io_cmd(struct nvmet_req *req)
> return 0;
> case nvme_cmd_dsm:
> req->execute = nvmet_file_execute_dsm;
> - req->data_len = (le32_to_cpu(cmd->dsm.nr) + 1) *
> - sizeof(struct nvme_dsm_range);
> + req->data_len = nvmet_dsm_len(req);
> return 0;
> case nvme_cmd_write_zeroes:
> req->execute = nvmet_file_execute_write_zeroes;
> diff --git a/drivers/nvme/target/nvmet.h b/drivers/nvme/target/nvmet.h
> index c51f8dd01dc4..6ccf2d098d9f 100644
> --- a/drivers/nvme/target/nvmet.h
> +++ b/drivers/nvme/target/nvmet.h
> @@ -495,6 +495,12 @@ static inline u32 nvmet_rw_len(struct nvmet_req *req)
> req->ns->blksize_shift;
> }
>
> +static inline u32 nvmet_dsm_len(struct nvmet_req *req)
> +{
> + return (le32_to_cpu(req->cmd->dsm.nr) + 1) *
> + sizeof(struct nvme_dsm_range);
> +}
> +
> u16 errno_to_nvme_status(struct nvmet_req *req, int errno);
>
> /* Convert a 32-bit number to a 16-bit 0's based number */
>