X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Fsrc%2Fpalacios%2Fsvm_wbinvd.c;h=9d96f31bdde21e6923bd3b898e3343c7ea433557;hb=95a09f3e974f23d8e3d20b3a333f5c07631be17d;hp=921039ea56a23c946516d89f25a2addd34e24184;hpb=e70e95962c26832628d586e07f9cd1a2e1852d72;p=palacios.git diff --git a/palacios/src/palacios/svm_wbinvd.c b/palacios/src/palacios/svm_wbinvd.c index 921039e..9d96f31 100644 --- a/palacios/src/palacios/svm_wbinvd.c +++ b/palacios/src/palacios/svm_wbinvd.c @@ -28,15 +28,15 @@ // should raise #GP if CPL is not zero // Otherwise execute -int handle_svm_wbinvd(struct guest_info * info) -{ - if (info->cpl!=0) { - PrintDebug("WBINVD: cpl!=0, injecting GPF\n"); - v3_raise_exception(info,GPF_EXCEPTION); - } else { - info->rip+=2; - asm("wbinvd"); - } - return 0; +int v3_handle_svm_wbinvd(struct guest_info * info) { + if (info->cpl != 0) { + PrintDebug(info->vm_info, info, "WBINVD: cpl != 0, injecting GPF\n"); + v3_raise_exception(info, GPF_EXCEPTION); + } else { + info->rip += 2; + asm volatile ("wbinvd" ::: "memory"); + } + + return 0; }