All of lore.kernel.org
 help / color / mirror / Atom feed
From: Doug Goldstein <cardoe@cardoe.com>
To: xen-devel@lists.xen.org
Cc: Keir Fraser <keir@xen.org>,
	Ian Campbell <ian.campbell@citrix.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Ian Jackson <ian.jackson@eu.citrix.com>, Tim Deegan <tim@xen.org>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>
Subject: [PATCH v8 16/28] build: convert HAS_KEXEC / KEXEC use to Kconfig
Date: Tue, 15 Dec 2015 07:13:14 -0600	[thread overview]
Message-ID: <1450185206-14259-17-git-send-email-cardoe@cardoe.com> (raw)
In-Reply-To: <1450185206-14259-1-git-send-email-cardoe@cardoe.com>

Use the Kconfig generated CONFIG_HAS_KEXEC defines in the build system
and replace kexec :=y in Rules.mk with a kconfig option called
CONFIG_KEXEC. Purposefully did not merge the two variables together in
this patch to keep this as mechanical as possible.

CC: Ian Campbell <ian.campbell@citrix.com>
CC: Ian Jackson <ian.jackson@eu.citrix.com>
CC: Keir Fraser <keir@xen.org>
CC: Jan Beulich <jbeulich@suse.com>
CC: Tim Deegan <tim@xen.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
 xen/Rules.mk          | 10 ++++------
 xen/arch/x86/Kconfig  |  1 +
 xen/arch/x86/Rules.mk |  1 -
 xen/common/Kconfig    | 16 ++++++++++++++++
 4 files changed, 21 insertions(+), 7 deletions(-)

diff --git a/xen/Rules.mk b/xen/Rules.mk
index d55c58c..4ed0d11 100644
--- a/xen/Rules.mk
+++ b/xen/Rules.mk
@@ -10,7 +10,6 @@ lock_profile  ?= n
 crash_debug   ?= n
 frame_pointer ?= n
 lto           ?= n
-kexec         ?= y
 
 -include $(BASEDIR)/include/config/auto.conf
 
@@ -28,6 +27,10 @@ ifeq ($(perfc_arrays),y)
 perfc := y
 endif
 
