[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20131215144639.GG31090@linutronix.de>
Date: Sun, 15 Dec 2013 15:46:39 +0100
From: Sebastian Andrzej Siewior <bigeasy@...utronix.de>
To: Steven Rostedt <rostedt@...dmis.org>
Cc: Nicholas Mc Guire <der.herr@...r.at>,
linux-rt-users@...r.kernel.org,
Peter Zijlstra <peterz@...radead.org>,
Andreas Platschek <platschek@....tuwien.ac.at>,
LKML <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 1/3] make migrate disable/enable conditioned on
softirq_nestcnt transition
* Steven Rostedt | 2013-12-05 19:45:30 [-0500]:
>On Fri, 6 Dec 2013 00:42:22 +0100
>Nicholas Mc Guire <der.herr@...r.at> wrote:
>> --- a/kernel/softirq.c
>> +++ b/kernel/softirq.c
>> @@ -569,8 +569,8 @@ static void do_current_softirqs(int need_rcu_bh_qs)
>>
>> void local_bh_disable(void)
>> {
>> - migrate_disable();
>> - current->softirq_nestcnt++;
>> + if (++current->softirq_nestcnt == 1)
>> + migrate_disable();
>> }
>> EXPORT_SYMBOL(local_bh_disable);
>>
>> @@ -584,8 +584,8 @@ void local_bh_enable(void)
>> do_current_softirqs(1);
>> local_irq_enable();
>>
>> - current->softirq_nestcnt--;
>> - migrate_enable();
>> + if (--current->softirq_nestcnt == 0)
>> + migrate_enable();
>
>I wonder if we should add a:
>
> BUG_ON(current->softirq_nestcnt < 0);
We have a WARN_ON() in each enable path. That one in local_bh_enable()
isn't part of the context here. If you want to s/WARN_/BUG_/ then I
would prefer not to since there are a few people with no UART and this
could break the system while the current sollution keeps the system
running.
>As for the patch, I haven't found anything wrong with it.
>
>Reviewed-by: Steven Rostedt <rostedt@...dmis.org>
Thanks.
Sebastian
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists