On Thu, Nov 19, 2020 at 04:39:15PM +0100, David Hildenbrand wrote:
>  int ram_block_discard_disable(bool state)
>  {
> -    int old;
> +    int ret = 0;
>  
> +    ram_block_discard_disable_mutex_lock();
>      if (!state) {
> -        qatomic_dec(&ram_block_discard_disabled);
> -        return 0;
> +        ram_block_discard_disablers--;
> +    } else if (!ram_block_discard_requirers) {
> +        ram_block_discard_disablers++;
> +    } else {
> +        ret = -EBUSY;
>      }

I would make things even easier by:

  if (ram_block_discard_is_required()) {
    return -EBUSY;
  }

  if (state) {
    ram_block_discard_disablers++;
  } else {
    ram_block_discard_disablers--;
  }

But I think it's kind of nitpicking. :)

Reviewed-by: Peter Xu <pet...@redhat.com>

Thanks for writing this patch.

-- 
Peter Xu


Reply via email to