Home
last modified time | relevance | path

Searched refs:msl (Results 1 – 25 of 42) sorted by relevance

12

/dpdk/lib/eal/common/
H A Deal_common_memory.c211 msl->heap = heap; in eal_memseg_list_init_named()
259 msl->len = mem_sz; in eal_memseg_list_alloc()
299 if (msl == NULL) in virt2memseg()
311 ms_idx = RTE_PTR_DIFF(addr, msl->base_va) / msl->page_sz; in virt2memseg()
334 return msl; in virt2memseg_list()
398 return virt2memseg(addr, msl != NULL ? msl : in rte_mem_virt2memseg()
407 if (msl->external) in physmem_size()
410 *total_len += msl->memseg_arr.count * msl->page_sz; in physmem_size()
803 if (msl == NULL) { in rte_memseg_get_fd_thread_unsafe()
1047 if (rte_mem_unmap(msl->base_va, msl->len) != 0) in rte_eal_memory_detach()
[all …]
H A Dmalloc_heap.c115 if (msl->external) in malloc_add_seg()
139 msl->socket_id); in malloc_add_seg()
875 msl = elem->msl; in malloc_heap_free()
1188 msl = tmp; in malloc_heap_create_external_seg()
1232 return msl; in malloc_heap_create_external_seg()
1247 if (msl->base_va == wa->va_addr && msl->len == wa->len) { in extseg_walk()
1275 return wa.msl; in malloc_heap_find_external_seg()
1286 memset(msl, 0, sizeof(*msl)); in malloc_heap_destroy_external_seg()
1296 memset(msl->base_va, 0, msl->len); in malloc_heap_add_external_memory()
1299 malloc_heap_add_memory(heap, msl, msl->base_va, msl->len, false); in malloc_heap_add_external_memory()
[all …]
H A Drte_malloc.c380 ms = rte_mem_virt2memseg(addr, elem->msl); in rte_malloc_virt2iova()
410 struct rte_memseg_list *msl; in rte_malloc_heap_memory_add() local
444 if (msl == NULL) { in rte_malloc_heap_memory_add()
451 msl->heap = 1; /* mark it as heap segment */ in rte_malloc_heap_memory_add()
464 struct rte_memseg_list *msl; in rte_malloc_heap_memory_remove() local
490 if (msl == NULL) { in rte_malloc_heap_memory_remove()
501 ret = malloc_heap_destroy_external_seg(msl); in rte_malloc_heap_memory_remove()
513 struct rte_memseg_list *msl; in sync_memory() local
541 if (msl == NULL) { in sync_memory()
547 ret = rte_fbarray_attach(&msl->memseg_arr); in sync_memory()
[all …]
H A Dmalloc_elem.c43 page_sz = (size_t)elem->msl->page_sz; in malloc_elem_find_max_iova_contig()
58 if (!elem->msl->external && in malloc_elem_find_max_iova_contig()
65 ms = rte_mem_virt2memseg(cur_page, elem->msl); in malloc_elem_find_max_iova_contig()
93 ms = rte_mem_virt2memseg(contig_seg_start, elem->msl); in malloc_elem_find_max_iova_contig()
125 struct rte_memseg_list *msl, size_t size, in malloc_elem_init() argument
129 elem->msl = msl; in malloc_elem_init()
207 elem_check_phys_contig(const struct rte_memseg_list *msl, in elem_check_phys_contig() argument
210 return eal_memalloc_is_contig(msl, start, size); in elem_check_phys_contig()
263 if (!elem_check_phys_contig(elem->msl, in elem_start_pt()
345 elem->next->msl == elem->msl && in next_elem_is_adjacent()
[all …]
H A Deal_common_memalloc.c68 eal_memalloc_is_contig(const struct rte_memseg_list *msl, void *start, in eal_memalloc_is_contig() argument
72 size_t pgsz = (size_t)msl->page_sz; in eal_memalloc_is_contig()
78 if (rte_eal_iova_mode() == RTE_IOVA_VA && !msl->external) in eal_memalloc_is_contig()
117 start_seg = RTE_PTR_DIFF(aligned_start, msl->base_va) / in eal_memalloc_is_contig()
119 end_seg = RTE_PTR_DIFF(aligned_end, msl->base_va) / in eal_memalloc_is_contig()
127 ms = rte_fbarray_get(&msl->memseg_arr, start_seg); in eal_memalloc_is_contig()
137 ms = rte_fbarray_get(&msl->memseg_arr, cur_seg); in eal_memalloc_is_contig()
H A Deal_common_dynmem.c28 struct rte_memseg_list *msl; in eal_dynmem_memseg_lists_init() local
186 msl = &mcfg->memsegs[msl_idx++]; in eal_dynmem_memseg_lists_init()
188 if (eal_memseg_list_init(msl, pagesz, n_segs, in eal_dynmem_memseg_lists_init()
192 if (eal_memseg_list_alloc(msl, 0)) { in eal_dynmem_memseg_lists_init()
206 hugepage_count_walk(const struct rte_memseg_list *msl, void *arg) in hugepage_count_walk() argument
210 if (msl->page_sz != hpi->hugepage_sz) in hugepage_count_walk()
213 hpi->num_pages[msl->socket_id] += msl->memseg_arr.len; in hugepage_count_walk()
H A Deal_private.h267 eal_memseg_list_init_named(struct rte_memseg_list *msl, const char *name,
280 eal_memseg_list_init(struct rte_memseg_list *msl, uint64_t page_sz,
295 eal_memseg_list_alloc(struct rte_memseg_list *msl, int reserve_flags);
308 eal_memseg_list_populate(struct rte_memseg_list *msl, void *addr, int n_segs);
H A Deal_common_memzone.c196 mz->hugepage_sz = elem->msl->page_sz; in memzone_reserve_aligned_thread_unsafe()
197 mz->socket_id = elem->msl->socket_id; in memzone_reserve_aligned_thread_unsafe()
330 struct rte_memseg_list *msl = NULL; in dump_memzone() local
349 msl = rte_mem_virt2memseg_list(mz->addr); in dump_memzone()
350 if (!msl) { in dump_memzone()
359 ms_idx = RTE_PTR_DIFF(mz->addr, msl->base_va) / page_sz; in dump_memzone()
360 ms = rte_fbarray_get(&msl->memseg_arr, ms_idx); in dump_memzone()
H A Dmalloc_heap.h59 malloc_heap_destroy_external_seg(struct rte_memseg_list *msl);
63 struct rte_memseg_list *msl);
/dpdk/lib/eal/freebsd/
H A Deal_memory.c68 struct rte_memseg_list *msl; in rte_eal_hugepage_init() local
73 msl = &mcfg->memsegs[0]; in rte_eal_hugepage_init()
92 msl->base_va = addr; in rte_eal_hugepage_init()
93 msl->len = mem_sz; in rte_eal_hugepage_init()
117 struct rte_memseg_list *msl; in rte_eal_hugepage_init() local
147 arr = &msl->memseg_arr; in rte_eal_hugepage_init()
180 arr = &msl->memseg_arr; in rte_eal_hugepage_init()
239 if (msl->external) in attach_segment()
338 struct rte_memseg_list *msl; in memseg_primary_init() local
443 struct rte_memseg_list *msl; in memseg_secondary_init() local
[all …]
/dpdk/lib/eal/include/generic/
H A Drte_mcslock.h47 rte_mcslock_lock(rte_mcslock_t **msl, rte_mcslock_t *me) in rte_mcslock_lock() argument
61 prev = __atomic_exchange_n(msl, me, __ATOMIC_ACQ_REL); in rte_mcslock_lock()
99 rte_mcslock_unlock(rte_mcslock_t **msl, rte_mcslock_t *me) in rte_mcslock_unlock() argument
107 if (likely(__atomic_compare_exchange_n(msl, &save_me, NULL, 0, in rte_mcslock_unlock()
140 rte_mcslock_trylock(rte_mcslock_t **msl, rte_mcslock_t *me) in rte_mcslock_trylock() argument
154 return __atomic_compare_exchange_n(msl, &expected, me, 0, in rte_mcslock_trylock()
167 rte_mcslock_is_locked(rte_mcslock_t *msl) in rte_mcslock_is_locked() argument
169 return (__atomic_load_n(&msl, __ATOMIC_RELAXED) != NULL); in rte_mcslock_is_locked()
/dpdk/drivers/net/mlx4/
H A Dmlx4_mr.c44 const struct rte_memseg_list *msl; member
293 if (mr->msl == NULL) { in mr_find_next_chunk()
314 msl = mr->msl; in mr_find_next_chunk()
524 data->msl = msl; in mr_find_contig_memsegs_cb()
595 const struct rte_memseg_list *msl; in mlx4_mr_create_primary() local
649 msl = data.msl; in mlx4_mr_create_primary()
654 ms_n = len / msl->page_sz; in mlx4_mr_create_primary()
673 mr->msl = msl; in mlx4_mr_create_primary()
699 if (len > msl->page_sz && in mlx4_mr_create_primary()
719 MLX4_ASSERT(data.msl == data_re.msl); in mlx4_mr_create_primary()
[all …]
/dpdk/drivers/common/mlx5/
H A Dmlx5_common_mr.c343 if (mr->msl == NULL) { in mr_find_next_chunk()
362 msl = mr->msl; in mr_find_next_chunk()
583 data->msl = msl; in mr_find_contig_memsegs_cb()
707 MLX5_ASSERT(data.msl); in mlx5_mr_create_primary()
710 msl = data.msl; in mlx5_mr_create_primary()
716 ms_n = len / msl->page_sz; in mlx5_mr_create_primary()
731 mr->msl = msl; in mlx5_mr_create_primary()
756 if (len > msl->page_sz && in mlx5_mr_create_primary()
775 MLX5_ASSERT(data.msl == data_re.msl); in mlx5_mr_create_primary()
1369 page_size = msl != NULL ? msl->page_sz : rte_mem_page_size(); in mlx5_mempool_get_extmem_cb()
[all …]
H A Dmlx5_malloc.c69 mlx5_mem_check_msl(void *addr, struct rte_memseg_list *msl) in mlx5_mem_check_msl() argument
73 if (!msl) in mlx5_mem_check_msl()
75 start = msl->base_va; in mlx5_mem_check_msl()
76 end = RTE_PTR_ADD(start, msl->len); in mlx5_mem_check_msl()
/dpdk/lib/eal/linux/
H A Deal_memory.c659 struct rte_memseg_list *msl; local
682 arr = &msl->memseg_arr;
813 memset(msl, 0, sizeof(*msl));
951 if (msl->base_va != NULL)
1138 msl = &mcfg->memsegs[0];
1443 if (msl->base_va == NULL)
1449 mem_sz = msl->len;
1451 msl->base_va = NULL;
1452 msl->heap = 0;
1572 if (msl == NULL) {
[all …]
H A Deal_memalloc.c832 msl_idx = msl - mcfg->memsegs; in alloc_seg_walk()
966 msl_idx = msl - mcfg->memsegs; in free_seg_walk()
1391 if (msl->external) in sync_walk()
1394 msl_idx = msl - mcfg->memsegs; in sync_walk()
1442 if (msl->external) in secondary_msl_create_walk()
1445 msl_idx = msl - mcfg->memsegs; in secondary_msl_create_walk()
1474 if (msl->external) in secondary_msl_destroy_walk()
1477 msl_idx = msl - mcfg->memsegs; in secondary_msl_destroy_walk()
1559 if (msl->external) in fd_list_create_walk()
1563 len = msl->memseg_arr.len; in fd_list_create_walk()
[all …]
H A Deal_vfio.c609 struct rte_memseg_list *msl; in vfio_mem_event_callback() local
613 msl = rte_mem_virt2memseg_list(addr); in vfio_mem_event_callback()
618 uint64_t page_sz = msl->page_sz; in vfio_mem_event_callback()
635 ms = rte_mem_virt2memseg(addr, msl); in vfio_mem_event_callback()
1378 if (msl->external) in type1_map_contig()
1392 if (msl->external && !msl->heap) in type1_map()
1560 vfio_spapr_map_walk(const struct rte_memseg_list *msl, in vfio_spapr_map_walk() argument
1566 if (msl->external && !msl->heap) in vfio_spapr_map_walk()
1592 uint64_t max = (uint64_t) msl->base_va + (uint64_t) msl->len; in vfio_spapr_size_walk()
1594 if (msl->external && !msl->heap) { in vfio_spapr_size_walk()
[all …]
/dpdk/lib/eal/windows/
H A Deal_memalloc.c179 alloc_seg_walk(const struct rte_memseg_list *msl, void *arg) in alloc_seg_walk() argument
188 if (msl->page_sz != wa->page_sz) in alloc_seg_walk()
190 if (msl->socket_id != wa->socket) in alloc_seg_walk()
193 page_sz = (size_t)msl->page_sz; in alloc_seg_walk()
195 msl_idx = msl - mcfg->memsegs; in alloc_seg_walk()
280 free_seg_walk(const struct rte_memseg_list *msl, void *arg) in free_seg_walk() argument
288 start_addr = (uintptr_t) msl->base_va; in free_seg_walk()
289 end_addr = start_addr + msl->len; in free_seg_walk()
295 msl_idx = msl - mcfg->memsegs; in free_seg_walk()
296 seg_idx = RTE_PTR_DIFF(wa->ms->addr, start_addr) / msl->page_sz; in free_seg_walk()
H A Deal_memory.c659 struct rte_memseg_list *msl; in eal_nohuge_init() local
671 msl = &mcfg->memsegs[0]; in eal_nohuge_init()
678 msl, "nohugemem", page_sz, n_segs, 0, true)) { in eal_nohuge_init()
690 msl->base_va = addr; in eal_nohuge_init()
691 msl->len = mem_sz; in eal_nohuge_init()
693 eal_memseg_list_populate(msl, addr, n_segs); in eal_nohuge_init()
/dpdk/app/test/
H A Dtest_memory.c34 check_mem(const struct rte_memseg_list *msl __rte_unused, in check_mem()
46 check_seg_fds(const struct rte_memseg_list *msl, const struct rte_memseg *ms, in check_seg_fds() argument
53 if (msl->external) in check_seg_fds()
/dpdk/lib/eal/include/
H A Drte_memory.h149 rte_mem_virt2memseg(const void *virt, const struct rte_memseg_list *msl);
169 typedef int (*rte_memseg_walk_t)(const struct rte_memseg_list *msl,
181 typedef int (*rte_memseg_contig_walk_t)(const struct rte_memseg_list *msl,
192 typedef int (*rte_memseg_list_walk_t)(const struct rte_memseg_list *msl,
/dpdk/drivers/net/virtio/virtio_user/
H A Dvhost_vdpa.c316 vhost_vdpa_map_contig(const struct rte_memseg_list *msl, in vhost_vdpa_map_contig() argument
321 if (msl->external) in vhost_vdpa_map_contig()
328 vhost_vdpa_map(const struct rte_memseg_list *msl, const struct rte_memseg *ms, in vhost_vdpa_map() argument
334 if (msl->external && !msl->heap) in vhost_vdpa_map()
342 if (!msl->external && rte_eal_iova_mode() == RTE_IOVA_VA) in vhost_vdpa_map()
H A Dvhost_kernel.c184 add_memseg_list(const struct rte_memseg_list *msl, void *arg) in add_memseg_list() argument
191 if (msl->external) in add_memseg_list()
197 start_addr = msl->base_va; in add_memseg_list()
198 len = msl->page_sz * msl->memseg_arr.len; in add_memseg_list()
/dpdk/drivers/common/dpaax/
H A Ddpaax_iova_table.c394 struct rte_memseg_list *msl; in dpaax_memevent_cb() local
403 msl = rte_mem_virt2memseg_list(addr); in dpaax_memevent_cb()
408 ms = rte_mem_virt2memseg(va, msl); in dpaax_memevent_cb()
440 dpaax_memevent_walk_memsegs(const struct rte_memseg_list *msl __rte_unused, in dpaax_memevent_walk_memsegs()
/dpdk/drivers/bus/vmbus/linux/
H A Dvmbus_uio.c123 find_max_end_va(const struct rte_memseg_list *msl, void *arg) in find_max_end_va() argument
125 size_t sz = msl->memseg_arr.len * msl->page_sz; in find_max_end_va()
126 void *end_va = RTE_PTR_ADD(msl->base_va, sz); in find_max_end_va()

12