]> xenbits.xensource.com Git - people/andrewcoop/xen-test-framework.git/commitdiff
build: Allow tests to specify the number of vcpus required
authorAndrew Cooper <andrew.cooper3@citrix.com>
Thu, 1 Oct 2020 09:42:31 +0000 (10:42 +0100)
committerAndrew Cooper <andrew.cooper3@citrix.com>
Sat, 10 Oct 2020 08:55:47 +0000 (09:55 +0100)
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
build/gen.mk
build/mkcfg.py
config/default-hvm.cfg.in
config/default-pv.cfg.in
tests/xsa-296/Makefile
tests/xsa-296/extra.cfg.in [deleted file]

index 8d7a6bf89725fedc8343d2e4d3c8e2c93c16811f..f657d878935acfef53795f59a7e1ca2a4c359459 100644 (file)
@@ -21,6 +21,10 @@ ifneq ($(filter-out $(ALL_CATEGORIES),$(CATEGORY)),)
 $(error Unrecognised category '$(filter-out $(ALL_CATEGORIES),$(CATEGORY))')
 endif
 
+ifeq ($(VCPUS),)
+VCPUS := 1 # Default to 1 vcpu if not provided
+endif
+
 ifneq ($(VARY-CFG),)
 TEST-CFGS := $(foreach env,$(TEST-ENVS),$(foreach vary,$(VARY-CFG),test-$(env)-$(NAME)~$(vary).cfg))
 else
@@ -61,15 +65,15 @@ cfg-$(1) ?= $(defcfg-$($(1)_guest))
 cfg-default-deps := $(ROOT)/build/mkcfg.py $$(cfg-$(1)) $(TEST-EXTRA-CFG) FORCE
 
 test-$(1)-$(NAME).cfg: $$(cfg-default-deps)
-       $(PYTHON) $$< $$@.tmp "$$(cfg-$(1))" "$(TEST-EXTRA-CFG)" ""
+       $(PYTHON) $$< $$@.tmp "$$(cfg-$(1))" "$(VCPUS)" "$(TEST-EXTRA-CFG)" ""
        @$(call move-if-changed,$$@.tmp,$$@)
 
 test-$(1)-$(NAME)~%.cfg: $$(cfg-default-deps) %.cfg.in
-       $(PYTHON) $$< $$@.tmp "$$(cfg-$(1))" "$(TEST-EXTRA-CFG)" "$$*.cfg.in"
+       $(PYTHON) $$< $$@.tmp "$$(cfg-$(1))" "$(VCPUS)" "$(TEST-EXTRA-CFG)" "$$*.cfg.in"
        @$(call move-if-changed,$$@.tmp,$$@)
 
 test-$(1)-$(NAME)~%.cfg: $$(cfg-default-deps) $(ROOT)/config/%.cfg.in
-       $(PYTHON) $$< $$@.tmp "$$(cfg-$(1))" "$(TEST-EXTRA-CFG)" "$(ROOT)/config/$$*.cfg.in"
+       $(PYTHON) $$< $$@.tmp "$$(cfg-$(1))" "$(VCPUS)" "$(TEST-EXTRA-CFG)" "$(ROOT)/config/$$*.cfg.in"
        @$(call move-if-changed,$$@.tmp,$$@)
 
 -include $$(link-$(1):%.lds=%.d)
index 2ee7dfe09ae02b418186368170e1d2da65b0e02c..7f8e3d52051fc23794b50d902cb32c5b077ca2c3 100644 (file)
@@ -9,7 +9,7 @@ substitue variables appropriately.
 import sys, os
 
 # Usage: mkcfg.py $OUT $DEFAULT-CFG $EXTRA-CFG $VARY-CFG
-_, out, defcfg, extracfg, varycfg = sys.argv
+_, out, defcfg, vcpus, extracfg, varycfg = sys.argv
 
 # Evaluate environment and name from $OUT
 _, env, name = out.split('.')[0].split('-', 2)
@@ -25,6 +25,7 @@ def expand(text):
     return (text
             .replace("@@NAME@@",   name)
             .replace("@@ENV@@",    env)
+            .replace("@@VCPUS@@",  vcpus)
             .replace("@@XTFDIR@@", os.environ["xtfdir"])
             .replace("@@VARIATION@@", variation)
         )
index c410effb750e57459040ec4ffa4ff07fcd0087bc..ed53cb955f95e2f1ca12531a417ec3c2ecfb1454 100644 (file)
@@ -1,5 +1,7 @@
 name="test-@@ENV@@-@@NAME@@@@VARIATION@@"
 
+vcpus=@@VCPUS@@
+
 type="hvm"
 builder="hvm" # Legacy for before Xen 4.10
 
@@ -9,8 +11,3 @@ firmware_override="@@XTFDIR@@/tests/@@NAME@@/test-@@ENV@@-@@NAME@@"
 # The framework doesn't reboot.  A reboot signal is almost certainly a triple
 # fault instead.  Prevent it turning into a runaway domain.
 on_reboot = "destroy"
-
-# Work around a bug whereby both Xen and libxl fail to calculate the minimum
-# required shadow pool size for this VM, which causes a failure to construct
-# the domain on hardware lacking hap support.
-shadow_memory=4
index 921e52ab2cd9dd705c71d0bc1f07688e881b9b41..3e7b918cc24db7490c757d8988f618b32641afc5 100644 (file)
@@ -1,5 +1,7 @@
 name="test-@@ENV@@-@@NAME@@@@VARIATION@@"
 
+vcpus=@@VCPUS@@
+
 type="pv"
 loader="generic" # Legacy for before Xen 4.10
 
index cc9313d832fba96c1c3f294f0de3ef2314f9bb08..6d0ca32cef66c24946786bf5f87211146d47a2c0 100644 (file)
@@ -3,8 +3,7 @@ include $(ROOT)/build/common.mk
 NAME      := xsa-296
 CATEGORY  := xsa
 TEST-ENVS := $(PV_ENVIRONMENTS)
-
-TEST-EXTRA-CFG := extra.cfg.in
+VCPUS     := 2
 
 obj-perenv += main.o
 
diff --git a/tests/xsa-296/extra.cfg.in b/tests/xsa-296/extra.cfg.in
deleted file mode 100644 (file)
index 8cfbab9..0000000
+++ /dev/null
@@ -1 +0,0 @@
-vcpus=2