From: Daniel Walker <dwalker@mvista.com>
To: Ingo Molnar <mingo@elte.hu>
Cc: linux-kernel@vger.kernel.org, sdietrich@mvista.com
Subject: Re: [PATCH] local_irq_disable removal
Date: Wed, 08 Jun 2005 13:33:38 -0700 [thread overview]
Message-ID: <1118262818.30686.8.camel@dhcp153.mvista.com> (raw)
In-Reply-To: <20050608112119.GA28703@elte.hu>
Great.
On Wed, 2005-06-08 at 13:21 +0200, Ingo Molnar wrote:
>
> i've attached below the delta relative to your patch. The changes are:
>
> - fixed a soft-local_irq_restore() bug: it didnt re-disable the IRQ
> flag if the flags passed in had it set.
>
> - fixed SMP support - both the scheduler and the lowlevel SMP code was
> not fully converted to the soft flag assumptions. The PREEMPT_RT
> kernel now boots fine on a 2-way/4-way x86 box.
>
> - fixed the APIC code
>
> - fixed irq-latency tracing and other tracing assumptions
>
> - fixed DEBUG_RT_DEADLOCK_DETECT - we checked for the wrong irq flags
>
> - added debug code to find IRQ flag mismatches: mixing the CPU and soft
> flags is lethal, but detectable.
>
> - simplified the code which should thus also be faster: introduced the
> mask_preempt_count/unmask_preempt_count primitives and made the
> soft-flag code use it.
>
> - cleaned up the interdependencies of the soft-flag functions - they
> now dont call each other anymore, they all use inlined code for
> maximum performance.
Should be macro's one day ...
> - made the soft IRQ flag an unconditional feature of PREEMPT_RT: once
> it works properly there's no reason to ever disable it under
> PREEMPT_RT.
>
> - renamed hard_ to raw_, to bring it in line with other constructs in
> PREEMPT_RT.
>
> - cleaned up the system.h impact by creating linux/rt_irq.h. Made the
> naming consistent all across.
>
> - cleaned up the preempt.h impact and updated the comments.
>
> - fixed smp_processor_id() debugging: we have to check for the CPU irq
> flag too.
>
Excellent .. I have one fix related to preempt_schedule_irq() below.
There needs to be an ifdef , cause when PREEPMT_RT is off you would end
up with interrupts enabled when exiting preempt_schedule_irq() ..
Index: linux-2.6.11/kernel/sched.c
===================================================================
--- linux-2.6.11.orig/kernel/sched.c 2005-06-08 20:25:00.000000000 +0000
+++ linux-2.6.11/kernel/sched.c 2005-06-08 20:24:37.000000000 +0000
@@ -3245,7 +3245,9 @@ need_resched:
__schedule();
raw_local_irq_disable();
+#ifdef CONFIG_PREEMPT_RT
local_irq_enable_noresched();
+#endif
#ifdef CONFIG_PREEMPT_BKL
task->lock_depth = saved_lock_depth;
next prev parent reply other threads:[~2005-06-08 20:36 UTC|newest]
Thread overview: 86+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-06-08 7:08 Daniel Walker
2005-06-08 11:21 ` Ingo Molnar
2005-06-08 20:33 ` Daniel Walker [this message]
2005-06-09 11:56 ` Ingo Molnar
2005-06-10 23:37 ` Esben Nielsen
2005-06-11 0:20 ` Daniel Walker
2005-06-11 13:13 ` Esben Nielsen
2005-06-11 13:46 ` Ingo Molnar
2005-06-11 14:32 ` Esben Nielsen
2005-06-11 16:36 ` Daniel Walker
2005-06-11 17:26 ` Thomas Gleixner
2005-06-11 18:40 ` Sven-Thorsten Dietrich
2005-06-12 0:07 ` Thomas Gleixner
2005-06-12 0:15 ` Sven-Thorsten Dietrich
2005-06-12 0:22 ` Thomas Gleixner
2005-06-12 0:24 ` Sven-Thorsten Dietrich
2005-06-11 19:16 ` Ingo Molnar
2005-06-11 19:34 ` Esben Nielsen
2005-06-11 19:44 ` Sven-Thorsten Dietrich
2005-06-11 19:53 ` Daniel Walker
2005-06-11 20:23 ` Esben Nielsen
2005-06-11 22:59 ` Sven-Thorsten Dietrich
2005-06-13 5:22 ` Steven Rostedt
2005-06-13 6:20 ` Sven-Thorsten Dietrich
2005-06-13 12:28 ` Steven Rostedt
2005-06-11 20:03 ` Ingo Molnar
2005-06-11 20:51 ` Daniel Walker
2005-06-11 23:44 ` Thomas Gleixner
2005-06-11 23:50 ` Daniel Walker
2005-06-12 0:01 ` Thomas Gleixner
2005-06-12 0:09 ` Sven-Thorsten Dietrich
2005-06-12 0:28 ` Thomas Gleixner
2005-06-12 1:05 ` Gene Heskett
2005-06-13 12:03 ` Paulo Marques
2005-06-13 12:19 ` Esben Nielsen
2005-06-12 4:50 ` cutaway
2005-06-12 6:57 ` Ingo Molnar
2005-06-12 11:15 ` Esben Nielsen
2005-06-12 11:52 ` Ingo Molnar
2005-06-13 7:01 ` Sven-Thorsten Dietrich
2005-06-13 7:53 ` Esben Nielsen
2005-06-13 8:05 ` Sven-Thorsten Dietrich
2005-06-13 8:54 ` Esben Nielsen
2005-06-13 9:13 ` Ingo Molnar
2005-06-12 15:28 ` Daniel Walker
2005-06-12 4:31 ` Karim Yaghmour
2005-06-12 4:32 ` Daniel Walker
2005-06-12 4:56 ` Karim Yaghmour
2005-06-12 4:55 ` Daniel Walker
2005-06-12 5:16 ` Karim Yaghmour
2005-06-12 5:14 ` Daniel Walker
2005-06-12 5:27 ` Karim Yaghmour
2005-06-12 15:27 ` Zwane Mwaikambo
2005-06-12 15:46 ` Daniel Walker
2005-06-12 19:02 ` Ingo Molnar
2005-06-12 17:02 ` Andi Kleen
2005-06-13 7:08 ` Sven-Thorsten Dietrich
2005-06-13 7:44 ` Esben Nielsen
2005-06-13 7:53 ` Sven-Thorsten Dietrich
2005-06-13 7:56 ` Ingo Molnar
2005-06-13 7:47 ` Ingo Molnar
2005-06-11 16:41 ` Sven-Thorsten Dietrich
2005-06-11 17:16 ` Esben Nielsen
2005-06-11 19:29 ` Sven-Thorsten Dietrich
2005-06-11 20:02 ` Sven-Thorsten Dietrich
2005-06-11 16:19 ` Daniel Walker
2005-06-11 13:51 ` Ingo Molnar
2005-06-11 15:00 ` Mika Penttilä
2005-06-11 16:45 ` Sven-Thorsten Dietrich
2005-06-11 16:53 ` Mika Penttilä
2005-06-11 17:13 ` Daniel Walker
2005-06-11 17:22 ` Mika Penttilä
2005-06-11 17:25 ` Daniel Walker
2005-06-11 17:29 ` Mika Penttilä
2005-06-11 17:30 ` Daniel Walker
2005-06-11 17:55 ` Mika Penttilä
2005-06-11 16:28 ` Daniel Walker
2005-06-11 16:46 ` Esben Nielsen
2005-06-11 16:09 ` Daniel Walker
2005-06-11 16:31 ` Esben Nielsen
2005-06-11 16:51 ` Christoph Hellwig
2005-06-11 22:44 ` Ed Tomlinson
2005-06-12 6:23 ` Ingo Molnar
2005-06-12 9:28 ` Christoph Hellwig
2005-06-13 4:39 ` [RT] " Steven Rostedt
2005-06-16 5:35 ` Lee Revell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1118262818.30686.8.camel@dhcp153.mvista.com \
--to=dwalker@mvista.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=sdietrich@mvista.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®