Re: [PATCH 1/1] ARM AT91 Use IRQF_TIMER flag to prevent early boot crash

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 2 Jun 2015, Carsten Emde wrote:
> When threaded interrupts are configured, they may not be
> requested before the khtread daemon is running. The system
> crashes at an early boot stage, otherwise:

<SNIP>

> Add the IRQF_TIMER flag as recommended by Sebastian Siewior
> -> http://www.spinics.net/lists/linux-rt-users/msg13171.html

This is wrong. The interrupts in question are not timers in the sense
of system timers. They are related to the clock subsystem and have a
totally different purpose, i.e. they are just there to wake up waiters
which wait for the synchronization of a particular clock, pll ...

So the proper flag is IRQF_NO_THREAD. And that's not a RT problem,
that's a mainline problem as well, if 'threadirqs' is set on the
kernel command line.

Now even if you add IRQF_NO_THREAD then still the interrupt service
routine is not RT compatible:

static irqreturn_t clk_main_osc_irq_handler(int irq, void *dev_id)
{
	struct clk_main_osc *osc = dev_id;

	wake_up(&osc->wait);

	^^^ takes sleeping spinlocks

Thanks,

	tglx
--
To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [RT Stable]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux