Re: kvm process exit on virtio error

Phil Ten
2009-02-12T10:12:10Z

Hello Mark,

I am not sure about what you mean by heavy network traffic.

Here are more details:

This is a test server. I installed the host and created two VMs
with Windows 2003 Server. I am the only one to use this configuration.
On both VMs, I added a openssh server (from cygwin). Then, I started
uploading files by SFTP using filezilla client. After a few thousands files
uploaded succesfully I get the error I reported. I tried many times
and got the same symptom each time.

My filezilla send two files concurrently at approximatively 2.5 Mbytes/s each.

And that is all. No other application installed, no other network connections.

I add that I am fairly new to kvm. I havn't tried virtio_blk.

So far, I confirm, no problem with rtl8139.

Best Regards,
Phil Ten

----- Original Message -----
From: "Mark McLoughlin" <markmc@redhat.com>
To: "Phil Ten" <phil.info@dafweb.com>
Cc: kvm@vger.kernel.org
Sent: Wednesday, February 11, 2009 8:59:46 PM GMT +01:00 Amsterdam / Berlin / Bern / Rome / Stockholm / Vienna
Subject: Re: kvm process exit on virtio error

Hi,

On Wed, 2009-02-11 at 12:41 +0100, Phil Ten wrote:
> Hello,
>
> My kvm processes are exiting on what I think are VIRTIO errors:
>
> Guest moved used index from 24543 to 24606

This is very strange. The code in question is:

static int virtqueue_num_heads(VirtQueue *vq, unsigned int idx)
{
uint16_t num_heads = vring_avail_idx(vq) - idx;

/* Check it isn't doing very strange things with descriptor numbers. */
if (num_heads > vq->vring.num) {
fprintf(stderr, "Guest moved used index from %u to %u",
idx, vring_avail_idx(vq));
exit(1);
...

i.e. for virtio_net, vq->vring.num == 256 and 24606 - 24543 == 63, so it
doesn't make much sense.

Does this happen under heavy network traffic? Have you tried virtio_blk?

Thanks,
Mark.