/seL4-refos-master/libs/libsel4utils/include/sel4utils/ |
H A D | page.h | 21 utils_valid_size_bits(size_t size_bits) argument 23 return sel4_valid_size_bits(size_bits);
|
/seL4-refos-master/projects/seL4_libs/libsel4utils/include/sel4utils/ |
H A D | page.h | 21 utils_valid_size_bits(size_t size_bits) argument 23 return sel4_valid_size_bits(size_bits);
|
/seL4-refos-master/libs/libutils/include/utils/ |
H A D | page.h | 21 #define SIZE_BITS_TO_BYTES(size_bits) (BIT(size_bits)) 33 /* convert b bytes to the number of pages of size size_bits required for that many bytes */ 34 #define BYTES_TO_SIZE_BITS_PAGES(b, size_bits) (((b) / (BIT(size_bits))) + ((((b) % (BIT(size_bits))) > 0) ? 1 : 0))
|
/seL4-refos-master/projects/util_libs/libutils/include/utils/ |
H A D | page.h | 21 #define SIZE_BITS_TO_BYTES(size_bits) (BIT(size_bits)) 33 /* convert b bytes to the number of pages of size size_bits required for that many bytes */ 34 #define BYTES_TO_SIZE_BITS_PAGES(b, size_bits) (((b) / (BIT(size_bits))) + ((((b) % (BIT(size_bits))) > 0) ? 1 : 0))
|
/seL4-refos-master/libs/libsel4vka/include/vka/ |
H A D | object.h | 34 seL4_Word size_bits; member in struct:vka_object 40 static inline int vka_alloc_object_at_maybe_dev(vka_t *vka, seL4_Word type, seL4_Word size_bits, uintptr_t paddr, argument 61 error = vka_utspace_alloc_maybe_device(vka, &path, type, size_bits, can_use_dev, &result->ut); 64 BIT(size_bits), error); 68 error = vka_utspace_alloc_at(vka, &path, type, size_bits, paddr, &result->ut); 71 BIT(size_bits), (void *)paddr, error); 77 result->size_bits = size_bits; 89 static inline int vka_alloc_object_at(vka_t *vka, seL4_Word type, seL4_Word size_bits, uintptr_t paddr, argument 92 return vka_alloc_object_at_maybe_dev(vka, type, size_bits, padd 94 vka_alloc_object(vka_t *vka, seL4_Word type, seL4_Word size_bits, vka_object_t *result) argument 102 vka_alloc_object_leaky(vka_t *vka, seL4_Word type, seL4_Word size_bits) argument 131 vka_alloc_untyped(vka_t *vka, uint32_t size_bits, vka_object_t *result) argument 136 vka_alloc_untyped_at(vka_t *vka, uint32_t size_bits, uintptr_t paddr, vka_object_t *result) argument 157 vka_alloc_sched_context_size(UNUSED vka_t *vka, UNUSED vka_object_t *result, UNUSED uint32_t size_bits) argument 206 vka_alloc_frame(vka_t *vka, uint32_t size_bits, vka_object_t *result) argument 212 vka_alloc_frame_maybe_device(vka_t *vka, uint32_t size_bits, bool can_use_dev, vka_object_t *result) argument 218 vka_alloc_frame_at(vka_t *vka, uint32_t size_bits, uintptr_t paddr, vka_object_t *result) argument 245 vka_alloc_kobject(vka_t *vka, kobject_t type, seL4_Word size_bits, vka_object_t *result) argument [all...] |
H A D | vka.h | 61 * @param size_bits the size of the object to allocate (as passed to Untyped_Retype) 65 typedef int (*vka_utspace_alloc_fn)(void *data, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, 74 * @param size_bits the size of the object to allocate (as passed to Untyped_Retype) 79 typedef int (*vka_utspace_alloc_at_fn)(void *data, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, 88 * @param size_bits the size of the object to allocate (as passed to Untyped_Retype) 94 seL4_Word size_bits, bool can_use_dev, seL4_Word *res); 102 * @param size_bits the size of the object that was allocated (as passed to Untyped_Retype) 105 typedef void (*vka_utspace_free_fn)(void *data, seL4_Word type, seL4_Word size_bits, seL4_Word target); 113 * @param size_bits the size of the object that was allocated (as passed to Untyped_Retype) 116 typedef uintptr_t (*vka_utspace_paddr_fn)(void *data, seL4_Word target, seL4_Word type, seL4_Word size_bits); 217 vka_utspace_alloc(vka_t *vka, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, seL4_Word *res) argument 238 vka_utspace_alloc_maybe_device(vka_t *vka, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, bool can_use_dev, seL4_Word *res) argument 259 vka_utspace_alloc_at(vka_t *vka, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, uintptr_t paddr, seL4_Word *cookie) argument 278 vka_utspace_free(vka_t *vka, seL4_Word type, seL4_Word size_bits, seL4_Word target) argument 296 vka_utspace_paddr(vka_t *vka, seL4_Word target, seL4_Word type, seL4_Word size_bits) argument [all...] |
/seL4-refos-master/projects/seL4_libs/libsel4vka/include/vka/ |
H A D | object.h | 34 seL4_Word size_bits; member in struct:vka_object 40 static inline int vka_alloc_object_at_maybe_dev(vka_t *vka, seL4_Word type, seL4_Word size_bits, uintptr_t paddr, argument 61 error = vka_utspace_alloc_maybe_device(vka, &path, type, size_bits, can_use_dev, &result->ut); 64 BIT(size_bits), error); 68 error = vka_utspace_alloc_at(vka, &path, type, size_bits, paddr, &result->ut); 71 BIT(size_bits), (void *)paddr, error); 77 result->size_bits = size_bits; 89 static inline int vka_alloc_object_at(vka_t *vka, seL4_Word type, seL4_Word size_bits, uintptr_t paddr, argument 92 return vka_alloc_object_at_maybe_dev(vka, type, size_bits, padd 94 vka_alloc_object(vka_t *vka, seL4_Word type, seL4_Word size_bits, vka_object_t *result) argument 102 vka_alloc_object_leaky(vka_t *vka, seL4_Word type, seL4_Word size_bits) argument 131 vka_alloc_untyped(vka_t *vka, uint32_t size_bits, vka_object_t *result) argument 136 vka_alloc_untyped_at(vka_t *vka, uint32_t size_bits, uintptr_t paddr, vka_object_t *result) argument 157 vka_alloc_sched_context_size(UNUSED vka_t *vka, UNUSED vka_object_t *result, UNUSED uint32_t size_bits) argument 206 vka_alloc_frame(vka_t *vka, uint32_t size_bits, vka_object_t *result) argument 212 vka_alloc_frame_maybe_device(vka_t *vka, uint32_t size_bits, bool can_use_dev, vka_object_t *result) argument 218 vka_alloc_frame_at(vka_t *vka, uint32_t size_bits, uintptr_t paddr, vka_object_t *result) argument 245 vka_alloc_kobject(vka_t *vka, kobject_t type, seL4_Word size_bits, vka_object_t *result) argument [all...] |
H A D | vka.h | 61 * @param size_bits the size of the object to allocate (as passed to Untyped_Retype) 65 typedef int (*vka_utspace_alloc_fn)(void *data, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, 74 * @param size_bits the size of the object to allocate (as passed to Untyped_Retype) 79 typedef int (*vka_utspace_alloc_at_fn)(void *data, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, 88 * @param size_bits the size of the object to allocate (as passed to Untyped_Retype) 94 seL4_Word size_bits, bool can_use_dev, seL4_Word *res); 102 * @param size_bits the size of the object that was allocated (as passed to Untyped_Retype) 105 typedef void (*vka_utspace_free_fn)(void *data, seL4_Word type, seL4_Word size_bits, seL4_Word target); 113 * @param size_bits the size of the object that was allocated (as passed to Untyped_Retype) 116 typedef uintptr_t (*vka_utspace_paddr_fn)(void *data, seL4_Word target, seL4_Word type, seL4_Word size_bits); 217 vka_utspace_alloc(vka_t *vka, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, seL4_Word *res) argument 238 vka_utspace_alloc_maybe_device(vka_t *vka, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, bool can_use_dev, seL4_Word *res) argument 259 vka_utspace_alloc_at(vka_t *vka, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, uintptr_t paddr, seL4_Word *cookie) argument 278 vka_utspace_free(vka_t *vka, seL4_Word type, seL4_Word size_bits, seL4_Word target) argument 296 vka_utspace_paddr(vka_t *vka, seL4_Word target, seL4_Word type, seL4_Word size_bits) argument [all...] |
/seL4-refos-master/libs/libsel4allocman/src/utspace/ |
H A D | twinkle.c | 36 int _utspace_twinkle_add_uts(allocman_t *alloc, void *_twinkle, size_t num, const cspacepath_t *uts, size_t *size_bits, argument 57 uts[i], 0, size_bits[i] 64 seL4_Word _utspace_twinkle_alloc(allocman_t *alloc, void *_twinkle, size_t size_bits, seL4_Word type, argument 76 sel4_size_bits = get_sel4_object_size(type, size_bits); 77 if (size_bits != vka_get_object_size(type, sel4_size_bits) || size_bits == 0) { 83 if (_round_up(twinkle->uts[i].offset, size_bits) + BIT(size_bits) <= BIT(twinkle->uts[i].size_bits)) { 92 for (j = i; j < twinkle->num_uts && twinkle->uts[i].size_bits 118 _utspace_twinkle_free(allocman_t *alloc, void *_twinkle, seL4_Word cookie, size_t size_bits) argument [all...] |
H A D | split.c | 100 int _utspace_split_add_uts(allocman_t *alloc, void *_split, size_t num, const cspacepath_t *uts, size_t *size_bits, argument 121 error = _insert_new_node(alloc, &list[size_bits[i]], uts[i], paddr ? paddr[i] : ALLOCMAN_NO_PADDR); 129 static int _refill_pool(allocman_t *alloc, utspace_split_t *split, struct utspace_split_node **heads, size_t size_bits, argument 137 if (heads[size_bits]) { 142 for (node = heads[size_bits]; node; node = node->next) { 146 if (node->paddr <= paddr && paddr < node->paddr + BIT(size_bits)) { 152 if (size_bits >= sizeof(seL4_Word) * 8 - 2) { 154 ZF_LOGV("Failed to refill pool of size %zu, no larger pools", size_bits); 158 if (_refill_pool(alloc, split, heads, size_bits + 1, paddr)) { 160 ZF_LOGV("Failed to refill pool of size %zu", size_bits); 225 find_head_for_paddr(struct utspace_split_node **head, uintptr_t paddr, size_t size_bits) argument 244 _utspace_split_alloc(allocman_t *alloc, void *_split, size_t size_bits, seL4_Word type, const cspacepath_t *slot, uintptr_t paddr, bool canBeDev, int *error) argument 327 _utspace_split_free(allocman_t *alloc, void *_split, seL4_Word cookie, size_t size_bits) argument 347 _utspace_split_paddr(void *_split, seL4_Word cookie, size_t size_bits) argument [all...] |
/seL4-refos-master/projects/seL4_libs/libsel4allocman/src/utspace/ |
H A D | twinkle.c | 36 int _utspace_twinkle_add_uts(allocman_t *alloc, void *_twinkle, size_t num, const cspacepath_t *uts, size_t *size_bits, argument 57 uts[i], 0, size_bits[i] 64 seL4_Word _utspace_twinkle_alloc(allocman_t *alloc, void *_twinkle, size_t size_bits, seL4_Word type, argument 76 sel4_size_bits = get_sel4_object_size(type, size_bits); 77 if (size_bits != vka_get_object_size(type, sel4_size_bits) || size_bits == 0) { 83 if (_round_up(twinkle->uts[i].offset, size_bits) + BIT(size_bits) <= BIT(twinkle->uts[i].size_bits)) { 92 for (j = i; j < twinkle->num_uts && twinkle->uts[i].size_bits 118 _utspace_twinkle_free(allocman_t *alloc, void *_twinkle, seL4_Word cookie, size_t size_bits) argument [all...] |
H A D | split.c | 100 int _utspace_split_add_uts(allocman_t *alloc, void *_split, size_t num, const cspacepath_t *uts, size_t *size_bits, argument 121 error = _insert_new_node(alloc, &list[size_bits[i]], uts[i], paddr ? paddr[i] : ALLOCMAN_NO_PADDR); 129 static int _refill_pool(allocman_t *alloc, utspace_split_t *split, struct utspace_split_node **heads, size_t size_bits, argument 137 if (heads[size_bits]) { 142 for (node = heads[size_bits]; node; node = node->next) { 146 if (node->paddr <= paddr && paddr < node->paddr + BIT(size_bits)) { 152 if (size_bits >= sizeof(seL4_Word) * 8 - 2) { 154 ZF_LOGV("Failed to refill pool of size %zu, no larger pools", size_bits); 158 if (_refill_pool(alloc, split, heads, size_bits + 1, paddr)) { 160 ZF_LOGV("Failed to refill pool of size %zu", size_bits); 225 find_head_for_paddr(struct utspace_split_node **head, uintptr_t paddr, size_t size_bits) argument 244 _utspace_split_alloc(allocman_t *alloc, void *_split, size_t size_bits, seL4_Word type, const cspacepath_t *slot, uintptr_t paddr, bool canBeDev, int *error) argument 327 _utspace_split_free(allocman_t *alloc, void *_split, seL4_Word cookie, size_t size_bits) argument 347 _utspace_split_paddr(void *_split, seL4_Word cookie, size_t size_bits) argument [all...] |
/seL4-refos-master/libs/libsel4allocman/src/ |
H A D | vka.c | 85 * @param size_bits the size of the object to allocate (as passed to Untyped_Retype) 91 seL4_Word type, seL4_Word size_bits, bool can_use_dev, seL4_Word *res) 99 /* allocman uses the size in memory internally, where as vka expects size_bits 101 size_bits = vka_get_object_size(type, size_bits); 103 *res = allocman_utspace_alloc((allocman_t *) data, size_bits, type, (cspacepath_t*)dest, can_use_dev, &error); 114 * @param size_bits the size of the object to allocate (as passed to Untyped_Retype) 118 static int am_vka_utspace_alloc (void *data, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, seL4_Word *res) argument 120 return am_vka_utspace_alloc_maybe_device(data, dest, type, size_bits, false, res); 129 * @param size_bits th 90 am_vka_utspace_alloc_maybe_device(void *data, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, bool can_use_dev, seL4_Word *res) argument 134 am_vka_utspace_alloc_at(void *data, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, uintptr_t paddr, seL4_Word *res) argument 160 am_vka_utspace_free(void *data, seL4_Word type, seL4_Word size_bits, seL4_Word target) argument 171 am_vka_utspace_paddr(void *data, seL4_Word target, seL4_Word type, seL4_Word size_bits) argument [all...] |
/seL4-refos-master/projects/seL4_libs/libsel4allocman/src/ |
H A D | vka.c | 85 * @param size_bits the size of the object to allocate (as passed to Untyped_Retype) 91 seL4_Word type, seL4_Word size_bits, bool can_use_dev, seL4_Word *res) 99 /* allocman uses the size in memory internally, where as vka expects size_bits 101 size_bits = vka_get_object_size(type, size_bits); 103 *res = allocman_utspace_alloc((allocman_t *) data, size_bits, type, (cspacepath_t*)dest, can_use_dev, &error); 114 * @param size_bits the size of the object to allocate (as passed to Untyped_Retype) 118 static int am_vka_utspace_alloc (void *data, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, seL4_Word *res) argument 120 return am_vka_utspace_alloc_maybe_device(data, dest, type, size_bits, false, res); 129 * @param size_bits th 90 am_vka_utspace_alloc_maybe_device(void *data, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, bool can_use_dev, seL4_Word *res) argument 134 am_vka_utspace_alloc_at(void *data, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, uintptr_t paddr, seL4_Word *res) argument 160 am_vka_utspace_free(void *data, seL4_Word type, seL4_Word size_bits, seL4_Word target) argument 171 am_vka_utspace_paddr(void *data, seL4_Word target, seL4_Word type, seL4_Word size_bits) argument [all...] |
/seL4-refos-master/libs/libsel4allocman/include/allocman/utspace/ |
H A D | utspace.h | 49 static inline size_t get_sel4_object_size(seL4_Word type, size_t size_bits) { argument 51 return size_bits - seL4_SlotBits; 53 return vka_get_object_size(type, size_bits); 60 /* size_bits is always the size in memory of allocated object. This differs to the untypedretype 61 semantics of size_bits when cnodes are involved */ 62 seL4_Word (*alloc)(struct allocman *alloc, void *utspace, size_t size_bits, seL4_Word object_type, const cspacepath_t *slot, uintptr_t paddr, bool canBeDevice, int *error); 63 void (*free)(struct allocman *alloc, void *utspace, seL4_Word cookie, size_t size_bits); 64 int (*add_uts)(struct allocman *alloc, void *utspace, size_t num, const cspacepath_t *uts, size_t *size_bits, uintptr_t *paddr, int utType); 65 uintptr_t (*paddr)(void *utspace, seL4_Word cookie, size_t size_bits);
|
H A D | twinkle.h | 28 size_t size_bits; member in struct:utspace_twinkle_ut 37 int _utspace_twinkle_add_uts(struct allocman *alloc, void *_twinkle, size_t num, const cspacepath_t *uts, size_t *size_bits, uintptr_t *paddr, int utType); 39 seL4_Word _utspace_twinkle_alloc(struct allocman *alloc, void *_twinkle, size_t size_bits, seL4_Word type, const cspacepath_t *slot, uintptr_t paddr, bool canBeDev, int *error); 40 void _utspace_twinkle_free(struct allocman *alloc, void *_twinkle, seL4_Word cookie, size_t size_bits); 42 static inline uintptr_t _utspace_twinkle_paddr(void *_twinkle, seL4_Word cookie, size_t size_bits) { argument
|
/seL4-refos-master/projects/seL4_libs/libsel4allocman/include/allocman/utspace/ |
H A D | utspace.h | 49 static inline size_t get_sel4_object_size(seL4_Word type, size_t size_bits) { argument 51 return size_bits - seL4_SlotBits; 53 return vka_get_object_size(type, size_bits); 60 /* size_bits is always the size in memory of allocated object. This differs to the untypedretype 61 semantics of size_bits when cnodes are involved */ 62 seL4_Word (*alloc)(struct allocman *alloc, void *utspace, size_t size_bits, seL4_Word object_type, const cspacepath_t *slot, uintptr_t paddr, bool canBeDevice, int *error); 63 void (*free)(struct allocman *alloc, void *utspace, seL4_Word cookie, size_t size_bits); 64 int (*add_uts)(struct allocman *alloc, void *utspace, size_t num, const cspacepath_t *uts, size_t *size_bits, uintptr_t *paddr, int utType); 65 uintptr_t (*paddr)(void *utspace, seL4_Word cookie, size_t size_bits);
|
/seL4-refos-master/libs/libsel4vspace/include/vspace/ |
H A D | page.h | 24 sel4_valid_size_bits(size_t size_bits) argument 26 for (int i = 0; i < SEL4_NUM_PAGE_SIZES && size_bits >= sel4_page_sizes[i]; i++) { 31 if (size_bits == sel4_page_sizes[i]) {
|
/seL4-refos-master/libs/libsel4vspace/src/sel4_arch/aarch64/ |
H A D | mapping.c | 22 obj->size_bits = seL4_PageTableBits; 27 obj->size_bits = seL4_PageDirBits; 33 obj->size_bits = seL4_PUDBits;
|
/seL4-refos-master/libs/libsel4vspace/src/sel4_arch/x86_64/ |
H A D | mapping.c | 22 obj->size_bits = seL4_PageTableBits; 27 obj->size_bits = seL4_PageDirBits; 32 obj->size_bits = seL4_PDPTBits,
|
/seL4-refos-master/projects/seL4_libs/libsel4vspace/include/vspace/ |
H A D | page.h | 24 sel4_valid_size_bits(size_t size_bits) argument 26 for (int i = 0; i < SEL4_NUM_PAGE_SIZES && size_bits >= sel4_page_sizes[i]; i++) { 31 if (size_bits == sel4_page_sizes[i]) {
|
/seL4-refos-master/projects/seL4_libs/libsel4vspace/src/sel4_arch/aarch64/ |
H A D | mapping.c | 22 obj->size_bits = seL4_PageTableBits; 27 obj->size_bits = seL4_PageDirBits; 33 obj->size_bits = seL4_PUDBits;
|
/seL4-refos-master/projects/seL4_libs/libsel4vspace/src/sel4_arch/x86_64/ |
H A D | mapping.c | 22 obj->size_bits = seL4_PageTableBits; 27 obj->size_bits = seL4_PageDirBits; 32 obj->size_bits = seL4_PDPTBits,
|
/seL4-refos-master/libs/libsel4utils/src/ |
H A D | slab.c | 37 ssize_t size_bits; member in struct:__anon642 46 return obj_b->size_bits - obj_a->size_bits; 70 seL4_Word size_bits, seL4_Word *res) 81 return vka_utspace_alloc(sdata->delegate, dest, type, size_bits, res); 96 seL4_Word size_bits, bool can_use_dev, seL4_Word *res) 98 return slab_utspace_alloc(data, dest, type, size_bits, res); 101 static int delegate_utspace_alloc_at(void *data, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, argument 105 return vka_utspace_alloc_at(sdata->delegate, dest, type, size_bits, paddr, res); 109 slab_utspace_free(void *data, seL4_Word type, seL4_Word size_bits, seL4_Wor argument 69 slab_utspace_alloc(void *data, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, seL4_Word *res) argument 95 slab_utspace_alloc_maybe_device(void *data, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, bool can_use_dev, seL4_Word *res) argument 135 alloc_object(vka_t *delegate, vka_object_t *untyped, size_t size_bits, seL4_Word type, vka_object_t *object) argument 156 alloc_object_slab(vka_t *delegate, vka_object_t *untyped, slab_t *slab, size_t n, size_t size_bits, seL4_Word type) argument [all...] |
/seL4-refos-master/projects/seL4_libs/libsel4utils/src/ |
H A D | slab.c | 37 ssize_t size_bits; member in struct:__anon808 46 return obj_b->size_bits - obj_a->size_bits; 70 seL4_Word size_bits, seL4_Word *res) 81 return vka_utspace_alloc(sdata->delegate, dest, type, size_bits, res); 96 seL4_Word size_bits, bool can_use_dev, seL4_Word *res) 98 return slab_utspace_alloc(data, dest, type, size_bits, res); 101 static int delegate_utspace_alloc_at(void *data, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, argument 105 return vka_utspace_alloc_at(sdata->delegate, dest, type, size_bits, paddr, res); 109 slab_utspace_free(void *data, seL4_Word type, seL4_Word size_bits, seL4_Wor argument 69 slab_utspace_alloc(void *data, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, seL4_Word *res) argument 95 slab_utspace_alloc_maybe_device(void *data, const cspacepath_t *dest, seL4_Word type, seL4_Word size_bits, bool can_use_dev, seL4_Word *res) argument 135 alloc_object(vka_t *delegate, vka_object_t *untyped, size_t size_bits, seL4_Word type, vka_object_t *object) argument 156 alloc_object_slab(vka_t *delegate, vka_object_t *untyped, slab_t *slab, size_t n, size_t size_bits, seL4_Word type) argument [all...] |