Extend -mem-path with additional properties:
- prealloc=on|off - default off, same as -mem-prealloc
- share=on|off - default off, memory is mmapped with MAP_SHARED flag
- unlink=on|off - default on, inlink the file after openinng it
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay
Add a new QEMU netdev backend that is intended to invoke vhost_net
with the vhost-user backend. Also decouple virtio-net from the tap
backend.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hmp-commands.hx | 4 +-
hw/net/vhost_net.c | 66
SCM_RIGHTS type in the message control header.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/virtio/vhost-backend.c | 268 +-
1 file changed, 263 insertions(+), 5 deletions(-)
diff --git a/hw/virtio/vhost-backend.c b/hw/virtio/vhost
Add empty vhost_call, init and cleanup for the vhost-user backend.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c| 57 ++-
hw/virtio/vhost-backend.c | 35
include/hw
le descriptor leak
Changes from v2:
- Reconnect when the backend disappears
Changes from v1:
- Implementation of vhost-user netdev backend
- Code improvements
Antonios Motakis (7):
Convert -mem-path to QemuOpts and add prealloc,share and unlink
properties
Decouple vhost from kernel interf
At runtime vhost-user netdev will detect if the vhost backend is up or down.
Upon disconnection it will set link_down accordingly and notify virtio-net.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c| 16 +++
hw/virtio/vhost
nly in the vhost-backend (ioctl, open, close).
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c| 13 +---
hw/scsi/vhost-scsi.c | 13 +---
hw/virtio/Makefile.objs | 2 +-
hw/virtio/vhost-backend.c |
fds array for inclusion in
the sendmsd control header.
VHOST_SET_MEM_TABLE ignores the supplied vhost_memory structure and scans
the global ram_list for ram blocks wiht a valid fd field set. This would
be set when the -mem-path option with shared=on property is used.
Signed-off-by: Antonios
On Thu, Jan 9, 2014 at 5:11 PM, Michael S. Tsirkin wrote:
> On Thu, Jan 09, 2014 at 03:59:54PM +0100, Antonios Motakis wrote:
> > In this patch series we would like to introduce our approach for putting
> a
> > virtio-net backend in an external userspace process. Our event
On Thu, Jan 9, 2014 at 5:16 PM, Michael S. Tsirkin wrote:
> On Thu, Jan 09, 2014 at 04:00:01PM +0100, Antonios Motakis wrote:
> > At runtime vhost-user netdev will detect if the vhost backend is up or
> down.
> > Upon disconnection it will set link_down accordingly and n
On Thu, Jan 9, 2014 at 5:14 PM, Michael S. Tsirkin wrote:
> On Thu, Jan 09, 2014 at 04:00:00PM +0100, Antonios Motakis wrote:
> > Add a new QEMU netdev backend that is intended to invoke vhost_net
> > with the vhost-user backend. Also decouple virtio-net from the tap
> > ba
On Thu, Jan 9, 2014 at 5:01 PM, Michael S. Tsirkin wrote:
> On Thu, Jan 09, 2014 at 03:59:55PM +0100, Antonios Motakis wrote:
> > Extend -mem-path with additional properties:
> >
> > - prealloc=on|off - default off, same as -mem-prealloc
> > - share=on|off - default
On Thu, Jan 9, 2014 at 4:47 PM, Michael S. Tsirkin wrote:
> On Thu, Jan 09, 2014 at 03:59:59PM +0100, Antonios Motakis wrote:
> > Each ioctl request of vhost-kernel has a vhost-user message equivalent,
> > which is sent it over the control socket.
> >
> > The general a
On Thu, Jan 9, 2014 at 4:31 PM, Michael S. Tsirkin wrote:
> On Thu, Jan 09, 2014 at 03:59:58PM +0100, Antonios Motakis wrote:
>> Add structures for passing vhost-user messages over a unix domain socket.
>> This is the equivalent of the existing vhost-kernel ioctls.
>>
>>
n the backend disappears
Changes from v1:
- Implementation of vhost-user netdev backend
- Code improvements
Antonios Motakis (8):
Convert -mem-path to QemuOpts and add prealloc and share properties
New -mem-path option - unlink.
Decouple vhost from kernel interface
Add vhost-user skeleton
Extend -mem-path with additional properties:
- prealloc=on|off - default off, same as -mem-prealloc
- share=on|off - default off, memory is mmapped with MAP_SHARED flag
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
exec.c | 41
nly in the vhost-backend (ioctl, open, close).
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c| 13 +---
hw/scsi/vhost-scsi.c | 13 +---
hw/virtio/Makefile.objs | 2 +-
hw/virtio/vhost-backend.c |
option:
-netdev vhost-user,path=/path/to/sock[,poll_time=poll_time]
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c| 16 +
hw/virtio/vhost-backend.c | 25 --
include/hw/virtio/vhost-backend.h | 2 ++
include
Add empty vhost_call, init and cleanup for the vhost-user backend.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c| 57 ++-
hw/virtio/vhost-backend.c | 35
include/hw
The unlink option allows the created file to be externally deleted
after QEMU is terminated.
- unlink=on|off - default on, unlink the file after opening it
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
exec.c | 18 +-
qemu-options.hx | 7
SCM_RIGHTS type in the message control header.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/virtio/vhost-backend.c | 306 +-
1 file changed, 301 insertions(+), 5 deletions(-)
diff --git a/hw/virtio/vhost-backend.c b/hw/virtio/vhost
for inclusion in
the sendmsd control header.
VHOST_SET_MEM_TABLE ignores the supplied vhost_memory structure and scans
the global ram_list for ram blocks with a valid fd field set. This would
be set when the -mem-path option with shared=on property is used.
Signed-off-by: Antonios Motakis
Signed
Add a new QEMU netdev backend that is intended to invoke vhost_net
with the vhost-user backend. Also decouple virtio-net from the tap
backend.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hmp-commands.hx | 4 +-
hw/net/vhost_net.c | 66
On Tue, Jan 14, 2014 at 12:33 PM, Michael S. Tsirkin wrote:
> On Mon, Jan 13, 2014 at 03:25:11PM +0100, Antonios Motakis wrote:
> > In this patch series we would like to introduce our approach for putting
> a
> > virtio-net backend in an external userspace process. Our event
Hello,
On Tue, Jan 14, 2014 at 12:14 PM, Michael S. Tsirkin wrote:
> On Mon, Jan 13, 2014 at 03:25:11PM +0100, Antonios Motakis wrote:
> > In this patch series we would like to introduce our approach for putting
> a
> > virtio-net backend in an external userspace process. O
On Tue, Jan 14, 2014 at 12:16 PM, Michael S. Tsirkin wrote:
> On Mon, Jan 13, 2014 at 03:25:13PM +0100, Antonios Motakis wrote:
> > The unlink option allows the created file to be externally deleted
> > after QEMU is terminated.
> >
> > - unlink=on|off - defaul
On Tue, Jan 14, 2014 at 12:21 PM, Michael S. Tsirkin wrote:
> On Mon, Jan 13, 2014 at 03:25:17PM +0100, Antonios Motakis wrote:
> > Each ioctl request of vhost-kernel has a vhost-user message equivalent,
> > which is sent over the control socket.
> >
> > The general a
On Tue, Jan 14, 2014 at 12:10 PM, Michael S. Tsirkin wrote:
> On Mon, Jan 13, 2014 at 03:25:16PM +0100, Antonios Motakis wrote:
> > Add structures for passing vhost-user messages over a unix domain socket.
> > This is the equivalent of the existing vhost-kernel ioctls.
> &g
On Wed, Jan 15, 2014 at 10:07 AM, Michael S. Tsirkin wrote:
> On Tue, Jan 14, 2014 at 07:13:43PM +0100, Antonios Motakis wrote:
> >
> >
> >
> > On Tue, Jan 14, 2014 at 12:33 PM, Michael S. Tsirkin
> wrote:
> >
> > On Mon, Jan 13, 2014 a
On Wed, Jan 15, 2014 at 3:49 PM, Michael S. Tsirkin wrote:
> On Wed, Jan 15, 2014 at 01:50:47PM +0100, Antonios Motakis wrote:
> >
> >
> >
> > On Wed, Jan 15, 2014 at 10:07 AM, Michael S. Tsirkin
> wrote:
> >
> > On Tue, Jan 14, 2014 a
On Wed, Jan 15, 2014 at 10:07 AM, Michael S. Tsirkin wrote:
> On Tue, Jan 14, 2014 at 07:13:43PM +0100, Antonios Motakis wrote:
>>
>>
>>
>> On Tue, Jan 14, 2014 at 12:33 PM, Michael S. Tsirkin wrote:
>>
>> On Mon, Jan 13, 2014 at 03:25:11PM +0100, A
Hello,
On Wed, Jan 15, 2014 at 11:05 AM, Michael S. Tsirkin wrote:
>
> On Mon, Jan 13, 2014 at 03:25:11PM +0100, Antonios Motakis wrote:
> > In this patch series we would like to introduce our approach for putting a
> > virtio-net backend in an external userspace process. Our
3:
- Convert -mem-path to QemuOpts with prealloc, share and unlink properties
- Set 1 sec timeout when read/write to the unix domain socket
- Fix file descriptor leak
Changes from v2:
- Reconnect when the backend disappears
Changes from v1:
- Implementation of vhost-user netdev backend
- C
This is used to detect that the remote end has disconnected. Just call
tcp_char_disconnect on receiving this event.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
qemu-char.c | 16
1 file changed, 16 insertions(+)
diff --git a/qemu-char.c b/qemu-char.c
This will set an array of file descriptors to the internal structures.
The next time a message is sent the array will be sent as ancillary
data. This feature works with the Unix domain socket backend only.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
include/sysemu
Extend -mem-path with additional properties:
- prealloc=on|off - default off, same as -mem-prealloc
- share=on|off - default off, memory is mmapped with MAP_SHARED flag
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
exec.c | 30
This function will attempt to read data from the chardev trying
to fill the buffer up to the given length.
Add tcp_chr_disconnect to reuse disconnection code where needed.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
include/sysemu/char.h | 14 +
qemu-char.c
The poll callback needs to be called when bringing up or down
the vhost_net instance. As it is not mandatory for an NetClient
to implement it, invoke it only when it is set.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c | 13 ++---
1 file
Use vhost_set_backend_type to initialise a proper vhost_ops structure.
In vhost_net_init and vhost_net_start_one call conditionally TAP related
initialisation depending on the vhost backend type.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c
This extends the existing qemu_chr_fe_get_msgfd by allowing to read a set
of fds. The function for receiving the fds - unix_process_msgfd is extended
to allocate the needed array size.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
include/sysemu/char.h | 15
This decouples virtio-net from the TAP netdev backend and allows support
for other backends to be implemented.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c | 30 +++---
hw/net/virtio-net.c | 39
pass the fd.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c| 24 +---
hw/scsi/vhost-scsi.c | 10 +-
hw/virtio/vhost.c | 12 +++-
include/hw/virtio/vhost.h | 2 +-
include/net/vhost_net.h | 8
checks for validity:
- requires `-mempath ...,share=on`
- requires `-device virtio-net-*`
The `vhostforce` option is uset to force vhost-net when we deal with no-MSIX
guest.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hmp-commands.hx | 4 +-
hw/net/vhost_net.c
global ram_list for ram blocks with a valid fd field set. This would
be set when the -mem-path option with shared=on property is used.
Upon receiving VHOST_USER_GET_FEATURES reply, the new features value is
compared to the mandatory features in the vhost_dev.
Signed-off-by: Antonios Motakis
Signed
This will be used in a following patch to ensure that a vhost-user
client reconnecting to QEMU supports the features that were exposed
by the first client that initiated the virtio-net session.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c| 10
This document describes the basic message format used by vhost-user
for communication over a unix domain socket. The protocol is based
on the existing ioctl interface used for the kernel version of vhost.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
docs/specs/vhost
Decouple vhost from the Linux kernel by introducing vhost_ops. The
intention is to provide different backends - 'kernel' backend based on
the ioctl interface, and 'user' backend based on an Unix domain socket and
shared memory.
Signed-off-by: Antonios Motakis
Signed-off-
slave is compatible with the first one.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
include/net/vhost-user.h | 17 ++
net/Makefile.objs| 2 +-
net/clients.h| 3 +
net/vhost-user.c | 150 +++
tify_event
- vc_init
and this array:
- serial_hds
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
stubs/Makefile.objs | 8
stubs/bdrv-commit-all.c | 7 +++
stubs/chr-msmouse.c | 7 +++
stubs/get-next-serial.c | 3 +++
stubs/is-daemonized
ount
point defaults to '/hugetlbfs' and can be specified via the environment
variable QTEST_HUGETLBFS_PATH.
The rom pc-bios/pxe-virtio.rom is used to instantiate a virtio pcicontroller.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
tests/Makefile | 4
On Mon, Feb 17, 2014 at 8:56 AM, Michael S. Tsirkin wrote:
> On Mon, Feb 17, 2014 at 12:42:45AM +0100, Paolo Bonzini wrote:
> > Il 15/02/2014 19:10, Michael Tokarev ha scritto:
> > > 13 февраля 2014 г. 16:03:12 GMT+04:00, Antonios Motakis <
> a.mota...@virtu
The poll callback needs to be called when bringing up or down
the vhost_net instance. As it is not mandatory for an NetClient
to implement it, invoke it only when it is set.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c | 13 ++---
1 file
This decouples virtio-net from the TAP netdev backend and allows support
for other backends to be implemented.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c | 30 +++---
hw/net/virtio-net.c | 29
still we keep a sane value and can continue on reconnect.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/virtio/vhost.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/hw/virtio/vhost.c b/hw/virtio/vhost.c
index 9e336ad..322e2c0 100644
--- a/hw
This is used to detect that the remote end has disconnected. Just call
tcp_char_disconnect on receiving this event.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
qemu-char.c | 16
1 file changed, 16 insertions(+)
diff --git a/qemu-char.c b/qemu-char.c
checks for validity:
- requires `-mempath ...,share=on`
- requires `-device virtio-net-*`
The `vhostforce` option is used to force vhost-net when we deal with
non-MSIX guests.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hmp-commands.hx| 4 +-
hw/net/vhost_net.c
This extends the existing qemu_chr_fe_get_msgfd by allowing to read a set
of fds. The function for receiving the fds - unix_process_msgfd is extended
to allocate the needed array size.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
include/sysemu/char.h | 15
Decouple vhost from the Linux kernel by introducing vhost_ops. The
intention is to provide different backends - a 'kernel' backend based on
the ioctl interface, and an 'user' backend based on a UNIX domain socket
and shared memory interface.
Signed-off-by: Antonios Motakis
Si
ount
point defaults to '/hugetlbfs' and can be specified via the environment
variable QTEST_HUGETLBFS_PATH.
The rom pc-bios/pxe-virtio.rom is used to instantiate a virtio pcicontroller.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
tests/Makefile | 4
compatible with the first one.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
include/net/vhost-user.h | 17 ++
net/Makefile.objs| 2 +-
net/clients.h| 3 +
net/vhost-user.c | 150 +++
This document describes the basic message format used by vhost-user
for communication over a unix domain socket. The protocol is based
on the existing ioctl interface used for the kernel version of vhost.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
docs/specs/vhost
Add a function to check if the eventfd capability is present in KVM in
the host kernel.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
include/sysemu/kvm.h | 11 +++
kvm-all.c| 4
kvm-stub.c | 1 +
3 files changed, 16 insertions
This function allows to get the current available ring index.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/virtio/virtio.c | 5 +
include/hw/virtio/virtio.h | 1 +
2 files changed, 6 insertions(+)
diff --git a/hw/virtio/virtio.c b/hw/virtio/virtio.c
index
pass the fd.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c| 23 ---
hw/scsi/vhost-scsi.c | 10 +-
hw/virtio/vhost.c | 12 +++-
include/hw/virtio/vhost.h | 2 +-
include/net/vhost_net.h | 8
On Tue, Mar 4, 2014 at 7:29 PM, Paolo Bonzini wrote:
> Il 04/03/2014 19:22, Antonios Motakis ha scritto:
>
> In this patch series we would like to introduce our approach for putting a
>> virtio-net backend in an external userspace process. Our eventual target
>> is to
>&
, share and unlink properties
- Set 1 sec timeout when read/write to the unix domain socket
- Fix file descriptor leak
Changes from v2:
- Reconnect when the backend disappears
Changes from v1:
- Implementation of vhost-user netdev backend
- Code improvements
Antonios Motakis (20):
This will set an array of file descriptors to the internal structures.
The next time a message is send the array will be send as ancillary
data. This feature works on the UNIX domain socket backend only.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
include/sysemu/char.h
Use vhost_set_backend_type to initialise a proper vhost_ops structure.
In vhost_net_init and vhost_net_start_one call conditionally TAP related
initialisation depending on the vhost backend type.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c
This function will attempt to read data from the chardev trying
to fill the buffer up to the given length.
Add tcp_chr_disconnect to reuse disconnection code where needed.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
include/sysemu/char.h | 14 +
qemu-char.c
This will be used in a following patch to ensure that a vhost-user
client reconnecting to QEMU supports the features that were exposed
by the first client that initiated the virtio-net session.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c| 10
tify_event
- vc_init
and this array:
- serial_hds
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
stubs/Makefile.objs | 8
stubs/bdrv-commit-all.c | 7 +++
stubs/chr-msmouse.c | 7 +++
stubs/get-next-serial.c | 3 +++
stubs/is-daemonized
a special handling in case of I/O
failure - return -1 to indicate the upper layer that it failed.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/virtio/Makefile.objs | 2 +-
hw/virtio/vhost-backend.c | 5 +
hw/virtio/vhost-user.c| 356
Hello,
On Thu, Jan 23, 2014 at 9:27 AM, Lei Li wrote:
> This patch series tries to refactor the functions used for
> exchange of FD in current code, provide common methods
> for it.
>
> I just tested it through page flipping migration, and tap/
> bridge-helper a bit, but have some environment p
Hello again,
On Wed, Jan 15, 2014 at 3:49 PM, Michael S. Tsirkin wrote:
>
> On Wed, Jan 15, 2014 at 01:50:47PM +0100, Antonios Motakis wrote:
> >
> >
> >
> > On Wed, Jan 15, 2014 at 10:07 AM, Michael S. Tsirkin
> > wrote:
> >
> > On Tue, Ja
Hello,
On Mon, Jan 27, 2014 at 5:49 PM, Michael S. Tsirkin wrote:
>
> On Mon, Jan 27, 2014 at 05:37:02PM +0100, Antonios Motakis wrote:
> > Hello again,
> >
> >
> > On Wed, Jan 15, 2014 at 3:49 PM, Michael S. Tsirkin wrote:
> > >
> > > On Wed, Ja
global ram_list for ram blocks with a valid fd field set. This would
be set when the -mem-path option with shared=on property is used.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/virtio/Makefile.objs | 2 +-
hw/virtio/vhost-backend.c | 5 +
hw/virtio/vhost-user.c
Close the chardev on receiving this event.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
qemu-char.c | 15 +++
1 file changed, 15 insertions(+)
diff --git a/qemu-char.c b/qemu-char.c
index c2e599e..1c34b2b 100644
--- a/qemu-char.c
+++ b/qemu-char.c
@@ -2643,6
: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
include/net/vhost-user.h | 17 +++
net/Makefile.objs| 2 +-
net/clients.h| 3 ++
net/vhost-user.c | 130 +++
4 files changed, 151 insertions(+), 1 deletion(-)
create
Use vhost_set_backend_type to initialise a proper vhost_ops structure.
In vhost_net_init and vhost_net_start_one call conditionally TAP related
initialisation depending on the vhost backend type.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c
pass the fd.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c| 24 +---
hw/scsi/vhost-scsi.c | 10 +-
hw/virtio/vhost.c | 12 +++-
include/hw/virtio/vhost.h | 2 +-
include/net/vhost_net.h | 8
This will set an array of file descriptors to the internal structures.
The next time a message is send the array will be send as ancillary
data. This feature works on unix domain socket backend only.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
include/sysemu/char.h
The poll callback needs to be called when bringing up or down
the vhost_net instance. As it is not mandatory for an NetClient
to implement it, invoke it only when it is set.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c | 13 ++---
1 file
This document describes the basic message format used by vhost-user
for communication over a unix domain socket. The protocol is based
on the existing ioctl interface used for the kernel version of vhost.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
docs/specs/vhost
d unlink properties
- Set 1 sec timeout when read/write to the unix domain socket
- Fix file descriptor leak
Changes from v2:
- Reconnect when the backend disappears
Changes from v1:
- Implementation of vhost-user netdev backend
- Code improvements
Antonios Motakis (13):
Convert -me
This decouples virtio-net from the TAP netdev backend and allows support
for other backends to be implemented.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c | 30 +++---
hw/net/virtio-net.c | 39
Decouple vhost from the Linux kernel by introducing vhost_ops. The
intention is to provide different backends - 'kernel' backend based on
the ioctl interface, and 'user' backend based on a unix domain socket and
shared memory.
Signed-off-by: Antonios Motakis
Signed-off-
-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hmp-commands.hx | 4 +--
hw/net/vhost_net.c | 4 +++
hw/net/virtio-net.c | 3 ++
net/hub.c | 1 +
net/net.c | 2 ++
net/vhost-user.c| 91 +++--
qapi
This function will attempt to read data from the chardev trying
to fill the buffer up to the given length.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
include/sysemu/char.h | 14 +++
qemu-char.c | 65
Extend -mem-path with additional properties:
- prealloc=on|off - default off, same as -mem-prealloc
- share=on|off - default off, memory is mmapped with MAP_SHARED flag
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
exec.c | 30
Hello,
On Mon, Feb 10, 2014 at 9:57 AM, Michael S. Tsirkin wrote:
>
> On Fri, Jan 31, 2014 at 06:34:29PM +0100, Antonios Motakis wrote:
> > In this patch series we would like to introduce our approach for putting a
> > virtio-net backend in an external userspace process. Our
On Mon, Feb 10, 2014 at 9:42 AM, Michael S. Tsirkin wrote:
> On Fri, Jan 31, 2014 at 06:34:40PM +0100, Antonios Motakis wrote:
>> Add a new QEMU netdev backend that is intended to invoke vhost_net with the
>> vhost-user backend.
>>
>> At runtime the netdev will detect
the socket is not available
- No reconnect when the backend disappears
- Decouple vhost-net from the tap net backend when used with vhost-user
Antonios Motakis (5):
Decouple vhost from kernel interface
Add vhost-kernel and the vhost-user skeleton
Add vhostsock option
Add domain socket
SCM_RIGHTS type in the message control header.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/virtio/vhost-backend.c | 164 +-
1 file changed, 162 insertions(+), 2 deletions(-)
diff --git a/hw/virtio/vhost-backend.c b/hw/virtio/vhost
nly in vhost-backend (ioctl, open, close).
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c| 8 +++
hw/scsi/vhost-scsi.c | 7 +++---
hw/virtio/Makefile.objs | 2 +-
hw/virtio/vhost-backend.c |
Introduce the backend type - vhost-kernel and vhost-user.
Add basic ioctl, open, close multiplexing depending on selected backend.
Signed-off-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c| 3 +--
hw/scsi/vhost-scsi.c | 4 ++--
hw
-by: Antonios Motakis
Signed-off-by: Nikolay Nikolaev
---
hw/net/vhost_net.c | 22 +-
include/net/vhost_net.h | 5 -
net/tap.c | 4 +++-
qapi-schema.json| 3 +++
qemu-options.hx | 3 ++-
5 files changed, 29 insertions(+), 8 deletions
fds array for inclusion in
the sendmsd control header.
VHOST_SET_MEM_TABLE ignores the supplied vhost_memory structure and scans
the global ram_list for ram blocks wiht a valid fd field set. This would
be set when -mem-path and -mem-prealloc command line options are used.
Signed-off-by: Antonios
On Wed, Dec 4, 2013 at 2:56 PM, Stefan Hajnoczi wrote:
> On Fri, Nov 29, 2013 at 08:52:21PM +0100, Antonios Motakis wrote:
> > In this patch series we would like to introduce our approach for putting
> a
> > virtio-net backend in an external userspace process. Our eventual targ
On Wed, Dec 4, 2013 at 2:42 PM, Stefan Hajnoczi wrote:
> On Fri, Nov 29, 2013 at 08:52:24PM +0100, Antonios Motakis wrote:
> > @@ -91,15 +91,27 @@ static int vhost_net_get_fd(NetClientState *backend)
> > }
> > }
> >
> > -struct vhost_net *vhost_net_init(N
On Wed, Dec 4, 2013 at 2:47 PM, Stefan Hajnoczi wrote:
> On Fri, Nov 29, 2013 at 08:52:23PM +0100, Antonios Motakis wrote:
> > diff --git a/hw/virtio/vhost-backend.c b/hw/virtio/vhost-backend.c
> > index 05de174..80defe4 100644
> > --- a/hw/virtio/vhost-backend.c
>
1 - 100 of 136 matches
Mail list logo