Re: [RFC/PATCH 15/15] guest: virtio device support, and kvm hypercalls

2008-03-22 Thread Carsten Otte
Rusty Russell wrote: > On Friday 21 March 2008 19:15:47 Christian Borntraeger wrote: >> Am Freitag, 21. März 2008 schrieb Rusty Russell: >>> Hmm, panic on device_register fail, but -ENOMEM on add_shared_memory >>> fail? My theory was that since this is boot time, panic() is the right >>> thing. >>

[RFC/PATCH 01/15 v2] preparation: provide hook to enable pgstes in user pagetable

2008-03-22 Thread Carsten Otte
From: Martin Schwidefsky <[EMAIL PROTECTED]> The SIE instruction on s390 uses the 2nd half of the page table page to virtualize the storage keys of a guest. This patch offers the s390_enable_sie function, which reorganizes the page tables of a single-threaded process to reserve space in the page t

[RFC/PATCH 03/15 v2] preparation: address of the 64bit extint parm in lowcore

2008-03-22 Thread Carsten Otte
From: Christian Borntraeger <[EMAIL PROTECTED]> The address 0x11b8 is used by z/VM for pfault and diag 250 I/O to provide a 64 bit extint parameter. virtio uses the same address, so its time to update the lowcore structure. Acked-by: Martin Schwidefsky <[EMAIL PROTECTED]> Signed-off-by: Christian

[RFC/PATCH 00/15 v2] kvm on big iron

2008-03-22 Thread Carsten Otte
This patch series introduces a backend for kvm to run on IBM System z machines (aka s390x) that uses the mainframe's sie virtualization capability. Many thanks for the review feedback we have received so far, I do greatly appreciate it! The first submission didn't draw much attention of elder vm m

[RFC/PATCH 02/15 v2] preparation: host memory management changes for s390 kvm

2008-03-22 Thread Carsten Otte
From: Heiko Carstens <[EMAIL PROTECTED]> From: Christian Borntraeger <[EMAIL PROTECTED]> This patch changes the s390 memory management defintions to use the pgste field for dirty and reference bit tracking of host and guest code. Usually on s390, dirty and referenced are tracked in storage keys,

[RFC/PATCH 04/15 v2] preparation: split sysinfo defintions for kvm use

2008-03-22 Thread Carsten Otte
From: Christian Borntraeger <[EMAIL PROTECTED]> drivers/s390/sysinfo.c uses the store system information intruction to query the system about information of the machine, the LPAR and additional hypervisors. KVM has to implement the host part for this instruction. To avoid code duplication, this

[RFC/PATCH 05/15 v2] kvm-s390: s390 arch backend for the kvm kernel module

2008-03-22 Thread Carsten Otte
From: Carsten Otte <[EMAIL PROTECTED]> From: Christian Borntraeger <[EMAIL PROTECTED]> From: Heiko Carstens <[EMAIL PROTECTED]> This patch contains the port of Qumranet's kvm kernel module to IBM zSeries (aka s390x, mainframe) architecture. It uses the mainframe's virtualization instruction SIE t

[RFC/PATCH 07/15 v2] kvm-s390: interrupt subsystem, cpu timer, waitpsw

2008-03-22 Thread Carsten Otte
From: Carsten Otte <[EMAIL PROTECTED]> This patch contains the s390 interrupt subsystem (similar to in kernel apic) including timer interrupts (similar to in-kernel-pit) and enabled wait (similar to in kernel hlt). In order to achieve that, this patch also introduces intercept handling for instru

[RFC/PATCH 06/15 v2] kvm-s390: sie intercept handling

2008-03-22 Thread Carsten Otte
From: Carsten Otte <[EMAIL PROTECTED]> From: Christian Borntraeger <[EMAIL PROTECTED]> This path introduces handling of sie intercepts in three flavors: Intercepts are either handled completely in-kernel by kvm_handle_sie_intercept(), or passed to userspace with corresponding data in struct kvm_ru

Re: [kvm-devel] [RFC/PATCH 14/15] guest: detect when running on kvm

