selftests: kvm: fix mismatched fclose() after popen()
authorShuah Khan <skhan@linuxfoundation.org>
Thu, 21 Oct 2021 17:56:03 +0000 (11:56 -0600)
committerShuah Khan <skhan@linuxfoundation.org>
Thu, 21 Oct 2021 21:16:28 +0000 (15:16 -0600)
get_warnings_count() does fclose() using File * returned from popen().
Fix it to call pclose() as it should.

tools/testing/selftests/kvm/x86_64/mmio_warning_test
x86_64/mmio_warning_test.c: In function ‘get_warnings_count’:
x86_64/mmio_warning_test.c:87:9: warning: ‘fclose’ called on pointer returned from a mismatched allocation function [-Wmismatched-dealloc]
   87 |         fclose(f);
      |         ^~~~~~~~~
x86_64/mmio_warning_test.c:84:13: note: returned from ‘popen’
   84 |         f = popen("dmesg | grep \"WARNING:\" | wc -l", "r");
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
tools/testing/selftests/kvm/x86_64/mmio_warning_test.c

index 8039e1eff9388f994a0fb30ef46464def3469292..9f55ccd169a13745d1897663784bfb7f9801ee09 100644 (file)
@@ -84,7 +84,7 @@ int get_warnings_count(void)
        f = popen("dmesg | grep \"WARNING:\" | wc -l", "r");
        if (fscanf(f, "%d", &warnings) < 1)
                warnings = 0;
-       fclose(f);
+       pclose(f);
 
        return warnings;
 }