+ifneq ($(origin kexec),undefined)
+$(error "You must use 'make menuconfig' to enable/disable kexec now.")
+endif
+
 # Set ARCH/SUBARCH appropriately.
 override TARGET_SUBARCH  := $(XEN_TARGET_ARCH)
 override TARGET_ARCH     := $(shell echo $(XEN_TARGET_ARCH) | \
@@ -68,11 +71,6 @@ ifneq ($(max_phys_irqs),)
 CFLAGS-y                += -DMAX_PHYS_IRQS=$(max_phys_irqs)
 endif
 
-CONFIG_KEXEC-$(HAS_KEXEC) := $(kexec)
-CONFIG_KEXEC              := $(CONFIG_KEXEC-y)
-
-CFLAGS-$(CONFIG_KEXEC)  += -DCONFIG_KEXEC
-
 AFLAGS-y                += -D__ASSEMBLY__ -include $(BASEDIR)/include/xen/config.h
 
 # Clang's built-in assembler can't handle .code16/.code32/.code64 yet
diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig
index d472234..88955e7 100644
--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -7,6 +7,7 @@ config X86
 	select HAS_CPUFREQ
 	select HAS_GDBSX
 	select HAS_IOPORTS
+	select HAS_KEXEC
 	select HAS_NS16550
 	select HAS_PASSTHROUGH
 	select HAS_PCI
diff --git a/xen/arch/x86/Rules.mk b/xen/arch/x86/Rules.mk
index 193e7ea..793e1f7 100644
--- a/xen/arch/x86/Rules.mk
+++ b/xen/arch/x86/Rules.mk
@@ -3,7 +3,6 @@
 
 HAS_NUMA := y
 HAS_EHCI := y
-HAS_KEXEC := y
 HAS_CORE_PARKING := y
 xenoprof := y
 
diff --git a/xen/common/Kconfig b/xen/common/Kconfig
index 4905574..8d2ab4f 100644
--- a/xen/common/Kconfig
+++ b/xen/common/Kconfig
@@ -9,6 +9,10 @@ config HAS_DEVICE_TREE
 config HAS_PDX
 	bool
 
+# Select HAS_KEXEC if kexec is supported
+config HAS_KEXEC
+	bool
+
 # Select HAS_GDBSX if GDBSX is supported
 config HAS_GDBSX
 	bool
@@ -16,4 +20,16 @@ config HAS_GDBSX
 config HAS_IOPORTS
 	bool
 
+# Enable/Disable kexec support
+config KEXEC
+	bool "kexec support"
+	default y
+	depends on HAS_KEXEC
+	---help---
+	  Allows a running Xen hypervisor to be replaced with another OS
+	  without rebooting. This is primarily used to execute a crash
+	  environment to collect information on a Xen hypervisor or dom0 crash.
+
+	  If unsure, say Y.
+
 endmenu
-- 
2.4.10

  parent reply	other threads:[~2015-12-15 13:13 UTC|newest]

Thread overview: 90+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-15 13:12 [PATCH v8 00/28] Kconfig conversion Doug Goldstein
2015-12-15 13:12 ` [PATCH v8 01/28] build: import Kbuild/Kconfig from Linux 4.3 Doug Goldstein
2015-12-15 13:13 ` [PATCH v8 02/28] MAINTAINERS: add myself for kconfig Doug Goldstein
2015-12-15 21:58   ` Doug Goldstein
2015-12-16  7:39     ` Jan Beulich
2015-12-15 22:39   ` [PATCH] " Doug Goldstein
2015-12-16  7:27     ` Jan Beulich
2015-12-16 10:49       ` Doug Goldstein
2015-12-16 14:41         ` Doug Goldstein
2016-01-05 12:07           ` Ian Campbell
2016-01-06 13:45             ` Jan Beulich
2016-01-06 14:26               ` Tim Deegan
2016-01-06 14:40                 ` Jan Beulich
2016-01-06 14:58                   ` Ian Jackson
2016-01-06 14:42                 ` Ian Campbell
2016-01-06 15:31                 ` Lars Kurth
2016-01-06 16:30                   ` Ian Jackson
2016-01-14 17:19                     ` Lars Kurth
2016-01-14 17:24                       ` Ian Campbell
2016-01-15 15:59                         ` Ian Campbell
2016-01-15 16:17                           ` Jan Beulich
2016-01-18 17:05           ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 03/28] build: build Kconfig and config rules Doug Goldstein
2015-12-16 10:27   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 04/28] build: use generated Kconfig options for Xen Doug Goldstein
2015-12-16 10:27   ` Ian Campbell
2015-12-16 10:33   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 05/28] build: convert HAS_PASSTHROUGH use to Kconfig Doug Goldstein
2015-12-15 21:25   ` Daniel De Graaf
2015-12-16 10:34   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 06/28] build: convert HAS_DEVICE_TREE " Doug Goldstein
2015-12-15 21:25   ` Daniel De Graaf
2015-12-16 10:34   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 07/28] build: convert HAS_PCI " Doug Goldstein
2015-12-15 21:26   ` Daniel De Graaf
2015-12-15 13:13 ` [PATCH v8 08/28] build: convert HAS_NS16550 " Doug Goldstein
2015-12-16 10:34   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 09/28] build: convert HAS_IOPORTS " Doug Goldstein
2015-12-15 13:13 ` [PATCH v8 10/28] build: convert HAS_ACPI " Doug Goldstein
2015-12-15 13:13 ` [PATCH v8 11/28] build: convert HAS_VIDEO " Doug Goldstein
2015-12-16 10:35   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 12/28] build: convert HAS_VGA " Doug Goldstein
2015-12-15 13:13 ` [PATCH v8 13/28] build: convert HAS_CPUFREQ " Doug Goldstein
2015-12-15 13:13 ` [PATCH v8 14/28] build: convert HAS_GDBSX " Doug Goldstein
2015-12-15 13:13 ` [PATCH v8 15/28] build: convert HAS_PDX " Doug Goldstein
2015-12-16 10:35   ` Ian Campbell
2015-12-15 13:13 ` Doug Goldstein [this message]
2015-12-15 13:13 ` [PATCH v8 17/28] build: convert HAS_ARM_HDLCD " Doug Goldstein
2015-12-16 10:35   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 18/28] build: convert HAS_CADENCE_UART " Doug Goldstein
2015-12-16 10:36   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 19/28] build: convert HAS_PL011 " Doug Goldstein
2015-12-16 10:36   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 20/28] build: convert HAS_EXYNOS4210 " Doug Goldstein
2015-12-16 10:36   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 21/28] build: convert HAS_OMAP " Doug Goldstein
2015-12-16 10:38   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 22/28] build: convert HAS_SCIF " Doug Goldstein
2015-12-16 10:38   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 23/28] build: convert HAS_EHCI " Doug Goldstein
2015-12-15 13:13 ` [PATCH v8 24/28] build: convert HAS_MEM_ACCESS " Doug Goldstein
2015-12-15 21:26   ` Daniel De Graaf
2015-12-16 10:38   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 25/28] build: convert HAS_MEM_PAGING " Doug Goldstein
2015-12-15 21:27   ` Daniel De Graaf
2015-12-16 10:39   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 26/28] build: convert HAS_MEM_SHARING " Doug Goldstein
2015-12-15 21:27   ` Daniel De Graaf
2015-12-15 13:13 ` [PATCH v8 27/28] build: convert HAS_GICV3 " Doug Goldstein
2015-12-16 10:39   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 28/28] build: convert CONFIG_COMPAT " Doug Goldstein
2015-12-15 15:23   ` Jan Beulich
2015-12-16 12:00     ` [PATCH] " Doug Goldstein
2015-12-16 12:52       ` Jan Beulich
2015-12-16 17:01       ` Jan Beulich
2015-12-17 16:00         ` Doug Goldstein
2015-12-16 12:02     ` [PATCH v8 28/28] " Doug Goldstein
2015-12-16  7:37 ` [PATCH v8 00/28] Kconfig conversion Jan Beulich
2015-12-16 10:41   ` Ian Campbell
2015-12-16 14:38   ` Doug Goldstein
2015-12-16 10:33 ` Ian Campbell
2015-12-16 10:43   ` Ian Campbell
2015-12-16 11:42   ` [PATCH] squash into 'build: use generated Kconfig options for Xen' Doug Goldstein
2015-12-16 11:55     ` Ian Campbell
2015-12-16 11:49   ` [PATCH v8 00/28] Kconfig conversion Doug Goldstein
2015-12-18 10:30 ` Ian Campbell
2015-12-18 14:20   ` Doug Goldstein
2015-12-18 14:55     ` Juergen Gross
2015-12-18 15:06       ` Andrew Cooper
2015-12-18 15:16         ` Jan Beulich

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1450185206-14259-17-git-send-email-cardoe@cardoe.com \
    --to=cardoe@cardoe.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=ian.campbell@citrix.com \
    --cc=ian.jackson@eu.citrix.com \
    --cc=jbeulich@suse.com \
    --cc=keir@xen.org \
    --cc=tim@xen.org \
    --cc=xen-devel@lists.xen.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.