ia64/linux-2.6.18-xen.hg

changeset 904:db9d21711a03

Sync Xen public interface headers with 19775:bda5ab0cb387

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
author Keir Fraser <keir.fraser@citrix.com>
date Wed Jun 17 07:26:00 2009 +0100 (2009-06-17)
parents e4790de3234a
children fa8587c4b535
files include/xen/interface/arch-x86/hvm/save.h include/xen/interface/event_channel.h include/xen/interface/grant_table.h include/xen/interface/hvm/hvm_op.h include/xen/interface/io/blkif.h include/xen/interface/io/fsif.h include/xen/interface/io/xs_wire.h include/xen/interface/memory.h include/xen/interface/nmi.h include/xen/interface/physdev.h include/xen/interface/platform.h include/xen/interface/tmem.h include/xen/interface/trace.h include/xen/interface/vcpu.h include/xen/interface/xen.h
line diff
     1.1 --- a/include/xen/interface/arch-x86/hvm/save.h	Tue Jun 16 12:00:56 2009 +0100
     1.2 +++ b/include/xen/interface/arch-x86/hvm/save.h	Wed Jun 17 07:26:00 2009 +0100
     1.3 @@ -123,9 +123,7 @@ struct hvm_hw_cpu {
     1.4      uint32_t tr_arbytes;
     1.5      uint32_t ldtr_arbytes;
     1.6  
     1.7 -    uint32_t sysenter_cs;
     1.8 -    uint32_t padding0;
     1.9 -
    1.10 +    uint64_t sysenter_cs;
    1.11      uint64_t sysenter_esp;
    1.12      uint64_t sysenter_eip;
    1.13  
     2.1 --- a/include/xen/interface/event_channel.h	Tue Jun 16 12:00:56 2009 +0100
     2.2 +++ b/include/xen/interface/event_channel.h	Wed Jun 17 07:26:00 2009 +0100
     2.3 @@ -27,6 +27,8 @@
     2.4  #ifndef __XEN_PUBLIC_EVENT_CHANNEL_H__
     2.5  #define __XEN_PUBLIC_EVENT_CHANNEL_H__
     2.6  
     2.7 +#include "xen.h"
     2.8 +
     2.9  /*
    2.10   * Prototype for this hypercall is:
    2.11   *  int event_channel_op(int cmd, void *args)
     3.1 --- a/include/xen/interface/grant_table.h	Tue Jun 16 12:00:56 2009 +0100
     3.2 +++ b/include/xen/interface/grant_table.h	Wed Jun 17 07:26:00 2009 +0100
     3.3 @@ -28,6 +28,7 @@
     3.4  #ifndef __XEN_PUBLIC_GRANT_TABLE_H__
     3.5  #define __XEN_PUBLIC_GRANT_TABLE_H__
     3.6  
     3.7 +#include "xen.h"
     3.8  
     3.9  /***********************************
    3.10   * GRANT TABLE REPRESENTATION
     4.1 --- a/include/xen/interface/hvm/hvm_op.h	Tue Jun 16 12:00:56 2009 +0100
     4.2 +++ b/include/xen/interface/hvm/hvm_op.h	Wed Jun 17 07:26:00 2009 +0100
     4.3 @@ -21,6 +21,8 @@
     4.4  #ifndef __XEN_PUBLIC_HVM_HVM_OP_H__
     4.5  #define __XEN_PUBLIC_HVM_HVM_OP_H__
     4.6  
     4.7 +#include "../xen.h"
     4.8 +
     4.9  /* Get/set subcommands: extra argument == pointer to xen_hvm_param struct. */
    4.10  #define HVMOP_set_param           0
    4.11  #define HVMOP_get_param           1
     5.1 --- a/include/xen/interface/io/blkif.h	Tue Jun 16 12:00:56 2009 +0100
     5.2 +++ b/include/xen/interface/io/blkif.h	Wed Jun 17 07:26:00 2009 +0100
     5.3 @@ -84,6 +84,13 @@
     5.4   */
     5.5  #define BLKIF_MAX_SEGMENTS_PER_REQUEST 11
     5.6  
     5.7 +/* 
     5.8 + * NB. first_sect and last_sect in blkif_request_segment, as well as
     5.9 + * sector_number in blkif_request, are always expressed in 512-byte units.
    5.10 + * However they must be properly aligned to the real sector size of the
    5.11 + * physical disk, which is reported in the "sector-size" node in the backend
    5.12 + * xenbus info. Also the xenbus "sectors" node is expressed in 512-byte units.
    5.13 + */
    5.14  struct blkif_request_segment {
    5.15      grant_ref_t gref;        /* reference to I/O buffer frame        */
    5.16      /* @first_sect: first sector in frame to transfer (inclusive).   */
     6.1 --- a/include/xen/interface/io/fsif.h	Tue Jun 16 12:00:56 2009 +0100
     6.2 +++ b/include/xen/interface/io/fsif.h	Wed Jun 17 07:26:00 2009 +0100
     6.3 @@ -169,7 +169,7 @@ struct fsif_response {
     6.4      union {
     6.5          uint64_t ret_val;
     6.6          struct fsif_stat_response fstat;
     6.7 -    };
     6.8 +    } u;
     6.9  };
    6.10  
    6.11  typedef struct fsif_response fsif_response_t;
     7.1 --- a/include/xen/interface/io/xs_wire.h	Tue Jun 16 12:00:56 2009 +0100
     7.2 +++ b/include/xen/interface/io/xs_wire.h	Wed Jun 17 07:26:00 2009 +0100
     7.3 @@ -60,6 +60,7 @@ struct xsd_errors
     7.4      int errnum;
     7.5      const char *errstring;
     7.6  };
     7.7 +#ifdef EINVAL
     7.8  #define XSD_ERROR(x) { x, #x }
     7.9  /* LINTED: static unused */
    7.10  static struct xsd_errors xsd_errors[]
    7.11 @@ -82,6 +83,7 @@ static struct xsd_errors xsd_errors[]
    7.12      XSD_ERROR(EAGAIN),
    7.13      XSD_ERROR(EISCONN)
    7.14  };
    7.15 +#endif
    7.16  
    7.17  struct xsd_sockmsg
    7.18  {
     8.1 --- a/include/xen/interface/memory.h	Tue Jun 16 12:00:56 2009 +0100
     8.2 +++ b/include/xen/interface/memory.h	Wed Jun 17 07:26:00 2009 +0100
     8.3 @@ -27,6 +27,8 @@
     8.4  #ifndef __XEN_PUBLIC_MEMORY_H__
     8.5  #define __XEN_PUBLIC_MEMORY_H__
     8.6  
     8.7 +#include "xen.h"
     8.8 +
     8.9  /*
    8.10   * Increase or decrease the specified domain's memory reservation. Returns the
    8.11   * number of extents successfully allocated or freed.
     9.1 --- a/include/xen/interface/nmi.h	Tue Jun 16 12:00:56 2009 +0100
     9.2 +++ b/include/xen/interface/nmi.h	Wed Jun 17 07:26:00 2009 +0100
     9.3 @@ -27,6 +27,8 @@
     9.4  #ifndef __XEN_PUBLIC_NMI_H__
     9.5  #define __XEN_PUBLIC_NMI_H__
     9.6  
     9.7 +#include "xen.h"
     9.8 +
     9.9  /*
    9.10   * NMI reason codes:
    9.11   * Currently these are x86-specific, stored in arch_shared_info.nmi_reason.
    10.1 --- a/include/xen/interface/physdev.h	Tue Jun 16 12:00:56 2009 +0100
    10.2 +++ b/include/xen/interface/physdev.h	Wed Jun 17 07:26:00 2009 +0100
    10.3 @@ -21,6 +21,8 @@
    10.4  #ifndef __XEN_PUBLIC_PHYSDEV_H__
    10.5  #define __XEN_PUBLIC_PHYSDEV_H__
    10.6  
    10.7 +#include "xen.h"
    10.8 +
    10.9  /*
   10.10   * Prototype for this hypercall is:
   10.11   *  int physdev_op(int cmd, void *args)
    11.1 --- a/include/xen/interface/platform.h	Tue Jun 16 12:00:56 2009 +0100
    11.2 +++ b/include/xen/interface/platform.h	Wed Jun 17 07:26:00 2009 +0100
    11.3 @@ -307,7 +307,7 @@ struct xenpf_set_processor_pminfo {
    11.4      union {
    11.5          struct xen_processor_power          power;/* Cx: _CST/_CSD */
    11.6          struct xen_processor_performance    perf; /* Px: _PPC/_PCT/_PSS/_PSD */
    11.7 -    };
    11.8 +    } u;
    11.9  };
   11.10  typedef struct xenpf_set_processor_pminfo xenpf_set_processor_pminfo_t;
   11.11  DEFINE_XEN_GUEST_HANDLE(xenpf_set_processor_pminfo_t);
    12.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    12.2 +++ b/include/xen/interface/tmem.h	Wed Jun 17 07:26:00 2009 +0100
    12.3 @@ -0,0 +1,111 @@
    12.4 +/******************************************************************************
    12.5 + * tmem.h
    12.6 + * 
    12.7 + * Guest OS interface to Xen Transcendent Memory.
    12.8 + * 
    12.9 + * Permission is hereby granted, free of charge, to any person obtaining a copy
   12.10 + * of this software and associated documentation files (the "Software"), to
   12.11 + * deal in the Software without restriction, including without limitation the
   12.12 + * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
   12.13 + * sell copies of the Software, and to permit persons to whom the Software is
   12.14 + * furnished to do so, subject to the following conditions:
   12.15 + *
   12.16 + * The above copyright notice and this permission notice shall be included in
   12.17 + * all copies or substantial portions of the Software.
   12.18 + *
   12.19 + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
   12.20 + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
   12.21 + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
   12.22 + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
   12.23 + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
   12.24 + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
   12.25 + * DEALINGS IN THE SOFTWARE.
   12.26 + *
   12.27 + * Copyright (c) 2004, K A Fraser
   12.28 + */
   12.29 +
   12.30 +#ifndef __XEN_PUBLIC_TMEM_H__
   12.31 +#define __XEN_PUBLIC_TMEM_H__
   12.32 +
   12.33 +#include "xen.h"
   12.34 +
   12.35 +/* Commands to HYPERVISOR_tmem_op() */
   12.36 +#define TMEM_CONTROL               0
   12.37 +#define TMEM_NEW_POOL              1
   12.38 +#define TMEM_DESTROY_POOL          2
   12.39 +#define TMEM_NEW_PAGE              3
   12.40 +#define TMEM_PUT_PAGE              4
   12.41 +#define TMEM_GET_PAGE              5
   12.42 +#define TMEM_FLUSH_PAGE            6
   12.43 +#define TMEM_FLUSH_OBJECT          7
   12.44 +#define TMEM_READ                  8
   12.45 +#define TMEM_WRITE                 9
   12.46 +#define TMEM_XCHG                 10
   12.47 +
   12.48 +/* Subops for HYPERVISOR_tmem_op(TMEM_CONTROL) */
   12.49 +#define TMEMC_THAW                 0
   12.50 +#define TMEMC_FREEZE               1
   12.51 +#define TMEMC_FLUSH                2
   12.52 +#define TMEMC_DESTROY              3
   12.53 +#define TMEMC_LIST                 4
   12.54 +#define TMEMC_SET_WEIGHT           5
   12.55 +#define TMEMC_SET_CAP              6
   12.56 +#define TMEMC_SET_COMPRESS         7
   12.57 +
   12.58 +/* Bits for HYPERVISOR_tmem_op(TMEM_NEW_POOL) */
   12.59 +#define TMEM_POOL_PERSIST          1
   12.60 +#define TMEM_POOL_SHARED           2
   12.61 +#define TMEM_POOL_PAGESIZE_SHIFT   4
   12.62 +#define TMEM_POOL_PAGESIZE_MASK  0xf
   12.63 +#define TMEM_POOL_VERSION_SHIFT   24
   12.64 +#define TMEM_POOL_VERSION_MASK  0xff
   12.65 +
   12.66 +/* Special errno values */
   12.67 +#define EFROZEN                 1000
   12.68 +#define EEMPTY                  1001
   12.69 +
   12.70 +
   12.71 +#ifndef __ASSEMBLY__
   12.72 +typedef xen_pfn_t tmem_cli_mfn_t;
   12.73 +typedef XEN_GUEST_HANDLE(char) tmem_cli_va_t;
   12.74 +struct tmem_op {
   12.75 +    uint32_t cmd;
   12.76 +    int32_t pool_id; /* private > 0; shared < 0; 0 is invalid */
   12.77 +    union {
   12.78 +        struct {  /* for cmd == TMEM_NEW_POOL */
   12.79 +            uint64_t uuid[2];
   12.80 +            uint32_t flags;
   12.81 +        } new;
   12.82 +        struct {  /* for cmd == TMEM_CONTROL */
   12.83 +            uint32_t subop;
   12.84 +            uint32_t cli_id;
   12.85 +            uint32_t arg1;
   12.86 +            uint32_t arg2;
   12.87 +            tmem_cli_va_t buf;
   12.88 +        } ctrl;
   12.89 +        struct {
   12.90 +            uint64_t object;
   12.91 +            uint32_t index;
   12.92 +            uint32_t tmem_offset;
   12.93 +            uint32_t pfn_offset;
   12.94 +            uint32_t len;
   12.95 +            tmem_cli_mfn_t cmfn; /* client machine page frame */
   12.96 +        } gen;
   12.97 +    } u;
   12.98 +};
   12.99 +typedef struct tmem_op tmem_op_t;
  12.100 +DEFINE_XEN_GUEST_HANDLE(tmem_op_t);
  12.101 +
  12.102 +#endif
  12.103 +
  12.104 +#endif /* __XEN_PUBLIC_TMEM_H__ */
  12.105 +
  12.106 +/*
  12.107 + * Local variables:
  12.108 + * mode: C
  12.109 + * c-set-style: "BSD"
  12.110 + * c-basic-offset: 4
  12.111 + * tab-width: 4
  12.112 + * indent-tabs-mode: nil
  12.113 + * End:
  12.114 + */
    13.1 --- a/include/xen/interface/trace.h	Tue Jun 16 12:00:56 2009 +0100
    13.2 +++ b/include/xen/interface/trace.h	Wed Jun 17 07:26:00 2009 +0100
    13.3 @@ -59,6 +59,7 @@
    13.4  #define TRC_LOST_RECORDS        (TRC_GEN + 1)
    13.5  #define TRC_TRACE_WRAP_BUFFER  (TRC_GEN + 2)
    13.6  #define TRC_TRACE_CPU_CHANGE    (TRC_GEN + 3)
    13.7 +#define TRC_TRACE_IRQ           (TRC_GEN + 4)
    13.8  
    13.9  #define TRC_SCHED_RUNSTATE_CHANGE   (TRC_SCHED_MIN + 1)
   13.10  #define TRC_SCHED_CONTINUE_RUNNING  (TRC_SCHED_MIN + 2)
    14.1 --- a/include/xen/interface/vcpu.h	Tue Jun 16 12:00:56 2009 +0100
    14.2 +++ b/include/xen/interface/vcpu.h	Wed Jun 17 07:26:00 2009 +0100
    14.3 @@ -27,6 +27,8 @@
    14.4  #ifndef __XEN_PUBLIC_VCPU_H__
    14.5  #define __XEN_PUBLIC_VCPU_H__
    14.6  
    14.7 +#include "xen.h"
    14.8 +
    14.9  /*
   14.10   * Prototype for this hypercall is:
   14.11   *  int vcpu_op(int cmd, int vcpuid, void *extra_args)
    15.1 --- a/include/xen/interface/xen.h	Tue Jun 16 12:00:56 2009 +0100
    15.2 +++ b/include/xen/interface/xen.h	Wed Jun 17 07:26:00 2009 +0100
    15.3 @@ -91,6 +91,7 @@ DEFINE_XEN_GUEST_HANDLE(xen_pfn_t);
    15.4  #define __HYPERVISOR_sysctl               35
    15.5  #define __HYPERVISOR_domctl               36
    15.6  #define __HYPERVISOR_kexec_op             37
    15.7 +#define __HYPERVISOR_tmem_op              38
    15.8  
    15.9  /* Architecture-specific hypercall definitions. */
   15.10  #define __HYPERVISOR_arch_0               48