Re: [PATCH 2/8] staging: omap-thermal: use spin_lock_irqsave inside IRQ handler

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

 



On 18-03-2013 15:16, Dan Carpenter wrote:
On Mon, Mar 18, 2013 at 10:59:10AM -0400, Eduardo Valentin wrote:
Even if the IRQ is not firing because it is ONE_SHOT and disable
at INTC level, the IRQ handler must use spin_lock_irqsave.
It is necessary to disable IRQs from the current
CPU while it is holding a spin_lock which is need.


Gar...  I think I was just totally wrong on this.  I think your
original code was fine.  Sorry Eduardo and Greg.

This is a threaded IRQ so the regular spin_lock is fine or even the
mutex would have been.

In fact it is. But I rather prefer to use spinlocks there, just to keep the irq handler sane, even if it is moved to non-threaded IRQ.


IRQ_ONESHOT is about triggering a second IRQ before the first one
has been finished, btw.

It is, and that gets done by masking the IRQ at INTC level.


I am an idiot.


Not really. Thanks for your time reviewing the driver.

I will resend this series. Drop this one and split patch 4/8 into two I think (one for moving files, one for renaming functions)


regards,
dan carpenter




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


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux