linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Pantelis Antoniou <pantelis.antoniou@gmail.com>
To: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Cc: Thomas Gleixner <tglx@linutronix.de>,
	linux-kernel@vger.kernel.org, mporter@ti.com
Subject: Re: [PATCH] irq: always set IRQF_ONESHOT if no primary handler is specified
Date: Thu, 18 Aug 2011 20:01:58 +0300	[thread overview]
Message-ID: <C5991460-2092-4E65-99EE-091F8DAA0AC3@gmail.com> (raw)
In-Reply-To: <1310070737-18514-1-git-send-email-bigeasy@linutronix.de>

Hi there,

Let me report that with this change Beagle board fails to boot,
hangs right on rootfs mount.

Users of BB should revert this until the offending driver(s) are fixed.

Regards

-- Pantelis

On Jul 7, 2011, at 11:32 PM, Sebastian Andrzej Siewior wrote:

> If no primary handler is specified then a default one is assigned which
> always returns IRQ_WAKE_THREAD. This handler requires the IRQF_ONESHOT
> flag on LEVEL / EIO typed irqs because the source of interrupt is not
> disabled.
> Since it is required for those users and there is no difference for others
> it makes sense to add this flag unconditionally.
> 
> Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
> ---
> A quick grep shows that drivers/staging/iio/adc/ad7816.c is the only
> driver in tree doing it wrong i.e. request_threaded_irq with
> IRQF_TRIGGER_{LOW|HIGH} but without ONEHOST.
> 
> There are 59 users in tree which request an edge typed interrupt. 24 of
> them specify the ONEHOST flag the others don't. Both variants are valid
> and identical but a consistent behavior would be nice.
> 
> There is a total of 134 users and 87 specify the irq type directly. For
> the remaining 47 the type depends on initial configuration of the irq chip
> or it might be specified via the device tree, dunno. 
> Should that patch be accepted I suggest to remove the ONESHOT flag from
> every request_th.* which uses NULL as the primary handler so we have a
> consistent behavior here.
> 
> kernel/irq/manage.c |    1 +
> 1 files changed, 1 insertions(+), 0 deletions(-)
> 
> diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
> index 0a7840ae..3f9cd47 100644
> --- a/kernel/irq/manage.c
> +++ b/kernel/irq/manage.c
> @@ -1322,6 +1322,7 @@ int request_threaded_irq(unsigned int irq, irq_handler_t handler,
> 		if (!thread_fn)
> 			return -EINVAL;
> 		handler = irq_default_primary_handler;
> +		irqflags |= IRQF_ONESHOT;
> 	}
> 
> 	action = kzalloc(sizeof(struct irqaction), GFP_KERNEL);
> -- 
> 1.7.4.4
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/


  parent reply	other threads:[~2011-08-18 17:02 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-07-07 20:32 [PATCH] irq: always set IRQF_ONESHOT if no primary handler is specified Sebastian Andrzej Siewior
2011-07-28  9:39 ` [tip:irq/urgent] irq: Always " tip-bot for Sebastian Andrzej Siewior
2011-08-18 17:01 ` Pantelis Antoniou [this message]
2011-08-18 17:22   ` [PATCH] irq: always " Sebastian Andrzej Siewior
2011-08-18 21:34     ` Felipe Balbi
2011-08-19  7:25       ` Sebastian Andrzej Siewior
2011-08-19 10:13         ` Felipe Balbi
2011-08-22 23:45       ` Paul Walmsley
2011-08-23  5:10         ` [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-23  8:14           ` Sebastian Andrzej Siewior
2011-08-23  8:57           ` Alan Cox
2011-08-23 16:13             ` Linus Torvalds
2011-08-23 16:46               ` Thomas Gleixner
2011-08-23  9:12           ` Felipe Balbi
2011-08-23 17:21             ` Paul Walmsley
2011-08-23  9:09         ` [PATCH] irq: always set IRQF_ONESHOT if no primary handler is specified Felipe Balbi
2011-08-22 23:26   ` Paul Walmsley

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=C5991460-2092-4E65-99EE-091F8DAA0AC3@gmail.com \
    --to=pantelis.antoniou@gmail.com \
    --cc=bigeasy@linutronix.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mporter@ti.com \
    --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;
as well as URLs for NNTP newsgroup(s).