qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2] net: Add support of VIRTIO_NET_F_GUEST_ANNOU


From: Stefan Hajnoczi
Subject: Re: [Qemu-devel] [PATCH v2] net: Add support of VIRTIO_NET_F_GUEST_ANNOUNCE for vhost-net/vhost-user
Date: Mon, 8 Jun 2015 16:13:59 +0100

On Mon, Jun 8, 2015 at 3:05 PM, Thibaut Collet <address@hidden> wrote:
>> I think Jason is pointing out that your patch lacks support for guests
>> that do not negotiate VIRTIO_NET_F_GUEST_ANNOUNCE.
>
> I have understood the issue with old guest pointed by Jason.
> I have thinking about the best way to do solve it and any advices are
> welcome.

1. Add vhost-user virtio-net command to inject packets

Add a new VhostUserRequest VHOST_USER_NET_INJECT_PACKET allowing QEMU
to hand a packet to the vhost-user process for injection.  This
command is virtio-net specific and fails if called on a different
device type.

2. Fail negotiation when VIRTIO_NET_F_GUEST_ANNOUNCE is not accepted

This is only really possible in VIRTIO 1.0 and later.  Pre-1.0 does
not allow the device to reject due to disabled features.

file:///home/stefanha/virtio/trunk/virtio-v1.0-cs02.html#x1-450001

Therefore this is not a great solution.

3. The easiest solution - nop .receive()

Just implement a nop .receive() which drops the packet and prints a
warning message to stderr.  This way VIRTIO_NET_F_GUEST_ANNOUNCE
guests work while legacy guests don't send a gratuitous ARP packet.

Stefan



reply via email to

[Prev in Thread] Current Thread [Next in Thread]