iPXE
memory.h File Reference
#include "xen.h"
#include "physdev.h"

Go to the source code of this file.

Data Structures

struct  xen_memory_reservation
struct  xen_memory_exchange
struct  xen_memory_domain
struct  xen_machphys_mfn_list
struct  xen_machphys_mapping
struct  xen_add_to_physmap
struct  xen_add_to_physmap_batch
struct  xen_remove_from_physmap
struct  xen_memory_map
struct  xen_foreign_memory_map
struct  xen_pod_target
struct  xen_mem_acquire_resource
struct  xen_vmemrange
struct  xen_vnuma_topology_info

Macros

#define XENMEM_increase_reservation   0
#define XENMEM_decrease_reservation   1
#define XENMEM_populate_physmap   6
#define XENMEM_exchange   11
#define XENMEM_maximum_ram_page   2
#define XENMEM_current_reservation   3
#define XENMEM_maximum_reservation   4
#define XENMEM_maximum_gpfn   14
#define XENMEM_machphys_mfn_list   5
#define XENMEM_machphys_compat_mfn_list   25
#define XENMEM_machphys_mapping   12
#define XENMAPSPACE_shared_info   0 /* shared info page */
#define XENMAPSPACE_grant_table   1 /* grant table page */
#define XENMAPSPACE_gmfn   2 /* GMFN */
#define XENMAPSPACE_gmfn_range   3 /* GMFN range, XENMEM_add_to_physmap only. */
#define XENMAPSPACE_gmfn_foreign
#define XENMAPSPACE_dev_mmio
#define XENMEM_add_to_physmap   7
#define XENMAPIDX_grant_table_status   0x80000000U
#define XENMEM_add_to_physmap_batch   23
#define XENMEM_add_to_physmap_range   XENMEM_add_to_physmap_batch
#define xen_add_to_physmap_range   xen_add_to_physmap_batch
#define XENMEM_remove_from_physmap   15
#define XENMEM_memory_map   9
#define XENMEM_machine_memory_map   10
#define XENMEM_set_memory_map   13
#define XENMEM_set_pod_target   16
#define XENMEM_get_pod_target   17
#define XENMEM_acquire_resource   28
#define XENMEM_resource_ioreq_server   0
#define XENMEM_resource_grant_table   1
#define XENMEM_resource_vmtrace_buf   2
#define XENMEM_resource_grant_table_id_shared   0
#define XENMEM_resource_grant_table_id_status   1
#define XENMEM_resource_ioreq_server_frame_bufioreq   0
#define XENMEM_resource_ioreq_server_frame_ioreq(n)
#define XENMEM_get_vnumainfo   26

Typedefs

typedef struct xen_memory_reservation xen_memory_reservation_t
typedef struct xen_memory_exchange xen_memory_exchange_t
typedef struct xen_machphys_mfn_list xen_machphys_mfn_list_t
typedef struct xen_machphys_mapping xen_machphys_mapping_t
typedef struct xen_add_to_physmap xen_add_to_physmap_t
typedef struct xen_add_to_physmap_batch xen_add_to_physmap_batch_t
typedef struct xen_add_to_physmap_batch xen_add_to_physmap_range_t
typedef struct xen_remove_from_physmap xen_remove_from_physmap_t
typedef struct xen_memory_map xen_memory_map_t
typedef struct xen_foreign_memory_map xen_foreign_memory_map_t
typedef struct xen_pod_target xen_pod_target_t
typedef struct xen_mem_acquire_resource xen_mem_acquire_resource_t
typedef struct xen_vmemrange xen_vmemrange_t
typedef struct xen_vnuma_topology_info xen_vnuma_topology_info_t

Functions

 FILE_LICENCE (MIT)
 FILE_SECBOOT (PERMITTED)
 DEFINE_XEN_GUEST_HANDLE (xen_memory_reservation_t)
 DEFINE_XEN_GUEST_HANDLE (xen_memory_exchange_t)
 DEFINE_XEN_GUEST_HANDLE (xen_machphys_mfn_list_t)
 DEFINE_XEN_GUEST_HANDLE (xen_machphys_mapping_t)
 DEFINE_XEN_GUEST_HANDLE (xen_add_to_physmap_t)
 DEFINE_XEN_GUEST_HANDLE (xen_add_to_physmap_batch_t)
 DEFINE_XEN_GUEST_HANDLE (xen_remove_from_physmap_t)
 DEFINE_XEN_GUEST_HANDLE (xen_memory_map_t)
 DEFINE_XEN_GUEST_HANDLE (xen_foreign_memory_map_t)
 DEFINE_XEN_GUEST_HANDLE (xen_mem_acquire_resource_t)
 DEFINE_XEN_GUEST_HANDLE (xen_vmemrange_t)
 DEFINE_XEN_GUEST_HANDLE (xen_vnuma_topology_info_t)

