From: Marc-André Lureau
Signed-off-by: Marc-André Lureau
---
net/vhost-user.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/net/vhost-user.c b/net/vhost-user.c
index 266b54d..5d24129 100644
--- a/net/vhost-user.c
+++ b/net/vhost-user.c
@@ -26,7 +26,6 @@ typedef struct VhostUserState {
t
From: Marc-André Lureau
Disconnect should reset context.
Signed-off-by: Marc-André Lureau
---
qemu-char.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/qemu-char.c b/qemu-char.c
index bc37628..d34bfd1 100644
--- a/qemu-char.c
+++ b/qemu-char.c
@@ -2846,6 +2846,7 @@ static void tcp_chr_di
From: Marc-André Lureau
In a previous series "Add feature to start QEMU without vhost-user
backend", Tetsuya Mukawa proposed to allow the vhost-user backend to
disconnect and reconnect. However, Michael Tsirkin pointed out that
you can't do that without extra care, because the guest and hyperviso
From: Tetsuya Mukawa
Current QEMU cannot detect vhost-user backend disconnection. The
patch adds ability to know it.
To know disconnection, add watcher to detect G_IO_HUP event. When
G_IO_HUP event is detected, the disconnected socket will be read
to cause a CHR_EVENT_CLOSED.
Signed-off-by: Tets
From: Marc-André Lureau
vhost backend may want to stop the device, for example if it wants to
restart itself (translates to a link down for vhost-net).
Signed-off-by: Marc-André Lureau
---
hw/net/vhost_net.c| 13 +
include/hw/virtio/vhost.h | 4
2 files changed, 17 in
From: Marc-André Lureau
If tcp_set_msgfds() is called several time with NULL fds, this
could lead to double-free.
Signed-off-by: Marc-André Lureau
---
qemu-char.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/qemu-char.c b/qemu-char.c
index d956f8d..bc37628 100644
--- a/qemu-char.c
+++ b
From: Marc-André Lureau
During CHR_EVENT_CLOSED, the function could be reentered, make this
case safe.
Signed-off-by: Marc-André Lureau
---
qemu-char.c | 4
1 file changed, 4 insertions(+)
diff --git a/qemu-char.c b/qemu-char.c
index d34bfd1..c37a9f9 100644
--- a/qemu-char.c
+++ b/qemu-c
From: Marc-André Lureau
If a chardev is allowed to be created outside of QMP, then it must be
also possible to free it. This is useful for ivshmem that creates
chardev anonymously and must be able to free them.
Signed-off-by: Marc-André Lureau
Acked-by: Paolo Bonzini
---
include/sysemu/char.h
From: Marc-André Lureau
When vhost is restarted, make sure the tx notification is on.
Signed-off-by: Marc-André Lureau
---
hw/net/virtio-net.c | 4
1 file changed, 4 insertions(+)
diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c
index 8d28e45..d494c45 100644
--- a/hw/net/virtio-net
From: Marc-André Lureau
Next patches will add more fields to the structure
Signed-off-by: Marc-André Lureau
---
hw/virtio/vhost-user.c | 19 ---
1 file changed, 16 insertions(+), 3 deletions(-)
diff --git a/hw/virtio/vhost-user.c b/hw/virtio/vhost-user.c
index b2f46a9..2875b69
From: Marc-André Lureau
Check that SLAVE_FD & SHUTDOWN message work and that the master
asked for the ring read status.
Signed-off-by: Marc-André Lureau
---
tests/Makefile | 2 +-
tests/vhost-user-test.c | 168
2 files changed, 155 in
From: Marc-André Lureau
Even if slave does not declare VIRTIO_NET_F_STATUS, we can keep
this feature enabled as it is driven by qemu.
Signed-off-by: Marc-André Lureau
---
hw/net/vhost_net.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/hw/net/vhost_net.c b/hw/net/vhost_net.c
index 9850520
From: Marc-André Lureau
Learn to give a socket to the slave to let him make requests to the
master.
Signed-off-by: Marc-André Lureau
---
docs/specs/vhost-user.txt | 23 +++
hw/virtio/vhost-user.c| 71 ++-
2 files changed, 93 insertion
From: Marc-André Lureau
Signed-off-by: Marc-André Lureau
---
docs/specs/vhost-user.txt | 15 +++
hw/virtio/vhost-user.c| 30 +-
2 files changed, 44 insertions(+), 1 deletion(-)
diff --git a/docs/specs/vhost-user.txt b/docs/specs/vhost-user.txt
index
From: Tetsuya Mukawa
The patch introduces qemu_chr_disconnect(). The function is used for
closing a fd accepted by listen fd. Though we already have qemu_chr_delete(),
but it closes not only accepted fd but also listen fd. This new function
is used when we still want to keep listen fd.
Signed-of
From: Marc-André Lureau
Having a environment variable allows to override default configuration
path, useful for testing. Note that this can't easily be an argument,
since loading config is done before parsing the arguments.
Signed-off-by: Marc-André Lureau
---
qga/main.c | 3 ++-
1 file change
From: Marc-André Lureau
Add a few functions to interact with qmp via a simple fd.
Signed-off-by: Marc-André Lureau
Reviewed-by: Michael Roth
---
tests/libqtest.c | 45 +
tests/libqtest.h | 7 +++
2 files changed, 48 insertions(+), 4 deletions(-
From: Marc-André Lureau
v1->v2:
- do not loop forever when connection to qga (Michael Roth)
- add some config file tests
- fix config verbosity
- swallow virt-what stderr
- only compile and check on Linux
Marc-André Lureau (4):
qga: add QGA_CONF environment variable
qga: do not override conf
From: Marc-André Lureau
Add some local guest agent tests (as it is better than nothing) only
when CONFIG_LINUX.
They can be run inside or outside a VM, when run inside a VM, they will
do a bit more side effects, such as freezing/thawing the FS or changing
the time.
A better test would involve a
From: Marc-André Lureau
Move the default verbosity settings before loading the configuration
file, or it will overwrite it. Found thanks to writing qga tests :)
Signed-off-by: Marc-André Lureau
---
qga/main.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/qga/main.c b/
From: Marc-André Lureau
Signed-off-by: Marc-André Lureau
---
qga/qapi-schema.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/qga/qapi-schema.json b/qga/qapi-schema.json
index 18e3cc3..6b0bd16 100644
--- a/qga/qapi-schema.json
+++ b/qga/qapi-schema.json
@@ -793,7 +793,7
From: Marc-André Lureau
Hi,
The following patches for the qemu agent add support for an optionnal
configuration file, and a man page.
Since v1:
- spelling fixes
- change device_path to channel_path
- moving config to GAConfig struct
- do check_is_frozen() during main
- use g_key_file_to_data()
From: Marc-André Lureau
The option parsing is going to be moved to a separate function,
use exit() consistently.
Signed-off-by: Marc-André Lureau
Reviewed-by: Denis V. Lunev
Reviewed-by: Eric Blake
---
qga/main.c | 24
1 file changed, 12 insertions(+), 12 deletions(-
From: Marc-André Lureau
The function is going to be reused in a later patch.
Signed-off-by: Marc-André Lureau
Reviewed-by: Michael Roth
---
qga/main.c | 33 ++---
1 file changed, 22 insertions(+), 11 deletions(-)
diff --git a/qga/main.c b/qga/main.c
index 10bb2f7.
From: Marc-André Lureau
Move option parsing out of giant main().
Signed-off-by: Marc-André Lureau
---
qga/main.c | 165 +++--
1 file changed, 96 insertions(+), 69 deletions(-)
diff --git a/qga/main.c b/qga/main.c
index 83b7804..a8dda38 1
From: Marc-André Lureau
Fill all default options during main(). This is a preparation patch
to allow to dump the configuration.
Signed-off-by: Marc-André Lureau
Reviewed-by: Michael Roth
---
qga/main.c | 36 ++--
1 file changed, 18 insertions(+), 18 deletions(-
From: Marc-André Lureau
A following patch will return allocated string.
Signed-off-by: Marc-André Lureau
---
qga/main.c | 57 +++--
1 file changed, 31 insertions(+), 26 deletions(-)
diff --git a/qga/main.c b/qga/main.c
index ede5306..83b7804
From: Marc-André Lureau
'path' is already a global function, rename the variable since it's
going to be in global scope in a later patch.
Signed-off-by: Marc-André Lureau
---
qga/main.c | 9 +
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/qga/main.c b/qga/main.c
index e
From: Marc-André Lureau
Now that main() has a single exit point, we can free a few
more allocations.
Signed-off-by: Marc-André Lureau
---
qga/main.c | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/qga/main.c b/qga/main.c
index 118847c..58f2fc7 100644
--- a/qga/main.c
From: Marc-André Lureau
This new option allows to review the agent configuration,
and ease the task of writing a configuration file.
Signed-off-by: Marc-André Lureau
---
qga/main.c | 62 ++
1 file changed, 62 insertions(+)
diff --git
From: Marc-André Lureau
Once the options are populated, move the running state to
a run_agent() function.
Signed-off-by: Marc-André Lureau
---
qga/main.c | 164 +
1 file changed, 89 insertions(+), 75 deletions(-)
diff --git a/qga/mai
From: Marc-André Lureau
Learn to configure the agent with a system configuration.
This may simplify command-line handling, especially when the blacklist
is long.
Among the other benefits, this may standardize the configuration of a
init service (instead of distro-specific init keys/files)
Sign
From: Marc-André Lureau
Add a simple man page for the qemu agent.
Signed-off-by: Marc-André Lureau
---
Makefile | 14 +-
qemu-doc.texi | 6 +++
qemu-ga.texi | 136 ++
3 files changed, 154 insertions(+), 2 deletions(-)
create
From: Marc-André Lureau
Hi,
The following patches for the qemu agent add support for an optionnal
configuration file, and a man page.
Since v1:
- spelling fixes
- change device_path to channel_path
- moving config to GAConfig struct
- do check_is_frozen() during main
- use g_key_file_to_data()
From: Marc-André Lureau
Signed-off-by: Marc-André Lureau
Reviewed-by: Eric Blake
Reviewed-by: Denis V. Lunev
Reviewed-by: Michael Roth
---
qga/qapi-schema.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/qga/qapi-schema.json b/qga/qapi-schema.json
index 18e3cc3..6b0bd
From: Marc-André Lureau
A following patch will return allocated string.
Signed-off-by: Marc-André Lureau
Reviewed-by: Michael Roth
---
qga/main.c | 57 +++--
1 file changed, 31 insertions(+), 26 deletions(-)
diff --git a/qga/main.c b/qga/ma
From: Marc-André Lureau
'path' is already a global function, rename the variable since it's
going to be in global scope in a later patch.
Signed-off-by: Marc-André Lureau
Reviewed-by: Michael Roth
---
qga/main.c | 9 +
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/qga/
From: Marc-André Lureau
The option parsing is going to be moved to a separate function,
use exit() consistently.
Signed-off-by: Marc-André Lureau
Reviewed-by: Denis V. Lunev
Reviewed-by: Eric Blake
Reviewed-by: Michael Roth
---
qga/main.c | 24
1 file changed, 12 in
From: Marc-André Lureau
The function is going to be reused in a later patch.
Signed-off-by: Marc-André Lureau
Reviewed-by: Michael Roth
---
qga/main.c | 33 ++---
1 file changed, 22 insertions(+), 11 deletions(-)
diff --git a/qga/main.c b/qga/main.c
index 10bb2f7.
From: Marc-André Lureau
Once the options are populated, move the running state to
a run_agent() function.
Signed-off-by: Marc-André Lureau
Reviewed-by: Michael Roth
---
qga/main.c | 164 +
1 file changed, 89 insertions(+), 75 deletio
From: Marc-André Lureau
Now that main() has a single exit point, we can free a few
more allocations.
Signed-off-by: Marc-André Lureau
---
qga/main.c | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/qga/main.c b/qga/main.c
index 118847c..58f2fc7 100644
--- a/qga/main.c
From: Marc-André Lureau
Move option parsing out of giant main().
Signed-off-by: Marc-André Lureau
Reviewed-by: Michael Roth
---
qga/main.c | 165 +++--
1 file changed, 96 insertions(+), 69 deletions(-)
diff --git a/qga/main.c b/qga/main
From: Marc-André Lureau
Learn to configure the agent with a system configuration.
This may simplify command-line handling, especially when the blacklist
is long.
Among the other benefits, this may standardize the configuration of a
init service (instead of distro-specific init keys/files)
Sign
From: Marc-André Lureau
Fill all default options during main(). This is a preparation patch
to allow to dump the configuration.
Signed-off-by: Marc-André Lureau
Reviewed-by: Michael Roth
---
qga/main.c | 34 +-
1 file changed, 17 insertions(+), 17 deletions(-)
From: Marc-André Lureau
Add a simple man page for the qemu agent.
Signed-off-by: Marc-André Lureau
Reviewed-by: Michael Roth
---
Makefile | 14 +-
qemu-doc.texi | 6 +++
qemu-ga.texi | 136 ++
3 files changed, 154 insertions
From: Marc-André Lureau
This new option allows to review the agent configuration,
and ease the task of writing a configuration file.
Signed-off-by: Marc-André Lureau
Reviewed-by: Michael Roth
---
qga/main.c | 62 ++
1 file changed, 6
From: Marc-André Lureau
The option parsing is going to be moved to a separate function,
use exit() consistently.
Signed-off-by: Marc-André Lureau
Reviewed-by: Denis V. Lunev
Reviewed-by: Eric Blake
Reviewed-by: Michael Roth
---
qga/main.c | 24
1 file changed, 12 in
From: Marc-André Lureau
Signed-off-by: Marc-André Lureau
Reviewed-by: Eric Blake
Reviewed-by: Denis V. Lunev
Reviewed-by: Michael Roth
---
qga/qapi-schema.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/qga/qapi-schema.json b/qga/qapi-schema.json
index 18e3cc3..6b0bd
From: Marc-André Lureau
Hi,
The following patches for the qemu agent add support for an optionnal
configuration file, and a man page.
v3->v4:
- some spelling fixes
- add a patch to allocate in split_list()
- add more details in "copy argument strings" patch
- add some g_free() in config_parse()
From: Marc-André Lureau
Following patch will return allocated strings, so we must correctly
initialize alloc & free them. The nice side effect is that we no longer
have to check for "fixed_state_dir" to call ga_install_service() with a
NULL state dir. The default values are set after parsing the
From: Marc-André Lureau
Move option parsing out of giant main().
Signed-off-by: Marc-André Lureau
Reviewed-by: Michael Roth
Reviewed-by: Denis V. Lunev
---
qga/main.c | 165 +++--
1 file changed, 96 insertions(+), 69 deletions(-)
diff
From: Marc-André Lureau
In order to avoid any confusion, let's allocate new strings when
splitting.
Signed-off-by: Marc-André Lureau
---
qga/commands-posix.c | 6 +++---
qga/commands-win32.c | 4 ++--
qga/main.c | 22 +-
3 files changed, 14 insertions(+), 18 del
From: Marc-André Lureau
The function is going to be reused in a later patch.
Signed-off-by: Marc-André Lureau
Reviewed-by: Michael Roth
---
qga/main.c | 33 ++---
1 file changed, 22 insertions(+), 11 deletions(-)
diff --git a/qga/main.c b/qga/main.c
index 10bb2f7.
From: Marc-André Lureau
This new option allows to review the agent configuration,
and ease the task of writing a configuration file.
Signed-off-by: Marc-André Lureau
Reviewed-by: Michael Roth
---
qga/main.c | 64 ++
1 file changed, 6
From: Marc-André Lureau
Once the options are populated, move the running state to
a run_agent() function.
Signed-off-by: Marc-André Lureau
Reviewed-by: Michael Roth
Reviewed-by: Denis V. Lunev
---
qga/main.c | 166 +
1 file changed,
From: Marc-André Lureau
'path' is already a global function, rename the variable since it's
going to be in global scope in a later patch.
Signed-off-by: Marc-André Lureau
Reviewed-by: Michael Roth
Reviewed-by: Denis V. Lunev
---
qga/main.c | 9 +
1 file changed, 5 insertions(+), 4 de
From: Marc-André Lureau
Now that main() has a single exit point, we can free a few
more allocations.
Signed-off-by: Marc-André Lureau
Reviewed-by: Denis V. Lunev
---
qga/main.c | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/qga/main.c b/qga/main.c
index 6518e1f..710
From: Marc-André Lureau
Fill all default options during main(). This is a preparation patch
to allow to dump the configuration.
Signed-off-by: Marc-André Lureau
Reviewed-by: Michael Roth
Reviewed-by: Denis V. Lunev
---
qga/main.c | 34 +-
1 file changed, 17 in
From: Marc-André Lureau
Learn to configure the agent with a system configuration.
This may simplify command-line handling, especially when the blacklist
is long.
Among the other benefits, this may standardize the configuration of an
init service (instead of distro-specific init keys/files)
Sig
From: Marc-André Lureau
Add a simple man page for the qemu agent.
Signed-off-by: Marc-André Lureau
Reviewed-by: Michael Roth
---
Makefile | 14 +-
qemu-doc.texi | 6 +++
qemu-ga.texi | 136 ++
3 files changed, 154 insertions
From: Marc-André Lureau
For consistency with the rest of the comment blocks.
Signed-off-by: Marc-André Lureau
---
qga/qapi-schema.json | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/qga/qapi-schema.json b/qga/qapi-schema.json
index 6b0bd16..82894c6 100644
--- a/qga/qapi-
From: Marc-André Lureau
Add some local guest agent tests (as it is better than nothing).
They can be run inside or outside a VM, when run inside a VM, they will
do a bit more side effects, such as freezing/thawing the FS or changing
the time.
A better test would involve a managed VM (or contain
From: Marc-André Lureau
Add a few functions to interact with qmp via a simple fd.
Signed-off-by: Marc-André Lureau
---
tests/libqtest.c | 45 +
tests/libqtest.h | 7 +++
2 files changed, 48 insertions(+), 4 deletions(-)
diff --git a/tests/libqt
From: Marc-André Lureau
QAPI_EVENT_VSERPORT_CHANGE reports changes of a virtio serial port
state. However, the events may be for different ports, but the throttle
mechanism may replace the event for a different port, since it only
checks the event type.
The following series implements throttling
From: Marc-André Lureau
Create a separate pending event structure MonitorQAPIEventPending.
Use a MonitorQAPIEventDelay callback to handle the delaying. This
allows other implementations of throttling.
Signed-off-by: Marc-André Lureau
---
monitor.c| 124 +
From: Marc-André Lureau
Use a hash table to lookup the pending event corresponding to the "id"
field. The hash table may grow without limit here, the following patch
will add some cleaning.
Signed-off-by: Marc-André Lureau
Reviewed-by: Eric Blake
---
monitor.c | 104 ++
From: Marc-André Lureau
Do not let the hash table grow without limit, schedule a cleanup for
outdated event.
Signed-off-by: Marc-André Lureau
---
monitor.c | 47 ++-
1 file changed, 46 insertions(+), 1 deletion(-)
diff --git a/monitor.c b/monitor.c
From: Marc-André Lureau
Caller of CharDriverState.chr* callback assume errno error conventions.
Translate QIOChannel error to errno (this fixes potential EAGAIN
regression, for ex if a vhost-user backend block, qemu_chr_fe_read_all()
could get error -2 and not wait)
Signed-off-by: Marc-André Lur
From: Marc-André Lureau
If the client socket has the 'reconnect' option, make sure the 'wait'
option is also used. That way, an initial connection will be ensured
before the VM start and the virtio device is configured.
Signed-off-by: Marc-André Lureau
---
net/vhost-user.c | 12
1
From: Marc-André Lureau
This message is an information rather than an error. Use a trace event
instead.
This allows using reconnect in tests without extra error messages.
Signed-off-by: Marc-André Lureau
---
qemu-char.c | 4 ++--
trace-events | 3 +++
2 files changed, 5 insertions(+), 2 dele
From: Marc-André Lureau
Do not overwrite x86-64 tests, re-enable vhost-user-test.
Signed-off-by: Marc-André Lureau
---
tests/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/Makefile b/tests/Makefile
index 45b9048..9293d49 100644
--- a/tests/Makefile
+++ b/tes
From: Marc-André Lureau
Hi
This is a follow-up on previous RFC allowing the slave to request a
"managed" shutdown and reconnect later. A new optional communication
socket is added for the slave to make request to the master (since
vhost-user protocol isn't bidirectional)
The initial connection
From: Marc-André Lureau
Similarly to the reconnect error, this is an information message rather
than an error. Use a trace event instead.
Signed-off-by: Marc-André Lureau
---
qemu-char.c | 3 +--
trace-events | 1 +
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/qemu-char.c b/
From: Marc-André Lureau
vhost backend may want to stop the device, for example if it wants to
restart itself (translates to a link down for vhost-net).
Signed-off-by: Marc-André Lureau
---
hw/net/vhost_net.c| 14 ++
include/hw/virtio/vhost.h | 4
2 files changed, 18 i
From: Marc-André Lureau
Until now, 'wait' was solely used for listening sockets. However, it can
also be useful for 'reconnect' socket kind, where the first open must
succeed before continuing.
This allows for instance (with other support patches) having vhost-user
wait for an initial connection
From: Marc-André Lureau
Check that SLAVE_FD & SHUTDOWN message work and that the master
asked for the ring read status.
Signed-off-by: Marc-André Lureau
---
tests/Makefile | 2 +-
tests/vhost-user-test.c | 184
2 files changed, 170 in
From: Tetsuya Mukawa
The patch introduces qemu_chr_disconnect(). The function is used for
closing a fd accepted by listen fd. Though we already have qemu_chr_delete(),
but it closes not only accepted fd but also listen fd. This new function
is used when we still want to keep listen fd.
Signed-of
From: Tetsuya Mukawa
Current QEMU cannot detect vhost-user backend disconnection. The
patch adds ability to know it.
To know disconnection, add watcher to detect G_IO_HUP event. When
G_IO_HUP event is detected, the disconnected socket will be read
to cause a CHR_EVENT_CLOSED.
Signed-off-by: Tets
From: Marc-André Lureau
Next patches will add more fields to the structure
Signed-off-by: Marc-André Lureau
---
hw/virtio/vhost-user.c | 19 ---
1 file changed, 16 insertions(+), 3 deletions(-)
diff --git a/hw/virtio/vhost-user.c b/hw/virtio/vhost-user.c
index 5914e85..02ac1fc
From: Marc-André Lureau
Do not crash when backend is not present while enabling the ring. A
following patch will save the enabled state so it can be restored once
the backend is started.
Signed-off-by: Marc-André Lureau
---
hw/net/vhost_net.c | 7 ++-
1 file changed, 6 insertions(+), 1 del
From: Marc-André Lureau
Learn to give a socket to the slave to let him make requests to the
master.
Signed-off-by: Marc-André Lureau
---
docs/specs/vhost-user.txt | 23
hw/virtio/vhost-user.c| 69 +++
2 files changed, 92 insertio
From: Marc-André Lureau
Signed-off-by: Marc-André Lureau
---
docs/specs/vhost-user.txt | 15 +++
hw/virtio/vhost-user.c| 16
2 files changed, 31 insertions(+)
diff --git a/docs/specs/vhost-user.txt b/docs/specs/vhost-user.txt
index 8a635fa..60d6d13 100644
--- a
From: Marc-André Lureau
The rings shouldn't be processed unless previously enabled.
Signed-off-by: Marc-André Lureau
---
tests/vhost-user-bridge.c | 10 +++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/tests/vhost-user-bridge.c b/tests/vhost-user-bridge.c
index 0779ba2.
From: Marc-André Lureau
A driver may change the vring enable state at run time but vhost-user
backend may not be present (a contrived example is when the backend is
disconnected and the device is reconfigured after driver rebinding)
Restore the vring state when the vhost-user backend is started,
From: Marc-André Lureau
If the backend failed to start (for example feature negociation failed),
do not exit, but disconnect the char device instead.
Signed-off-by: Marc-André Lureau
---
net/vhost-user.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/net/vhost-user.c b/n
From: Marc-André Lureau
The initial vhost-user connection sets the features to be negotiated
with the driver. Renegotiation isn't possible without device reset.
To handle reconnection of vhost-user backend, ensure the same set of
features are provided, and reuse already acked features.
Signed-o
From: Marc-André Lureau
The bridge can now be interrupted with ctrl-c. Once the slave channel is
up, it will request a shutdown, and wait for success reply to exit.
Signed-off-by: Marc-André Lureau
---
tests/vhost-user-bridge.c | 102 --
1 file chang
From: Marc-André Lureau
The following 2 one-liners remove the chardev from the vhost-user
netdev it is attached to. This prevents from further reuse of the
chardev that would likely fail to setup again with the slave.
Related to:
https://bugzilla.redhat.com/show_bug.cgi?id=1256619
https://bugzil
From: Marc-André Lureau
On init, vhost-user does qemu_chr_fe_claim_no_fail(). Do the opposite on
cleanup to allow removing or reusing the chardev.
Signed-off-by: Marc-André Lureau
---
net/vhost-user.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/net/vhost-user.c b/net/vhost-user.c
ind
From: Marc-André Lureau
Remove the chardev implicitely when cleaning up the netdev. This
prevents from reusing the chardev since it would be in an incorrect
state with the slave.
Signed-off-by: Marc-André Lureau
---
net/vhost-user.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/net/vhost
From: Marc-André Lureau
"number of vrings" doesn't help me understand the purpose of this
message. My understanding is that it is rather the size of the queue (in
modern terms).
Signed-off-by: Marc-André Lureau
---
docs/specs/vhost-user.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
From: Marc-André Lureau
Signed-off-by: Marc-André Lureau
---
docs/specs/vhost-user.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docs/specs/vhost-user.txt b/docs/specs/vhost-user.txt
index 4778241..777c49c 100644
--- a/docs/specs/vhost-user.txt
+++ b/docs/specs/vhost-u
From: Marc-André Lureau
Hi
vhost-user & virtio are not so simple and evolve regularly. There
isn't a reference code that would help you get started either. And
backends duplicate most of the effort.
Furthermore, due to usage of ancillary data, shared memory, eventfd,
atomics, it is not so simpl
From: Marc-André Lureau
dispatcher_remove() is in use.
Signed-off-by: Marc-André Lureau
---
tests/vhost-user-bridge.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/tests/vhost-user-bridge.c b/tests/vhost-user-bridge.c
index 0779ba2..7d548d8 100644
--- a/tests/vhost-user-bridge.c
+++ b/t
From: Marc-André Lureau
The call fd is not watched
Signed-off-by: Marc-André Lureau
---
tests/vhost-user-bridge.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/tests/vhost-user-bridge.c b/tests/vhost-user-bridge.c
index 7d548d8..b9bf018 100644
--- a/tests/vhost-user-bridge.c
+++ b/tests
From: Marc-André Lureau
Signed-off-by: Marc-André Lureau
---
tests/vhost-user-bridge.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/tests/vhost-user-bridge.c b/tests/vhost-user-bridge.c
index b7bb79a..c21cd79 100644
--- a/tests/vhost-user-bridge.c
+++ b/tests/vhost-user-bridge.c
@@ -1196
From: Marc-André Lureau
Signed-off-by: Marc-André Lureau
---
tests/vhost-user-bridge.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/tests/vhost-user-bridge.c b/tests/vhost-user-bridge.c
index b9bf018..b7bb79a 100644
--- a/tests/vhost-user-bridge.c
+++ b/tests/vhost-user-bridge.c
@@ -388,7
From: Marc-André Lureau
Use the libvhost-user library.
This ended up being a rather large patch that cannot be easily splitted,
due to massive code move and API changes.
Signed-off-by: Marc-André Lureau
---
tests/Makefile|2 +-
tests/vhost-user-bridge.c | 1167 +---
From: Marc-André Lureau
Add a library to help implementing vhost-user backend (or slave).
Dealing with vhost-user as an application developper isn't so easy: you
have all the trouble with any protocol: validation, unix ancillary data,
shared memory, eventfd, logging, and on top of that you need
From: Marc-André Lureau
Add a new memory backend, similar to hostmem-file, except that it
doesn't need a file path, or hugepages directory permissions. It also
try to enforce memory sealing if available.
This backend is mainly useful for easily sharing the memory with other
processes, for exampl
601 - 700 of 3981 matches
Mail list logo