Kernel KVM-PPC virtualization development
 help / color / mirror / Atom feed
* [kvm-ppc-devel] [PATCH] kvmppc: support guest shutdown - guest part
@ 2008-04-07 12:37 ehrhardt
  2008-04-07 12:37 ` [kvm-ppc-devel] [PATCH] kvmppc: support guest shutdown - host part ehrhardt
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: ehrhardt @ 2008-04-07 12:37 UTC (permalink / raw)
  To: kvm-ppc

From: Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com>

This is the guest portion of this patch, it submits a trap with the special
immediate value where the native code would enter a infinite loop with irq's
disabled (no native shutdown available).
This is only a interim solution until the hypercall abi/api is fully
defined. Then we will recode it in according to that specification. 
I would wait for these final hypercall variant before we go to
linuxppc-dev@ozlabs.org with these patch, but for now this patch could stay in
our patch queues because it easens daily usage e.g. scripted testing.
Note - since qemu defaults to reboot the guest on shutdown you might need to
the -no-reboot command line option to qemu to get what is expected.

Signed-off-by: Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com>

[diffstat]
 kernel/setup-common.c |    4 ++++
 kvm/Kconfig           |   11 ++++++++++-
 2 files changed, 14 insertions(+), 1 deletion(-)
---

diff --git a/arch/powerpc/kernel/setup-common.c b/arch/powerpc/kernel/setup-common.c
--- a/arch/powerpc/kernel/setup-common.c
+++ b/arch/powerpc/kernel/setup-common.c
@@ -146,6 +146,10 @@ void machine_halt(void)
 #endif
 	printk(KERN_EMERG "System Halted, OK to turn off power\n");
 	local_irq_disable();
+#ifdef CONFIG_KVM_PPC_GUEST
+	/* FIXME port to the proper hypercall API/ABI when defined */
+	__asm__ __volatile__("twi 31,0,1");
+#endif
 	while (1) ;
 }
 
diff --git a/arch/powerpc/kvm/Kconfig b/arch/powerpc/kvm/Kconfig
--- a/arch/powerpc/kvm/Kconfig
+++ b/arch/powerpc/kvm/Kconfig
@@ -35,7 +35,7 @@ config KVM_POWERPC
 	bool
 
 config KVM_POWERPC_440
-	tristate "KVM guest support for PowerPC 440"
+	tristate "KVM host support for PowerPC 440 guests"
 	depends on KVM && 44x
 	select KVM_POWERPC
 	---help---
@@ -52,5 +52,14 @@ config KVM_PPC_VIRTIO
 # the virtualization menu.
 source drivers/virtio/Kconfig
 
+
+config KVM_PPC_GUEST
+	bool "Paravirt guest extensions for KVM on POWERPC"
+	depends on 44x
+	---help---
+	  This add support of paravirt features for KVM on POWERPC
+
+
+
 endif # VIRTUALIZATION
 

-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Register now and save $200. Hurry, offer ends at 11:59 p.m., 
Monday, April 7! Use priority code J8TLD2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
kvm-ppc-devel mailing list
kvm-ppc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-ppc-devel

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2008-04-07 15:23 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-04-07 12:37 [kvm-ppc-devel] [PATCH] kvmppc: support guest shutdown - guest part ehrhardt
2008-04-07 12:37 ` [kvm-ppc-devel] [PATCH] kvmppc: support guest shutdown - host part ehrhardt
2008-04-07 14:13 ` [kvm-ppc-devel] [PATCH] kvmppc: support guest shutdown - guest Jimi Xenidis
2008-04-07 15:23 ` Christian Ehrhardt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox