|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] Structure packing when using hypercall.
See arch/x86/hvm/hvm.c. Some 32-to-64 conversion gets done in there, as a
wrapper around the core hypercall routines.
-- Keir
On 22/10/07 20:14, "Roger Cruz" <rcruz@xxxxxxxxxxxxxxxxxxxxxxxx> wrote:
>
> I'm wondering how you resolve the issue of structure packing when an
> application that calls hypervisor functions (say, the grant table map
> reference hypercall that uses struct grant_entry) is compiled with a
> 32-bit compiler and the hypervisor is compiled with a 64-bit version.
> There is a discrepancy in the sizes and alignment of the fields within
> the structure, depending on which compiler is being used.
>
> So, my problem arises that I have a 64-bit compiler and a 32-bit HVM
> guest making a hypercall using the public H header files. Is there some
> packing being done in other files or at compile time that I'm not
> seeing?
>
>
> struct grant_entry {
> /* GTF_xxx: various type and flag information. [XEN,GST] */
> uint16_t flags;
> /* The domain being granted foreign privileges. [GST] */
> domid_t domid;
> /*
> * GTF_permit_access: Frame that @domid is allowed to map and
> access. [GST]
> * GTF_accept_transfer: Frame whose ownership transferred by @domid.
> [XEN]
> */
> uint32_t frame;
> };
> typedef struct grant_entry grant_entry_t;
>
> _______________________________________________
> 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
|
|
|
|
|