Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753906AbbFXPAS (ORCPT ); Wed, 24 Jun 2015 11:00:18 -0400 Received: from shelob.surriel.com ([74.92.59.67]:32792 "EHLO shelob.surriel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753063AbbFXO6K (ORCPT ); Wed, 24 Jun 2015 10:58:10 -0400 From: riel@redhat.com To: linux-kernel@vger.kernel.org Cc: fweisbec@redhat.com, peterz@infradead.org, mingo@kernel.org, tglx@linutronix.de, luto@amacapital.net Subject: [RFC PATCH 07/11] nohz,timer: designate timer housekeeping cpu Date: Wed, 24 Jun 2015 10:57:56 -0400 Message-Id: <1435157880-22925-8-git-send-email-riel@redhat.com> X-Mailer: git-send-email 2.1.0 In-Reply-To: <1435157880-22925-1-git-send-email-riel@redhat.com> References: <1435157880-22925-1-git-send-email-riel@redhat.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1156 Lines: 41 From: Rik van Riel The timer housekeeping CPU can do tick based sampling for remote CPUs. For now this is the first CPU in the housekeeping_mask. Eventually we could move to having one timer housekeeping cpu per socket, if needed. Signed-off-by: Rik van Riel --- include/linux/tick.h | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/include/linux/tick.h b/include/linux/tick.h index f8492da57ad3..2fb51030587b 100644 --- a/include/linux/tick.h +++ b/include/linux/tick.h @@ -158,6 +158,15 @@ static inline bool is_housekeeping_cpu(int cpu) return true; } +static inline bool is_timer_housekeeping_cpu(int cpu) +{ +#ifdef CONFIG_NO_HZ_FULL + if (tick_nohz_full_running) + return (cpumask_first(housekeeping_mask) == cpu); +#endif + return false; +} + static inline void housekeeping_affine(struct task_struct *t) { #ifdef CONFIG_NO_HZ_FULL -- 2.1.0 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/