From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751358AbdH0TyW (ORCPT ); Sun, 27 Aug 2017 15:54:22 -0400 Received: from mail.efficios.com ([167.114.142.141]:53155 "EHLO mail.efficios.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751277AbdH0TyV (ORCPT ); Sun, 27 Aug 2017 15:54:21 -0400 From: Mathieu Desnoyers To: "Paul E . McKenney" , Peter Zijlstra Cc: linux-kernel@vger.kernel.org, Mathieu Desnoyers , Boqun Feng , Andrew Hunter , Maged Michael , gromer@google.com, Avi Kivity , Benjamin Herrenschmidt , Paul Mackerras , Michael Ellerman , Dave Watson Subject: [RFC PATCH 1/2] membarrier: speed up single-threaded private cmd Date: Sun, 27 Aug 2017 12:54:03 -0700 Message-Id: <20170827195404.22171-1-mathieu.desnoyers@efficios.com> X-Mailer: git-send-email 2.11.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Single-threaded processes don't need to issue barriers, since the thread's current CPU is the only one that matters. Signed-off-by: Mathieu Desnoyers CC: Peter Zijlstra CC: Paul E. McKenney CC: Boqun Feng CC: Andrew Hunter CC: Maged Michael CC: gromer@google.com CC: Avi Kivity CC: Benjamin Herrenschmidt CC: Paul Mackerras CC: Michael Ellerman CC: Dave Watson --- kernel/sched/membarrier.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/sched/membarrier.c b/kernel/sched/membarrier.c index a92fddc22747..7eec6914d2d2 100644 --- a/kernel/sched/membarrier.c +++ b/kernel/sched/membarrier.c @@ -39,7 +39,7 @@ static void membarrier_private_expedited(void) bool fallback = false; cpumask_var_t tmpmask; - if (num_online_cpus() == 1) + if (num_online_cpus() == 1 || get_nr_threads(current) == 1) return; /* -- 2.11.0