linux-mips
[Top] [All Lists]

Re: 2.4 preempt kernel patch

To: jsun@mvista.com
Subject: Re: 2.4 preempt kernel patch
From: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Date: Sat, 29 May 2004 22:45:10 +0900 (JST)
Cc: linux-mips@linux-mips.org
In-reply-to: <20040528105151.G20139@mvista.com>
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <20040528.131236.112629910.nemoto@toshiba-tops.co.jp> <20040528105151.G20139@mvista.com>
Sender: linux-mips-bounce@linux-mips.org
>>>>> On Fri, 28 May 2004 10:51:51 -0700, Jun Sun <jsun@mvista.com> said:

>> Q1.  What is purpose of this block?  (To decrease latency?  But
>> other archs (and 2.6 MIPS kernel) do not have block like this...)

jsun> This is to check possible preemption at the end of (possibly
jsun> nested) interrupt handling.

jsun> All other arches and 2.6 MIPS are doing the same thing in .S
jsun> file (something like ret_from_irq path)

Oh, I found it in 2.6 MIPS kernel.  Thank you very much.

>> Q2.  If an interrupt happened between __sti() and __cli(), and the
>> interrupt handler raise softirq, the softirq handler will not be
>> called soon (because do_softirq() immediately return if preempt
>> disabled).  So we must check softirq_pending again after this
>> block?

jsun> do_softirq() does not (and should not) return when preemtpion is
jsun> disabled.  We should be fine here.

Sorry, it was my mistake.  I was misreading the in_interrupt()
code... (&& and ||).  Thank you.

---
Atsushi Nemoto

<Prev in Thread] Current Thread [Next in Thread>