On Tue, Nov 19, 2013 at 7:04 AM, Nahum Shalman wrote:
> Context:
> Host is running qemu-kvm 1.1.2 and spice 0.12.2.
> Fedora 16 VMs ran rock solid on these same virtualization hosts.
> The Fedora 19 and 20(testing) VMs are running xf86-video-qxl compiled from
> the master branch of the git repo.
>
Context:
Host is running qemu-kvm 1.1.2 and spice 0.12.2.
Fedora 16 VMs ran rock solid on these same virtualization hosts.
The Fedora 19 and 20(testing) VMs are running xf86-video-qxl compiled
from the master branch of the git repo.
We've been seeing a lot of X server crashes in Fedora 19 and 2
Hello,
I am trying to figure out how to implement a channel between guest OS process
and component at client machine. Reading the documentation I found and the
vd_agent code which is somewhat similar but I could not find complete solution.
Here is what I imagined
I define a new serial inte
On Mon, Nov 18, 2013 at 06:00:16PM +0100, Christophe Fergeau wrote:
> coroutine_init() can fail, but spice-channel.c was not checking its return
> value, which could lead to some crashes if coroutine_init() failed and we
> then try to use coroutine_yieldto()
> ---
> gtk/coroutine.h | 2 +-
---
gtk/coroutine_ucontext.c | 11 ++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/gtk/coroutine_ucontext.c b/gtk/coroutine_ucontext.c
index f4ff22e..4689166 100644
--- a/gtk/coroutine_ucontext.c
+++ b/gtk/coroutine_ucontext.c
@@ -65,6 +65,8 @@ static void coroutine_tramp
coroutine_init() can fail, but spice-channel.c was not checking its return
value, which could lead to some crashes if coroutine_init() failed and we
then try to use coroutine_yieldto()
---
gtk/coroutine.h | 2 +-
gtk/coroutine_ucontext.c | 6 ++
gtk/spice-channel.c | 9 -
Hey,
This wasn't pushed yet, but is the cause for
https://bugzilla.redhat.com/show_bug.cgi?id=1028637
I'll push this amended version (with same author/log as the initial
patch) if noone objects:
diff --git a/gtk/coroutine_ucontext.c b/gtk/coroutine_ucontext.c
index f960cfb..3663dfb 100644
--- a/g
Hi Christophe,
On Mon, Sep 16, 2013 at 8:23 AM, Christophe Fergeau wrote:
> I've been looking into this today, and ended up adding a ssl-ca-file
> property to RestProxy (which OvirtProxy inherits from). This is needed
> in order to be able to use custom CA certificates for the REST https
> commun
>>> I'd rather we avoid breaking ABI 'just' for the NBD channel.
>>
>> What do you think is the correct criteria?
>
> My criteria would be to never break it, so not really useful. I'd
> tend to return the question, if we break the ABI now (which hasn't
> been done in rec
On Mon, Nov 18, 2013 at 2:12 PM, Marc-André Lureau
wrote:
> On Mon, Nov 18, 2013 at 2:09 PM, Alon Levy wrote:
>> -BEGIN PGP SIGNED MESSAGE-
>> Hash: SHA1
>>
>> On 11/18/2013 02:48 PM, Christophe Fergeau wrote:
>>> On Mon, Nov 18, 2013 at 02:32:45PM +0200, Alon Levy wrote:
-BEGIN
On Mon, Nov 18, 2013 at 2:09 PM, Alon Levy wrote:
> -BEGIN PGP SIGNED MESSAGE-
> Hash: SHA1
>
> On 11/18/2013 02:48 PM, Christophe Fergeau wrote:
>> On Mon, Nov 18, 2013 at 02:32:45PM +0200, Alon Levy wrote:
>>> -BEGIN PGP SIGNED MESSAGE- Hash: SHA1
>>>
>>> On 11/18/2013 02:21 PM,
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 11/18/2013 02:48 PM, Christophe Fergeau wrote:
> On Mon, Nov 18, 2013 at 02:32:45PM +0200, Alon Levy wrote:
>> -BEGIN PGP SIGNED MESSAGE- Hash: SHA1
>>
>> On 11/18/2013 02:21 PM, Christophe Fergeau wrote:
>>> On Mon, Nov 18, 2013 at 11:28:2
On 11/18/2013 02:25 PM, Marc-André Lureau wrote:
> The Spice block driver must be able complete operations within a AIO
> context only.
>
> Spice is currently only running within the main loop, and doesn't allow
> the block driver to complete operations, such as flush during migration.
>
> This p
On Mon, Nov 18, 2013 at 02:32:45PM +0200, Alon Levy wrote:
> -BEGIN PGP SIGNED MESSAGE-
> Hash: SHA1
>
> On 11/18/2013 02:21 PM, Christophe Fergeau wrote:
> > On Mon, Nov 18, 2013 at 11:28:28AM +0100, Marc-André Lureau wrote:
> >> From: Marc-André Lureau
> >>
> >> --- configure.ac | 4 ++
On 11/18/2013 02:25 PM, Marc-André Lureau wrote:
> From: Marc-André Lureau
The patch description is incomplete, or the patch should be split - this
patch also implements qemu_chr_fe_event for spiceport.
>
> Signed-off-by: Marc-André Lureau
> ---
> include/sysemu/char.h | 10 ++
> qemu
On Mon, Nov 18, 2013 at 1:21 PM, Christophe Fergeau wrote:
> On Mon, Nov 18, 2013 at 11:28:28AM +0100, Marc-André Lureau wrote:
>> From: Marc-André Lureau
>>
>> ---
>> configure.ac | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/configure.ac b/configure.ac
>> inde
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 11/18/2013 02:21 PM, Christophe Fergeau wrote:
> On Mon, Nov 18, 2013 at 11:28:28AM +0100, Marc-André Lureau wrote:
>> From: Marc-André Lureau
>>
>> --- configure.ac | 4 ++-- 1 file changed, 2 insertions(+), 2
>> deletions(-)
>>
>> diff --git a/c
From: Marc-André Lureau
When starting qemu, a block driver isn't associated with a device, so
no notification is emitted when the media is loaded.
The Spice block driver loads the media during migration. But at
that time, the device is already associated, however, we want to
avoid notification t
From: Marc-André Lureau
This allows the Spice block driver to eject the associated device.
Signed-off-by: Marc-André Lureau
---
block.c | 58 ---
include/block/block_int.h | 1 +
2 files changed, 41 insertions(+), 18 deletions(-)
From: Marc-André Lureau
Signed-off-by: Marc-André Lureau
---
block/Makefile.objs | 1 +
block/spicebd.c | 536
2 files changed, 537 insertions(+)
create mode 100644 block/spicebd.c
diff --git a/block/Makefile.objs b/block/Makefile.obj
From: Marc-André Lureau
Signed-off-by: Marc-André Lureau
---
block.c | 19 ---
1 file changed, 12 insertions(+), 7 deletions(-)
diff --git a/block.c b/block.c
index 09aada5..9e7632e 100644
--- a/block.c
+++ b/block.c
@@ -1135,27 +1135,32 @@ int bdrv_open(BlockDriverState *bs, c
From: Marc-André Lureau
Signed-off-by: Marc-André Lureau
---
block/nbd-client.c | 5 +
1 file changed, 5 insertions(+)
diff --git a/block/nbd-client.c b/block/nbd-client.c
index e29227b..c0ad2c2 100644
--- a/block/nbd-client.c
+++ b/block/nbd-client.c
@@ -337,7 +337,12 @@ static void nbd_t
From: Marc-André Lureau
If the block driver is given an opaque data, there is no need to
allocate a new one. This allows to pass an existing driver state to the
new driver.
Signed-off-by: Marc-André Lureau
---
block.c | 48 +---
1 file changed, 29 in
The Spice block driver must be able complete operations within a AIO
context only.
Spice is currently only running within the main loop, and doesn't allow
the block driver to complete operations, such as flush during migration.
This patch allows a Spice interface to be associated with a different
This is a simple solution (or hack?) to allow the Spice block driver to
hold the VM from starting before the migration state is completed.
During migration, the destination qemu needs to initialize the NBD
session. This requires waiting for the Spice client and communication
before the VM is start
From: Marc-André Lureau
If the block driver already has a bs->opaque when calling bdrv_open(),
pass it down to the file driver.
Signed-off-by: Marc-André Lureau
Conflicts:
block.c
---
block.c | 9 +++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/block.c b/block.
==15815== Thread 1:
==15815== Syscall param socketcall.sendto(msg) points to uninitialised byte(s)
==15815==at 0x65AD5CB: send (send.c:31)
==15815==by 0x37F84B: nbd_wr_sync (nbd.c:145)
==15815==by 0x37F94B: write_sync (nbd.c:186)
==15815==by 0x380FA9: nbd_send_request (nbd.c:681)
==
Make sure all pending coroutines are finished when closing the session.
Signed-off-by: Marc-André Lureau
---
block/nbd-client.c | 22 +-
1 file changed, 17 insertions(+), 5 deletions(-)
diff --git a/block/nbd-client.c b/block/nbd-client.c
index c0ad2c2..ad6fb01 100644
--- a/
From: Marc-André Lureau
There is no need to keep the export name around, and it seems a better
fit as an argument in the init() call.
Signed-off-by: Marc-André Lureau
---
block/nbd-client.c | 10 --
block/nbd-client.h | 5 ++---
block/nbd.c| 13 -
3 files changed,
From: Marc-André Lureau
The caller might handle non-blocking using coroutine. Leave the choice
to the caller to use a blocking or non-blocking negotiate.
Signed-off-by: Marc-André Lureau
---
nbd.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/nbd.c b/nbd.c
index f847940..3af9d17 100644
--
From: Marc-André Lureau
Signed-off-by: Marc-André Lureau
---
block.c | 121 +---
1 file changed, 70 insertions(+), 51 deletions(-)
diff --git a/block.c b/block.c
index 0558525..09aada5 100644
--- a/block.c
+++ b/block.c
@@ -1038,6 +10
From: Marc-André Lureau
Allow to pass additional arguments, such as options and opaque
Signed-off-by: Marc-André Lureau
---
blockdev.c| 24 +++-
include/sysemu/blockdev.h | 3 +++
2 files changed, 22 insertions(+), 5 deletions(-)
diff --git a/blockdev.c b/
From: Marc-André Lureau
Signed-off-by: Marc-André Lureau
---
block/Makefile.objs | 2 +-
block/nbd-client.c | 372 +++
block/nbd-client.h | 51 +++
block/nbd.c | 373
4 files ch
From: Marc-André Lureau
Signed-off-by: Marc-André Lureau
---
blockdev.c| 2 +-
include/sysemu/blockdev.h | 2 +-
qmp.c | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/blockdev.c b/blockdev.c
index 86e6bff..b8db544 100644
--- a/blockdev.
From: Marc-André Lureau
Signed-off-by: Marc-André Lureau
---
spice-qemu-char.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/spice-qemu-char.c b/spice-qemu-char.c
index 6d147a7..e074d9e 100644
--- a/spice-qemu-char.c
+++ b/spice-qemu-char.c
@@ -11,7 +11,6 @@
typedef struct SpiceCharDriver
From: Marc-André Lureau
Fixes the following error:
** (process:780): CRITICAL **: do_socket_send: assertion
`socket_to_send->len != 0' failed
Signed-off-by: Marc-André Lureau
---
libcacard/vscclient.c | 10 ++
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/libcacard/vscc
From: Marc-André Lureau
Signed-off-by: Marc-André Lureau
---
include/sysemu/char.h | 10 ++
qemu-char.c | 7 +++
spice-qemu-char.c | 10 ++
3 files changed, 27 insertions(+)
diff --git a/include/sysemu/char.h b/include/sysemu/char.h
index ad101d9..d23c8f1 100
From: Marc-André Lureau
Signed-off-by: Marc-André Lureau
---
include/ui/qemu-spice.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/include/ui/qemu-spice.h b/include/ui/qemu-spice.h
index 86c75c7..a93b4b2 100644
--- a/include/ui/qemu-spice.h
+++ b/include/ui/qemu-spice.h
@@ -18,6 +18,8 @
Hi,
The following patch series implement a Spice block device, which
allows the client to redirect a block device using the NBD protocol,
which greatly simplifies the Spice code by reusing an existing
protocol, and allows sharing existing qemu NBD implementation.
The backend only support read-onl
On Mon, Nov 18, 2013 at 11:28:32AM +0100, Marc-André Lureau wrote:
> See spice.proto RFC
This commit log will need improving when it's no longer an RFC :)
Christophe
pgphsKlPWufyU.pgp
Description: PGP signature
___
Spice-devel mailing list
Spice-devel
On Mon, Nov 18, 2013 at 11:28:28AM +0100, Marc-André Lureau wrote:
> From: Marc-André Lureau
>
> ---
> configure.ac | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/configure.ac b/configure.ac
> index 22e3889..7aa734e 100644
> --- a/configure.ac
> +++ b/configure.ac
On Fri, Nov 15, 2013 at 10:21:28PM +0100, Marc-André Lureau wrote:
> ok, I also sent a few patches for coroutine*, where I include
> (though not in coroutine.h).
Yep, they are enough to fix these build issues, I'll wait for your patches
to land before pushing this one.
Christophe
pgpfuxV_GpJfm
On 11/18/2013 12:28 PM, Marc-André Lureau wrote:
> All chardev channels are stopped when calling spice_server_vm_stop(),
> which prevents them from doing any i/o.
>
> However, the Spice block device channel needs to keep running even when
> the VM is stopped. It is entirely drived by the server, s
On 11/18/2013 01:03 AM, Marc-André Lureau wrote:
> Hey Fedor
>
> On Sun, Nov 17, 2013 at 5:48 PM, Fedor Lyakhov
> wrote:
>> Marc,
>>
>> What does VMC stand for here? Is it related to my idea of virtual
>> media controller, or just a coincidence?
>
> It's a coincidence ;) Hans should know what i
It's an old patch, I should have modified those as well:
server/tests/test_multiple.py:parser.add_argument('--client', default='spicy')
tests/migrate.py:parser.add_argument('--client', dest='client',
default='spicy', choices=['spi
- Original Message -
> From: Marc-André Lureau
>
>
All chardev channels are stopped when calling spice_server_vm_stop(),
which prevents them from doing any i/o.
However, the Spice block device channel needs to keep running even when
the VM is stopped. It is entirely drived by the server, so it is
entirely to the server to deal with the channel run
See spice.proto RFC
---
server/reds.c | 7 +++
spice-common | 2 +-
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/server/reds.c b/server/reds.c
index 7809439..d9e04de 100644
--- a/server/reds.c
+++ b/server/reds.c
@@ -3592,6 +3592,7 @@ SPICE_GNUC_VISIBLE void
spice_server_cha
From: Marc-André Lureau
That way, the user code can associate interface loop timers and watchs
with a particular context.
---
server/char_device.c | 5 +++--
server/inputs_channel.c| 2 +-
server/main_channel.c | 2 +-
Hi,
The following patch series implement support for a block device
channel with Spice server. The first 3 patches could be reviewed
seperately though.
The most notable change is the modification of the main loop
interface, which will pass the SpiceBaseInstance. This allows the
server program to
From: Marc-André Lureau
This is useful to associate an interface instance with a channel.
---
server/inputs_channel.c | 1 +
server/main_channel.c | 4 +++-
server/red_channel.c| 8 ++--
server/red_channel.h| 5 -
server/red_worker.c | 10 --
server/smartcard.c
From: Marc-André Lureau
---
server/reds.c | 5 -
server/reds.h | 1 -
2 files changed, 6 deletions(-)
diff --git a/server/reds.c b/server/reds.c
index 146dfc7..6197547 100644
--- a/server/reds.c
+++ b/server/reds.c
@@ -3486,11 +3486,6 @@ uint32_t reds_get_mm_time(void)
return time_spac
From: Marc-André Lureau
---
configure.ac | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/configure.ac b/configure.ac
index 22e3889..7aa734e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -13,9 +13,9 @@ AC_PREREQ([2.57])
# 4. Follow the libtool manual for the so version:
From: Marc-André Lureau
---
configure.ac | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/configure.ac b/configure.ac
index 882bf1b..22e3889 100644
--- a/configure.ac
+++ b/configure.ac
@@ -147,7 +147,7 @@ AS_IF([test x"$enable_client" != "xno"],
[enable_client="yes"]
In reds_send_link_ack(), lookup the channel with the same id as the link
message.
---
server/reds.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/server/reds.c b/server/reds.c
index 2a0002b..146dfc7 100644
--- a/server/reds.c
+++ b/server/reds.c
@@ -1453,7 +1453,8 @@ static
From: Marc-André Lureau
This allow user code to associate data with an interface instance.
---
server/spice.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/server/spice.h b/server/spice.h
index 95053f5..da3de3b 100644
--- a/server/spice.h
+++ b/server/spice.h
@@ -44,6 +44,7 @@ struct Spice
The test is not passing with --with-coroutine=gthread
On Fri, Nov 15, 2013 at 10:03:41PM +0100, Marc-André Lureau wrote:
> ---
> tests/Makefile.am | 18 -
> tests/coroutine.c | 80
> +++
> 2 files changed, 91 insertions(+), 7 deleti
On Fri, Nov 15, 2013 at 10:03:42PM +0100, Marc-André Lureau wrote:
> ---
> gtk/spice-channel-priv.h | 1 -
> gtk/spice-channel.c | 5 ++---
> 2 files changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/gtk/spice-channel-priv.h b/gtk/spice-channel-priv.h
> index 80a6563..351126f 100644
On Fri, Nov 15, 2013 at 10:03:40PM +0100, Marc-André Lureau wrote:
> When leaving a coroutine, it swaps back to where it came from, not to
> the leader/main coroutine.
> ---
> gtk/coroutine_ucontext.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/gtk/coroutine_ucontext.
ACK
Christophe
On Fri, Nov 15, 2013 at 10:03:39PM +0100, Marc-André Lureau wrote:
> ---
> gtk/coroutine_gthread.c | 7 +++
> gtk/coroutine_ucontext.c | 8
> gtk/coroutine_winfibers.c | 7 +++
> 3 files changed, 10 insertions(+), 12 deletions(-)
>
> diff --git a/gtk/coroutine
On Sat, Nov 16, 2013 at 08:43:16AM -0500, i iordanov wrote:
> Hi Itamar,
>
> Thanks for the explanations! I'll let Christophe confirm that govirt
> defaults to user-mode.
Yes it does, ovirt-proxy.c has:
g_object_class_install_property(oclass,
PROP_ADMIN,
On Fri, Nov 15, 2013 at 06:29:55PM +0100, Marc-André Lureau wrote:
> ack
>
> On Fri, Nov 15, 2013 at 6:20 PM, Christophe Fergeau
> wrote:
> > Commit daa4ece tried to disable building of python bindings on Windows by
> > default, but in doing so, it also disabled building of python bindings by
>
On Thu, Nov 14, 2013 at 08:17:06AM -0500, Marc-André Lureau wrote:
>
>
> - Original Message -
> > On Wed, Nov 13, 2013 at 10:13:10PM +0100, Marc-André Lureau wrote:
> > > When migrating a channel, all channels are disconnected during reset()
> > > after MAIN_MIGRATED_END. The channel swap
62 matches
Mail list logo