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