2008-03-22 Thread Heiko Carstens
On Fri, Mar 21, 2008 at 03:33:29PM +0100, Carsten Otte wrote: > Am Freitag, den 21.03.2008, 15:06 +0100 schrieb Heiko Carstens: > > Just introduce something like MACHINE_FLAG_KVM. The rest can be converted > > later. Unless you're bored and feel like fiddling around with assembly code > > :) > I'v

[RFC/PATCH 13/15 v2] kvm-s390: update maintainers

2008-03-22 Thread Carsten Otte
From: Christian Borntraeger <[EMAIL PROTECTED]> This patch adds an entry for kvm on s390 to the MAINTAINERS file :-). We intend to push all patches regarding this via Avi's kvm.git. Signed-off-by: Christian Borntraeger <[EMAIL PROTECTED]> Signed-off-by: Carsten Otte <[EMAIL PROTECTED]> --- MAINT

Re: [kvm-devel] [RFC/PATCH 01/15] preparation: provide hook to enable pgstes in user pagetable

2008-03-22 Thread Heiko Carstens
> What you've done with dup_mm() is probably the brute-force way that I > would have done it had I just been trying to make a proof of concept or > something. I'm worried that there are a bunch of corner cases that > haven't been considered. > > What if someone else is poking around with ptrace o

[RFC/PATCH 11/15 v2] kvm-s390: add kvm to kconfig on s390

2008-03-22 Thread Carsten Otte
From: Carsten Otte <[EMAIL PROTECTED]> From: Christian Borntraeger <[EMAIL PROTECTED]> This patch adds the virtualization submenu and the kvm option to the kernel config. It also defines HAVE_KVM for 64bit kernels. Acked-by: Martin Schwidefsky <[EMAIL PROTECTED]> Signed-off-by: Christian Borntrae

[RFC/PATCH 09/15 v2] kvm-s390: interprocessor communication via sigp

2008-03-22 Thread Carsten Otte
From: Carsten Otte <[EMAIL PROTECTED]> From: Christian Borntraeger <[EMAIL PROTECTED]> This patch introduces in-kernel handling of _some_ sigp interprocessor signals (similar to ipi). kvm_s390_handle_sigp() decodes the sigp instruction and calls individual handlers depending on the operation reque

[RFC/PATCH 10/15 v2] kvm-s390: intercepts for diagnose instructions

2008-03-22 Thread Carsten Otte
From: Carsten Otte <[EMAIL PROTECTED]> From: Christian Borntraeger <[EMAIL PROTECTED]> This patch introduces interpretation of some diagnose instruction intercepts. Diagnose is our classic architected way of doing a hypercall. This patch features the following diagnose codes: - vm storage size, th

[RFC/PATCH 12/15 v2] kvm-s390: API documentation

2008-03-22 Thread Carsten Otte
From: Carsten Otte <[EMAIL PROTECTED]> This patch adds Documentation/s390/kvm.txt, which describes specifics of kvm's user interface that are unique to s390 architecture. Signed-off-by: Carsten Otte <[EMAIL PROTECTED]> --- Documentation/s390/kvm.txt | 125 +++

[RFC/PATCH 15/15 v2] guest: virtio device support, and kvm hypercalls

2008-03-22 Thread Carsten Otte
From: Christian Borntraeger <[EMAIL PROTECTED]> This patch implements kvm guest kernel support for paravirtualized devices and contains two parts: o a basic virtio stub using virtio_ring and external interrupts and hypercalls o full hypercall implementation in kvm_para.h Currently we dont have PC

[RFC/PATCH 14/15 v2] guest: detect when running on kvm

2008-03-22 Thread Carsten Otte
From: Christian Borntraeger <[EMAIL PROTECTED]> From: Carsten Otte <[EMAIL PROTECTED]> This patch adds functionality to detect if the kernel runs under the KVM hypervisor. A macro MACHINE_IS_KVM is exported for device drivers. This allows drivers to skip device detection if the systems runs non-vi

[RFC/PATCH 08/15 v2] kvm-s390: intercepts for privileged instructions

2008-03-22 Thread Carsten Otte
From: Carsten Otte <[EMAIL PROTECTED]> From: Christian Borntraeger <[EMAIL PROTECTED]> This patch introduces in-kernel handling of some intercepts for privileged instructions: handle_set_prefix()sets the prefix register of the local cpu handle_store_prefix() stores the content of the