On 2011-12-08 07:17, Sasha Levin wrote:
> Make sure 'exchanged' is initialized. Fixes the following warning:
>
> arch/x86/kvm/x86.c: In function 'emulator_cmpxchg_emulated':
> arch/x86/kvm/x86.c:3794:7: warning: 'exchanged' may be used uninitialized in
> this function
>
> Signed-off-by: Sasha Le
On Thu, 2011-12-08 at 09:04 +0100, Jan Kiszka wrote:
> On 2011-12-08 07:17, Sasha Levin wrote:
> > Make sure 'exchanged' is initialized. Fixes the following warning:
> >
> > arch/x86/kvm/x86.c: In function 'emulator_cmpxchg_emulated':
> > arch/x86/kvm/x86.c:3794:7: warning: 'exchanged' may be used
Dynamically checking hardware, use a dict to record the pin status,
pin process to single cpu by 'taskset' command.
Guest memory pining is already implemented in framework.
process pining needs to be done in the testcases.
Example:
| numa_node = -1 # last node
| p = virt_utils.NumaNode(numa_nod
This patch allows the user to fault in pages on a virtual cpus
address space for user controlled virtual machines. Typically this
is superfluous because userspace can just create a mapping and
let the kernel's page fault logic take are of it. There is one
exception: SIE won't start if the lowcore i
Hi Avi, Hi Marcelo,
I think I've integrated all feedback from last round. The race
between KVM_S390_ENABLE_UCONTROL and creation of vcpus has been
resolved by adding a parameter to KVM_CREATE_VM. The default
KVM_VM_REGULAR (==0) is backward compatible to KVM_CREATE_VM
without parameters, and KVM_V
This patch announces a new capability KVM_CAP_S390_UCONTROL that
indicates that kvm can now support virtual machines that are
controlled by userspace.
Signed-off-by: Carsten Otte
---
---
arch/s390/kvm/kvm-s390.c |3 +++
include/linux/kvm.h |1 +
2 files changed, 4 insertions(+)
---
This patch introduces two ioctls for virtual cpus, that are only
valid for kernel virtual machines that are controlled by userspace.
Each virtual cpu has its individual address space in this mode of
operation, and each address space is backed by the gmap
implementation just like the address space f
This patch introduces an interface to access the guest visible
storage keys. It supports three operations that model the behavior
that SSKE/ISKE/RRBE instructions would have if they were issued by
the guest. These instructions are all documented in the z architecture
principles of operation book.
This patch introduces a new exit reason in the kvm_run structure
named KVM_EXIT_UCONTROL. This exit indicates, that a virtual cpu
has regognized a fault on the host page table. The idea is that
userspace can handle this fault by mapping memory at the fault
location into the cpu's address space and
This patch makes sure user controlled virtual machines do not use a
system control area (sca). This is needed in order to create
virtual machines with more cpus than the size of the sca [64].
Signed-off-by: Carsten Otte
---
Index: linux-2.5-cecsim/arch/s390/kvm/kvm-s390.c
This patch introduces a new config option for user controlled kernel
virtual machines. It introduces an optional parameter to
KVM_CREATE_VM in order to create a user controlled virtual machine.
The parameter is passed to kvm_arch_init_vm for all architectures.
Valid values for the new parameter are
This patch fixes definition of the idle_mask and the local_int array
in kvm_s390_float_interrupt. Previous definition had 64 cpus max
hardcoded instead of using KVM_MAX_VCPUS.
Signed-off-by: Carsten Otte
---
Index: linux-2.5-cecsim/arch/s390/include/asm/kvm_host.h
This patch disables the in-kernel interrupt stack for KVM virtual
machines that are controlled by user. Userspace has to take care
of handling interrupts on its own.
Signed-off-by: Carsten Otte
---
Index: linux-2.5-cecsim/arch/s390/kvm/kvm-s390.c
==
This patch exports the s390 SIE hardware control block to userspace
via the mapping of the vcpu file descriptor. In order to do so,
a new arch callback named kvm_arch_vcpu_fault is introduced for all
architectures. It allows to map architecture specific pages.
Signed-off-by: Carsten Otte
---
---
This patch disables in-kernel handling of SIE intercepts for user
controlled virtual machines. All intercepts are passed to userspace
via KVM_EXIT_SIE exit reason just like SIE intercepts that cannot be
handled in-kernel for regular KVM guests.
Signed-off-by: Carsten Otte
---
Index: linux-2.5-cec
This patch fixes the return code of kvm_arch_vcpu_ioctl in case
of an unkown ioctl number.
Signed-off-by: Carsten Otte
---
---
arch/s390/kvm/kvm-s390.c |2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/arch/s390/kvm/kvm-s390.c
+++ b/arch/s390/kvm/kvm-s390.c
@@ -884,7 +884,7 @@ long
On Thu, 2011-12-08 at 10:12 +0100, Carsten Otte wrote:
> plain text document attachment (enable-ucontrol.patch)
> This patch introduces a new config option for user controlled kernel
> virtual machines. It introduces an optional parameter to
> KVM_CREATE_VM in order to create a user controlled virt
On 08.12.2011 10:25, Sasha Levin wrote:
Why is it s390 specific? why isn't it KVM_VM_UCONTROL which is currently
only implemented on s390?
Good point. Maybe the subject line for the patch should be fixed along
with that ;-)
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
t
On 12/07/2011 06:46 PM, Raghavendra K T wrote:
> On 12/07/2011 08:22 PM, Avi Kivity wrote:
>> On 12/07/2011 03:39 PM, Marcelo Tosatti wrote:
Also I think we can keep the kicked flag in vcpu->requests, no need
for
new storage.
>>>
>>> Was going to suggest it but it violates the curren
On 2011-12-07 11:29, Avi Kivity wrote:
> On 10/17/2011 06:00 PM, Lai Jiangshan wrote:
>> From: Lai Jiangshan
>>
>> Currently, NMI interrupt is blindly sent to all the vCPUs when NMI
>> button event happens. This doesn't properly emulate real hardware on
>> which NMI button event triggers LINT1. Be
On 12/08/2011 11:25 AM, Sasha Levin wrote:
> On Thu, 2011-12-08 at 10:12 +0100, Carsten Otte wrote:
> > plain text document attachment (enable-ucontrol.patch)
> > This patch introduces a new config option for user controlled kernel
> > virtual machines. It introduces an optional parameter to
> > KV
On Thu, 2011-12-08 at 11:45 +0200, Avi Kivity wrote:
> On 12/08/2011 11:25 AM, Sasha Levin wrote:
> > On Thu, 2011-12-08 at 10:12 +0100, Carsten Otte wrote:
> > > plain text document attachment (enable-ucontrol.patch)
> > > This patch introduces a new config option for user controlled kernel
> > >
On 12/08/2011 11:53 AM, Sasha Levin wrote:
> On Thu, 2011-12-08 at 11:45 +0200, Avi Kivity wrote:
> > On 12/08/2011 11:25 AM, Sasha Levin wrote:
> > > On Thu, 2011-12-08 at 10:12 +0100, Carsten Otte wrote:
> > > > plain text document attachment (enable-ucontrol.patch)
> > > > This patch introduces
On 12/08/2011 01:02 AM, Ben Hutchings wrote:
On Wed, 2011-12-07 at 19:31 +0800, Jason Wang wrote:
On 12/07/2011 03:30 PM, Rusty Russell wrote:
On Mon, 05 Dec 2011 16:58:37 +0800, Jason Wang wrote:
multiple queue virtio-net: flow steering through host/guest cooperation
Hello all:
This is a
On 08.12.2011, at 10:59, Avi Kivity wrote:
> On 12/08/2011 11:53 AM, Sasha Levin wrote:
>> On Thu, 2011-12-08 at 11:45 +0200, Avi Kivity wrote:
>>> On 12/08/2011 11:25 AM, Sasha Levin wrote:
On Thu, 2011-12-08 at 10:12 +0100, Carsten Otte wrote:
> plain text document attachment (enable-
On 2011-12-08 10:42, Jan Kiszka wrote:
> On 2011-12-07 11:29, Avi Kivity wrote:
>> On 10/17/2011 06:00 PM, Lai Jiangshan wrote:
>>> From: Lai Jiangshan
>>>
>>> Currently, NMI interrupt is blindly sent to all the vCPUs when NMI
>>> button event happens. This doesn't properly emulate real hardware o
Here's the patch series I ended up with. I haven't coded up the QEMU
side yet, so no idea if the new driver works.
Questions:
(1) Do we win from separating ISR, NOTIFY and COMMON?
(2) I used a "u8 bar"; should I use a bir and pack it instead? BIR
seems a little obscure (noone else in the ker
On Wed, 7 Dec 2011 17:48:17 +0200, "Michael S. Tsirkin" wrote:
> On Wed, Dec 07, 2011 at 04:02:45PM +0200, Sasha Levin wrote:
> > On Sun, 2011-12-04 at 20:23 +0200, Sasha Levin wrote:
> >
> > [snip]
> >
> > Rusty, Michael, does the below looks a reasonable optimization for you?
>
> OK overall b
Rusty, I can't find the actual patches, could you verify that they were
indeed sent?
On Thu, 2011-12-08 at 20:52 +1030, Rusty Russell wrote:
> Here's the patch series I ended up with. I haven't coded up the QEMU
> side yet, so no idea if the new driver works.
>
> Questions:
> (1) Do we win from
On Thu, 2011-12-08 at 20:14 +1030, Rusty Russell wrote:
> On Wed, 7 Dec 2011 17:48:17 +0200, "Michael S. Tsirkin"
> wrote:
> > On Wed, Dec 07, 2011 at 04:02:45PM +0200, Sasha Levin wrote:
> > > On Sun, 2011-12-04 at 20:23 +0200, Sasha Levin wrote:
> > >
> > > [snip]
> > >
> > > Rusty, Michael,
It seemed like a good idea, but it's actually a pain when we get more
than 32 feature bits. Just change it to a u32 for now.
---
drivers/char/virtio_console.c |2 +-
drivers/lguest/lguest_device.c |2 +-
drivers/s390/kvm/kvm_virtio.c |2 +-
drivers/virtio/virtio.c| 10
On (Mon) 05 Dec 2011 [15:18:59], Eric B Munson wrote:
> When a guest kernel is stopped by the host hypervisor it can look like a soft
> lockup to the guest kernel. This false warning can mask later soft lockup
> warnings which may be real. This patch series adds a method for a host
> hypervisor t
On 08.12.2011 11:18, Alexander Graf wrote:
If you really have to do this, please
1) make it s390 only. I don't even want to have to see this uglyness in other
archs
It pretty much is. The only interference is a) checking the machine
type in arch_init_vm now that I've introduced that paramete
KVM is forced to disable the IRQ0 override when we run with in-kernel
irqchip but without IRQ routing support of the kernel. Set the fwcfg
value correspondingly. This aligns us with qemu-kvm.
Signed-off-by: Jan Kiszka
---
hw/pc.c|3 ++-
kvm-all.c |5 +
kvm-stub.c |5 +
k
More KVM-specific devices will come, so let's start with moving the
kvmclock into a dedicated folder.
Signed-off-by: Jan Kiszka
---
Makefile.target|4 ++--
configure |1 +
hw/{kvmclock.c => kvm/clock.c} |4 ++--
hw/{kvmclock.h => kvm/clock.h} |
All LVTs are masked on reset, so the timer becomes ineffective. Letting
it tick nevertheless is harmless, but will at least create a spurious
trace event.
Signed-off-by: Jan Kiszka
---
hw/apic.c |2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/hw/apic.c b/hw/apic.c
index
Introduce a memory region type that can reserve I/O space. Such regions
are useful for modeling I/O that is only handled outside of QEMU, i.e.
in the context of an accelerator like KVM.
Any access to such a region from QEMU is a bug, but could theoretically
be triggered by guest code (DMA to reser
Rename msix_supported to msi_supported and control MSI and MSI-X
activation this way. That was likely to original intention for this
flag, but MSI support came after MSI-X.
Signed-off-by: Jan Kiszka
---
hw/msi.c |8
hw/msi.h |2 ++
hw/msix.c |9 -
hw/msix.h |2
To enable migration between accelerated and non-accelerated APIC models,
we will need to handle the timer saving and restoring specially and can
no longer rely on the automatics of VMSTATE_TIMER. Specifically,
accelerated model will not start any QEMUTimer.
This patch therefore factors out the gen
Analogously to the APIC, we will reuse some parts of the user space
i8259 model for KVM. Again, we create a PIC backend infrastructure and
provide hooks for init, reset, and vmload/save. This also introduces a
common helper to instantiate a single i8259 chip from the cascade-
creating i8259_init fu
Make the basic in-kernel irqchip support selectable via
-machine ...,kernel_irqchip=on. Leave it off by default until it can
fully replace user space models.
Signed-off-by: Jan Kiszka
---
qemu-config.c |4
qemu-options.hx |5 -
2 files changed, 8 insertions(+), 1 deletions(-)
On real hardware, NMI button events are injected via the LINT1 line of
the APICs. E.g. kdump expect this wiring and gets upset if the per-APIC
LINT1 mask is not respected, i.e. if NMIs are injected to VCPUs that
should not receive them. Change the APIC emulation code to reflect this.
Based on qemu
This introduces the alternative APIC backend which makes use of KVM's
in-kernel device model. External NMI injection via LINT1 is emulated by
checking the current state of the in-kernel APIC, only injecting a NMI
into the VCPU if LINT1 is unmasked and configured to DM_NMI.
MSI is not yet supported
Split up the IOAPIC analogously to APIC and i8259. KVM will share the
device description, reset logic and certain init parts with the user
space model.
Signed-off-by: Jan Kiszka
---
Makefile.target |2 +-
hw/ioapic.c | 130 ---
hw/io
Add the basic infrastructure to active in-kernel irqchip support, inject
interrupts into these models, and maintain IRQ routes.
Routing is optional and depends on the host arch supporting
KVM_CAP_IRQ_ROUTING. When it's not available on x86, we looe the HPET as
we can't route GSI0 to IOAPIC pin 2.
This introduces the KVM-accelerated IOAPIC backend and extends the IRQ
routing setup by the 0->2 redirection when needed.
The IOAPIC gains a KVM-specific property that allows to define the GSI
base for injecting interrupts into the kernel model. This will allow to
disentangle PIC and IOAPIC pins f
Introduce the alternative i8259 backend that exploits KVM in-kernel
acceleration.
The PIIX3 initialization code is furthermore extended by KVM specific
IRQ route setup. GSI injection differs in KVM mode from the user space
model. As we can dispatch ISA-range IRQs to both IOAPIC and PIC inside
the
Changes in v4:
- rebased of current uq/master
- fixed stupid bugs that broke bisectability and user space irqchip mode
- integrated NMI-over-LINT1 injection logic
CC: Lai Jiangshan
Jan Kiszka (15):
msi: Generalize msix_supported to msi_supported
kvm: Move kvmclock into hw/kvm folder
apic:
The KVM in-kernel APIC model will reuse parts of the user space model
while providing the same frontend view to guest and most management
interfaces. Introduce an APIC backend concept to encapsulate those
parts that will tell user space and KVM model apart. The backend offers
callback hooks for ini
On 12/08/2011 12:48 PM, Carsten Otte wrote:
On 08.12.2011 11:18, Alexander Graf wrote:
If you really have to do this, please
1) make it s390 only. I don't even want to have to see this
uglyness in other archs
It pretty much is. The only interference is a) checking the machine
type in arch_i
On 2011-12-07 11:49, Avi Kivity wrote:
> On 12/06/2011 04:34 PM, Jan Kiszka wrote:
>> Save the qemu-kvm release helper before deleting the kvm directory.
>
> Thanks, applied.
>
>> Anything else useful remaining in /kvm? Otherwise I would release my
>> dinosaur extinction patch.
>
> Are we clear
On Wed, 07 Dec 2011, Avi Kivity wrote:
> On 12/05/2011 10:18 PM, Eric B Munson wrote:
> > Changes from V4:
> > Rename KVM_GUEST_PAUSED to KVMCLOCK_GUEST_PAUSED
> > Add description of KVMCLOCK_GUEST_PAUSED ioctl to api.txt
> >
> > Changes from V3:
> > Include CC's on patch 3
> > Drop clear flag ioc
On Mon, Nov 14, 2011, Avi Kivity wrote about "Re: [PATCH 02/10] nEPT: MMU
context for nested EPT":
> > >> +#if PTTYPE == EPT
> > >> +real_gfn = mmu->translate_gpa(vcpu,
> > >> gfn_to_gpa(table_gfn),
> > >> + EPT_WRITABLE_MASK);
> > >>
On Wed, 07 Dec 2011, Avi Kivity wrote:
> On 12/05/2011 10:19 PM, Eric B Munson wrote:
> > When a host stops or suspends a VM it will set a flag to show this. The
> > watchdog will use these functions to determine if a softlockup is real, or
> > the
> > result of a suspended VM.
> >
> > +bool k
On Wed, 07 Dec 2011, Avi Kivity wrote:
> On 12/05/2011 10:19 PM, Eric B Munson wrote:
> > Now that we have a flag that will tell the guest it was suspended, create an
> > interface for that communication using a KVM ioctl.
> >
> > @@ -3295,6 +3295,10 @@ long kvm_arch_vcpu_ioctl(struct file *filp,
On Wed, 07 Dec 2011, Avi Kivity wrote:
> On 12/05/2011 10:19 PM, Eric B Munson wrote:
> >
> > diff --git a/include/asm-generic/kvm_para.h b/include/asm-generic/kvm_para.h
> > new file mode 100644
> > index 000..177e1eb
> > --- /dev/null
> > +++ b/include/asm-generic/kvm_para.h
> > @@ -0,0 +1,1
On 2011年12月08日 01:24, Pekka Enberg wrote:
On Wed, 7 Dec 2011, Daniel P. Berrange wrote:
On Wed, Dec 07, 2011 at 06:28:12PM +0200, Pekka Enberg wrote:
On Wed, Dec 7, 2011 at 11:37 AM, Sasha Levin
wrote:
This allows users to pass a pre-configured fd to use for the network
interface.
For examp
On Thu, 2011-12-08 at 20:52 +1030, Rusty Russell wrote:
> Here's the patch series I ended up with. I haven't coded up the QEMU
> side yet, so no idea if the new driver works.
>
> Questions:
> (1) Do we win from separating ISR, NOTIFY and COMMON?
> (2) I used a "u8 bar"; should I use a bir and pac
This patch add tests for testing cpu flags in qemu:
a) interface cpu flags tests
1) qemu -cpu ?model
2)dump
3)cpuid
b) guest run cpu flags tests
1) Test boot cpu model.
2) Test boot cpu model and additiona/nonstandard model flags.
3) Test boot fail with host un
Thanks a lot Lucas,
I've applied the patches. And sorry for the delay, I'm pretty busy at the
moment.
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
On Thu, Dec 8, 2011 at 11:52, Jan Kiszka wrote:
> This introduces the alternative APIC backend which makes use of KVM's
> in-kernel device model. External NMI injection via LINT1 is emulated by
> checking the current state of the in-kernel APIC, only injecting a NMI
> into the VCPU if LINT1 is unm
This flag will be used to check if the vm was stopped by the host when a soft
lockup was detected. The host will set the flag when it stops the guest. On
resume, the guest will check this flag if a soft lockup is detected and skip
issuing the warning.
Signed-off-by: Eric B Munson
Cc: mi...@redh
A suspended VM can cause spurious soft lockup warnings. To avoid these, the
watchdog now checks if the kernel knows it was stopped by the host and skips
the warning if so. When the watchdog is reset successfully, clear the guest
paused flag.
Signed-off-by: Eric B Munson
Cc: mi...@redhat.com
Cc:
Now that we have a flag that will tell the guest it was suspended, create an
interface for that communication using a KVM ioctl.
Signed-off-by: Eric B Munson
Cc: mi...@redhat.com
Cc: h...@zytor.com
Cc: a...@arndb.de
Cc: ry...@linux.vnet.ibm.com
Cc: aligu...@us.ibm.com
Cc: mtosa...@redhat.com
Cc:
When a host stops or suspends a VM it will set a flag to show this. The
watchdog will use these functions to determine if a softlockup is real, or the
result of a suspended VM.
Signed-off-by: Eric B Munson
Cc: mi...@redhat.com
Cc: h...@zytor.com
Cc: a...@arndb.de
Cc: ry...@linux.vnet.ibm.com
Cc:
Changes from V5:
Collapse generic check_and_clear_guest_stopped into patch 2
Include check_and_clear_guest_stopped defintion to ia64, s390, and powerpc
Change check_and_clear_guest_stopped to use __get_cpu_var instead of taking the
cpuid arg.
Protect check_and_clear_guest_stopped declaration with
On Thu, Dec 8, 2011 at 11:52, Jan Kiszka wrote:
> Changes in v4:
> - rebased of current uq/master
> - fixed stupid bugs that broke bisectability and user space irqchip mode
> - integrated NMI-over-LINT1 injection logic
I had comments to one patch, others look fine.
Overall, string based subtype
On 12/7/2011 3:02 AM, Jason Wang wrote:
On 12/06/2011 11:42 PM, Sridhar Samudrala wrote:
On 12/6/2011 5:15 AM, Stefan Hajnoczi wrote:
On Tue, Dec 6, 2011 at 10:21 AM, Jason Wang
wrote:
On 12/06/2011 05:18 PM, Stefan Hajnoczi wrote:
On Tue, Dec 6, 2011 at 6:33 AM, Jason Wang
wrote:
On 12/
From: Amos Kong
Dynamically checking hardware, use a dict to record the pin status,
pin process to single cpu by 'taskset' command.
Guest memory pining is already implemented in framework.
process pining needs to be done in the testcases.
Example:
| numa_node = -1 # last node
| p = virt_utils
From: Liu Ping Fan
Currently, vcpu can be destructed only when kvm instance destroyed.
Change this to vcpu's destruction taken when its refcnt is zero,
and then vcpu MUST and CAN be destroyed before kvm's destroy.
Signed-off-by: Liu Ping Fan
---
arch/x86/kvm/i8254.c | 10 --
arch/x86
Hi,
This patch series rearranges and tidies various parts of kvmtool to pave the way
for the addition of support for another architecture -- SPAPR PPC64. A second
patch series will follow to present the PPC64 support.
Building on the separation of x86-specific code into tools/kvm/x86, this seri
Not every architecture has an i8042 kbd controller, so only use this when
building for x86.
Signed-off-by: Matt Evans
---
tools/kvm/Makefile |2 +-
tools/kvm/builtin-run.c |2 ++
2 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/tools/kvm/Makefile b/tools/kvm/Makefile
i
The checks for optional libraries build code to perform the tests, so should
respect certain CFLAGS -- in particular, -m64 so we check for 64bit libraries if
they're required.
Signed-off-by: Matt Evans
---
tools/kvm/Makefile | 86 ++-
1 files cha
This patch adds an 'I' parameter to override the default kernel include path of
'../../include'.
Signed-off-by: Matt Evans
---
tools/kvm/Makefile |9 +++--
1 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/tools/kvm/Makefile b/tools/kvm/Makefile
index f58a1d8..f85a154 100644
kvmtool's types.h includes , which by default on PPC64 brings in
int-l64.h; define __SANE_USERSPACE_TYPES__ to get LL64 types.
This patch also adds CFLAGS to the final link, so that any -m64 is obeyed
when linking, too.
Signed-off-by: Matt Evans
---
tools/kvm/Makefile |2 +-
to
This patch creates a new function in x86/kvm-cpu.c, kvm_cpu__handle_exit(), in
which arch-specific exit reasons can be handled outside of the common runloop.
Signed-off-by: Matt Evans
---
tools/kvm/include/kvm/kvm-cpu.h |2 ++
tools/kvm/kvm-cpu.c | 10 --
tools/kvm/x86/
We die() if we can't read KVM_CAP_NR_VCPUS, but the API docs suggest to assume
the value 4 in this case. This is pertinent to PPC KVM, which currently
does not support this CAP.
Signed-off-by: Matt Evans
---
tools/kvm/kvm.c |6 +-
1 files changed, 5 insertions(+), 1 deletions(-)
diff -
kvm_cpu__run() currently die()s if KVM_RUN returns non-zero. Some architectures
may return positive values in non-error cases, whereas real errors are always
negative return values. Check for those instead.
Signed-off-by: Matt Evans
---
tools/kvm/kvm-cpu.c |2 +-
1 files changed, 1 inserti
Currently, the SIGALRM handler calls device poll functions (for serial, virtio
console) directly. Which devices are present and which require polling is a
system-specific decision, so create a new function called from common code &
move the x86-specific poll calls into it.
Signed-off-by: Matt Eva
Different systems will want different base kernel commandlines, e.g. non-x86
systems probably don't need noapic, i8042.* etc., so set the commandline up in
arch-specific code. Then, if the resulting commandline is empty, don't strcat a
space onto the front.
Signed-off-by: Matt Evans
---
tools/k
This patch paves the way for adding a hypervisor console, useful on systems that
support one out of the box yet don't have either serial port or virtio console
support (e.g. kernels expecting POWER SPAPR).
Signed-off-by: Matt Evans
---
tools/kvm/builtin-run.c |8 ++--
tools/kvm/incl
term_getc()'s int c has one byte written into it (at its lowest address) by
read_in_full(). This is expected to be the least significant byte, but that
isn't the case on BE! Use correct type, unsigned char. A similar issue exists
in term_getc_iov(), which needs to write a char to the iov rather
cpios are valid as initrds too, so allow them through the check.
Signed-off-by: Matt Evans
---
tools/kvm/kvm.c |8 +---
1 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/tools/kvm/kvm.c b/tools/kvm/kvm.c
index 0bbe9ba..d26e3d7 100644
--- a/tools/kvm/kvm.c
+++ b/tools/kvm/kvm
This patch passes the initrd fd and commandline to load_flat_binary(), which may
be used to load both the kernel & an initrd (stashing or inserting the
commandline as appropriate) in the same way that load_bzimage() does. This is
especially useful when load_bzimage() is unused for a particular
arc
Re-arrange pci__init() in builtin-run such that it comes before devices are
initialised.
Signed-off-by: Matt Evans
---
tools/kvm/builtin-run.c |4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/tools/kvm/builtin-run.c b/tools/kvm/builtin-run.c
index c067685..99db522 1006
Currently some devices (in this case kbd, fb, vesa) are initialised after
CPU/firmware setup. On some platforms (e.g. PPC) kvm__arch_setup_firmware() may
be making a device tree. Any devices added after this point will be missed!
Tiny refactor of builtin-run.c, moving timer start, firmware setup
IRQ init may involve per-CPU setup/allocation of resources, so make sure
kvm->nrcpus is initialised before calling irq__init().
Signed-off-by: Matt Evans
---
tools/kvm/builtin-run.c |4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/tools/kvm/builtin-run.c b/tools/kvm/bu
Add a --hugetlbfs commandline option to give a path to hugetlbfs-map guest
memory (down in kvm__arch_init()). For x86, guest memory is a normal
ANON mmap() if this option is not provided, otherwise a hugetlbfs mmap.
Signed-off-by: Matt Evans
---
tools/kvm/builtin-run.c |4 ++-
tools/kv
Other pieces of kvmtool may be interested in PCI_MAX_DEVICES.
Signed-off-by: Matt Evans
---
tools/kvm/include/kvm/pci.h |1 +
tools/kvm/pci.c |1 -
2 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/tools/kvm/include/kvm/pci.h b/tools/kvm/include/kvm/pci.h
index f
vesa, pci-shmem and virtio-pci devices need to set up config space with
little-endian conversions (as config space is LE). The pci_config_address
bitfield also needs to be reversed when building on BE systems.
Signed-off-by: Matt Evans
---
tools/kvm/hw/pci-shmem.c | 23 +++--
The BAR addresses are set up fine, but missed the bar_size[] array which is now
updated correspondingly.
Use PCI_IO_SIZE instead of '0x100'.
Signed-off-by: Matt Evans
---
tools/kvm/virtio/pci.c |7 +--
1 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/tools/kvm/virtio/pci.c
This allows config space access in a more natural manner than clunky x86 IO
ports,
and is useful for other architectures. Internally, the x86 IO port access uses
these new config space interfaces.
Signed-off-by: Matt Evans
---
tools/kvm/include/kvm/pci.h |9 +-
tools/kvm/pci.c
pci_get_io_space_block() used to grab addresses from
KVM_32BIT_GAP_START + 0x100, which is x86-specific. Create a new define,
KVM_PCI_MMIO_AREA, to specify a bus address these allocations can come from.
Signed-off-by: Matt Evans
---
tools/kvm/pci.c |8 ++--
tool
Different architectures will deal with MMIO exits differently. For example,
KVM_EXIT_IO is x86-specific, and I/O cycles are often synthesised by steering
into windows in PCI bridges on other architectures.
This patch calls arch-specific kvm_cpu__emulate_io() and kvm_cpu__emulate_mmio()
from the m
On 2011年12月06日 22:39, Daniel P. Berrange wrote:
On Fri, Nov 11, 2011 at 07:57:00PM +0800, Osier Yang wrote:
Which is named as "KVMTOOL_STATE_DIR", so that the user can
configure the path of state directly as he wants.
---
tools/kvm/main.c |7 ++-
1 files changed, 6 insertions(+), 1 de
On 2011年12月06日 22:46, Daniel P. Berrange wrote:
On Fri, Nov 11, 2011 at 07:57:04PM +0800, Osier Yang wrote:
It's named as "kvmtool".
---
src/conf/domain_conf.c |4 +++-
src/conf/domain_conf.h |1 +
2 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/src/conf/domain_conf.c
On 2011年12月06日 22:55, Daniel P. Berrange wrote:
On Fri, Nov 11, 2011 at 07:57:06PM +0800, Osier Yang wrote:
Basically, the drivers is implemented by using kvm tool binary
currently, (see ./kvm help for more info).
Current implementation supports define/undefine, start/destroy/,
suspend/resume,
On Fri, 2011-12-09 at 17:55 +1100, Matt Evans wrote:
> Add a --hugetlbfs commandline option to give a path to hugetlbfs-map guest
> memory (down in kvm__arch_init()). For x86, guest memory is a normal
> ANON mmap() if this option is not provided, otherwise a hugetlbfs mmap.
>
> Signed-off-by: Mat
On 2011-12-08 22:25, Blue Swirl wrote:
> On Thu, Dec 8, 2011 at 11:52, Jan Kiszka wrote:
>> Changes in v4:
>> - rebased of current uq/master
>> - fixed stupid bugs that broke bisectability and user space irqchip mode
>> - integrated NMI-over-LINT1 injection logic
>
> I had comments to one patch,
On 2011-12-08 22:16, Blue Swirl wrote:
> On Thu, Dec 8, 2011 at 11:52, Jan Kiszka wrote:
>> This introduces the alternative APIC backend which makes use of KVM's
>> in-kernel device model. External NMI injection via LINT1 is emulated by
>> checking the current state of the in-kernel APIC, only inj
1 - 100 of 102 matches
Mail list logo