summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRusty Russell <rusty@rustcorp.com.au>2007-10-22 05:01:54 +0400
committerRusty Russell <rusty@rustcorp.com.au>2007-10-23 09:49:50 +0400
commit34b8867a034364ca33d0adb3a1c5b9982903c719 (patch)
tree7b6385b3985e7bdcca91103d01dea9f707e8b567
parentc37ae93d597fc63bae979db76b527dcc7740dc9d (diff)
downloadlinux-34b8867a034364ca33d0adb3a1c5b9982903c719.tar.xz
Move lguest guest support to arch/x86.
Lguest has two sides: host support (to launch guests) and guest support (replacement boot path and paravirt_ops). This moves the guest side to arch/x86/lguest where it's closer to related code. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Cc: Andi Kleen <ak@suse.de>
-rw-r--r--arch/i386/Kconfig10
-rw-r--r--arch/i386/Makefile3
-rw-r--r--arch/x86/lguest/Kconfig8
-rw-r--r--arch/x86/lguest/Makefile1
-rw-r--r--arch/x86/lguest/boot.c (renamed from drivers/lguest/lguest.c)0
-rw-r--r--arch/x86/lguest/i386_head.S (renamed from drivers/lguest/lguest_asm.S)2
-rw-r--r--drivers/lguest/Makefile4
7 files changed, 17 insertions, 11 deletions
diff --git a/arch/i386/Kconfig b/arch/i386/Kconfig
index 3523e82c8412..5bed8be34ba5 100644
--- a/arch/i386/Kconfig
+++ b/arch/i386/Kconfig
@@ -257,14 +257,8 @@ config VMI
at the moment), by linking the kernel to a GPL-ed ROM module
provided by the hypervisor.
-config LGUEST_GUEST
- bool "Lguest guest support"
- select PARAVIRT
- depends on !X86_PAE
- help
- Lguest is a tiny in-kernel hypervisor. Selecting this will
- allow your kernel to boot under lguest. This option will increase
- your kernel size by about 6k. If in doubt, say N.
+source "arch/x86/lguest/Kconfig"
+
endif
config ACPI_SRAT
diff --git a/arch/i386/Makefile b/arch/i386/Makefile
index b88e47ca3032..b81cb64d48e5 100644
--- a/arch/i386/Makefile
+++ b/arch/i386/Makefile
@@ -99,6 +99,9 @@ core-$(CONFIG_X86_ES7000) := arch/x86/mach-es7000/
# Xen paravirtualization support
core-$(CONFIG_XEN) += arch/x86/xen/
+# lguest paravirtualization support
+core-$(CONFIG_LGUEST_GUEST) += arch/x86/lguest/
+
# default subarch .h files
mflags-y += -Iinclude/asm-x86/mach-default
diff --git a/arch/x86/lguest/Kconfig b/arch/x86/lguest/Kconfig
new file mode 100644
index 000000000000..0fabf87db998
--- /dev/null
+++ b/arch/x86/lguest/Kconfig
@@ -0,0 +1,8 @@
+config LGUEST_GUEST
+ bool "Lguest guest support"
+ select PARAVIRT
+ depends on !X86_PAE
+ help
+ Lguest is a tiny in-kernel hypervisor. Selecting this will
+ allow your kernel to boot under lguest. This option will increase
+ your kernel size by about 6k. If in doubt, say N.
diff --git a/arch/x86/lguest/Makefile b/arch/x86/lguest/Makefile
new file mode 100644
index 000000000000..27f0c9ed7f60
--- /dev/null
+++ b/arch/x86/lguest/Makefile
@@ -0,0 +1 @@
+obj-y := i386_head.o boot.o
diff --git a/drivers/lguest/lguest.c b/arch/x86/lguest/boot.c
index 8e9e485a5cfa..8e9e485a5cfa 100644
--- a/drivers/lguest/lguest.c
+++ b/arch/x86/lguest/boot.c
diff --git a/drivers/lguest/lguest_asm.S b/arch/x86/lguest/i386_head.S
index 1ddcd5cd20f6..6d7a74f07c41 100644
--- a/drivers/lguest/lguest_asm.S
+++ b/arch/x86/lguest/i386_head.S
@@ -16,7 +16,7 @@
.section .init.text, "ax", @progbits
.ascii "GenuineLguest"
/* Set up initial stack. */
- movl $(init_thread_union+THREAD_SIZE),%esp
+ movl $(init_thread_union+THREAD_SIZE),%esp
movl %esi, %eax
addl $__PAGE_OFFSET, %eax
jmp lguest_init
diff --git a/drivers/lguest/Makefile b/drivers/lguest/Makefile
index e5047471c334..2db98c233e54 100644
--- a/drivers/lguest/Makefile
+++ b/drivers/lguest/Makefile
@@ -1,5 +1,5 @@
-# Guest requires the paravirt_ops replacement and the bus driver.
-obj-$(CONFIG_LGUEST_GUEST) += lguest.o lguest_asm.o lguest_bus.o
+# Guest requires the bus driver.
+obj-$(CONFIG_LGUEST_GUEST) += lguest_bus.o
# Host requires the other files, which can be a module.
obj-$(CONFIG_LGUEST) += lg.o