diff --git a/kernel/base/include/los_vm_map.h b/kernel/base/include/los_vm_map.h index cfd9dffe..32d6038d 100755 --- a/kernel/base/include/los_vm_map.h +++ b/kernel/base/include/los_vm_map.h @@ -273,6 +273,7 @@ VADDR_T OsAllocSpecificRange(LosVmSpace *vmSpace, VADDR_T vaddr, size_t len, UIN LosVmMapRegion *OsCreateRegion(VADDR_T vaddr, size_t len, UINT32 regionFlags, unsigned long offset); BOOL OsInsertRegion(LosRbTree *regionRbTree, LosVmMapRegion *region); LosVmSpace *LOS_SpaceGet(VADDR_T vaddr); +LosVmSpace *LOS_CurrSpaceGet(VOID); BOOL LOS_IsRegionFileValid(LosVmMapRegion *region); LosVmMapRegion *LOS_RegionRangeFind(LosVmSpace *vmSpace, VADDR_T addr, size_t len); LosVmMapRegion *LOS_RegionFind(LosVmSpace *vmSpace, VADDR_T addr); diff --git a/kernel/base/vm/los_vm_map.c b/kernel/base/vm/los_vm_map.c index 77bc1ac8..f840c0cc 100755 --- a/kernel/base/vm/los_vm_map.c +++ b/kernel/base/vm/los_vm_map.c @@ -59,12 +59,17 @@ LOS_DL_LIST_HEAD(g_vmSpaceList); LosVmSpace g_kVmSpace; LosVmSpace g_vMallocSpace; +LosVmSpace *LOS_CurrSpaceGet(VOID) +{ + return OsCurrProcessGet()->vmSpace; +} + LosVmSpace *LOS_SpaceGet(VADDR_T vaddr) { if (LOS_IsKernelAddress(vaddr)) { return LOS_GetKVmSpace(); } else if (LOS_IsUserAddress(vaddr)) { - return OsCurrProcessGet()->vmSpace; + return LOS_CurrSpaceGet(); } else if (LOS_IsVmallocAddress(vaddr)) { return LOS_GetVmallocSpace(); } else {