From: Russell King <rmk+lkml@arm.linux.org.uk>
To: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@elte.hu>,
linux-kernel@vger.kernel.org,
Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Andrew Morton <akpm@osdl.org>
Subject: Re: [PATCH] genirq: Fix missing initializer for unmask in no_irq_chip
Date: Thu, 8 Jun 2006 16:29:26 +0100 [thread overview]
Message-ID: <20060608152926.GA15337@flint.arm.linux.org.uk> (raw)
In-Reply-To: <1149768256.5257.37.camel@localhost.localdomain>
On Thu, Jun 08, 2006 at 02:04:15PM +0200, Thomas Gleixner wrote:
> On Thu, 2006-06-08 at 12:35 +0100, Russell King wrote:
> > Okay, works on Versatile (which is a trivial platform) it doesn't work
> > on Neponset (a rather more complex setup). Neponset has a case where
> > there's an interrupt "concentrator" which consists of logically ORing
> > three interrupt sources, and providing a status register so you know
> > which occurred.
> >
> > Hence, there is no "chip" for this, and while it works with the ARM
> > IRQ subsystem, it doesn't even boot with the genirq stuff.
> >
> > This doesn't happen with the ARM IRQ subsystem because the "no chip"
> > handlers are all pointing at a dummy function instead of being NULL.
> > Could we do the same with genirq ?
>
> We missed to initialize unmask, which causes problems on neponset.
Okay, with -rc6 + genirq + the following patch, it appears to work
provided you don't stress it. As soon as I load the system up with
CF activity, a full-sized flood ping and hit "enter" a few times on
the console, it locks up solid - no oops, no nothing, the machine
just completely freezes.
This does not happen with the existing ARM IRQ code.
I'll try to debug this odd behaviour later today, but first I need to
resurect my NMI oopser code for this platform.
--- linux-2.6.17-rc6/kernel/irq/handle.c 2006-06-07 20:54:01.000000000 +0200
+++ b/kernel/irq/handle.c
@@ -91,7 +91,8 @@
.shutdown = noop,
.enable = noop,
.disable = noop,
- .ack = ack_bad,
+ .ack = noop, // needed to quiten down boot time complaints
+ .unmask = noop, // needed to prevent oops on sa1111 init
.end = noop,
};
--- linux-2.6.17-rc6/kernel/irq/manage.c 2006-06-07 20:53:54.000000000 +0200
+++ b/kernel/irq/manage.c
@@ -199,8 +199,8 @@
if (irq >= NR_IRQS)
return -EINVAL;
- if (desc->chip == &no_irq_chip)
- return -ENOSYS;
+// if (desc->chip == &no_irq_chip) // prevents smc91x initialising
+// return -ENOSYS;
/*
* Some drivers like serial.c use request_irq() heavily,
* so we have to be careful not to interfere with a
--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 Serial core
next prev parent reply other threads:[~2006-06-08 15:29 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-05-17 0:13 [patch 00/50] genirq: -V3 Ingo Molnar
2006-05-17 6:11 ` Benjamin Herrenschmidt
2006-05-17 22:27 ` Russell King
2006-05-18 0:32 ` Benjamin Herrenschmidt
2006-05-18 7:38 ` Russell King
2006-05-18 9:33 ` Benjamin Herrenschmidt
2006-05-17 22:15 ` [patchset] Generic IRQ Subsystem: -V4 Ingo Molnar
2006-05-18 22:24 ` Ingo Oeser
2006-05-19 9:31 ` Ingo Molnar
2006-05-19 17:00 ` Ingo Oeser
2006-05-19 14:52 ` [patchset] Generic IRQ Subsystem: -V5 Ingo Molnar
2006-06-07 16:54 ` Russell King
2006-06-07 17:20 ` Thomas Gleixner
2006-06-07 18:57 ` Thomas Gleixner
2006-06-08 11:35 ` Russell King
2006-06-08 12:04 ` [PATCH] genirq: Fix missing initializer for unmask in no_irq_chip Thomas Gleixner
2006-06-08 15:29 ` Russell King [this message]
2006-06-08 15:58 ` Thomas Gleixner
2006-06-08 18:57 ` Thomas Gleixner
2006-06-08 22:32 ` Thomas Gleixner
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=20060608152926.GA15337@flint.arm.linux.org.uk \
--to=rmk+lkml@arm.linux.org.uk \
--cc=akpm@osdl.org \
--cc=benh@kernel.crashing.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=tglx@linutronix.de \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.