[PATCH v2 00/11] make L2's kvm-clock stable, get rid of pvclock_gtod

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The main goal is to make L2 kvm-clock be stable when it's running over L1
with stable kvm-clock.

The patch series is for x86 architecture only. If the series is approved
I'll do changes for other architectures but I don't have an ability to
compile and check for every single on (help needed)

The patch series do the following:

	* change timekeeper interface to get cycles stamp value from
	  the timekeeper
	* get rid of pvclock copy in KVM by using the changed timekeeper
          interface: get time and cycles right from the timekeeper
	* make KVM recognize a stable kvm-clock as stable clocksource
	  and use the KVM masterclock in this case, which means making
	  L2 stable when running over stable L1 kvm-clock

Denis Plotnikov (11):
  timekeeper: change interface of clocksource reding functions
  pvclock: write cycle stamp value if a pointer given
  kvmclock: pass cycles pointer to the changed pvclock interface
  TSC: write cycles stamp value to input pointer
  timekeeping: change ktime_get_with_offset interface to accept cycles
    pointer
  timekeeping: add functions returning cycle stamp counter along with
    time
  timekeeper: add clocksource change notifier
  timekeeper: add a couple of the core timekeeper reading helpers
  KVM: get rid of pv_clock_gtod
  pvclock: add clocksource change notification on changing of tsc stable
    bit
  KVM: add pvclock to a list of stable clocks.

 arch/x86/hyperv/hv_init.c       |   4 +-
 arch/x86/include/asm/kvm_host.h |   2 +-
 arch/x86/include/asm/pvclock.h  |   3 +-
 arch/x86/kernel/hpet.c          |   4 +-
 arch/x86/kernel/kvmclock.c      |  19 +--
 arch/x86/kernel/pvclock.c       |  32 ++++-
 arch/x86/kernel/tsc.c           |   8 +-
 arch/x86/kvm/trace.h            |  27 ++--
 arch/x86/kvm/x86.c              | 267 ++++++++++++----------------------------
 arch/x86/lguest/boot.c          |   2 +-
 arch/x86/platform/uv/uv_time.c  |  10 +-
 arch/x86/xen/time.c             |   4 +-
 drivers/char/hpet.c             |   2 +-
 drivers/clocksource/acpi_pm.c   |  13 +-
 drivers/hv/hv_util.c            |   6 +-
 include/linux/clocksource.h     |   7 +-
 include/linux/cs_notifier.h     |  17 +++
 include/linux/timekeeping.h     |  35 +++++-
 kernel/time/clocksource.c       |   4 +-
 kernel/time/jiffies.c           |   2 +-
 kernel/time/timekeeping.c       | 119 ++++++++++++++----
 21 files changed, 316 insertions(+), 271 deletions(-)
 create mode 100644 include/linux/cs_notifier.h

-- 
2.7.4




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux