summaryrefslogtreecommitdiffstats
path: root/drivers/ptp/ptp_kvm.c
diff options
context:
space:
mode:
authorJoao Martins <joao.m.martins@oracle.com>2017-11-08 18:19:54 +0100
committerBoris Ostrovsky <boris.ostrovsky@oracle.com>2017-11-08 22:33:14 +0100
commit001f60e1f662a6dee1630a2915401aaf5959d479 (patch)
tree1675488b2b8a4e71dcf66edc7ecb7fc3f0cde073 /drivers/ptp/ptp_kvm.c
parentxen/privcmd: remove unused variable pageidx (diff)
downloadlinux-001f60e1f662a6dee1630a2915401aaf5959d479.tar.xz
linux-001f60e1f662a6dee1630a2915401aaf5959d479.zip
ptp_kvm: probe for kvm guest availability
In the event of moving pvclock_pvti_cpu0_va() definition to common pvclock code, this function would return a value on non KVM guests. Later on this would fail with a GPF on ptp_kvm_init when running on a Xen guest. Therefore, ptp_kvm_init() should check whether it is running in a KVM guest. Signed-off-by: Joao Martins <joao.m.martins@oracle.com> Acked-by: Radim Krčmář <rkrcmar@redhat.com> Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Diffstat (limited to 'drivers/ptp/ptp_kvm.c')
-rw-r--r--drivers/ptp/ptp_kvm.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/ptp/ptp_kvm.c b/drivers/ptp/ptp_kvm.c
index 2b1b212c219e..e04d7b2ecb3a 100644
--- a/drivers/ptp/ptp_kvm.c
+++ b/drivers/ptp/ptp_kvm.c
@@ -178,6 +178,9 @@ static int __init ptp_kvm_init(void)
{
long ret;
+ if (!kvm_para_available())
+ return -ENODEV;
+
clock_pair_gpa = slow_virt_to_phys(&clock_pair);
hv_clock = pvclock_pvti_cpu0_va();