Page MenuHomeFreeBSD

D30459.diff
No OneTemporary

D30459.diff

diff --git a/sysutils/Makefile b/sysutils/Makefile
--- a/sysutils/Makefile
+++ b/sysutils/Makefile
@@ -581,6 +581,7 @@
SUBDIR += kshutdown
SUBDIR += ksystemlog
SUBDIR += kubectl
+ SUBDIR += kvmclock-kmod
SUBDIR += lava
SUBDIR += lbl-cf
SUBDIR += lbl-hf
diff --git a/sysutils/kvmclock-kmod/Makefile b/sysutils/kvmclock-kmod/Makefile
new file mode 100644
--- /dev/null
+++ b/sysutils/kvmclock-kmod/Makefile
@@ -0,0 +1,25 @@
+PORTNAME= kvmclock
+DISTVERSION= 0.0.0-a2
+CATEGORIES= sysutils
+PKGNAMESUFFIX= -kmod
+
+MAINTAINER= dch@FreeBSD.org
+COMMENT= Paravirtualized Linux KVM clock support
+
+LICENSE= BSD2CLAUSE
+
+ONLY_FOR_ARCHS= amd64 i386
+ONLY_FOR_ARCHS_REASON= not yet tested for non-x86
+
+USES= kmod uidfix
+KMOD= kvmclock
+
+USE_GITHUB= yes
+GH_ACCOUNT= klarasystems
+
+PLIST_FILES= ${KMODDIR}/kvmclock.ko
+
+OPTIONS_DEFINE= DEBUG
+OPTIONS_SUB= yes
+
+.include <bsd.port.mk>
diff --git a/sysutils/kvmclock-kmod/distinfo b/sysutils/kvmclock-kmod/distinfo
new file mode 100644
--- /dev/null
+++ b/sysutils/kvmclock-kmod/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1621967719
+SHA256 (klarasystems-kvmclock-0.0.0-a2_GH0.tar.gz) = 1497f3eca5bc1f1d9708aa601f5fdbdea08852e16b6c9c1d55bc6d0262baf708
+SIZE (klarasystems-kvmclock-0.0.0-a2_GH0.tar.gz) = 7676
diff --git a/sysutils/kvmclock-kmod/pkg-descr b/sysutils/kvmclock-kmod/pkg-descr
new file mode 100644
--- /dev/null
+++ b/sysutils/kvmclock-kmod/pkg-descr
@@ -0,0 +1,11 @@
+Development version of kvmclock FreeBSD driver for virtual machines.
+
+References and prior art:
+
+https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/virtualization_deployment_and_administration_guide/chap-kvm_guest_timing_management
+https://www.vmware.com/files/pdf/techpaper/Timekeeping-In-VirtualMachines.pdf
+http://oliveryang.net/2015/09/pitfalls-of-TSC-usage/#33-tsc-emulation-on-different-hypervisors
+https://reviews.freebsd.org/D29531
+https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=216759
+
+WWW: https://reviews.freebsd.org/D29733
diff --git a/sysutils/kvmclock-kmod/pkg-message b/sysutils/kvmclock-kmod/pkg-message
new file mode 100644
--- /dev/null
+++ b/sysutils/kvmclock-kmod/pkg-message
@@ -0,0 +1,24 @@
+[
+{ type: install
+ message: <<EOM
+kvmclock-kmod is experimental and currently under development. This port
+provides an easy and quick method for users to test this code for early
+testing, feedback and bug reports.
+
+This driver enables FreeBSD to use a more efficient paravirtualized
+hardware clock, instead of emulating one, or abusing hypervisor
+interrupts, when running as a virtualized OS under Linux KVM
+(Kernel-based Virtual Machine).
+
+Usage:
+
+# kldload kvmclock
+# sysctl kern.timecounter
+kern.timecounter.choice: kvmclock(975) i8254(0) ...
+kern.timecounter.hardware: kvmclock
+...
+
+Please report successes and issues to: https://reviews.freebsd.org/D29733
+EOM
+}
+]

File Metadata

Mime Type
text/plain
Expires
Fri, Jun 19, 8:45 AM (12 h, 37 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
34069523
Default Alt Text
D30459.diff (2 KB)

Event Timeline