Re: select() to /dev/rtc0 to wait for clock tick timed out

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

 



On Fri, 2011-08-19 at 16:56 -0400, Matt Turner wrote:
> With 2.6.37 the original rtctest program gives
> 
> 			RTC Driver Test Example.
> 
> RTC_UIE_ON ioctl: Invalid argument
> 
> and the modified version hangs in the same way. :(

Ok, so the AIE/alarm irq isn't working (but returns as if it should),
and in the older case, the UIE mode properly returned an error.

So I'm guessing since we now use AIE mode interrupts to emulate UIE, the
UIE code thinks alarms will work and so doesn't return an error,
confusing the hwclock code.

> With 2.6.37, hwclock did work:
> 
> bcm91250a-be ~ # date
> Fri Aug 19 16:52:21 EDT 2011
> bcm91250a-be ~ # hwclock --systohc
> bcm91250a-be ~ # date 082016522011
> Sat Aug 20 16:52:00 EDT 2011
> bcm91250a-be ~ # hwclock --hctosys
> bcm91250a-be ~ # date
> Fri Aug 19 16:53:02 EDT 2011

Running strace on the hwclock --hctosys might prove the theory above. 


> With 3.1.0-rc2+, it does not
> bcm91250a-be ~ # date
> Fri Aug 19 16:54:32 EDT 2011
> bcm91250a-be ~ # hwclock --systohc
> select() to /dev/rtc0 to wait for clock tick timed out
> bcm91250a-be ~ # date 082016542011
> Sat Aug 20 16:54:00 EDT 2011
> bcm91250a-be ~ # hwclock --hctosys
> select() to /dev/rtc0 to wait for clock tick timed out
> bcm91250a-be ~ # date
> Sat Aug 20 16:54:11 EDT 2011
> 
> So, even if the alarm never worked, there is some sort of regression here.

Yea, since we depend on the alarm irq for more functionality now, it not
working in this case is causing more trouble.

I suspect either fixing the driver alarm code so it either works or
provides a proper error code will resolve it.

thanks
-john






[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux