Re: [PATCH] RTC: Add mmap method to rtc character driver

Neil Horman
2006-07-25T19:22:00Z

On Tue, Jul 25, 2006 at 12:10:09PM -0700, H. Peter Anvin wrote:
> Neil Horman wrote:
> >
> >In general I agree, but that only works if you operate on a platform that
> >supports virtual syscalls, and has vdso configured. I'm not overly
> >familiar
> >with vdso, but I didn't think vdso could be supported on all
> >platforms/arches.
> >This seems like it might be a nice addition in those cases.
> >
>
> Not really. This introduces a potentially very difficult support
> user-visible interface. Consider a tickless kernel -- you might end up
> taking tick interrupts ONLY to update this page, since you don't have
> any way of knowing when userspace wants to look at it.
>
Well, you do actually know when they want to look at it. The rtc driver only
unmasks its interrupt when a user space process has opened the device and sent
it a RTC_UIE ON or RTC_PIE_ON (or other shuch ioctl). So if you open /dev/rtc,
and memory map the page, but never enable a timer method, then every read of the
page returns zero. The only overhead this patch is currently adding, execution
time-wise is the extra time it takes to write to a the shared page variable. If
the timer tick interrupt is executing, its because someone is reading tick data,
or plans to very soon.

Neil

> -hpa

--
/***************************************************
*Neil Horman
*Software Engineer
*gpg keyid: 1024D / 0x92A74FA1 - http://pgp.mit.edu
***************************************************/