From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755595AbcCBUOU (ORCPT ); Wed, 2 Mar 2016 15:14:20 -0500 Received: from mail.kernel.org ([198.145.29.136]:55130 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752839AbcCBUOR (ORCPT ); Wed, 2 Mar 2016 15:14:17 -0500 Message-Id: <20160302201414.505621742@goodmis.org> User-Agent: quilt/0.61-1 Date: Wed, 02 Mar 2016 15:14:08 -0500 From: Steven Rostedt To: linux-kernel@vger.kernel.org, linux-rt-users Cc: Thomas Gleixner , Carsten Emde , Sebastian Andrzej Siewior , John Kacur , Paul Gortmaker Subject: [PATCH RT 2/7] kernel: migrate_disable() do fastpath in atomic & irqs-off References: <20160302201406.143206126@goodmis.org> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-15 Content-Disposition: inline; filename=0002-kernel-migrate_disable-do-fastpath-in-atomic-irqs-of.patch Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 3.4.110-rt140-rc1 stable review patch. If anyone has any objections, please let me know. ------------------ From: Sebastian Andrzej Siewior With interrupts off it makes no sense to do the long path since we can't leave the CPU anyway. Also we might end up in a recursion with lockdep. Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Steven Rostedt --- kernel/sched/core.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index cc4df0131023..7d9a53d80d22 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -3389,7 +3389,7 @@ void migrate_disable(void) { struct task_struct *p = current; - if (in_atomic()) { + if (in_atomic() || irqs_disabled()) { #ifdef CONFIG_SCHED_DEBUG p->migrate_disable_atomic++; #endif @@ -3420,7 +3420,7 @@ void migrate_enable(void) unsigned long flags; struct rq *rq; - if (in_atomic()) { + if (in_atomic() || irqs_disabled()) { #ifdef CONFIG_SCHED_DEBUG p->migrate_disable_atomic--; #endif -- 2.7.0