Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 7 Jun 2012 09:56:02 -0400
From:      John Baldwin <jhb@freebsd.org>
To:        freebsd-arch@freebsd.org
Cc:        Attilio Rao <attilio@freebsd.org>, alc@freebsd.org, Giovanni Trematerra <giovanni.trematerra@gmail.com>, Konstantin Belousov <kib@freebsd.org>, Alexander Kabaev <kan@freebsd.org>
Subject:   Re: [RFC] Kernel shared variables
Message-ID:  <201206070956.03129.jhb@freebsd.org>
In-Reply-To: <CACfq090r1tWhuDkxdSZ24fwafbVKU0yduu1yV2%2BoYo%2BwwT4ipA@mail.gmail.com>
References:  <CACfq090r1tWhuDkxdSZ24fwafbVKU0yduu1yV2%2BoYo%2BwwT4ipA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Friday, June 01, 2012 1:53:15 pm Giovanni Trematerra wrote:
> Hello,
> I'd like to discuss a way to provide a mechanism to share some read-only
> data between kernel and user space programs avoiding syscall overhead,
> implementing some them, such as gettimeofday(3) and time(3) as ordinary
> user space routine.
> 
> The patch at
> http://www.trematerra.net/patches/ksvar_experimental.patch

I realize this thread descended a bit, and I do still think that Konstantin's
patch is probably the right way forward for gettimeofday().  However, have you
thought at all about a per-process page?  There was another fork in this 
thread that dealt with per-process data such as getpid() (for which it does 
seem there are real-world uses).  I realize the KSVAR stuff might not easily 
be adjusted to working with a per-process page (though Jeff did do something 
interesting with having a template page defined by DPCPU that was then copied 
for each CPU).  It would also seem that for things like getpid(), getppid(), 
and getuid() it might be best to go the vdso route.  Is that something you 
would be interested in working on?
 
-- 
John Baldwin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201206070956.03129.jhb>