Re: [PATCH] iommu/iova: Separate atomic variables to improve performance

From: Joerg Roedel
Date: Thu Apr 11 2019 - 09:43:17 EST


On Wed, Apr 03, 2019 at 04:35:21PM +0800, Shaokun Zhang wrote:
> From: Jinyu Qi <jinyuqi@xxxxxxxxxx>
>
> In struct iova_domain, there are three atomic variables, the former two
> are about TLB flush counters which use atomic_add operation, anoter is
> used to flush timer that use cmpxhg operation.
> These variables are in the same cache line, so it will cause some
> performance loss under the condition that many cores call queue_iova
> function, Let's isolate the two type atomic variables to different
> cache line to reduce cache line conflict.
>
> Cc: Joerg Roedel <joro@xxxxxxxxxx>
> Signed-off-by: Jinyu Qi <jinyuqi@xxxxxxxxxx>
> ---
> include/linux/iova.h | 16 ++++++++--------
> 1 file changed, 8 insertions(+), 8 deletions(-)

Applied, thanks.