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

Re: [UNIKRAFT PATCH, v2, 09/15] lib/ukring: Remove unsupported cache line size



Hi Alexander,

Please see inline.

On 7/21/20 6:39 PM, Alexander Jung wrote:
> Signed-off-by: Alexander Jung <alexander.jung@xxxxxxxxx>
> ---
>  lib/ukring/include/uk/ring.h | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/lib/ukring/include/uk/ring.h b/lib/ukring/include/uk/ring.h
> index 01adaf3..e1a0387 100644
> --- a/lib/ukring/include/uk/ring.h
> +++ b/lib/ukring/include/uk/ring.h
> @@ -46,14 +46,14 @@ struct uk_ring {
>    int                prod_size;
>    int                prod_mask;
>    uint64_t           drops;
> -  volatile uint32_t  cons_head __aligned(CACHE_LINE_SIZE);
> +  volatile uint32_t  cons_head;

Actually we need this since ring buffers are very performance sensitive.
You should define the arch dependent CACHE_LINE_SIZE.

>    volatile uint32_t  cons_tail;
>    int                cons_size;
>    int                cons_mask;
>  #ifdef CONFIG_LIBUKDEBUG
>    struct uk_mutex   *lock;
>  #endif
> -  void              *ring[0] __aligned(CACHE_LINE_SIZE);
> +  void              *ring[0];
>  };
>  
>  
> 



 


Rackspace

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