mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 08:13:54 -06:00
* statistics subsystem
* virtio reset cleanups * build system cleanups * fix Cirrus CI -----BEGIN PGP SIGNATURE----- iQFIBAABCAAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAmKpooQUHHBib256aW5p QHJlZGhhdC5jb20ACgkQv/vSX3jHroNlFwf+OugLGRZl3KVc7akQwUJe9gg2T31h VkC+7Tei8FAwe8vDppVd+CYEIi0M3acxD2amRrv2etCCGSuySN1PbkfRcSfPBX01 pRWpasdhfqnZR8Iidi7YW1Ou5CcGqKH49nunBhW10+osb/mu5sVscMuOJgTDj/lK CpsmDyk6572yGmczjNLlmhYcTU36clHpAZgazZHwk1PU+B3fCKlYYyvUpT3ItJvd cK92aIUWrfofl3yTy0k4IwvZwNjTBirlstOIomZ333xzSA+mm5TR+mTvGRTZ69+a v+snpMp4ILDMoB5kxQ42kK5WpdiN//LnriA9CBFDtOidsDDn8kx7gJe2RA== =Dxwa -----END PGP SIGNATURE----- Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging * statistics subsystem * virtio reset cleanups * build system cleanups * fix Cirrus CI # -----BEGIN PGP SIGNATURE----- # # iQFIBAABCAAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAmKpooQUHHBib256aW5p # QHJlZGhhdC5jb20ACgkQv/vSX3jHroNlFwf+OugLGRZl3KVc7akQwUJe9gg2T31h # VkC+7Tei8FAwe8vDppVd+CYEIi0M3acxD2amRrv2etCCGSuySN1PbkfRcSfPBX01 # pRWpasdhfqnZR8Iidi7YW1Ou5CcGqKH49nunBhW10+osb/mu5sVscMuOJgTDj/lK # CpsmDyk6572yGmczjNLlmhYcTU36clHpAZgazZHwk1PU+B3fCKlYYyvUpT3ItJvd # cK92aIUWrfofl3yTy0k4IwvZwNjTBirlstOIomZ333xzSA+mm5TR+mTvGRTZ69+a # v+snpMp4ILDMoB5kxQ42kK5WpdiN//LnriA9CBFDtOidsDDn8kx7gJe2RA== # =Dxwa # -----END PGP SIGNATURE----- # gpg: Signature made Wed 15 Jun 2022 02:12:36 AM PDT # gpg: using RSA key F13338574B662389866C7682BFFBD25F78C7AE83 # gpg: issuer "pbonzini@redhat.com" # gpg: Good signature from "Paolo Bonzini <bonzini@gnu.org>" [undefined] # gpg: aka "Paolo Bonzini <pbonzini@redhat.com>" [undefined] # gpg: WARNING: This key is not certified with a trusted signature! # gpg: There is no indication that the signature belongs to the owner. # Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4 E2F7 7E15 100C CD36 69B1 # Subkey fingerprint: F133 3857 4B66 2389 866C 7682 BFFB D25F 78C7 AE83 * tag 'for-upstream' of https://gitlab.com/bonzini/qemu: (21 commits) build: include pc-bios/ part in the ROMS variable meson: put cross compiler info in a separate section q35:Enable TSEG only when G_SMRAME and TSEG_EN both enabled build: fix check for -fsanitize-coverage-allowlist tests/vm: allow running tests in an unconfigured source tree configure: cleanup -fno-pie detection configure: update list of preserved environment variables virtio-mmio: cleanup reset virtio: stop ioeventfd on reset virtio-mmio: stop ioeventfd on legacy reset s390x: simplify virtio_ccw_reset_virtio block: add more commands to preconfig mode hmp: add filtering of statistics by name qmp: add filtering of statistics by name hmp: add filtering of statistics by provider qmp: add filtering of statistics by provider hmp: add basic "info stats" implementation cutils: add functions for IEC and SI prefixes qmp: add filtering of statistics by target vCPU kvm: Support for querying fd-based stats ... Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
commit
def6fd6c9c
25 changed files with 1368 additions and 115 deletions
|
@ -2450,6 +2450,50 @@ static void test_qemu_strtosz_metric(void)
|
|||
g_assert(endptr == str + 7);
|
||||
}
|
||||
|
||||
static void test_freq_to_str(void)
|
||||
{
|
||||
g_assert_cmpstr(freq_to_str(999), ==, "999 Hz");
|
||||
g_assert_cmpstr(freq_to_str(1000), ==, "1 KHz");
|
||||
g_assert_cmpstr(freq_to_str(1010), ==, "1.01 KHz");
|
||||
}
|
||||
|
||||
static void test_size_to_str(void)
|
||||
{
|
||||
g_assert_cmpstr(size_to_str(0), ==, "0 B");
|
||||
g_assert_cmpstr(size_to_str(1), ==, "1 B");
|
||||
g_assert_cmpstr(size_to_str(1016), ==, "0.992 KiB");
|
||||
g_assert_cmpstr(size_to_str(1024), ==, "1 KiB");
|
||||
g_assert_cmpstr(size_to_str(512ull << 20), ==, "512 MiB");
|
||||
}
|
||||
|
||||
static void test_iec_binary_prefix(void)
|
||||
{
|
||||
g_assert_cmpstr(iec_binary_prefix(0), ==, "");
|
||||
g_assert_cmpstr(iec_binary_prefix(10), ==, "Ki");
|
||||
g_assert_cmpstr(iec_binary_prefix(20), ==, "Mi");
|
||||
g_assert_cmpstr(iec_binary_prefix(30), ==, "Gi");
|
||||
g_assert_cmpstr(iec_binary_prefix(40), ==, "Ti");
|
||||
g_assert_cmpstr(iec_binary_prefix(50), ==, "Pi");
|
||||
g_assert_cmpstr(iec_binary_prefix(60), ==, "Ei");
|
||||
}
|
||||
|
||||
static void test_si_prefix(void)
|
||||
{
|
||||
g_assert_cmpstr(si_prefix(-18), ==, "a");
|
||||
g_assert_cmpstr(si_prefix(-15), ==, "f");
|
||||
g_assert_cmpstr(si_prefix(-12), ==, "p");
|
||||
g_assert_cmpstr(si_prefix(-9), ==, "n");
|
||||
g_assert_cmpstr(si_prefix(-6), ==, "u");
|
||||
g_assert_cmpstr(si_prefix(-3), ==, "m");
|
||||
g_assert_cmpstr(si_prefix(0), ==, "");
|
||||
g_assert_cmpstr(si_prefix(3), ==, "K");
|
||||
g_assert_cmpstr(si_prefix(6), ==, "M");
|
||||
g_assert_cmpstr(si_prefix(9), ==, "G");
|
||||
g_assert_cmpstr(si_prefix(12), ==, "T");
|
||||
g_assert_cmpstr(si_prefix(15), ==, "P");
|
||||
g_assert_cmpstr(si_prefix(18), ==, "E");
|
||||
}
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
g_test_init(&argc, &argv, NULL);
|
||||
|
@ -2729,5 +2773,13 @@ int main(int argc, char **argv)
|
|||
g_test_add_func("/cutils/strtosz/metric",
|
||||
test_qemu_strtosz_metric);
|
||||
|
||||
g_test_add_func("/cutils/size_to_str",
|
||||
test_size_to_str);
|
||||
g_test_add_func("/cutils/freq_to_str",
|
||||
test_freq_to_str);
|
||||
g_test_add_func("/cutils/iec_binary_prefix",
|
||||
test_iec_binary_prefix);
|
||||
g_test_add_func("/cutils/si_prefix",
|
||||
test_si_prefix);
|
||||
return g_test_run();
|
||||
}
|
||||
|
|
|
@ -1,8 +1,17 @@
|
|||
# Makefile for VM tests
|
||||
|
||||
.PHONY: vm-build-all vm-clean-all
|
||||
# Hack to allow running in an unconfigured build tree
|
||||
ifeq ($(wildcard $(SRC_PATH)/config-host.mak),)
|
||||
VM_PYTHON = PYTHONPATH=$(SRC_PATH)/python /usr/bin/env python3
|
||||
VM_VENV =
|
||||
HOST_ARCH := $(shell uname -m)
|
||||
else
|
||||
VM_PYTHON = $(TESTS_PYTHON)
|
||||
VM_VENV = check-venv
|
||||
HOST_ARCH = $(ARCH)
|
||||
endif
|
||||
|
||||
HOST_ARCH = $(if $(ARCH),$(ARCH),$(shell uname -m))
|
||||
.PHONY: vm-build-all vm-clean-all
|
||||
|
||||
EFI_AARCH64 = $(wildcard $(BUILD_DIR)/pc-bios/edk2-aarch64-code.fd)
|
||||
|
||||
|
@ -85,10 +94,10 @@ vm-clean-all:
|
|||
$(IMAGES_DIR)/%.img: $(SRC_PATH)/tests/vm/% \
|
||||
$(SRC_PATH)/tests/vm/basevm.py \
|
||||
$(SRC_PATH)/tests/vm/Makefile.include \
|
||||
check-venv
|
||||
$(VM_VENV)
|
||||
@mkdir -p $(IMAGES_DIR)
|
||||
$(call quiet-command, \
|
||||
$(TESTS_PYTHON) $< \
|
||||
$(VM_PYTHON) $< \
|
||||
$(if $(V)$(DEBUG), --debug) \
|
||||
$(if $(GENISOIMAGE),--genisoimage $(GENISOIMAGE)) \
|
||||
$(if $(QEMU_LOCAL),--build-path $(BUILD_DIR)) \
|
||||
|
@ -100,11 +109,10 @@ $(IMAGES_DIR)/%.img: $(SRC_PATH)/tests/vm/% \
|
|||
--build-image $@, \
|
||||
" VM-IMAGE $*")
|
||||
|
||||
|
||||
# Build in VM $(IMAGE)
|
||||
vm-build-%: $(IMAGES_DIR)/%.img check-venv
|
||||
vm-build-%: $(IMAGES_DIR)/%.img $(VM_VENV)
|
||||
$(call quiet-command, \
|
||||
$(TESTS_PYTHON) $(SRC_PATH)/tests/vm/$* \
|
||||
$(VM_PYTHON) $(SRC_PATH)/tests/vm/$* \
|
||||
$(if $(V)$(DEBUG), --debug) \
|
||||
$(if $(DEBUG), --interactive) \
|
||||
$(if $(J),--jobs $(J)) \
|
||||
|
@ -128,9 +136,9 @@ vm-boot-serial-%: $(IMAGES_DIR)/%.img
|
|||
-device virtio-net-pci,netdev=vnet \
|
||||
|| true
|
||||
|
||||
vm-boot-ssh-%: $(IMAGES_DIR)/%.img check-venv
|
||||
vm-boot-ssh-%: $(IMAGES_DIR)/%.img $(VM_VENV)
|
||||
$(call quiet-command, \
|
||||
$(TESTS_PYTHON) $(SRC_PATH)/tests/vm/$* \
|
||||
$(VM_PYTHON) $(SRC_PATH)/tests/vm/$* \
|
||||
$(if $(J),--jobs $(J)) \
|
||||
$(if $(V)$(DEBUG), --debug) \
|
||||
$(if $(QEMU_LOCAL),--build-path $(BUILD_DIR)) \
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue