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

RE: 答复: [Xen-devel] Why using hypercall_page ?



Yes, I think Kevin and Techie have explained it clearly.
BTW, for HVM guest's hypercall, we don't use int 0x82 or the sysXXX 
instructions; we use VMCALL inside VMX guest or something similar (VMMCALL? I'm 
not sure) inside SVM guest.
Even for PV guest, the hypercall stub codes may have different 
formats/versions...
We can see these differences in the function hypercall_page_initialise().

So considering compatibility and portability, it's really not OK for a guest to 
assume the underlying stub codes or doing hard coding.
Using the hypercall-page method, various guests can use one unified method to 
invoke hypercalls.

Thanks,
-- Dexuan


-----Original Message-----
From: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx 
[mailto:xen-devel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of Wu Bingzheng
Sent: 2008年10月23日 9:46
To: Li Yaqiong
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: Re: 答复: [Xen-devel] Why using hypercall_page ?

I think that's the reason too.

Thank you very much.

Wu

在 2008-10-23四的 09:31 +0800,Li Yaqiong写道:
> As you know, the old Intel/AMD x86 cpus use INT to invoke kernel's
> service. But the newer CPUs introduce two instruction pairs:
> syscall/sysret, syscenter/sysexit. So, because the hypercall page is
> filled by Xen, it can hide the difference of this two types. Guest OS
> only take one uniform format to invoke a hypercall.
> I gusee this is the reason.
>
> -Techie
>
> -----邮件原件-----
> 发件人: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
> [mailto:xen-devel-bounces@xxxxxxxxxxxxxxxxxxx] 代表 Wu Bingzheng
> 发送时间: 2008年10月23日 9:18
> 收件人: xen-devel@xxxxxxxxxxxxxxxxxxx
> 主题: [Xen-devel] Why using hypercall_page ?
>
> Hello,
>
> I am studing Xen hypercall now. I found that hypercall is invoked via
> hypercall_page, which is only filled with (in
> no-hypervisor-kernel-mode ):
>
> mov $i, %eax
> int $0x82
> ret
>
> Why not invoked the hypercall directly by "int $0x82" ? What's the
> advantage of using hypercall_page?
>
> Thanks,
> Wu
>
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel
>
>


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.