From mboxrd@z Thu Jan 1 00:00:00 1970 From: Subject: [PATCH v4 07/25] xen/common/Makefile: introduce HAS_CPUFREQ, HAS_PCI, HAS_PASSTHROUGH, HAS_NS16550, HAS_KEXEC Date: Mon, 9 Jan 2012 17:59:43 +0000 Message-ID: <1326132001-21251-7-git-send-email-stefano.stabellini@eu.citrix.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel@lists.xensource.com Cc: Tim.Deegan@citrix.com, Ian Campbell , JBeulich@suse.com, stefano.stabellini@eu.citrix.com List-Id: xen-devel@lists.xenproject.org From: Stefano Stabellini - make the compilation of ns16550.c depend upon HAS_NS16550; - make the compilation of cpufreq depend upon HAS_CPUFREQ; - make the compilation of pci depend upon HAS_PCI; - make the compilation of passthrough depend upon HAS_PASSTHROUGH; - make the compilation of kexec depend upon HAS_KEXEC. Changes in v2: - introduce HAS_KEXEC and CONFIG_KEXEC kexec. Signed-off-by: Stefano Stabellini Signed-off-by: Ian Campbell Signed-off-by: Tim Deegan --- xen/arch/ia64/Rules.mk | 5 +++++ xen/arch/x86/Rules.mk | 5 +++++ xen/common/Makefile | 2 +- xen/common/shutdown.c | 4 ++++ xen/drivers/Makefile | 6 +++--- xen/drivers/char/Makefile | 2 +- xen/drivers/char/console.c | 4 ++++ xen/include/asm-ia64/config.h | 1 + xen/include/asm-x86/config.h | 1 + 9 files changed, 25 insertions(+), 5 deletions(-) diff --git a/xen/arch/ia64/Rules.mk b/xen/arch/ia64/Rules.mk index bef11c3..054b4de 100644 --- a/xen/arch/ia64/Rules.mk +++ b/xen/arch/ia64/Rules.mk @@ -4,6 +4,11 @@ ia64 := y HAS_ACPI := y HAS_VGA := y +HAS_CPUFREQ := y +HAS_PCI := y +HAS_PASSTHROUGH := y +HAS_NS16550 := y +HAS_KEXEC := y xenoprof := y no_warns ?= n vti_debug ?= n diff --git a/xen/arch/x86/Rules.mk b/xen/arch/x86/Rules.mk index bf77aef..1e48877 100644 --- a/xen/arch/x86/Rules.mk +++ b/xen/arch/x86/Rules.mk @@ -3,6 +3,11 @@ HAS_ACPI := y HAS_VGA := y +HAS_CPUFREQ := y +HAS_PCI := y +HAS_PASSTHROUGH := y +HAS_NS16550 := y +HAS_KEXEC := y xenoprof := y # diff --git a/xen/common/Makefile b/xen/common/Makefile index 1d85e65..9249845 100644 --- a/xen/common/Makefile +++ b/xen/common/Makefile @@ -8,7 +8,7 @@ obj-y += grant_table.o obj-y += irq.o obj-y += kernel.o obj-y += keyhandler.o -obj-y += kexec.o +obj-$(HAS_KEXEC) += kexec.o obj-y += lib.o obj-y += memory.o obj-y += multicall.o diff --git a/xen/common/shutdown.c b/xen/common/shutdown.c index e356e86..b18ef5d 100644 --- a/xen/common/shutdown.c +++ b/xen/common/shutdown.c @@ -6,7 +6,9 @@ #include #include #include +#ifdef CONFIG_KEXEC #include +#endif #include #include @@ -58,7 +60,9 @@ void dom0_shutdown(u8 reason) case SHUTDOWN_watchdog: { printk("Domain 0 shutdown: watchdog rebooting machine.\n"); +#ifdef CONFIG_KEXEC kexec_crash(); +#endif machine_restart(0); break; /* not reached */ } diff --git a/xen/drivers/Makefile b/xen/drivers/Makefile index eb4fb61..7239375 100644 --- a/xen/drivers/Makefile +++ b/xen/drivers/Makefile @@ -1,6 +1,6 @@ subdir-y += char -subdir-y += cpufreq -subdir-y += pci -subdir-y += passthrough +subdir-$(HAS_CPUFREQ) += cpufreq +subdir-$(HAS_PCI) += pci +subdir-$(HAS_PASSTHROUGH) += passthrough subdir-$(HAS_ACPI) += acpi subdir-$(HAS_VGA) += video diff --git a/xen/drivers/char/Makefile b/xen/drivers/char/Makefile index ded9a94..19250c8 100644 --- a/xen/drivers/char/Makefile +++ b/xen/drivers/char/Makefile @@ -1,3 +1,3 @@ obj-y += console.o -obj-y += ns16550.o +obj-$(HAS_NS16550) += ns16550.o obj-y += serial.o diff --git a/xen/drivers/char/console.c b/xen/drivers/char/console.c index 89cf4f8..19f021c 100644 --- a/xen/drivers/char/console.c +++ b/xen/drivers/char/console.c @@ -22,7 +22,9 @@ #include #include #include +#ifdef CONFIG_KEXEC #include +#endif #include #include #include /* for do_console_io */ @@ -961,7 +963,9 @@ void panic(const char *fmt, ...) debugger_trap_immediate(); +#ifdef CONFIG_KEXEC kexec_crash(); +#endif if ( opt_noreboot ) { diff --git a/xen/include/asm-ia64/config.h b/xen/include/asm-ia64/config.h index 0173487..6e9fc98 100644 --- a/xen/include/asm-ia64/config.h +++ b/xen/include/asm-ia64/config.h @@ -20,6 +20,7 @@ #define CONFIG_EFI #define CONFIG_EFI_PCDP #define CONFIG_SERIAL_SGI_L1_CONSOLE +#define CONFIG_KEXEC 1 #define CONFIG_XENOPROF 1 #define CONFIG_XEN_SMP diff --git a/xen/include/asm-x86/config.h b/xen/include/asm-x86/config.h index 905c0f8..cf6a4cc 100644 --- a/xen/include/asm-x86/config.h +++ b/xen/include/asm-x86/config.h @@ -44,6 +44,7 @@ #define CONFIG_HOTPLUG_CPU 1 #define CONFIG_XENOPROF 1 +#define CONFIG_KEXEC 1 #define HZ 100 -- 1.7.2.5