On May 29 14:36, Daniel Gomez wrote:
> From: Daniel Gomez <[email protected]>
> 
> dma_blk_cb() now chunks at IOV_MAX, so the per-mapping cap on sg->qsg
> in nvme_map_addr() is redundant. Drop it.
> 
> Suggested-by: Klaus Jensen <[email protected]>
> Signed-off-by: Daniel Gomez <[email protected]>
> ---
>  hw/nvme/ctrl.c | 4 ----
>  1 file changed, 4 deletions(-)
> 
> diff --git a/hw/nvme/ctrl.c b/hw/nvme/ctrl.c
> index be6c7028cb5..00995d9808f 100644
> --- a/hw/nvme/ctrl.c
> +++ b/hw/nvme/ctrl.c
> @@ -866,10 +866,6 @@ static uint16_t nvme_map_addr(NvmeCtrl *n, NvmeSg *sg, 
> hwaddr addr, size_t len)
>          return NVME_INVALID_USE_OF_CMB | NVME_DNR;
>      }
>  
> -    if (sg->qsg.nsg + 1 > IOV_MAX) {
> -        goto max_mappings_exceeded;
> -    }
> -
>      qemu_sglist_add(&sg->qsg, addr, len);
>  
>      return NVME_SUCCESS;
> 
> -- 
> 2.53.0
> 
> 

I posted something similar a while back where I also removed the
restriction for CMB/PMR. However, I think that was wrong - for CMB/PMR
we take the blk_ path directly, which will not split on its own.

However, that means MDTS can't go that high if we have CMB/PMR enabled,
right?


Thanks,
Klaus

Attachment: signature.asc
Description: PGP signature

Reply via email to