lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <C5991460-2092-4E65-99EE-091F8DAA0AC3@gmail.com>
Date:	Thu, 18 Aug 2011 20:01:58 +0300
From:	Pantelis Antoniou <pantelis.antoniou@...il.com>
To:	Sebastian Andrzej Siewior <bigeasy@...utronix.de>
Cc:	Thomas Gleixner <tglx@...utronix.de>, linux-kernel@...r.kernel.org,
	mporter@...com
Subject: Re: [PATCH] irq: always set IRQF_ONESHOT if no primary handler is specified

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@...utronix.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@...r.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/

--
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