[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [Xen-devel] x86/amd64 vs IA64
Thankyou very much for the information provided below. I'll make my way
through it over the next few days.
> -----Original Message-----
> From: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx [mailto:xen-devel-
> bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of Isaku Yamahata
> Sent: Tuesday, 2 June 2009 17:31
> To: James Harper
> Cc: xen-devel@xxxxxxxxxxxxxxxxxxx; xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
> Subject: Re: [Xen-devel] x86/amd64 vs IA64
> On Tue, Jun 02, 2009 at 12:26:39PM +1000, James Harper wrote:
> > How different is IA64 to x86/amd64 in terms of hypercalls and
> > platform_pci setup under HVM?
> > I'm having a look at what is involved in porting GPLPV drivers for
> > Windows to IA64.
> > I can't even seem to find where the HYPERCALL_ functions/macros are
> > defined!
> Hi. I'm glad to hear that.
> Linux unmodified drivers are supported on ia64, so it's quite
> possible to port GPLPV to IA64 windows, I suppose.
> If you need any help, don't hesitate to ask.
> Probably the file you want to see would be
> which defines HYPERVISOR_xxx() functions.
> Eventually __hypercall() in
> issues hypercall. "break 0x1000" is the instruction.
> 0x1000 is arbitrarily selected constant for hypercall ABI between
> guest kernel and xen VMM.
> The most difference is the way to pass arguments.
> On x86, arguments are passed by guest virtual address.
> On the other hand they are passed by guest physical address.
> So when issuing hypercall with arguments, arguments in virtual address
> must be converted into guest physical address. Such stubs are called
> You can see some of HYPERVISOR_xxx are replaced with
> which does such conversions.
> Maybe at first xencomm routines should be ported for hypercall.
> linux-2.6.18-xen.hg/drivers/xen/core/xencomm.c and
> I suppose the conversion function from virtual address to guest
> physical address would needs rewrite for ia64 windows.
> The followings are related files which you might want to see.
> ifeq ($(ARCH),ia64)
> xen-platform-pci-objs += xencomm.o xencomm_arch.o xcom_hcall.o
> in xen-unstable.hg/unmodified_drivers/linux-2.6/platform-pci/Kbuild
> The files related to hypercall are
> Xen-devel mailing list
Xen-devel mailing list