Macro Definition Documentation

◆ XENMEM_increase_reservation

#define XENMEM_increase_reservation   0

Definition at line 24 of file memory.h.

◆ XENMEM_decrease_reservation

#define XENMEM_decrease_reservation   1

Definition at line 25 of file memory.h.

◆ XENMEM_populate_physmap

#define XENMEM_populate_physmap   6

Definition at line 26 of file memory.h.

◆ XENMEM_exchange

#define XENMEM_exchange   11

Definition at line 94 of file memory.h.

◆ XENMEM_maximum_ram_page

#define XENMEM_maximum_ram_page   2

Definition at line 135 of file memory.h.

◆ XENMEM_current_reservation

#define XENMEM_current_reservation   3

Definition at line 147 of file memory.h.

◆ XENMEM_maximum_reservation

#define XENMEM_maximum_reservation   4

Definition at line 148 of file memory.h.

◆ XENMEM_maximum_gpfn

#define XENMEM_maximum_gpfn   14

Definition at line 155 of file memory.h.

◆ XENMEM_machphys_mfn_list

#define XENMEM_machphys_mfn_list   5

Definition at line 163 of file memory.h.

◆ XENMEM_machphys_compat_mfn_list

#define XENMEM_machphys_compat_mfn_list   25

Definition at line 194 of file memory.h.

◆ XENMEM_machphys_mapping

#define XENMEM_machphys_mapping   12

Definition at line 202 of file memory.h.

◆ XENMAPSPACE_shared_info

#define XENMAPSPACE_shared_info   0 /* shared info page */

Definition at line 212 of file memory.h.

Referenced by hvm_map_shared_info().

◆ XENMAPSPACE_grant_table

#define XENMAPSPACE_grant_table   1 /* grant table page */

Definition at line 213 of file memory.h.

Referenced by hvm_map_grant().

◆ XENMAPSPACE_gmfn

#define XENMAPSPACE_gmfn   2 /* GMFN */

Definition at line 214 of file memory.h.

◆ XENMAPSPACE_gmfn_range

#define XENMAPSPACE_gmfn_range   3 /* GMFN range, XENMEM_add_to_physmap only. */

Definition at line 215 of file memory.h.

◆ XENMAPSPACE_gmfn_foreign

#define XENMAPSPACE_gmfn_foreign
Value:
4 /* GMFN from another dom,
* XENMEM_add_to_physmap_batch only. */

Definition at line 216 of file memory.h.

◆ XENMAPSPACE_dev_mmio

#define XENMAPSPACE_dev_mmio
Value:
5 /* device mmio region
ARM only; the region is mapped in
Stage-2 using the Normal Memory
Inner/Outer Write-Back Cacheable
memory attribute. */

Definition at line 217 of file memory.h.

◆ XENMEM_add_to_physmap

#define XENMEM_add_to_physmap   7

Definition at line 225 of file memory.h.

◆ XENMAPIDX_grant_table_status

#define XENMAPIDX_grant_table_status   0x80000000U

Definition at line 235 of file memory.h.

◆ XENMEM_add_to_physmap_batch

#define XENMEM_add_to_physmap_batch   23

Definition at line 247 of file memory.h.

◆ XENMEM_add_to_physmap_range

#define XENMEM_add_to_physmap_range   XENMEM_add_to_physmap_batch

Definition at line 281 of file memory.h.

◆ xen_add_to_physmap_range

#define xen_add_to_physmap_range   xen_add_to_physmap_batch

Definition at line 282 of file memory.h.

◆ XENMEM_remove_from_physmap

#define XENMEM_remove_from_physmap   15

Definition at line 292 of file memory.h.

◆ XENMEM_memory_map

#define XENMEM_memory_map   9

Definition at line 311 of file memory.h.

◆ XENMEM_machine_memory_map

#define XENMEM_machine_memory_map   10

Definition at line 336 of file memory.h.

◆ XENMEM_set_memory_map

#define XENMEM_set_memory_map   13

Definition at line 343 of file memory.h.

◆ XENMEM_set_pod_target

#define XENMEM_set_pod_target   16

Definition at line 351 of file memory.h.

◆ XENMEM_get_pod_target

#define XENMEM_get_pod_target   17

Definition at line 352 of file memory.h.

◆ XENMEM_acquire_resource

#define XENMEM_acquire_resource   28

Definition at line 618 of file memory.h.

◆ XENMEM_resource_ioreq_server

