Commit dd4d1c3b authored by Oliver Upton's avatar Oliver Upton Committed by Paolo Bonzini
Browse files

selftests: KVM: Add exponent check for boolean stats



The only sensible exponent for a boolean stat is 0. Add a test assertion
requiring all boolean statistics to have an exponent of 0.

Signed-off-by: default avatarOliver Upton <oupton@google.com>
Reviewed-by: default avatarAndrew Jones <andrew.jones@linux.dev>
Message-Id: <20220719143134.3246798-4-oliver.upton@linux.dev>
Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
parent 7eebae78
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -96,6 +96,7 @@ static void stats_test(int stats_fd)
		 * Exponent for unit seconds should be less than or equal to 0
		 * Exponent for unit clock cycles should be greater than or
		 * equal to 0
		 * Exponent for unit boolean should be 0
		 */
		switch (pdesc->flags & KVM_STATS_UNIT_MASK) {
		case KVM_STATS_UNIT_NONE:
@@ -110,6 +111,11 @@ static void stats_test(int stats_fd)
				    "Unsupported KVM stats (%s) exponent: %i",
				    pdesc->name, pdesc->exponent);
			break;
		case KVM_STATS_UNIT_BOOLEAN:
			TEST_ASSERT(pdesc->exponent == 0,
				    "Unsupported KVM stats (%s) exponent: %d",
				    pdesc->name, pdesc->exponent);
			break;
		}

		/* Check size field, which should not be zero */