#ifndef __VKI_XEN_TMEM_H #define __VKI_XEN_TMEM_H typedef VKI_XEN_GUEST_HANDLE(char) vki_xen_tmem_cli_va_t; /* version of ABI */ #define VKI_XEN_TMEM_spec_version 1 /* Commands to HYPERVISOR_tmem_op() */ #define VKI_XEN_TMEM_control 0 #define VKI_XEN_TMEM_new_pool 1 #define VKI_XEN_TMEM_destroy_pool 2 #define VKI_XEN_TMEM_new_page 3 #define VKI_XEN_TMEM_put_page 4 #define VKI_XEN_TMEM_get_page 5 #define VKI_XEN_TMEM_flush_page 6 #define VKI_XEN_TMEM_flush_object 7 #define VKI_XEN_TMEM_read 8 #define VKI_XEN_TMEM_write 9 #define VKI_XEN_TMEM_xchg 10 /* Privileged commands to HYPERVISOR_tmem_op() */ #define VKI_XEN_tmem_auth 101 #define VKI_XEN_tmem_restore_new 102 /* for cmd = TMEM_CONTROL */ struct vki_xen_tmem_ctrl { vki_uint32_t subop; /* Subops for HYPERVISOR_tmem_op(TMEM_CONTROL) */ #define VKI_XEN_TMEMC_thaw 0 #define VKI_XEN_TMEMC_freeze 1 #define VKI_XEN_TMEMC_flush 2 #define VKI_XEN_TMEMC_destroy 3 #define VKI_XEN_TMEMC_list 4 #define VKI_XEN_TMEMC_set_weight 5 #define VKI_XEN_TMEMC_set_cap 6 #define VKI_XEN_TMEMC_set_compress 7 #define VKI_XEN_TMEMC_query_freeable_mb 8 #define VKI_XEN_TMEMC_save_begin 10 #define VKI_XEN_TMEMC_save_get_version 11 #define VKI_XEN_TMEMC_save_get_maxpools 12 #define VKI_XEN_TMEMC_save_get_client_weight 13 #define VKI_XEN_TMEMC_save_get_client_cap 14 #define VKI_XEN_TMEMC_save_get_client_flags 15 #define VKI_XEN_TMEMC_save_get_pool_flags 16 #define VKI_XEN_TMEMC_save_get_pool_npages 17 #define VKI_XEN_TMEMC_save_get_pool_uuid 18 #define VKI_XEN_TMEMC_save_get_next_page 19 #define VKI_XEN_TMEMC_save_get_next_inv 20 #define VKI_XEN_TMEMC_save_end 21 #define VKI_XEN_TMEMC_restore_begin 30 #define VKI_XEN_TMEMC_restore_put_page 32 #define VKI_XEN_TMEMC_restore_flush_page 33 vki_uint32_t cli_id; vki_uint32_t arg1; vki_uint32_t arg2; vki_uint64_t oid[3]; vki_xen_tmem_cli_va_t buf; }; struct vki_xen_tmem_op { vki_uint32_t cmd; vki_int32_t pool_id; union { struct vki_xen_tmem_ctrl ctrl; } u; }; #endif // __VKI_XEN_TMEM_H /*--------------------------------------------------------------------*/ /*--- end ---*/ /*--------------------------------------------------------------------*/