Re: [linux-audio-dev] Re: [announce] [patch] Voluntary Kernel Preemption Patch

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: Re: [linux-audio-dev] Re: [announce] [patch] Voluntary Kernel Preemption Patch
From: Andrea Arcangeli (andrea_AT_suse.de)
Date: Tue Jul 13 2004 - 19:25:39 EEST


On Mon, Jul 12, 2004 at 05:08:44PM -0700, Andrew Morton wrote:
> of code then it's pretty obvious what's happening. If the trace is due to
> a long irq-off time then it will point up into the offending
> local_irq_enable().

schedule should be called with irq enabled, and I noticed here it's not
(jnz work_resched is executed with irq off so there is a window for
schedule to be called with irq off):

Index: linux-2.5/arch/i386/kernel/entry.S
===================================================================
RCS file: /home/andrea/crypto/cvs/linux-2.5/arch/i386/kernel/entry.S,v
retrieving revision 1.86
diff -u -p -r1.86 entry.S
--- linux-2.5/arch/i386/kernel/entry.S 23 May 2004 05:03:15 -0000 1.86
+++ linux-2.5/arch/i386/kernel/entry.S 13 Jul 2004 04:21:55 -0000
@@ -302,6 +310,7 @@ work_pending:
         testb $_TIF_NEED_RESCHED, %cl
         jz work_notifysig
 work_resched:
+ sti
         call schedule
         cli # make sure we don't miss an interrupt
                                         # setting need_resched or sigpending


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Wed Jul 14 2004 - 20:51:43 EEST