Hi Doug,

Yasuaki Ishimatsu wrote:
> Hi Doug,
>
> Doug Chapman wrote:
>> On Mon, 2007-07-23 at 13:42 -0700, Luck, Tony wrote:
>>>>> Could be, but it sounds like there's something fishy in the current
>>>>> tree - Doug Chapman is having problems as well, presumably on zx1 boxes.
>>>> I am seeing the panic on HP zx1 and zx2 systems.  Currently doing a git
>>>> bisect to narrow it down.
>>> 2.6.23-rc1 booted OK on my rx2620.  On the zx2000 too (though X is currently
>>> behaving weirdly, I think that might be some other issue though).
>>>
>>> -Tony
>> Through the magic of git-bisect I have narrowed it down to this commit
>> (although I don't know why):
>>
>> commit 4994be1b3fe9120c88022ff5c0c33f6312b17adb
>> Author: Yasuaki Ishimatsu <[EMAIL PROTECTED]>
>> Date:   Tue Jul 17 21:22:33 2007 +0900
>>
>>     [IA64] Add support for vector domain
>>
>>     Add fundamental support for multiple vector domain. There still exists
>>     only one vector domain even with this patch. IRQ migration across
>>     domain is not supported yet by this patch.
>>
>>     Signed-off-by: Kenji Kaneshige <[EMAIL PROTECTED]>
>>     Signed-off-by: Yasuaki Ishimatsu <[EMAIL PROTECTED]>
>>     Signed-off-by: Tony Luck <[EMAIL PROTECTED]>
>>
>>
>>
>> As far as why I see this and so far others have not I have 2 guesses.
>> It could be related to firmware version (I have all my systems with
>> the latest available version) or, it could be the version of elilo
>> (perhaps more of a longshot).
>>
>> Or, could be my .config file (ok, now that I think of it that may be
>> more likely).  Attaching my .config here.  This is a custom config
>> that started out as the fedora 7 .config but I have made some changes
>> over time.
>
> Oops, I forgot to consider assign_irq_vector(AUTO_ASSIGN) case.
> I'm writing bug fix patch now. Wait a moment.

Unfortunately, I don't have any ski simulator environment. I attached
the bug fix patch. Could you try this patch?

Thanks,
Yasuaki Ishimatsu



This change fixes a panic when assign_irq_vector(irq) is called with
irq = AUTO_ASSIGN.

Signed-off-by: Yasuaki Ishimatsu <[EMAIL PROTECTED]>

 arch/ia64/kernel/irq_ia64.c |    5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)

Index: linux-2.6.23-rc1/arch/ia64/kernel/irq_ia64.c
===================================================================
--- linux-2.6.23-rc1.orig/arch/ia64/kernel/irq_ia64.c   2007-07-24 
16:08:32.000000000 +0900
+++ linux-2.6.23-rc1/arch/ia64/kernel/irq_ia64.c        2007-07-24 
16:19:46.000000000 +0900
@@ -212,9 +212,6 @@
        vector = -ENOSPC;

        spin_lock_irqsave(&vector_lock, flags);
-       if (irq < 0) {
-               goto out;
-       }
        for_each_online_cpu(cpu) {
                domain = vector_allocation_domain(cpu);
                vector = find_unassigned_vector(domain);
@@ -223,6 +220,8 @@
        }
        if (vector < 0)
                goto out;
+       if (irq == AUTO_ASSIGN)
+               irq = vector;
        BUG_ON(__bind_irq_vector(irq, vector, domain));
  out:
        spin_unlock_irqrestore(&vector_lock, flags);
-
To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to