From: Anthony Harivel Date: Fri, 26 Jul 2024 10:26:32 +0000 (+0200) Subject: target/i386: Clean up error cases for vmsr_read_thread_stat() X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=6e623af30130fce6e94c717176f3e3c9f2742b7d;p=qemu.git 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 Link: https://lore.kernel.org/r/20240726102632.1324432-3-aharivel@redhat.com Signed-off-by: Paolo Bonzini --- diff --git a/target/i386/kvm/vmsr_energy.c b/target/i386/kvm/vmsr_energy.c index a1d78f2f2a..7e064c5aef 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; }