[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] Un-PACK the dom0_op structures and bump the interface version number.
ChangeSet 1.1426, 2005/04/01 17:32:25+01:00, kaf24@xxxxxxxxxxxxxxxxxxxx Un-PACK the dom0_op structures and bump the interface version number. Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx> dom0_ops.h | 306 +++++++++++++++++++++++++------------------------------------ 1 files changed, 128 insertions(+), 178 deletions(-) diff -Nru a/xen/include/public/dom0_ops.h b/xen/include/public/dom0_ops.h --- a/xen/include/public/dom0_ops.h 2005-04-01 12:03:56 -05:00 +++ b/xen/include/public/dom0_ops.h 2005-04-01 12:03:56 -05:00 @@ -19,24 +19,19 @@ * This makes sure that old versions of dom0 tools will stop working in a * well-defined way (rather than crashing the machine, for instance). */ -#define DOM0_INTERFACE_VERSION 0xAAAA1002 +#define DOM0_INTERFACE_VERSION 0xAAAA1003 /************************************************************************/ #define DOM0_GETMEMLIST 2 typedef struct { /* IN variables. */ - domid_t domain; /* 0 */ - u16 __pad0; - u32 __pad1; - memory_t max_pfns; /* 8 */ - MEMORY_PADDING; - void *buffer; /* 16 */ - MEMORY_PADDING; + domid_t domain; + memory_t max_pfns; + void *buffer; /* OUT variables. */ - memory_t num_pfns; /* 24 */ - MEMORY_PADDING; -} PACKED dom0_getmemlist_t; /* 32 bytes */ + memory_t num_pfns; +} dom0_getmemlist_t; #define DOM0_SCHEDCTL 6 /* struct sched_ctl_cmd is from sched-ctl.h */ @@ -49,42 +44,36 @@ #define DOM0_CREATEDOMAIN 8 typedef struct { /* IN parameters. */ - memory_t memory_kb; /* 0 */ - MEMORY_PADDING; - u32 cpu; /* 8 */ - u32 __pad0; /* 12 */ + memory_t memory_kb; + u32 cpu; /* IN/OUT parameters. */ /* If 0, domain is allocated. If non-zero use it unless in use. */ - domid_t domain; /* 16 */ - u16 __pad1; + domid_t domain; /* OUT parameters. */ -} PACKED dom0_createdomain_t; /* 20 bytes */ +} dom0_createdomain_t; #define DOM0_DESTROYDOMAIN 9 typedef struct { /* IN variables. */ - domid_t domain; /* 0 */ - u16 __pad; -} PACKED dom0_destroydomain_t; /* 4 bytes */ + domid_t domain; +} dom0_destroydomain_t; #define DOM0_PAUSEDOMAIN 10 typedef struct { /* IN parameters. */ - domid_t domain; /* 0 */ - u16 __pad; -} PACKED dom0_pausedomain_t; /* 4 bytes */ + domid_t domain; +} dom0_pausedomain_t; #define DOM0_UNPAUSEDOMAIN 11 typedef struct { /* IN parameters. */ - domid_t domain; /* 0 */ - u16 __pad; -} PACKED dom0_unpausedomain_t; /* 4 bytes */ + domid_t domain; +} dom0_unpausedomain_t; #define DOM0_GETDOMAININFO 12 typedef struct { /* IN variables. */ - domid_t domain; /* 0 */ /* NB. IN/OUT variable. */ + domid_t domain; /* NB. IN/OUT variable. */ u16 exec_domain; /* OUT variables. */ #define DOMFLAGS_DYING (1<<0) /* Domain is scheduled to die. */ @@ -97,57 +86,50 @@ #define DOMFLAGS_CPUSHIFT 8 #define DOMFLAGS_SHUTDOWNMASK 255 /* DOMFLAGS_SHUTDOWN guest-supplied code. */ #define DOMFLAGS_SHUTDOWNSHIFT 16 - u32 flags; /* 4 */ - full_execution_context_t *ctxt; /* 8 */ /* NB. IN/OUT variable. */ - MEMORY_PADDING; - memory_t tot_pages; /* 16 */ - MEMORY_PADDING; - memory_t max_pages; /* 24 */ - MEMORY_PADDING; - memory_t shared_info_frame; /* 32: MFN of shared_info struct */ - MEMORY_PADDING; - u64 cpu_time; /* 40 */ -} PACKED dom0_getdomaininfo_t; /* 48 bytes */ + u32 flags; + full_execution_context_t *ctxt; /* NB. IN/OUT variable. */ + memory_t tot_pages; + memory_t max_pages; + memory_t shared_info_frame; /* MFN of shared_info struct */ + u64 cpu_time; +} dom0_getdomaininfo_t; #define DOM0_SETDOMAININFO 13 typedef struct { /* IN variables. */ - domid_t domain; /* 0 */ - u16 exec_domain; /* 2 */ - u32 __pad0; /* 4 */ + domid_t domain; + u16 exec_domain; /* IN/OUT parameters */ - full_execution_context_t *ctxt; /* 8 */ - MEMORY_PADDING; -} PACKED dom0_setdomaininfo_t; /* 16 bytes */ + full_execution_context_t *ctxt; +} dom0_setdomaininfo_t; #define DOM0_MSR 15 typedef struct { /* IN variables. */ - u32 write; /* 0 */ - u32 cpu_mask; /* 4 */ - u32 msr; /* 8 */ - u32 in1; /* 12 */ - u32 in2; /* 16 */ + u32 write; + u32 cpu_mask; + u32 msr; + u32 in1; + u32 in2; /* OUT variables. */ - u32 out1; /* 20 */ - u32 out2; /* 24 */ -} PACKED dom0_msr_t; /* 28 bytes */ + u32 out1; + u32 out2; +} dom0_msr_t; #define DOM0_DEBUG 16 typedef struct { /* IN variables. */ - domid_t domain; /* 0 */ - u8 opcode; /* 2 */ - u8 __pad; - u32 in1; /* 4 */ - u32 in2; /* 8 */ - u32 in3; /* 12 */ - u32 in4; /* 16 */ + domid_t domain; + u8 opcode; + u32 in1; + u32 in2; + u32 in3; + u32 in4; /* OUT variables. */ - u32 status; /* 20 */ - u32 out1; /* 24 */ - u32 out2; /* 28 */ -} PACKED dom0_debug_t; /* 32 bytes */ + u32 status; + u32 out1; + u32 out2; +} dom0_debug_t; /* * Set clock such that it would read <secs,usecs> after 00:00:00 UTC, @@ -156,10 +138,10 @@ #define DOM0_SETTIME 17 typedef struct { /* IN variables. */ - u32 secs; /* 0 */ - u32 usecs; /* 4 */ - u64 system_time; /* 8 */ -} PACKED dom0_settime_t; /* 16 bytes */ + u32 secs; + u32 usecs; + u64 system_time; +} dom0_settime_t; #define DOM0_GETPAGEFRAMEINFO 18 #define NOTAB 0 /* normal page */ @@ -174,25 +156,22 @@ typedef struct { /* IN variables. */ - memory_t pfn; /* 0: Machine page frame number to query. */ - MEMORY_PADDING; - domid_t domain; /* 8: To which domain does the frame belong? */ - u16 __pad; + memory_t pfn; /* Machine page frame number to query. */ + domid_t domain; /* To which domain does the frame belong? */ /* OUT variables. */ /* Is the page PINNED to a type? */ - u32 type; /* 12: see above type defs */ -} PACKED dom0_getpageframeinfo_t; /* 16 bytes */ + u32 type; /* see above type defs */ +} dom0_getpageframeinfo_t; /* * Read console content from Xen buffer ring. */ #define DOM0_READCONSOLE 19 typedef struct { - memory_t str; /* 0 */ - MEMORY_PADDING; - u32 count; /* 8 */ - u32 cmd; /* 12 */ -} PACKED dom0_readconsole_t; /* 16 bytes */ + memory_t str; + u32 count; + u32 cmd; +} dom0_readconsole_t; /* * Pin Domain to a particular CPU (use -1 to unpin) @@ -200,34 +179,30 @@ #define DOM0_PINCPUDOMAIN 20 typedef struct { /* IN variables. */ - domid_t domain; /* 0 */ + domid_t domain; u16 exec_domain; - s32 cpu; /* 4: -1 implies unpin */ -} PACKED dom0_pincpudomain_t; /* 8 bytes */ + s32 cpu; /* -1 implies unpin */ +} dom0_pincpudomain_t; /* Get trace buffers machine base address */ #define DOM0_GETTBUFS 21 typedef struct { /* OUT variables */ - memory_t mach_addr; /* 0: location of the trace buffers */ - MEMORY_PADDING; - u32 size; /* 8: size of each trace buffer, in bytes */ -} PACKED dom0_gettbufs_t; /* 12 bytes */ + memory_t mach_addr; + u32 size; +} dom0_gettbufs_t; /* * Get physical information about the host machine _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |