aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnthony Harivel <aharivel@redhat.com>2024-07-26 12:26:32 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2024-07-31 13:13:31 +0200
commit6e623af30130fce6e94c717176f3e3c9f2742b7d (patch)
tree1c4944981946ef9f2df4c9fc2e56876a8570f937
parent5997fbdfaca3e69062c2b706d6228c7c6e133c03 (diff)
downloadqemu-6e623af30130fce6e94c717176f3e3c9f2742b7d.zip
qemu-6e623af30130fce6e94c717176f3e3c9f2742b7d.tar.gz
qemu-6e623af30130fce6e94c717176f3e3c9f2742b7d.tar.bz2
target/i386: Clean up error cases for vmsr_read_thread_stat()
Fix leaking memory of file handle in case of error Erase unused "pid = -1" Add clearer error_report Should fix Coverity CID 1558557. Signed-off-by: Anthony Harivel <aharivel@redhat.com> Link: https://lore.kernel.org/r/20240726102632.1324432-3-aharivel@redhat.com Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r--target/i386/kvm/vmsr_energy.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/target/i386/kvm/vmsr_energy.c b/target/i386/kvm/vmsr_energy.c
index a1d78f2..7e064c5 100644
--- a/target/i386/kvm/vmsr_energy.c
+++ b/target/i386/kvm/vmsr_energy.c
@@ -270,7 +270,7 @@ void vmsr_read_thread_stat(pid_t pid,
FILE *file = fopen(path, "r");
if (file == NULL) {
- pid = -1;
+ error_report("Error opening %s", path_name);
return;
}
@@ -279,7 +279,8 @@ void vmsr_read_thread_stat(pid_t pid,
" %*u %*u %*u %*u %*u %*u %*u %*u %*u %*d %*u %*u %u",
utime, stime, cpu_id) != 3)
{
- pid = -1;
+ fclose(file);
+ error_report("Error fscanf did not report the right amount of items");
return;
}