[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 04/16] hw/block/nvme: remove redundant has_sg member
From: |
Maxim Levitsky |
Subject: |
Re: [PATCH v2 04/16] hw/block/nvme: remove redundant has_sg member |
Date: |
Thu, 30 Jul 2020 13:43:01 +0300 |
User-agent: |
Evolution 3.36.3 (3.36.3-1.fc32) |
On Thu, 2020-07-30 at 00:06 +0200, Klaus Jensen wrote:
> From: Klaus Jensen <k.jensen@samsung.com>
>
> Remove the has_sg member from NvmeRequest since it's redundant.
>
> Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
Reviewed-by: Maxim Levitsky <mlevitsk@redhat.com>
Best regards,
Maxim Levitsky
> ---
> hw/block/nvme.c | 7 ++-----
> hw/block/nvme.h | 1 -
> 2 files changed, 2 insertions(+), 6 deletions(-)
>
> diff --git a/hw/block/nvme.c b/hw/block/nvme.c
> index d60b19e1840f..a9d9a2912655 100644
> --- a/hw/block/nvme.c
> +++ b/hw/block/nvme.c
> @@ -550,7 +550,8 @@ static void nvme_rw_cb(void *opaque, int ret)
> block_acct_failed(blk_get_stats(n->conf.blk), &req->acct);
> req->status = NVME_INTERNAL_DEV_ERROR;
> }
> - if (req->has_sg) {
> +
> + if (req->qsg.nalloc) {
> qemu_sglist_destroy(&req->qsg);
> }
> nvme_enqueue_req_completion(cq, req);
> @@ -559,7 +560,6 @@ static void nvme_rw_cb(void *opaque, int ret)
> static uint16_t nvme_flush(NvmeCtrl *n, NvmeNamespace *ns, NvmeCmd *cmd,
> NvmeRequest *req)
> {
> - req->has_sg = false;
> block_acct_start(blk_get_stats(n->conf.blk), &req->acct, 0,
> BLOCK_ACCT_FLUSH);
> req->aiocb = blk_aio_flush(n->conf.blk, nvme_rw_cb, req);
> @@ -585,7 +585,6 @@ static uint16_t nvme_write_zeros(NvmeCtrl *n,
> NvmeNamespace *ns, NvmeCmd *cmd,
> return NVME_LBA_RANGE | NVME_DNR;
> }
>
> - req->has_sg = false;
> block_acct_start(blk_get_stats(n->conf.blk), &req->acct, 0,
> BLOCK_ACCT_WRITE);
> req->aiocb = blk_aio_pwrite_zeroes(n->conf.blk, offset, count,
> @@ -623,7 +622,6 @@ static uint16_t nvme_rw(NvmeCtrl *n, NvmeNamespace *ns,
> NvmeCmd *cmd,
> }
>
> if (req->qsg.nsg > 0) {
> - req->has_sg = true;
> block_acct_start(blk_get_stats(n->conf.blk), &req->acct,
> req->qsg.size,
> acct);
> req->aiocb = is_write ?
> @@ -632,7 +630,6 @@ static uint16_t nvme_rw(NvmeCtrl *n, NvmeNamespace *ns,
> NvmeCmd *cmd,
> dma_blk_read(n->conf.blk, &req->qsg, data_offset,
> BDRV_SECTOR_SIZE,
> nvme_rw_cb, req);
> } else {
> - req->has_sg = false;
> block_acct_start(blk_get_stats(n->conf.blk), &req->acct,
> req->iov.size,
> acct);
> req->aiocb = is_write ?
> diff --git a/hw/block/nvme.h b/hw/block/nvme.h
> index 0b6a8ae66559..5519b5cc7686 100644
> --- a/hw/block/nvme.h
> +++ b/hw/block/nvme.h
> @@ -22,7 +22,6 @@ typedef struct NvmeRequest {
> struct NvmeSQueue *sq;
> BlockAIOCB *aiocb;
> uint16_t status;
> - bool has_sg;
> NvmeCqe cqe;
> BlockAcctCookie acct;
> QEMUSGList qsg;
- [PATCH v2 00/16] hw/block/nvme: dma handling and address mapping cleanup, Klaus Jensen, 2020/07/29
- [PATCH v2 02/16] hw/block/nvme: add mapping helpers, Klaus Jensen, 2020/07/29
- [PATCH v2 01/16] hw/block/nvme: memset preallocated requests structures, Klaus Jensen, 2020/07/29
- [PATCH v2 03/16] hw/block/nvme: replace dma_acct with blk_acct equivalent, Klaus Jensen, 2020/07/29
- [PATCH v2 05/16] hw/block/nvme: destroy request iov before reuse, Klaus Jensen, 2020/07/29
- [PATCH v2 04/16] hw/block/nvme: remove redundant has_sg member, Klaus Jensen, 2020/07/29
- [PATCH v2 06/16] hw/block/nvme: refactor dma read/write, Klaus Jensen, 2020/07/29
- [PATCH v2 10/16] hw/block/nvme: refactor request bounds checking, Klaus Jensen, 2020/07/29
- [PATCH v2 08/16] hw/block/nvme: add request mapping helper, Klaus Jensen, 2020/07/29
- [PATCH v2 07/16] hw/block/nvme: add tracing to nvme_map_prp, Klaus Jensen, 2020/07/29
- [PATCH v2 09/16] hw/block/nvme: verify validity of prp lists in the cmb, Klaus Jensen, 2020/07/29
- [PATCH v2 12/16] hw/block/nvme: be consistent about zeros vs zeroes, Klaus Jensen, 2020/07/29
- [PATCH v2 11/16] hw/block/nvme: add check for mdts, Klaus Jensen, 2020/07/29