env: Remove one layer of functions in spdk_vtophys_register

spdk_vtophys_register_one and spdk_vtophys_unregister_one
were both only called from one spot and are tiny functions.
Remove the extra layer of indirection for code clarity.

Change-Id: I4cf2698d6c7df7e09bfe05d786e39e1fb063a973
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-on: https://review.gerrithub.io/375245
Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com>
Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
This commit is contained in:
Ben Walker 2017-08-22 14:16:06 -07:00 committed by Jim Harris
parent 189c02996b
commit d9a2fd3a41

View File

@ -471,25 +471,6 @@ vtophys_get_paddr(uint64_t vaddr)
return SPDK_VTOPHYS_ERROR;
}
static int
_spdk_vtophys_register_one(uint64_t vfn_2mb, uint64_t paddr)
{
if (paddr & MASK_2MB) {
#ifdef DEBUG
fprintf(stderr, "invalid paddr 0x%" PRIx64 " - must be 2MB aligned\n", paddr);
#endif
return -EINVAL;
}
return spdk_mem_map_set_translation(g_vtophys_map, vfn_2mb << SHIFT_2MB, 2 * 1024 * 1024, paddr);
}
static int
_spdk_vtophys_unregister_one(uint64_t vfn_2mb)
{
return spdk_mem_map_clear_translation(g_vtophys_map, vfn_2mb << SHIFT_2MB, 2 * 1024 * 1024);
}
static int
spdk_vtophys_register(void *vaddr, uint64_t len)
{
@ -525,7 +506,14 @@ spdk_vtophys_register(void *vaddr, uint64_t len)
return -EFAULT;
}
rc = _spdk_vtophys_register_one(vfn_2mb, paddr);
if (paddr & MASK_2MB) {
#ifdef DEBUG
fprintf(stderr, "invalid paddr 0x%" PRIx64 " - must be 2MB aligned\n", paddr);
#endif
return -EINVAL;
}
rc = spdk_mem_map_set_translation(g_vtophys_map, vaddr, 1 << SHIFT_2MB, paddr);
if (rc != 0) {
return rc;
}
@ -561,7 +549,7 @@ spdk_vtophys_unregister(void *vaddr, uint64_t len)
len = len >> SHIFT_2MB;
while (len > 0) {
rc = _spdk_vtophys_unregister_one(vfn_2mb);
rc = spdk_mem_map_clear_translation(g_vtophys_map, vfn_2mb << SHIFT_2MB, 1 << SHIFT_2MB);
if (rc != 0) {
return rc;
}