New qemu upstream versions report block info like this:
(monitor humanmonitor1) Sending command 'info block'
(monitor humanmonitor1) Response to 'info block'
(monitor humanmonitor1)virtio0: removable=0
file=/tmp/kvm_autotest_root/images/rhel6-64.qcow2 ro=0 drv=qcow2 encrypted=0
(monitor human
On Thu, 19 May 2011 01:01:25 +0300, "Michael S. Tsirkin"
wrote:
> The patch virtio_net: limit xmit polling
> got the logic reversed: it polled while we had
> capacity not while ring was empty.
>
> Fix it up and clean up a bit by using a for loop.
>
> Signed-off-by: Michael S. Tsirkin
> ---
>
Signed-off-by: Lucas Meneghel Rodrigues
---
client/tests/kvm/tests/physical_resources_check.py |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/client/tests/kvm/tests/physical_resources_check.py
b/client/tests/kvm/tests/physical_resources_check.py
index 1ef906f..e647e0b
Finally decided to see just how much of the Radeon was working (eg, if it was
*just* OpenCL or not), and I am happy to confirm that both video output and
OpenGL acceleration are fully functional inside KVM.
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message
On 05/18/2011 02:05 AM, Sasha Levin wrote:
On Tue, 2011-05-17 at 20:18 -0500, Eric Van Hensbergen wrote:
On Tue, May 17, 2011 at 3:27 PM, Sasha Levin wrote:
On Tue, 2011-05-17 at 22:08 +0300, Sasha Levin wrote:
'kvm_9p' isn't created as a device under /dev, it's just a name used
internally by
On Thu, May 19, 2011 at 12:42:49PM -0700, Shirley Ma wrote:
> On Wed, 2011-05-18 at 10:00 -0700, Shirley Ma wrote:
> > On Wed, 2011-05-18 at 19:51 +0300, Michael S. Tsirkin wrote:
> > > > > Yes, I agree. I think for tcpdump, we really need to copy the
> > > data
> > > > > anyway, to avoid guest ch
Add support for used_event feature, and utilize it to
reduce the number of interrupts and exits for the guest.
Signed-off-by: Michael S. Tsirkin
---
hw/vhost_net.c |6
hw/virtio.c| 92 ++-
hw/virtio.h|9 +-
3 files ch
Add support for extended feature bits: up to 64 bit.
Only virtio-pci is actually implemented,
s390 and syborg are stubbed out (and untested).
Signed-off-by: Michael S. Tsirkin
---
hw/qdev-properties.c | 39
hw/qdev.h | 10 +
hw/s390-virtio-bus.c |
OK, here's a patch that implements the virtio spec update that I
sent earlier. It supercedes the PUBLISH_USED_IDX patches
I sent out earlier.
Support is added in both userspace and vhost-net.
If you see issues or are just curious, you can
turn the new feature off. For example:
-global virtio-net
From: "Michael S. Tsirkin"
Date: Fri, 20 May 2011 02:10:07 +0300
> Rusty, I think it will be easier to merge vhost and virtio bits in one
> go. Can it all go in through your tree (Dave in the past acked
> sending a very similar patch through you so should not be a problem)?
And in case you want
Support the new event index feature. When acked,
utilize it to reduce the # of interrupts sent to the guest.
Signed-off-by: Michael S. Tsirkin
---
drivers/vhost/net.c | 12 ++--
drivers/vhost/test.c |6 +-
drivers/vhost/vhost.c | 138 +
d
Update vhost_has_feature to make it work correctly for bit > 32.
Signed-off-by: Michael S. Tsirkin
---
drivers/vhost/vhost.h |8
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/vhost/vhost.h b/drivers/vhost/vhost.h
index 8e03379..64889d2 100644
--- a/drivers/v
Extend features to 64 bit so we can use more
transport bits.
Signed-off-by: Michael S. Tsirkin
---
drivers/lguest/lguest_device.c |8
drivers/s390/kvm/kvm_virtio.c |8
drivers/virtio/virtio.c|8
drivers/virtio/virtio_pci.c| 34 +++
Extend the virtio_test tool so it can work with
64 bit features.
Signed-off-by: Michael S. Tsirkin
---
tools/virtio/virtio_test.c |8 ++--
1 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/tools/virtio/virtio_test.c b/tools/virtio/virtio_test.c
index 74d3331..96cf9bf 100644
Update avail index immediately instead of upon kick:
for virtio-net RX this helps parallelism with the host.
Signed-off-by: Michael S. Tsirkin
---
drivers/virtio/virtio_ring.c | 28 +++-
1 files changed, 19 insertions(+), 9 deletions(-)
diff --git a/drivers/virtio/virt
Current code might introduce a lot of latency variation
if there are many pending bufs at the time we
attempt to transmit a new one. This is bad for
real-time applications and can't be good for TCP either.
Free up just enough to both clean up all buffers
eventually and to be able to xmit the next
virtio net uses the number of sg entries to
check for TX ring capacity freed. But this
gives incorrect results when indirect buffers
are used. Use the new capacity API instead.
Signed-off-by: Michael S. Tsirkin
---
drivers/net/virtio_net.c |9 -
1 files changed, 4 insertions(+), 5 de
>From: Shirley Ma
Signed-off-by: Shirley Ma
Signed-off-by: Michael S. Tsirkin
---
drivers/virtio/virtio_ring.c |8
include/linux/virtio.h |5 +
2 files changed, 13 insertions(+), 0 deletions(-)
diff --git a/drivers/virtio/virtio_ring.c b/drivers/virtio/virtio_ring.c
Ask for delayed callbacks on TX ring full, to give the
other side more of a chance to make progress.
Signed-off-by: Michael S. Tsirkin
---
drivers/net/virtio_net.c |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c
index
Add ability to test the new event idx feature,
enable by default.
---
tools/virtio/virtio_test.c | 19 +--
1 files changed, 17 insertions(+), 2 deletions(-)
diff --git a/tools/virtio/virtio_test.c b/tools/virtio/virtio_test.c
index df0c6d2..74d3331 100644
--- a/tools/virtio/virt
Support for the new event idx feature:
1. When enabling interrupts, publish the current avail index
value to the host to get interrupts on the next update.
2. Use the new avail_event feature to reduce the number
of exits from the guest.
Simple test with the simulator:
[virtio]# time ./virti
With the new used_event and avail_event and features, both
host and guest need similar logic to check whether events are
enabled, so it helps to put the common code in the header.
Note that Xen has similar logic for notification hold-off
in include/xen/interface/io/ring.h with req_event and req_pr
Define a new feature bit for the guest and host to utilize
an event index (like Xen) instead if a flag bit to enable/disable
interrupts and kicks.
Signed-off-by: Michael S. Tsirkin
---
include/linux/virtio_ring.h | 15 ++-
1 files changed, 14 insertions(+), 1 deletions(-)
diff --g
Add an API that tells the other side that callbacks
should be delayed until a lot of work has been done.
Implement using the new event_idx feature.
Note: it might seem advantageous to let the drivers
ask for a callback after a specific capacity has
been reached. However, as a single head can
free
OK, here is the large patchset that implements the virtio spec update
that I sent earlier (the spec itself needs a minor update, will send
that out too next week, but I think we are on the same page here
already). It supercedes the PUBLISH_USED_IDX patches I sent
out earlier.
What will follow will
On Thu, May 19, 2011 at 3:12 PM, Avi Kivity wrote:
> +struct MemoryRegion {
> + /* All fields are private - violators will be prosecuted */
> + const MemoryRegionOps *ops;
> + MemoryRegion *parent;
In the case where a region is aliased (mapped twice into the address
space at different ad
Am 19.05.2011 16:12, schrieb Avi Kivity:
The memory API separates the attributes of a memory region (its size, how
reads or writes are handled, dirty logging, and coalescing) from where it
is mapped and whether it is enabled. This allows a device to configure
a memory region once, then hand it of
On 05/19/2011 09:12 AM, Avi Kivity wrote:
The memory API separates the attributes of a memory region (its size, how
reads or writes are handled, dirty logging, and coalescing) from where it
is mapped and whether it is enabled. This allows a device to configure
a memory region once, then hand it
On 05/19/2011 11:08 PM, Cyrill Gorcunov wrote:
...
>>
>> What prevents nr_online_cpus from being greater than KVM_NR_CPUS? Since
>> that latter is a #define, might want to change 'else if' to if there.
>>
>> David
>>
>
> Good catch! We should add a constraint here and limit it to KVM_NR_CPUS.
>
On Wed, 2011-05-18 at 10:00 -0700, Shirley Ma wrote:
> On Wed, 2011-05-18 at 19:51 +0300, Michael S. Tsirkin wrote:
> > > > Yes, I agree. I think for tcpdump, we really need to copy the
> > data
> > > > anyway, to avoid guest changing it in between. So we do that
> and
> > then
> > > > use the co
On 2011-05-19 16:12, Avi Kivity wrote:
> +/* Sets an offset to be added to MemoryRegionOps callbacks. */
> +void memory_region_set_offset(MemoryRegion *mr, target_phys_addr_t offset);
Please mark this as a legacy helper, ideally to be removed after the
complete conversion to this API. During that
On 05/19/2011 11:04 PM, David Ahern wrote:
>
> On 05/18/11 13:56, Sasha Levin wrote:
>> If user haven't specified cpu count for the guest, use
>> the amount of online cpus on the host.
>>
>> Signed-off-by: Sasha Levin
>> ---
>> tools/kvm/kvm-run.c |9 ++---
>> 1 files changed, 6 insertio
On Thu, 2011-05-19 at 10:12 -0400, Avi Kivity wrote:
> The memory API separates the attributes of a memory region (its size, how
> reads or writes are handled, dirty logging, and coalescing) from where it
> is mapped and whether it is enabled. This allows a device to configure
> a memory region on
On 05/18/11 13:56, Sasha Levin wrote:
> If user haven't specified cpu count for the guest, use
> the amount of online cpus on the host.
>
> Signed-off-by: Sasha Levin
> ---
> tools/kvm/kvm-run.c |9 ++---
> 1 files changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/tools/kvm/kv
* Sasha Levin wrote:
> +++ b/tools/kvm/include/kvm/kvm.h
> @@ -11,6 +11,8 @@
> #define KVM_32BIT_GAP_SIZE (512 << 20)
> #define KVM_32BIT_GAP_START ((1ULL << 32) - KVM_32BIT_GAP_SIZE)
>
> +#define SIGKVMEXIT (SIGUSR1 + 2)
Please preserve the vertical alignment that already exists in that
Fix some signed/assigned mistakes in virtqueue_enable_cb_delayed
by using u16 math all over.
Signed-off-by: Michael S. Tsirkin
---
I'll put this on my v1 branch as well
@@ -398,7 +397,7 @@ EXPORT_SYMBOL_GPL(virtqueue_enable_cb);
bool virtqueue_enable_cb_delayed(struct virtqueue *_vq)
{
The memory API separates the attributes of a memory region (its size, how
reads or writes are handled, dirty logging, and coalescing) from where it
is mapped and whether it is enabled. This allows a device to configure
a memory region once, then hand it off to its parent bus to map it according
to
The following patch includes a memory API proposal (without implementation).
Subject to review comments and endless discussions, my plans are to post
a v2 with an implementation and partial conversion, and v3 with full conversion
and elimination of cpu_register_physical_memory().
Avi Kivity (1):
Hello, Please help!
I am using KVM and virt-manager as shipped with CentOS 5.6. I need to
deploy a particular topology and find what I think some strange
behaviour. Please clarify where am I wrong:
- I want to simulate two virtual switches to connect my VMs to. I have
defined a second virtual netw
When shutting down SMP guests only VCPU #0 will receive
a KVM_EXIT_SHUTDOWN. Waiting for all VCPU threads to exit
causes them to hang.
Instead, notify all VCPU threads once VCPU #0 thread is terminated
so they could also stop properly.
Signed-off-by: Sasha Levin
---
tools/kvm/include/kvm/kvm.h
On Thu May 19, 2011 at 09:40:41 +0100, Stefan Hajnoczi wrote:
> You are exercising both networking and storage. Have you cut the test
> down to just wget vs cp/rm? Also why the sleep 10?
I'm 99% certain the leak is coming from the virtio block device
now. A simple test is:
wget http://mir
On Thu May 19, 2011 at 09:40:41 +0100, Stefan Hajnoczi wrote:
> You are exercising both networking and storage. Have you cut the test
> down to just wget vs cp/rm?
Both seem to leak; but the cp/rm leaks more. Which suggests to me
that we're seeing a leak in the virtio block handling.
> Also
On 05/19/2011 03:56 AM, Sasha Levin wrote:
> If user haven't specified cpu count for the guest, use
> the amount of online cpus on the host.
>
> Signed-off-by: Sasha Levin
> ---
> tools/kvm/kvm-run.c |9 ++---
> 1 files changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/tools/kvm
From: Feng Yang
Current working folder for
unattended_install_config = UnattendedInstallConfig(test, params)
unattended_install_config.setup()
must be kvm folder.
Signed-off-by: Feng Yang
---
client/tests/kvm/tests/unattended_install.py |3 +++
1 files changed, 3 insertions(+), 0 d
On Thu, 2011-05-19 at 09:02 +0400, Cyrill Gorcunov wrote:
> > +} __attribute__((aligned (8)));
> > +
>
> Hi Sasha, could you enlighten me, why do we need
> __attribute__((aligned (8))) here at all? Probably packed are to be
> used instead?
Yup, You're right.
--
Sasha.
--
To unsubscribe from t
On Thu, May 19, 2011 at 9:40 AM, Stefan Hajnoczi wrote:
> On Wed, May 18, 2011 at 5:44 PM, Steve Kemp wrote:
> If you have SystemTap installed you may wish to use the "dtrace"
> backend instead of "simple". You can then use SystemTap scripts on
> the probes. SystemTap is more powerful, it shoul
On Wed, May 18, 2011 at 5:44 PM, Steve Kemp wrote:
>
> I'm running the most recent release of KVM, version 0.14.0
> on a host kernel 2.6.32.15, and seem to be able to trigger
> a leak of memory pretty easily.
>
> Inside a guest the following one-liner will cause the KVM
> process on the host
* Amerigo Wang wrote:
> Don't link the rbtree.o from kernel object tree, build
> rbtree.o from source by ourselves.
>
> Reported-by: Ingo Molnar
> Signed-off-by: WANG Cong
Nice, thanks!
Acked-by: Ingo Molnar
Ingo
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
On Wed, May 18, 2011 at 09:49:42AM +0930, Rusty Russell wrote:
> On Tue, 17 May 2011 09:10:31 +0300, "Michael S. Tsirkin"
> wrote:
> > Well one can imagine a driver doing:
> >
> > while (virtqueue_get_buf()) {
> > virtqueue_add_buf()
> > }
> > virtqueue_kick()
> >
> > wh
On Mon, May 16, 2011 at 04:43:21PM +0930, Rusty Russell wrote:
> On Sun, 15 May 2011 15:48:18 +0300, "Michael S. Tsirkin"
> wrote:
> > On Mon, May 09, 2011 at 03:27:33PM +0930, Rusty Russell wrote:
> > > On Wed, 4 May 2011 23:52:33 +0300, "Michael S. Tsirkin"
> > > wrote:
> > > > Add an API tha
50 matches
Mail list logo