Re: [rtc-linux] [PATCH 1/2] rtc: rtc-lpc32xx: Introduce RTC driverfor the LPC32XX SoC

From: Wolfram Sang
Date: Tue Aug 10 2010 - 09:41:05 EST


On Tue, Aug 10, 2010 at 02:00:55PM +0200, Uwe Kleine-König wrote:
> Hi Wolfram,
>
> > > + retval = request_irq(rtc->irq, lpc32xx_rtc_alarm_interrupt,
> > > + IRQF_DISABLED, "rtcalarm", rtc);
> > > + if (retval < 0) {
> > > + dev_err(&pdev->dev, "Can't request interrupt\n");
> > > + goto err_free_irq;
> > > + }
> >
> > I saw that a number of rtc-drivers register their irq after they
> > register the device. I wonder if this is OK here? Couldn't it happen
> > that after rtc_device_register() there is a preemption and another
> > process could set the alarm? Then there is a race between interrupts
> > already enabled and no handler available, no?
> If you do it the other way around the irq might trigger and the handler
> reports an irq for a device that doesn't exist yet.

Well, I was assuming that you initially have all interrupts disabled...

--
Pengutronix e.K. | Wolfram Sang |
Industrial Linux Solutions | http://www.pengutronix.de/ |

Attachment: signature.asc
Description: Digital signature