[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH] pvshim: introduce a PV shim defconfig



In order to build a tailored pvshim-only binary from Xen. Switch the
PV shim build from the tools firmware into using the new defconfig.

A diff of the .config generated for the pvshim firmware build before
and after this change shows no differences.

Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
---
Cc: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
Cc: Wei Liu <wei.liu2@xxxxxxxxxx>
Cc: Jan Beulich <jbeulich@xxxxxxxx>
Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
---
 tools/firmware/xen-dir/Makefile       |  5 +-
 tools/firmware/xen-dir/shim.config    | 84 ---------------------------
 xen/arch/x86/configs/pvshim_defconfig | 23 ++++++++
 3 files changed, 25 insertions(+), 87 deletions(-)
 delete mode 100644 tools/firmware/xen-dir/shim.config
 create mode 100644 xen/arch/x86/configs/pvshim_defconfig

diff --git a/tools/firmware/xen-dir/Makefile b/tools/firmware/xen-dir/Makefile
index 84648c3faf..83597f0017 100644
--- a/tools/firmware/xen-dir/Makefile
+++ b/tools/firmware/xen-dir/Makefile
@@ -41,9 +41,8 @@ linkfarm.stamp: $(DEP_DIRS) $(DEP_FILES) FORCE
 $(D): linkfarm.stamp
        $(MAKE) -C $(D)/xen distclean
 
-$(D)/xen/.config: shim.config $(D)
-       cp $< $@
-       $(MAKE) -C $(@D) olddefconfig XEN_CONFIG_EXPERT=y
+$(D)/xen/.config: $(D)
+       $(MAKE) -C $(@D) KBUILD_DEFCONFIG=pvshim_defconfig XEN_CONFIG_EXPERT=y 
defconfig
 
 xen-shim: $(D)/xen/.config
        $(MAKE) -C $(<D) build XEN_CONFIG_EXPERT=y
diff --git a/tools/firmware/xen-dir/shim.config 
b/tools/firmware/xen-dir/shim.config
deleted file mode 100644
index 21d7075bb4..0000000000
--- a/tools/firmware/xen-dir/shim.config
+++ /dev/null
@@ -1,84 +0,0 @@
-#
-# Automatically generated file; DO NOT EDIT.
-# Xen/x86 4.11-unstable Configuration
-#
-CONFIG_X86_64=y
-CONFIG_X86=y
-CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig"
-
-#
-# Architecture Features
-#
-CONFIG_NR_CPUS=32
-CONFIG_PV=y
-CONFIG_PV_LINEAR_PT=y
-CONFIG_HVM=y
-# CONFIG_SHADOW_PAGING is not set
-# CONFIG_BIGMEM is not set
-# CONFIG_HVM_FEP is not set
-# CONFIG_TBOOT is not set
-CONFIG_XEN_GUEST=y
-CONFIG_PVH_GUEST=y
-CONFIG_PV_SHIM=y
-CONFIG_PV_SHIM_EXCLUSIVE=y
-
-#
-# Common Features
-#
-CONFIG_COMPAT=y
-CONFIG_CORE_PARKING=y
-CONFIG_HAS_ALTERNATIVE=y
-CONFIG_HAS_EX_TABLE=y
-CONFIG_MEM_ACCESS=y
-CONFIG_HAS_MEM_PAGING=y
-CONFIG_HAS_MEM_SHARING=y
-CONFIG_HAS_PDX=y
-CONFIG_HAS_UBSAN=y
-CONFIG_HAS_KEXEC=y
-CONFIG_HAS_GDBSX=y
-CONFIG_HAS_IOPORTS=y
-# CONFIG_KEXEC is not set
-# CONFIG_TMEM is not set
-# CONFIG_XENOPROF is not set
-# CONFIG_XSM is not set
-
-#
-# Schedulers
-#
-CONFIG_SCHED_CREDIT=y
-# CONFIG_SCHED_CREDIT2 is not set
-# CONFIG_SCHED_RTDS is not set
-# CONFIG_SCHED_ARINC653 is not set
-# CONFIG_SCHED_NULL is not set
-CONFIG_SCHED_CREDIT_DEFAULT=y
-CONFIG_SCHED_DEFAULT="credit"
-# CONFIG_LIVEPATCH is not set
-# CONFIG_SUPPRESS_DUPLICATE_SYMBOL_WARNINGS is not set
-CONFIG_CMDLINE=""
-
-#
-# Device Drivers
-#
-CONFIG_ACPI=y
-CONFIG_ACPI_LEGACY_TABLES_LOOKUP=y
-CONFIG_NUMA=y
-CONFIG_HAS_NS16550=y
-CONFIG_HAS_EHCI=y
-CONFIG_HAS_CPUFREQ=y
-CONFIG_HAS_PASSTHROUGH=y
-CONFIG_HAS_PCI=y
-CONFIG_DEFCONFIG_LIST="$ARCH_DEFCONFIG"
-CONFIG_ARCH_SUPPORTS_INT128=y
-
-#
-# Debugging Options
-#
-# CONFIG_DEBUG is not set
-# CONFIG_CRASH_DEBUG is not set
-# CONFIG_FRAME_POINTER is not set
-# CONFIG_COVERAGE is not set
-# CONFIG_LOCK_PROFILE is not set
-# CONFIG_PERF_COUNTERS is not set
-# CONFIG_VERBOSE_DEBUG is not set
-# CONFIG_SCRUB_DEBUG is not set
-# CONFIG_UBSAN is not set
diff --git a/xen/arch/x86/configs/pvshim_defconfig 
b/xen/arch/x86/configs/pvshim_defconfig
new file mode 100644
index 0000000000..38ba9feb1f
--- /dev/null
+++ b/xen/arch/x86/configs/pvshim_defconfig
@@ -0,0 +1,23 @@
+# Enable PV shim mode
+CONFIG_PV=y
+CONFIG_XEN_GUEST=y
+CONFIG_PVH_GUEST=y
+CONFIG_PV_SHIM=y
+CONFIG_PV_SHIM_EXCLUSIVE=y
+# Disable features not used by the PV shim
+CONFIG_NR_CPUS=32
+CONFIG_SHADOW_PAGING=n
+CONFIG_BIGMEM=n
+CONFIG_HVM_FEP=n
+CONFIG_TBOOT=n
+CONFIG_KEXEC=n
+CONFIG_TMEM=n
+CONFIG_XENOPROF=n
+CONFIG_XSM=n
+CONFIG_SCHED_CREDIT2=n
+CONFIG_SCHED_RTDS=n
+CONFIG_SCHED_ARINC653=n
+CONFIG_SCHED_NULL=n
+CONFIG_LIVEPATCH=n
+CONFIG_SUPPRESS_DUPLICATE_SYMBOL_WARNINGS=n
+CONFIG_DEBUG=n
-- 
2.18.0


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.