18 #ifndef __included_svm_common_h__ 19 #define __included_svm_common_h__ 26 #define SVM_VERSION ((1<<16) | 1) 28 #define SVM_FLAGS_MHEAP (1<<0) 29 #define SVM_FLAGS_FILE (1<<1) 30 #define SVM_FLAGS_NODATA (1<<2) 31 #define SVM_FLAGS_NEED_DATA_INIT (1<<3) 33 #define SVM_PVT_MHEAP_SIZE (128<<10) 85 #ifdef CLIB_SANITIZE_ADDR 86 #define HIGH_SEGMENT_BASEVA 0x300000000000 88 #define HIGH_SEGMENT_BASEVA (128ULL << 30) 90 #elif __WORDSIZE == 32 91 #define HIGH_SEGMENT_BASEVA (3584UL << 20) 93 #error "unknown __WORDSIZE" 101 #define SVM_GLOBAL_REGION_SIZE (64<<20) 102 #define SVM_GLOBAL_REGION_NAME "/global_vm" 108 #define SVM_OVERLAY_REGION_BASEVA \ 109 (SVM_GLOBAL_REGION_BASEVA + SVM_GLOBAL_REGION_SIZE) 110 #define SVM_OVERLAY_REGION_SIZE (1<<20) 111 #define SVM_OVERLAY_REGION_BASENAME "/overlay_vm"
u8 * format_svm_region(u8 *s, va_list *args)
void svm_region_unmap_client(void *rp_arg)
void svm_region_unmap(void *rp_arg)
struct svm_map_region_args_ svm_map_region_args_t
svm_region_t * svm_get_root_rp(void)
int svm_region_init_chroot(const char *root_path)
void svm_region_init_args(svm_map_region_args_t *a)
struct svm_region_ svm_region_t
svm_subregion_t * subregions
void svm_client_scan_this_region_nolock(svm_region_t *rp)
void svm_region_init_mapped_region(svm_map_region_args_t *a, svm_region_t *rp)
void svm_region_init(void)
u8 * shm_name_from_svm_map_region_args(svm_map_region_args_t *a)
void svm_client_scan(const char *root_path)
void svm_region_init_chroot_uid_gid(const char *root_path, int uid, int gid)
void svm_region_exit(void)
void * svm_region_find_or_create(svm_map_region_args_t *a)
u64 svm_get_global_region_base_va()
void svm_region_exit_client(void)