From: Julien Grall <julien.grall@xxxxxxx> Some users of the ASID allocator (e.g VMID) may need to free any resources if the initialization fail. So introduce a function that allows freeing of any memory allocated by the ASID allocator. Signed-off-by: Julien Grall <julien.grall@xxxxxxx> Signed-off-by: Shameer Kolothum <shameerali.kolothum.thodi@xxxxxxxxxx> --- arch/arm64/include/asm/lib_asid.h | 2 ++ arch/arm64/lib/asid.c | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/arch/arm64/include/asm/lib_asid.h b/arch/arm64/include/asm/lib_asid.h index acae8d243d17..4dbc0a3f19a6 100644 --- a/arch/arm64/include/asm/lib_asid.h +++ b/arch/arm64/include/asm/lib_asid.h @@ -82,4 +82,6 @@ void asid_context_pinned_put(struct asid_info *info, atomic64_t *pasid, refcount_t *pinned); int asid_allocator_init(struct asid_info *info, u32 bits, bool pinned); +void asid_allocator_free(struct asid_info *info); + #endif diff --git a/arch/arm64/lib/asid.c b/arch/arm64/lib/asid.c index 286285616f65..7bd031f9516a 100644 --- a/arch/arm64/lib/asid.c +++ b/arch/arm64/lib/asid.c @@ -256,3 +256,9 @@ int asid_allocator_init(struct asid_info *info, u32 bits, bool pinned) return 0; } + +void asid_allocator_free(struct asid_info *info) +{ + kfree(info->map); + kfree(info->pinned_map); +} -- 2.17.1 _______________________________________________ kvmarm mailing list kvmarm@xxxxxxxxxxxxxxxxxxxxx https://lists.cs.columbia.edu/mailman/listinfo/kvmarm