Skip to content

pvclock vsyscall support + KVM hypervisor support (v2)

Marcelo Tosatti kvm 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest18 patches 28 repliesIn review

v2 from the cover letter

- Do not allow visibility of different <system_timestamp, tsc_timestamp> tuples.
- Add option to disable vsyscall.

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/18KVM: x86: retain pvclock guest stopped bit in guest memoryarch/x86/kvm/x86.c+13 -70 replies
2/18x86: pvclock: make sure rdtsc doesnt speculate out of regionarch/x86/kernel/pvclock.c+2 -20 replies
3/18x86: pvclock: remove pvclock_shadow_timearch/x86/kernel/pvclock.c+9 -462 replies
4/18x86: pvclock: create helper for pvclock data retrievalarch/x86/include/asm/pvclock.h arch/x86/kernel/pvclock.c+27 -130 replies
5/18x86: pvclock: fix flags usage racearch/x86/include/asm/pvclock.h arch/x86/kernel/pvclock.c+7 -30 replies
6/18x86: pvclock: introduce helper to read flagsarch/x86/include/asm/pvclock.h arch/x86/kernel/pvclock.c+14 -00 replies
7/18sched: add notifier for cross-cpu migrationsinclude/linux/sched.h kernel/sched/core.c+23 -00 replies
8/18x86: pvclock: generic pvclock vsyscall initializationarch/x86/Kconfig arch/x86/include/asm/clocksource.h arch/x86/include/asm/fixmap.h +2 more+106 -04 replies
9/18KVM: x86: introduce facility to support vsyscall pvclock, via MSRDocumentation/virtual/kvm/msr.txt arch/x86/include/asm/kvm_host.h arch/x86/include/asm/kvm_para.h +3 more+106 -278 replies
10/18x86: kvm guest: pvclock vsyscall supportarch/x86/include/asm/kvm_guest.h arch/x86/kernel/kvm.c arch/x86/kernel/kvmclock.c+79 -00 replies
11/18x86: vsyscall: pass mode to gettime backendarch/x86/vdso/vclock_gettime.c+3 -33 replies
12/18x86: vdso: pvclock gettime supportarch/x86/include/asm/vsyscall.h arch/x86/vdso/vclock_gettime.c arch/x86/vdso/vgetcpu.c+83 -74 replies
13/18KVM: x86: pass host_tsc to read_l1_tscarch/x86/include/asm/kvm_host.h arch/x86/kvm/lapic.c arch/x86/kvm/svm.c +2 more+9 -93 replies
14/18time: export time information for KVM pvclockinclude/linux/pvclock_gtod.h kernel/time/timekeeping.c+102 -02 replies
15/18KVM: x86: implement PVCLOCK_TSC_STABLE_BIT pvclock flagarch/x86/include/asm/kvm_host.h arch/x86/kvm/trace.h arch/x86/kvm/x86.c +2 more+252 -72 replies
16/18KVM: x86: notifier for clocksource changesarch/x86/kvm/x86.c+44 -00 replies
17/18KVM: x86: add kvm_arch_vcpu_postcreate callback, move TSC initializationarch/ia64/kvm/kvm-ia64.c arch/powerpc/kvm/powerpc.c arch/s390/kvm/kvm-s390.c +5 more+30 -30 replies
18/18KVM: x86: require matched TSC offsets for master clockarch/x86/include/asm/kvm_host.h arch/x86/kvm/trace.h arch/x86/kvm/x86.c+87 -80 replies

Reviews trailers per patch

None of the 18 patches has a Reviewed-by or Acked-by of their own; the series has one for all of them.

PatchGleb NatapovGlauber Costa
SeriesR-b R-b R-b
1/18
2/18
3/18
4/18
5/18
6/18
7/18
8/18
9/18
10/18
11/18
12/18
13/18
14/18
15/18
16/18
17/18
18/18

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v1 thread

Cover letter [patch 00/18] pvclock vsyscall support + KVM hypervisor support (v2)

This patchset, based on earlier work by Jeremy Fitzhardinge, implements paravirtual clock vsyscall support.

It should be possible to implement Xen support relatively easily.

It reduces clock_gettime from 500 cycles to 200 cycles on my testbox.

Please review.

Quoted 1 line

From my POV, this is ready to merge.

v2:
- Do not allow visibility of different <system_timestamp, tsc_timestamp> tuples.
- Add option to disable vsyscall.