18 #ifndef __included_svm_common_h__ 19 #define __included_svm_common_h__ 25 #define SVM_VERSION ((1<<16) | 1) 27 #define SVM_FLAGS_MHEAP (1<<0) 28 #define SVM_FLAGS_FILE (1<<1) 29 #define SVM_FLAGS_NODATA (1<<2) 30 #define SVM_FLAGS_NEED_DATA_INIT (1<<3) 32 #define SVM_PVT_MHEAP_SIZE (128<<10) 84 #ifdef CLIB_SANITIZE_ADDR 85 #define HIGH_SEGMENT_BASEVA 0x300000000000 87 #define HIGH_SEGMENT_BASEVA (8ULL << 30) 89 #elif __WORDSIZE == 32 90 #define HIGH_SEGMENT_BASEVA (3584UL << 20) 92 #error "unknown __WORDSIZE" 100 #define SVM_GLOBAL_REGION_SIZE (64<<20) 101 #define SVM_GLOBAL_REGION_NAME "/global_vm" 107 #define SVM_OVERLAY_REGION_BASEVA \ 108 (SVM_GLOBAL_REGION_BASEVA + SVM_GLOBAL_REGION_SIZE) 109 #define SVM_OVERLAY_REGION_SIZE (1<<20) 110 #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)