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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox