Commit f153f632 authored by Jinlong Chen's avatar Jinlong Chen Committed by Jim Harris
Browse files

env: add mem_map_fini and vtophys_fini for cleanup



Change-Id: I870dbe917b0e413a4b8112ee2ced414531c2fe86
Signed-off-by: default avatarJinlong Chen <chenjinlong.cjl@alibaba-inc.com>
Reviewed-on: https://review.spdk.io/c/spdk/spdk/+/25494


Community-CI: Mellanox Build Bot
Reviewed-by: default avatarJim Harris <jim.harris@nvidia.com>
Reviewed-by: default avatarAnkit Kumar <ankit.kumar@samsung.com>
Tested-by: default avatarSPDK Automated Test System <spdkbot@gmail.com>
Reviewed-by: default avatarKonrad Sztyber <ksztyber@nvidia.com>
Reviewed-by: default avatarGangCao <gang.cao@intel.com>
parent 566d17cd
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -31,7 +31,9 @@ int pci_env_init(void);
void pci_env_reinit(void);
void pci_env_fini(void);
int mem_map_init(bool legacy_mem);
void mem_map_fini(void);
int vtophys_init(void);
void vtophys_fini(void);

int vtophys_iommu_map_dma_bar(uint64_t vaddr, uint64_t iova, uint64_t size);
int vtophys_iommu_unmap_dma_bar(uint64_t vaddr);
+2 −0
Original line number Diff line number Diff line
@@ -597,6 +597,8 @@ spdk_env_dpdk_post_init(bool legacy_mem)
void
spdk_env_dpdk_post_fini(void)
{
	vtophys_fini();
	mem_map_fini();
	pci_env_fini();

	free_args(g_eal_cmdline, g_eal_cmdline_argcount);
+15 −0
Original line number Diff line number Diff line
@@ -796,6 +796,13 @@ err_free_reg_map:
	return rc;
}

void
mem_map_fini(void)
{
	mem_map_mem_event_callback_unregister();
	spdk_mem_map_free(&g_mem_reg_map);
}

bool
spdk_iommu_is_enabled(void)
{
@@ -1607,6 +1614,14 @@ vtophys_init(void)
	return 0;
}

void
vtophys_fini(void)
{
	spdk_mem_map_free(&g_vtophys_map);
	spdk_mem_map_free(&g_numa_map);
	spdk_mem_map_free(&g_phys_ref_map);
}

uint64_t
spdk_vtophys(const void *buf, uint64_t *size)
{