From: Linus Torvalds Date: Thu, 26 May 2011 19:19:31 +0000 (-0700) Subject: Merge branch 'x86-vdso-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git... X-Git-Tag: v3.0-rc1~128 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=14587a2a25447813996e6fb9e48d48627cb75a5d;p=profile%2Fivi%2Fkernel-x86-ivi.git Merge branch 'x86-vdso-for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip * 'x86-vdso-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: vdso: Remove unused variable x86-64: Optimize vDSO time() x86-64: Add time to vDSO x86-64: Turn off -pg and turn on -foptimize-sibling-calls for vDSO x86-64: Move vread_tsc into a new file with sensible options x86-64: Vclock_gettime(CLOCK_MONOTONIC) can't ever see nsec < 0 x86-64: Don't generate cmov in vread_tsc x86-64: Remove unnecessary barrier in vread_tsc x86-64: Clean up vdso/kernel shared variables --- 14587a2a25447813996e6fb9e48d48627cb75a5d diff --cc arch/x86/kernel/vsyscall_64.c index 59be48d,5f6ad03..3e68218 --- a/arch/x86/kernel/vsyscall_64.c +++ b/arch/x86/kernel/vsyscall_64.c @@@ -49,17 -49,10 +49,10 @@@ __attribute__ ((unused, __section__(".vsyscall_" #nr))) notrace #define __syscall_clobber "r11","cx","memory" - /* - * vsyscall_gtod_data contains data that is : - * - readonly from vsyscalls - * - written by timer interrupt or systcl (/proc/sys/kernel/vsyscall64) - * Try to keep this structure as small as possible to avoid cache line ping pongs - */ - int __vgetcpu_mode __section_vgetcpu_mode; - - struct vsyscall_gtod_data __vsyscall_gtod_data __section_vsyscall_gtod_data = + DEFINE_VVAR(int, vgetcpu_mode); + DEFINE_VVAR(struct vsyscall_gtod_data, vsyscall_gtod_data) = { - .lock = SEQLOCK_UNLOCKED, + .lock = __SEQLOCK_UNLOCKED(__vsyscall_gtod_data.lock), .sysctl_enabled = 1, };