#define XENMEM_resource_ioreq_server   0

Definition at line 625 of file memory.h.

◆ XENMEM_resource_grant_table

#define XENMEM_resource_grant_table   1

Definition at line 626 of file memory.h.

◆ XENMEM_resource_vmtrace_buf

#define XENMEM_resource_vmtrace_buf   2

Definition at line 627 of file memory.h.

◆ XENMEM_resource_grant_table_id_shared

#define XENMEM_resource_grant_table_id_shared   0

Definition at line 638 of file memory.h.

◆ XENMEM_resource_grant_table_id_status

#define XENMEM_resource_grant_table_id_status   1

Definition at line 639 of file memory.h.

◆ XENMEM_resource_ioreq_server_frame_bufioreq

#define XENMEM_resource_ioreq_server_frame_bufioreq   0

Definition at line 672 of file memory.h.

◆ XENMEM_resource_ioreq_server_frame_ioreq

#define XENMEM_resource_ioreq_server_frame_ioreq ( n)
Value:
(1 + (n))

Definition at line 673 of file memory.h.

◆ XENMEM_get_vnumainfo

#define XENMEM_get_vnumainfo   26

Definition at line 696 of file memory.h.

Typedef Documentation

◆ xen_memory_reservation_t

Definition at line 82 of file memory.h.

◆ xen_memory_exchange_t

Definition at line 127 of file memory.h.

◆ xen_machphys_mfn_list_t

Definition at line 184 of file memory.h.

◆ xen_machphys_mapping_t

Definition at line 207 of file memory.h.

◆ xen_add_to_physmap_t

Definition at line 243 of file memory.h.

◆ xen_add_to_physmap_batch_t

Definition at line 277 of file memory.h.

◆ xen_add_to_physmap_range_t

Definition at line 283 of file memory.h.

◆ xen_remove_from_physmap_t

Definition at line 300 of file memory.h.

◆ xen_memory_map_t

Definition at line 326 of file memory.h.

◆ xen_foreign_memory_map_t

Definition at line 348 of file memory.h.

◆ xen_pod_target_t

Definition at line 363 of file memory.h.

◆ xen_mem_acquire_resource_t

Definition at line 689 of file memory.h.

◆ xen_vmemrange_t

Definition at line 704 of file memory.h.

◆ xen_vnuma_topology_info_t

Definition at line 738 of file memory.h.

Function Documentation

◆ FILE_LICENCE()

FILE_LICENCE ( MIT )

◆ FILE_SECBOOT()

FILE_SECBOOT ( PERMITTED )

◆ DEFINE_XEN_GUEST_HANDLE() [1/12]

DEFINE_XEN_GUEST_HANDLE ( xen_memory_reservation_t )

◆ DEFINE_XEN_GUEST_HANDLE() [2/12]

DEFINE_XEN_GUEST_HANDLE ( xen_memory_exchange_t )

◆ DEFINE_XEN_GUEST_HANDLE() [3/12]

DEFINE_XEN_GUEST_HANDLE ( xen_machphys_mfn_list_t )

◆ DEFINE_XEN_GUEST_HANDLE() [4/12]

DEFINE_XEN_GUEST_HANDLE ( xen_machphys_mapping_t )

◆ DEFINE_XEN_GUEST_HANDLE() [5/12]

DEFINE_XEN_GUEST_HANDLE ( xen_add_to_physmap_t )

◆ DEFINE_XEN_GUEST_HANDLE() [6/12]

DEFINE_XEN_GUEST_HANDLE ( xen_add_to_physmap_batch_t )

◆ DEFINE_XEN_GUEST_HANDLE() [7/12]

DEFINE_XEN_GUEST_HANDLE ( xen_remove_from_physmap_t )

◆ DEFINE_XEN_GUEST_HANDLE() [8/12]

DEFINE_XEN_GUEST_HANDLE ( xen_memory_map_t )

References buffer.

◆ DEFINE_XEN_GUEST_HANDLE() [9/12]

DEFINE_XEN_GUEST_HANDLE ( xen_foreign_memory_map_t )

References domid.

◆ DEFINE_XEN_GUEST_HANDLE() [10/12]

DEFINE_XEN_GUEST_HANDLE ( xen_mem_acquire_resource_t )

◆ DEFINE_XEN_GUEST_HANDLE() [11/12]

DEFINE_XEN_GUEST_HANDLE ( xen_vmemrange_t )

References end, flags, and start.

◆ DEFINE_XEN_GUEST_HANDLE() [12/12]

DEFINE_XEN_GUEST_HANDLE ( xen_vnuma_topology_info_t )

References h, and pad.