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

Re: [Minios-devel] [UNIKRAFT PATCH] plat/xen/drivers/blk: Retry writing rings info on getting -EAGAIN



Reviewed-by: Costin Lupu <costin.lupu@xxxxxxxxx>

On 3/6/20 6:08 PM, Radu Nicolau wrote:
> Retry initializing the ring entries on receiving -EAGAIN error
> from xenstore
> 
> Signed-off-by: Radu Nicolau <radunicolau102@xxxxxxxxx>
> ---
>  plat/xen/drivers/blk/blkfront_xs.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/plat/xen/drivers/blk/blkfront_xs.c 
> b/plat/xen/drivers/blk/blkfront_xs.c
> index e93665c..4424cbf 100644
> --- a/plat/xen/drivers/blk/blkfront_xs.c
> +++ b/plat/xen/drivers/blk/blkfront_xs.c
> @@ -360,6 +360,7 @@ static int blkfront_xb_write_rings_info(struct 
> blkfront_dev *dev)
>  
>       UK_ASSERT(dev != NULL);
>  
> +again:
>       err = xs_transaction_start(&xbt);
>       if (err)
>               goto abort_transaction;
> @@ -375,6 +376,9 @@ static int blkfront_xb_write_rings_info(struct 
> blkfront_dev *dev)
>       }
>  
>       err = xs_transaction_end(xbt, 0);
> +     if (err == -EAGAIN)
> +             goto again;
> +
>       if (err)
>               uk_pr_err("Failed to end transaction: %d\n", err);
>  
> 



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.