~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/include/xen/interface/hvm/hvm_op.h

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /include/xen/interface/hvm/hvm_op.h (Version linux-6.12-rc7) and /include/xen/interface/hvm/hvm_op.h (Version linux-6.3.13)


  1 /* SPDX-License-Identifier: MIT */                  1 /* SPDX-License-Identifier: MIT */
  2                                                     2 
  3 #ifndef __XEN_PUBLIC_HVM_HVM_OP_H__                 3 #ifndef __XEN_PUBLIC_HVM_HVM_OP_H__
  4 #define __XEN_PUBLIC_HVM_HVM_OP_H__                 4 #define __XEN_PUBLIC_HVM_HVM_OP_H__
  5                                                     5 
  6 #include <xen/interface/xen.h>                      6 #include <xen/interface/xen.h>
  7                                                     7 
  8 /* Get/set subcommands: the second argument of      8 /* Get/set subcommands: the second argument of the hypercall is a
  9  * pointer to a xen_hvm_param struct. */            9  * pointer to a xen_hvm_param struct. */
 10 #define HVMOP_set_param           0                10 #define HVMOP_set_param           0
 11 #define HVMOP_get_param           1                11 #define HVMOP_get_param           1
 12 struct xen_hvm_param {                             12 struct xen_hvm_param {
 13     domid_t  domid;    /* IN */                    13     domid_t  domid;    /* IN */
 14     uint32_t index;    /* IN */                    14     uint32_t index;    /* IN */
 15     uint64_t value;    /* IN/OUT */                15     uint64_t value;    /* IN/OUT */
 16 };                                                 16 };
 17 DEFINE_GUEST_HANDLE_STRUCT(xen_hvm_param);         17 DEFINE_GUEST_HANDLE_STRUCT(xen_hvm_param);
 18                                                    18 
 19 /* Hint from PV drivers for pagetable destruct     19 /* Hint from PV drivers for pagetable destruction. */
 20 #define HVMOP_pagetable_dying       9              20 #define HVMOP_pagetable_dying       9
 21 struct xen_hvm_pagetable_dying {                   21 struct xen_hvm_pagetable_dying {
 22     /* Domain with a pagetable about to be des     22     /* Domain with a pagetable about to be destroyed. */
 23     domid_t  domid;                                23     domid_t  domid;
 24     /* guest physical address of the toplevel      24     /* guest physical address of the toplevel pagetable dying */
 25     aligned_u64 gpa;                               25     aligned_u64 gpa;
 26 };                                                 26 };
 27 typedef struct xen_hvm_pagetable_dying xen_hvm     27 typedef struct xen_hvm_pagetable_dying xen_hvm_pagetable_dying_t;
 28 DEFINE_GUEST_HANDLE_STRUCT(xen_hvm_pagetable_d     28 DEFINE_GUEST_HANDLE_STRUCT(xen_hvm_pagetable_dying_t);
 29                                                    29  
 30 enum hvmmem_type_t {                               30 enum hvmmem_type_t {
 31     HVMMEM_ram_rw,             /* Normal read/     31     HVMMEM_ram_rw,             /* Normal read/write guest RAM */
 32     HVMMEM_ram_ro,             /* Read-only; w     32     HVMMEM_ram_ro,             /* Read-only; writes are discarded */
 33     HVMMEM_mmio_dm,            /* Reads and wr     33     HVMMEM_mmio_dm,            /* Reads and write go to the device model */
 34 };                                                 34 };
 35                                                    35 
 36 #define HVMOP_get_mem_type    15                   36 #define HVMOP_get_mem_type    15
 37 /* Return hvmmem_type_t for the specified pfn.     37 /* Return hvmmem_type_t for the specified pfn. */
 38 struct xen_hvm_get_mem_type {                      38 struct xen_hvm_get_mem_type {
 39     /* Domain to be queried. */                    39     /* Domain to be queried. */
 40     domid_t domid;                                 40     domid_t domid;
 41     /* OUT variable. */                            41     /* OUT variable. */
 42     uint16_t mem_type;                             42     uint16_t mem_type;
 43     uint16_t pad[2]; /* align next field on 8-     43     uint16_t pad[2]; /* align next field on 8-byte boundary */
 44     /* IN variable. */                             44     /* IN variable. */
 45     uint64_t pfn;                                  45     uint64_t pfn;
 46 };                                                 46 };
 47 DEFINE_GUEST_HANDLE_STRUCT(xen_hvm_get_mem_typ     47 DEFINE_GUEST_HANDLE_STRUCT(xen_hvm_get_mem_type);
 48                                                    48 
 49 #if defined(__i386__) || defined(__x86_64__)       49 #if defined(__i386__) || defined(__x86_64__)
 50                                                    50 
 51 /*                                                 51 /*
 52  * HVMOP_set_evtchn_upcall_vector: Set a <vect     52  * HVMOP_set_evtchn_upcall_vector: Set a <vector> that should be used for event
 53  *                                 channel upc     53  *                                 channel upcalls on the specified <vcpu>. If set,
 54  *                                 this vector     54  *                                 this vector will be used in preference to the
 55  *                                 domain glob     55  *                                 domain global callback via (see
 56  *                                 HVM_PARAM_C     56  *                                 HVM_PARAM_CALLBACK_IRQ).
 57  */                                                57  */
 58 #define HVMOP_set_evtchn_upcall_vector 23          58 #define HVMOP_set_evtchn_upcall_vector 23
 59 struct xen_hvm_evtchn_upcall_vector {              59 struct xen_hvm_evtchn_upcall_vector {
 60     uint32_t vcpu;                                 60     uint32_t vcpu;
 61     uint8_t vector;                                61     uint8_t vector;
 62 };                                                 62 };
 63 typedef struct xen_hvm_evtchn_upcall_vector xe     63 typedef struct xen_hvm_evtchn_upcall_vector xen_hvm_evtchn_upcall_vector_t;
 64 DEFINE_GUEST_HANDLE_STRUCT(xen_hvm_evtchn_upca     64 DEFINE_GUEST_HANDLE_STRUCT(xen_hvm_evtchn_upcall_vector_t);
 65                                                    65 
 66 #endif /* defined(__i386__) || defined(__x86_6     66 #endif /* defined(__i386__) || defined(__x86_64__) */
 67                                                    67 
 68 #endif /* __XEN_PUBLIC_HVM_HVM_OP_H__ */           68 #endif /* __XEN_PUBLIC_HVM_HVM_OP_H__ */
 69                                                    69 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php