Re: [PATCH RFC V1 0/5] Rationalize time keeping

From: John Stultz
Date: Thu May 03 2012 - 11:50:49 EST


On 05/03/2012 12:02 AM, Richard Cochran wrote:
On Mon, Apr 30, 2012 at 01:56:16PM -0700, John Stultz wrote:
No. So, on architectures that support vsyscalls/vdso (x86_64,
powerpc, ia64, and maybe a few others) getnstimeofday() is really
only an internal interface for in-kernel access. Userland uses the
vsyscall/vdso interface to be able to read the time completely from
userland context (with no syscall overhead). Since this is done in
different ways for each architecture, you need to export the proper
information out via update_vsyscall() and also update the
arch-specific vsyscall gettimeofday paths (which is non-trivial, as
some arches are implemented in asm, etc - my sympathies here, its a
pain).
Okay, so now I understand the vDSO page thingy. Help me please to
understand exactly which architectures would need changes for my
proposal.

The only archs exporting time variables/functions through vDSO are
those which define CONFIG_GENERIC_TIME_VSYSCALL=y, namely:

- ia64
- powerpc 64 and 32 bit
- s390 64 and 32 bit
- x86 64 bit only **

** But 32 guest running in a 64 host also has time in the vDSO?!?
Yes, but at least on x86 its just one implementation that needs to be modified.


Did I get that right?
That looks right to me.

thanks
-john

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/