[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20060725192138.GI4608@hmsreliant.homelinux.net>
Date: Tue, 25 Jul 2006 15:21:38 -0400
From: Neil Horman <nhorman@...driver.com>
To: "H. Peter Anvin" <hpa@...or.com>
Cc: Segher Boessenkool <segher@...nel.crashing.org>,
linux-kernel@...r.kernel.org, a.zummo@...ertech.it,
jg@...edesktop.org
Subject: Re: [PATCH] RTC: Add mmap method to rtc character driver
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
***************************************************/
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists