[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20110823081450.GA20979@linutronix.de>
Date: Tue, 23 Aug 2011 10:14:50 +0200
From: Sebastian Andrzej Siewior <bigeasy@...utronix.de>
To: Paul Walmsley <paul@...an.com>
Cc: linux-serial@...r.kernel.org, Alan Cox <alan@...ux.intel.com>,
Pantelis Antoniou <pantelis.antoniou@...il.com>,
linux-kernel@...r.kernel.org, linux-omap@...r.kernel.org,
Thomas Gleixner <tglx@...utronix.de>,
Felipe Balbi <balbi@...com>, torvalds@...ux-foundation.org,
mporter@...com, Kevin Hilman <khilman@...com>,
"Govindraj.R" <govindraj.raja@...com>
Subject: Re: [PATCH] tty: omap-serial: fix boot hang by converting to use a
threaded IRQ handler (was Re: [PATCH] irq: always set IRQF_ONESHOT if no
primary handler is specified)
* Paul Walmsley | 2011-08-22 23:10:21 [-0600]:
>IRQ handler type mismatch for IRQ 74
>It turns out that the omap-serial code used one threaded IRQ
>handler[1][2] and one non-threaded IRQ handler[3] that shared the same
>IRQ. During the 3.1-rc series, a patch was merged[4] that caused
>IRQF_ONESHOT to be set on the threaded handler, but the non-threaded
>handler did not have IRQF_ONESHOT set. Since interrupt handlers
Is the type of IRQ74 edge or line/eoi?
Since you registered the serial handler as threaded and the primary
handler did _not_ disable the irq source (due to the absence of the
IRQF_ONESHOT flag or a custom primary handler which does this by
changing a bit in the hardware) it is more or less luck that you did not
hang forever on the first serial interrupt. Well, it does not happen
with edge typed interrupt lines.
>that share the same IRQ must also share the presence or absence of
>IRQF_ONESHOT[5], this new commit caused a mismatch that prevented the
>non-threaded IRQ from registering.
In theory it should be okay if the handler without ONESHOT is either
primary only or primary + threaded and the primary disables the irq
source.
Sebastian
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists