accel: kvm: Fix memory leak in find_stats_descriptors
authorMiaoqian Lin <linmq006@gmail.com>
Fri, 24 Jun 2022 06:31:59 +0000 (10:31 +0400)
committerPaolo Bonzini <pbonzini@redhat.com>
Fri, 8 Jul 2022 09:03:36 +0000 (11:03 +0200)
This function doesn't release descriptors in one error path,
result in memory leak. Call g_free() to release it.

Fixes: cc01a3f4cadd ("kvm: Support for querying fd-based stats")
Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
Message-Id: <20220624063159.57411-1-linmq006@gmail.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
accel/kvm/kvm-all.c

index ba3210b1c10d988d81b6efc46d891a175b0f6408..ed8b6b896ed3c6d2b306978291ec35851b55cb25 100644 (file)
@@ -3891,6 +3891,7 @@ static StatsDescriptors *find_stats_descriptors(StatsTarget target, int stats_fd
         error_setg(errp, "KVM stats: failed to read stats header: "
                    "expected %zu actual %zu",
                    sizeof(*kvm_stats_header), ret);
+        g_free(descriptors);
         return NULL;
     }
     size_desc = sizeof(*kvm_stats_desc) + kvm_stats_header->name_size;