Messages in this thread | | | Date | Mon, 16 May 2011 19:23:38 +0200 | From | Borislav Petkov <> | Subject | Re: [PATCH v4 1/6] x86-64: Clean up vdso/kernel shared variables |
| |
On Mon, May 16, 2011 at 12:00:58PM -0400, Andy Lutomirski wrote: > Variables that are shared between the vdso and the kernel are > currently a bit of a mess. They are each defined with their own > magic, they are accessed differently in the kernel, the vsyscall page, > and the vdso, and one of them (vsyscall_clock) doesn't even really > exist. > > This changes them all to use a common mechanism. All of them are > delcared in vvar.h with a fixed address (validated by the linker > script). In the kernel (as before), they look like ordinary > read-write variables. In the vsyscall page and the vdso, they are > accessed through a new macro VVAR, which gives read-only access. > > The vdso is now loaded verbatim into memory without any fixups. As a > side bonus, access from the vdso is faster because a level of > indirection is removed. > > While we're at it, pack jiffies and vgetcpu_mode into the same > cacheline.
How about
Signed-off-by:...
or you don't wanna? :)
> --- > arch/x86/include/asm/vdso.h | 14 ---------- > arch/x86/include/asm/vgtod.h | 2 - > arch/x86/include/asm/vsyscall.h | 12 +------- > arch/x86/include/asm/vvar.h | 52 +++++++++++++++++++++++++++++++++++++++ > arch/x86/kernel/time.c | 2 +- > arch/x86/kernel/tsc.c | 4 +- > arch/x86/kernel/vmlinux.lds.S | 34 ++++++++----------------- > arch/x86/kernel/vsyscall_64.c | 46 +++++++++++++++------------------- > arch/x86/vdso/Makefile | 2 +- > arch/x86/vdso/vclock_gettime.c | 3 +- > arch/x86/vdso/vdso.lds.S | 7 ----- > arch/x86/vdso/vextern.h | 16 ------------ > arch/x86/vdso/vgetcpu.c | 3 +- > arch/x86/vdso/vma.c | 27 -------------------- > arch/x86/vdso/vvar.c | 12 --------- > 15 files changed, 91 insertions(+), 145 deletions(-) > create mode 100644 arch/x86/include/asm/vvar.h > delete mode 100644 arch/x86/vdso/vextern.h > delete mode 100644 arch/x86/vdso/vvar.c >
-- Regards/Gruss, Boris.
Advanced Micro Devices GmbH Einsteinring 24, 85609 Dornach General Managers: Alberto Bozzo, Andrew Bowd Registration: Dornach, Gemeinde Aschheim, Landkreis Muenchen Registergericht Muenchen, HRB Nr. 43632
| |