On Fri, Jun 24, 2022 at 02:32:49PM -0700, Ricardo Koller wrote: > Deleting a memslot (when freeing a VM) is not closing the backing fd, > nor it's unmapping the alias mapping. Fix by adding the missing close > and munmap. > > Reviewed-by: Oliver Upton <oupton@xxxxxxxxxx> > Reviewed-by: Ben Gardon <bgardon@xxxxxxxxxx> > Signed-off-by: Ricardo Koller <ricarkol@xxxxxxxxxx> > --- > tools/testing/selftests/kvm/lib/kvm_util.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/tools/testing/selftests/kvm/lib/kvm_util.c b/tools/testing/selftests/kvm/lib/kvm_util.c > index 5ee20d4da222..3e45e3776bdf 100644 > --- a/tools/testing/selftests/kvm/lib/kvm_util.c > +++ b/tools/testing/selftests/kvm/lib/kvm_util.c > @@ -531,6 +531,12 @@ static void __vm_mem_region_delete(struct kvm_vm *vm, > sparsebit_free(®ion->unused_phy_pages); > ret = munmap(region->mmap_start, region->mmap_size); > TEST_ASSERT(!ret, __KVM_SYSCALL_ERROR("munmap()", ret)); > + if (region->fd >= 0) { > + /* There's an extra map when using shared memory. */ > + ret = munmap(region->mmap_alias, region->mmap_size); > + TEST_ASSERT(!ret, __KVM_SYSCALL_ERROR("munmap()", ret)); > + close(region->fd); > + } > > free(region); > } > -- > 2.37.0.rc0.161.g10f37bed90-goog > Reviewed-by: Andrew Jones <andrew.jones@xxxxxxxxx>