Re: [kvm-devel] [PATCH] Refactor hypercall infrastructure (v2)

Amit Shah
2007-12-03T08:47:17Z

* Anthony Liguori wrote:
> Amit Shah wrote:
> > * Anthony Liguori wrote:
> >
> >
> >> This patch refactors the current hypercall infrastructure to better
> >> support live migration and SMP.  It eliminates the hypercall page by
> >> trapping the UD exception that would occur if you used the wrong
> >> hypercall instruction for the underlying architecture and replacing it
> >> with the right one lazily.
> >
> > This doesn't work right for SVM. It keeps looping indefinitely; on a
> > kvm_stat run, I get about 230,000 light vm exits per second, with the
> > hypercall never returning to the guest.
> >
> > ...
> >
>
> What are you using to issue the hypercall?

+ r = kvm_hypercall1(KVM_PV_PCI_DEVICE, page_gfn);

Setup is done by:

+ if (!kvm_para_available()) {
+ printk(KERN_ERR "KVM paravirt support not available\n");
+ r = -ENODEV;
+ goto out_dereg;
+ }

I also couldn't get the has_feature to work properly.

See:

http://lkml.org/lkml/2007/11/7/129

I had to change the hypercall address to 0f 01 d9 for it to get working.

>
> Regards,
>
> Anthony Liguori