qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] hw/block/nvme: fix Close Zone


From: Klaus Jensen
Subject: Re: [PATCH] hw/block/nvme: fix Close Zone
Date: Mon, 8 Feb 2021 07:24:02 +0100

On Feb  8 09:32, Dmitry Fomichev wrote:
> Implicitly and Explicitly Open zones can be closed by Close Zone
> management function. This got broken by a recent commit and now such
> commands fail with Invalid Zone State Transition status.
> 
> Modify nvm_zrm_close() function to make Close Zone work correctly.
> 
> Signed-off-by: Dmitry Fomichev <dmitry.fomichev@wdc.com>
> Fixes: 053b5a302c3("hw/block/nvme: refactor zone resource management")
> ---
>  hw/block/nvme.c | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
> 
> diff --git a/hw/block/nvme.c b/hw/block/nvme.c
> index 6b84e34843..c2f0c88fbf 100644
> --- a/hw/block/nvme.c
> +++ b/hw/block/nvme.c
> @@ -1308,14 +1308,13 @@ static uint16_t nvme_zrm_finish(NvmeNamespace *ns, 
> NvmeZone *zone)
>  static uint16_t nvme_zrm_close(NvmeNamespace *ns, NvmeZone *zone)
>  {
>      switch (nvme_get_zone_state(zone)) {
> -    case NVME_ZONE_STATE_CLOSED:
> -        return NVME_SUCCESS;
> -
>      case NVME_ZONE_STATE_EXPLICITLY_OPEN:
>      case NVME_ZONE_STATE_IMPLICITLY_OPEN:
>          nvme_aor_dec_open(ns);
>          nvme_assign_zone_state(ns, zone, NVME_ZONE_STATE_CLOSED);
>          /* fall through */
> +    case NVME_ZONE_STATE_CLOSED:
> +        return NVME_SUCCESS;
>  
>      default:
>          return NVME_ZONE_INVAL_TRANSITION;
> -- 
> 2.28.0
> 

Thanks, applied!

The commit ids change when this is merged with master, so I removed the
"Fixes" tag and made a reference to the commit title in the commit
message instead.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]