Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp508567pxj; Wed, 2 Jun 2021 04:57:03 -0700 (PDT) X-Google-Smtp-Source: ABdhPJz/lT75TK376RfxtuHblwrJcjMRHo9tt9L3LXY5nh0LFdXzBCo4HqpmXrlFjttdlmPxL2vk X-Received: by 2002:aa7:db90:: with SMTP id u16mr37554758edt.106.1622635022889; Wed, 02 Jun 2021 04:57:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1622635022; cv=none; d=google.com; s=arc-20160816; b=jtEEA/h5RhlLoxlUl+jAJXuItqVd29dr0/FpC6UUTtWZIN/Fs6ueHFirb9PHI9rKYn Rv3mDcjI07ArFeEKbsrfXs+tn4DAWea0fFuESabl+NFr8EyE8CynzXk2npLMai/vf8cJ 9VKue11oESdxVP9ACzbZhpldb7i474pEVSm+i/LcwYSE2tGLiSlS5+3g+GX1hLSBYBuw b4JJFzWmXGWQnifiQ66cXt7QLZkkgBuftLMGhqzgLm/DeqyHMI30Au+nlxyi9kfXMZKc hgaHmUVmoFfDwQf/cseT839tXyxWNMxt8L+w2uGk43oPAKArH748rYiyudAJlLxwnL3O MP4g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=WZdXkeLXyTRCRBlV6ZkvwSxOi71Ng+ItJPqjFI54Mcg=; b=enrsANAqui3c9bh6Ta5aSASnkCUU8NM384t2tGS+xgWkGLmyKfztCKmSReTeRxu1VE PK/FdS5kRgIQJa2gy3wRGk22QIZqA7u4uZawUcfoR1KzfH+uEECCqR6+E0Z1zK8yT6IC Y7Py0gh0Ev5lSXgAEXFLD4bK3ZlP9Q84bS5Ri5BA9GQYhGoOzV6QU+WDNqljFcwpzZrx rtRybURefgRNHZAedwQnSYj/6Q5jxlLC19JtVX2w+lTl8UR20a4dm9JuKote/Z6OflDh 4V8Gx+1ryhXi6lGv3JXg8AwLXnAF0bl2nsjYjywS/gbD9DzALDPkMT3IiAH/JJwNx2cF /jYw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=Z3sB+5zd; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id f8si1264873ejl.652.2021.06.02.04.56.40; Wed, 02 Jun 2021 04:57:02 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=Z3sB+5zd; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232704AbhFBKcY (ORCPT + 99 others); Wed, 2 Jun 2021 06:32:24 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40868 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232629AbhFBKcP (ORCPT ); Wed, 2 Jun 2021 06:32:15 -0400 Received: from mail-pg1-x52c.google.com (mail-pg1-x52c.google.com [IPv6:2607:f8b0:4864:20::52c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 244DBC06174A for ; Wed, 2 Jun 2021 03:30:32 -0700 (PDT) Received: by mail-pg1-x52c.google.com with SMTP id t9so1880222pgn.4 for ; Wed, 02 Jun 2021 03:30:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=WZdXkeLXyTRCRBlV6ZkvwSxOi71Ng+ItJPqjFI54Mcg=; b=Z3sB+5zdNXr9kef5JA3bJvYP76xDiTOty/eJXFB532T92HsbDk7gItssLcLF5a+Okv DRLOrn43EY1kdU1/LchPW2gzDwUvBULq3wHLgA2d+huNDCSOW5BOnFEfY/+os56y11aX rXEdqD5bI1hPOr7cu5P7uCRP67zfCHm0xxmaIXH3md4KFb9EDuvM6upqbbtw2DWjc/+V ZpdMWlGpHm9FJDb0D7TutJxr8CzO8iwi4Hzq1A+u2+SJMti1ch5We3G2fjdnzNjV1A4+ aa4jPTK5jbAq2gdWcArgQFFCyQFQJvzpSy60LSq47C48o1c5NQSFtQ9qrYHbHxgWwkk7 t0aw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=WZdXkeLXyTRCRBlV6ZkvwSxOi71Ng+ItJPqjFI54Mcg=; b=entqAl/AWdU8PSgPvXPPrfTQ/dcTcm12JnDOMoLdRROYfpkqX3egmZvWzpzMUeTej8 p2TdFSXf6zDIZlqqh4HakqswxHnQxt/vaoWsqdcZOaZcU3V+pDaSt3Yjq8LIsfepyi+W LJYbYC583mPmX/oEAf5YEN2raLj2JP0Wbf6U47PbF5CwqRFRtiqUarVIL8EgjJ9lijut /xAgoiWbYBrdzHa+nERqQP8hkHNDXzTMsntZsk8JoCLmAAAu7lbR+LQO2tvLqubfeOlr c9J1k2ocIh988wldYEYv5Z8DV6tCfJzURiQGJIGp4J3FCl3fhfuQNe2yMbooweIzJquw wvTQ== X-Gm-Message-State: AOAM532/qoVFbFLEKRtx2h3hZyFx/Z1ZKwmJDXWwgnwG+POhW1zrJg94 HEHzNxC9B/2KoZy9vi+YpPuhPg== X-Received: by 2002:a63:471f:: with SMTP id u31mr33399072pga.85.1622629831701; Wed, 02 Jun 2021 03:30:31 -0700 (PDT) Received: from localhost (ec2-18-167-84-74.ap-east-1.compute.amazonaws.com. [18.167.84.74]) by smtp.gmail.com with ESMTPSA id o24sm16697046pgl.55.2021.06.02.03.30.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Jun 2021 03:30:31 -0700 (PDT) From: Leo Yan To: Arnaldo Carvalho de Melo , Peter Zijlstra , Ingo Molnar , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , Thomas Gleixner , x86@kernel.org, "H. Peter Anvin" , Mathieu Poirier , Suzuki K Poulose , Mike Leach , Adrian Hunter , Andi Kleen , linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org, coresight@lists.linaro.org, linux-arm-kernel@lists.infradead.org Cc: Leo Yan Subject: [PATCH v2 5/8] perf auxtrace: Change to use SMP memory barriers Date: Wed, 2 Jun 2021 18:30:04 +0800 Message-Id: <20210602103007.184993-6-leo.yan@linaro.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210602103007.184993-1-leo.yan@linaro.org> References: <20210602103007.184993-1-leo.yan@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The kernel and the userspace tool can access the AUX ring buffer head and tail from different CPUs, thus SMP class of barriers are required on SMP system. This patch changes to use SMP barriers to replace mb() and rmb() barriers. Signed-off-by: Leo Yan --- tools/perf/util/auxtrace.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tools/perf/util/auxtrace.h b/tools/perf/util/auxtrace.h index a4fbb33b7245..42b7ef811bde 100644 --- a/tools/perf/util/auxtrace.h +++ b/tools/perf/util/auxtrace.h @@ -444,7 +444,7 @@ static inline u64 auxtrace_mmap__read_snapshot_head(struct auxtrace_mmap *mm) u64 head = READ_ONCE(pc->aux_head); /* Ensure all reads are done after we read the head */ - rmb(); + smp_rmb(); return head; } @@ -458,7 +458,7 @@ static inline u64 auxtrace_mmap__read_head(struct auxtrace_mmap *mm) #endif /* Ensure all reads are done after we read the head */ - rmb(); + smp_rmb(); return head; } @@ -470,7 +470,7 @@ static inline void auxtrace_mmap__write_tail(struct auxtrace_mmap *mm, u64 tail) #endif /* Ensure all reads are done before we write the tail out */ - mb(); + smp_mb(); #if BITS_PER_LONG == 64 || !defined(HAVE_SYNC_COMPARE_AND_SWAP_SUPPORT) pc->aux_tail = tail; #else -- 2.25.1