From: Jonathon Jongsma
Removing more global variables
---
server/reds-private.h | 1 +
server/reds.c | 10 +-
2 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/server/reds-private.h b/server/reds-private.h
index bc790e8..c76f3b0 100644
--- a/server/reds-private.h
++
From: Jonathon Jongsma
Since this is public API, we can't easily change the signature of the
function to take a RedsState argument, so instead we apply a hack and
store the reds argument inside the device state struct when the
interface is added, and retrieve it for use later when it is removed.
From: Jonathon Jongsma
Prefer local argument variable over global 'reds' variable
---
server/reds.c | 6 ++
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/server/reds.c b/server/reds.c
index ba6ab43..0b04f5f 100644
--- a/server/reds.c
+++ b/server/reds.c
@@ -3160,13 +3160,11 @
From: Jonathon Jongsma
Rather than using global 'reds' variable
---
server/reds.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/server/reds.c b/server/reds.c
index 9ec80f2..ba6ab43 100644
--- a/server/reds.c
+++ b/server/reds.c
@@ -3583,13 +3583,11 @@ SPICE_GNUC_VISIBLE
From: Jonathon Jongsma
Also required adding reds_get_zlib_glz_state() for external access.
---
server/red-worker.c | 2 +-
server/reds-private.h | 1 +
server/reds.c | 9 +++--
server/reds.h | 2 +-
4 files changed, 10 insertions(+), 4 deletions(-)
diff --git a/server/red-
From: Jonathon Jongsma
Since this is technically a RedsState method, name it as such.
---
server/reds.c | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/server/reds.c b/server/reds.c
index 14857c2..8be151c 100644
--- a/server/reds.c
+++ b/server/reds.c
@@ -174,7 +174,7
From: Jonathon Jongsma
---
server/reds.c | 13 +++--
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/server/reds.c b/server/reds.c
index 690985c..8b2dab5 100644
--- a/server/reds.c
+++ b/server/reds.c
@@ -2265,7 +2265,7 @@ static void reds_handle_ssl_accept(int fd, int even
From: Jonathon Jongsma
Required adding a RedsState arg to reds_get_agent_mouse()
---
server/inputs-channel.c | 8
server/reds-private.h | 2 ++
server/reds.c | 10 +-
server/reds.h | 2 +-
4 files changed, 12 insertions(+), 10 deletions(-)
diff --git a/
Changes:
- merged some patches;
- added other patches to list.
Jonathon Jongsma (18):
Change spice_server_set_ticket() to use local 'reds'
spice_server_add_interface: use local 'reds' variable
Remove use of global 'reds' var from spice_server_remove_interface()
Store 'renderers' as GArray
From: Jonathon Jongsma
This allows us to use local 'reds' variables in all of the various async
callbacks rather than using the global 'reds' variable.
---
server/reds.c | 15 +--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/server/reds.c b/server/reds.c
index 8b2da
From: Jonathon Jongsma
Also add reds_get_core_interface() accessor for external use.
---
server/char-device.c| 32 ---
server/inputs-channel.c | 7 ---
server/main-channel.c | 13 +++--
server/reds-private.h | 2 ++
server/reds-stream.c| 12 +
From: Jonathon Jongsma
Acked-by: Frediano Ziglio
---
server/display-channel.c | 13 +++--
server/display-channel.h | 3 +--
server/reds-private.h| 1 +
server/reds.c| 22 +-
server/reds.h| 5 ++---
5 files changed, 24 insertions(+), 20
From: Jonathon Jongsma
---
server/main-dispatcher.c | 2 +-
server/reds.c| 2 +-
server/reds.h| 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/server/main-dispatcher.c b/server/main-dispatcher.c
index 132a693..777a44f 100644
--- a/server/main-dispatc
From: Jonathon Jongsma
Removing more global variables
---
server/reds-private.h | 1 +
server/reds.c | 6 +++---
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/server/reds-private.h b/server/reds-private.h
index 9c3db70..5042773 100644
--- a/server/reds-private.h
+++ b/se
From: Jonathon Jongsma
Removing more global variables
---
server/reds-private.h | 11 +
server/reds.c | 65 ++-
2 files changed, 39 insertions(+), 37 deletions(-)
diff --git a/server/reds-private.h b/server/reds-private.h
index 504
From: Jonathon Jongsma
Removing more global variables
---
server/reds-private.h | 1 +
server/reds.c | 16
2 files changed, 9 insertions(+), 8 deletions(-)
diff --git a/server/reds-private.h b/server/reds-private.h
index 52f88f8..9c3db70 100644
--- a/server/reds-privat
From: Jonathon Jongsma
Removing more global variables
---
server/reds-private.h | 1 +
server/reds.c | 16
2 files changed, 9 insertions(+), 8 deletions(-)
diff --git a/server/reds-private.h b/server/reds-private.h
index 9bfade8..52f88f8 100644
--- a/server/reds-privat
From: Jonathon Jongsma
---
server/dcc-send.c| 6 +++---
server/display-channel.c | 12 ++--
server/main-channel.c| 2 +-
server/red-channel.c | 4 ++--
server/red-worker.c | 12 ++--
server/reds.c| 22 +++---
server/reds.h
gt;taTicket.password));
> -ticketing_enabled = 0;
> +s->ticketing_enabled = FALSE;
> return 0;
> }
>
> @@ -3602,7 +3602,7 @@ SPICE_GNUC_VISIBLE int
> spice_server_set_ticket(SpiceServer *reds,
> }
>
> on_activating_ticketing(reds);
> -tic
true/false.
Frediano Ziglio (4):
worker: push data when clients can receive them
replay: remove a message that could be caused by a race condition
worker: avoid blocking loop
worker: don't do too much polling
server/red-channel.c | 39 ++-
serve
iteration.
Signed-off-by: Frediano Ziglio
Acked-by: Jonathon Jongsma
---
server/red-worker.c | 14 ++
1 file changed, 14 insertions(+)
diff --git a/server/red-worker.c b/server/red-worker.c
index 031350a..45a597f 100644
--- a/server/red-worker.c
+++ b/server/red-worker.c
@@ -69,6
200 times every 10ms (maximum)
just the cursor blinking was causing 10100 loop iterations per second
while now only 200 are needed (considering cursor blinking every
second).
Signed-by: Frediano Ziglio
---
server/red-worker.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a
code can do it.
Signed-by: Frediano Ziglio
---
server/tests/replay.c | 6 --
1 file changed, 6 deletions(-)
diff --git a/server/tests/replay.c b/server/tests/replay.c
index c7f3f00..f3b670f 100644
--- a/server/tests/replay.c
+++ b/server/tests/replay.c
@@ -183,12 +183,6 @@ static int
loop (so not really the ideal
condition to see the improvements) the total time was reduced by 2-3%)
- helps reduce the possibility of hanging loops
- avoids having to scan all clients to detect which one can accept data.
Signed-by: Frediano Ziglio
---
server/red-channel.c
>
> ping
>
Integrated part of the patches
There are still some issues not replied and I'd like to see the problem
of pending drawing while fd removed fixed.
Frediano
> On Mon, Jan 11, 2016 at 1:40 PM, Marc-André Lureau
> wrote:
> > The following series implements the x11 client-side suppor
has_fd was not initialized.
Signed-off-by: Frediano Ziglio
---
common/marshaller.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/common/marshaller.c b/common/marshaller.c
index cffc641..00a7123 100644
--- a/common/marshaller.c
+++ b/common/marshaller.c
@@ -117,6 +117,7 @@ static void
>
> Hi
>
> On Fri, Jan 22, 2016 at 12:36 PM, Marc-André Lureau
> wrote:
> > Hi
> >
> > On Tue, Jan 19, 2016 at 11:41 AM, Frediano Ziglio
> > wrote:
> >> Instead of using libserver.a to include necessary functions we include
> >> single
Signed-off-by: Frediano Ziglio
---
spice-common | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/spice-common b/spice-common
index 472e563..fd9ba72 16
--- a/spice-common
+++ b/spice-common
@@ -1 +1 @@
-Subproject commit 472e563591a80f75679be2ea855e660c6ee51721
+Subproject
ts-channel.c easier
>
> @@ -112,5 +111,6 @@ void reds_on_char_device_state_destroy(RedsState *reds,
> SpiceCharDeviceState *de
> void reds_set_client_mm_time_latency(RedsState *reds, RedClient *client,
> uint32_t latency);
> uint32_t reds_get_streaming_video(RedsState *reds);
> spice_wa
int spice_server_set_agent_copypaste(SpiceServer *s, int
> enable)
> {
> spice_assert(reds == s);
> -agent_copypaste = enable;
> -reds->agent_state.write_filter.copy_paste_enabled = agent_copypaste;
> -reds->agent_state.read_filter.copy_paste_enabled
nab
> SPICE_GNUC_VISIBLE int spice_server_set_agent_file_xfer(SpiceServer *s, int
> enable)
> {
> spice_assert(reds == s);
> -agent_file_xfer = enable;
> -reds->agent_state.write_filter.file_xfer_enabled = agent_file_xfer;
> -reds->agent_state.read_filt
t_on_disconnect(SpiceServer *s,
> int flag)
> {
> spice_assert(reds == s);
> -exit_on_disconnect = !!flag;
> +s->exit_on_disconnect = !!flag;
> return 0;
> }
>
Acked-by: Frediano Ziglio
Frediano
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/spice-devel
>
> extern struct SpiceCoreInterfaceInternal *core;
> -extern uint32_t streaming_video;
> extern spice_wan_compression_t zlib_glz_state;
>
> // Temporary measures to make splitting reds.c to inputs-channel.c easier
> @@ -111,6 +110,7 @@ vo
--- a/server/reds.h
> +++ b/server/reds.h
> @@ -59,7 +59,7 @@ void reds_set_client_mouse_allowed(RedsState *reds,
> void reds_register_channel(RedsState *reds, RedChannel *channel);
> void reds_unregister_channel(RedsState *reds, RedChannel *channel);
> int reds_get
;ssl_parameters.private_key_file));
>
> if (key_passwd) {
> -g_strlcpy(ssl_parameters.keyfile_password, key_passwd,
> - sizeof(ssl_parameters.keyfile_password));
> +g_strlcpy(s->ssl_parameters.keyfile_password, key_passwd,
> +
>
> Create an async, and marshall the GL_DRAW message. Count number of
> clients, and wait until gl_draw_async_count is 0 to complete the async.
> The count is going to be updated in the following patch when the client
> is done with the draw.
>
> Signed-off-by: Marc-André Lureau
> ---
> server
>
> - spice_gl_scanout() to take the current scanout
>
> - spice_gl_draw_async() to draw the scanout, is like other Spice async
> functions, it takes a cookie and will return in the
> QXLInterface.async_complete()
>
> Two new fields are also added to QXLState, in order to save the current
>
>
> Create an async, and marshall the GL_DRAW message. Count number of
> clients, and wait until gl_draw_async_count is 0 to complete the async.
> The count is going to be updated in the following patch when the client
> is done with the draw.
>
> Signed-off-by: Marc-André Lureau
> ---
> server
From: Jonathon Jongsma
Since this is technically a RedsState method, name it as such.
---
server/reds.c | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/server/reds.c b/server/reds.c
index 4ad8b0f..bff64d6 100644
--- a/server/reds.c
+++ b/server/reds.c
@@ -174,7 +174,7
From: Jonathon Jongsma
---
server/dcc-send.c| 6 +++---
server/display-channel.c | 12 ++--
server/main-channel.c| 2 +-
server/red-channel.c | 4 ++--
server/red-worker.c | 12 ++--
server/reds.c| 22 +++---
server/reds.h
From: Jonathon Jongsma
---
server/main-channel.c | 2 +-
server/reds.c | 2 +-
server/reds.h | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/server/main-channel.c b/server/main-channel.c
index a70c605..8b1d7d4 100644
--- a/server/main-channel.c
+++ b/server
From: Jonathon Jongsma
Allows client methods to not use global 'reds' variable
---
server/red-channel.c | 5 +++--
server/red-channel.h | 3 ++-
server/reds.c| 2 +-
3 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/server/red-channel.c b/server/red-channel.c
index 1ca85b1..
From: Jonathon Jongsma
Prefer local argument variable over global 'reds' variable
---
server/reds.c | 6 ++
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/server/reds.c b/server/reds.c
index 60be869..4c2ac37 100644
--- a/server/reds.c
+++ b/server/reds.c
@@ -3145,13 +3145,11 @
From: Jonathon Jongsma
Also add reds_get_core_interface() accessor for external use.
---
server/char-device.c| 32 ---
server/inputs-channel.c | 7 ---
server/main-channel.c | 13 +++--
server/reds-private.h | 2 ++
server/reds-stream.c| 12 +
From: Jonathon Jongsma
This allows RedsMigTargetClient methods to use local variables rather
than the global 'reds' variable
---
server/reds-private.h | 1 +
server/reds.c | 12 ++--
2 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/server/reds-private.h b/server/re
From: Jonathon Jongsma
Store a reference to the server in the SpiceCharDeviceState struct and
use that rather than the global 'reds' variable
---
server/char-device.c | 34 +++---
server/char-device.h | 1 +
server/reds.c| 1 +
server/smartcard.c | 1 +
s
Changes:
- merged some patches;
- added other patches to list.
Jonathon Jongsma (18):
Change spice_server_set_ticket() to use local 'reds'
spice_server_add_interface: use local 'reds' variable
Store 'renderers' as GArray in RedsState
Rename vdi_port_read_buf_get() to match convention
Mov
From: Jonathon Jongsma
Acked-by: Frediano Ziglio
---
server/display-channel.c | 13 +++--
server/display-channel.h | 3 +--
server/reds-private.h| 1 +
server/reds.c| 22 +-
server/reds.h| 5 ++---
5 files changed, 24 insertions(+), 20
From: Jonathon Jongsma
---
server/char-device.h | 6 --
server/reds.c| 8
server/spicevmc.c| 5 +++--
3 files changed, 11 insertions(+), 8 deletions(-)
diff --git a/server/char-device.h b/server/char-device.h
index a6315b0..3f81d13 100644
--- a/server/char-device.h
+++
From: Jonathon Jongsma
---
server/main-dispatcher.c | 2 +-
server/reds.c| 2 +-
server/reds.h| 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/server/main-dispatcher.c b/server/main-dispatcher.c
index 132a693..777a44f 100644
--- a/server/main-dispatc
From: Jonathon Jongsma
Rather than using global 'reds' variable
---
server/reds.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/server/reds.c b/server/reds.c
index edbdaad..60be869 100644
--- a/server/reds.c
+++ b/server/reds.c
@@ -3581,13 +3581,11 @@ SPICE_GNUC_VISIBLE
From: Jonathon Jongsma
Various functions were still using the global 'reds' variable rather
than the local argument of type RedsState
---
server/reds.c | 68 +--
1 file changed, 34 insertions(+), 34 deletions(-)
diff --git a/server/reds.c
From: Jonathon Jongsma
---
server/inputs-channel.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/server/inputs-channel.c b/server/inputs-channel.c
index 38b23df..f47a586 100644
--- a/server/inputs-channel.c
+++ b/server/inputs-channel.c
@@ -192,7 +192,7 @@ static void
From: Jonathon Jongsma
This allows us to use local 'reds' variables in all of the various async
callbacks rather than using the global 'reds' variable.
---
server/reds.c | 15 +--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/server/reds.c b/server/reds.c
index 7b884
From: Jonathon Jongsma
Add a new 'state' property to VDIReadBuf so that we can refer back to
the VDIPortState struct from the readbuf functions.
---
server/reds-private.h | 7 +--
server/reds.c | 35 +--
2 files changed, 22 insertions(+), 20 deletions
From: Jonathon Jongsma
Store a reference to the RedsState server in the keyboard state struct
---
server/inputs-channel.c | 14 +++---
server/inputs-channel.h | 1 +
server/reds.c | 1 +
3 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/server/inputs-channel.c b
From: Jonathon Jongsma
---
server/reds.c | 13 +++--
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/server/reds.c b/server/reds.c
index 6467c7e..7b8848a 100644
--- a/server/reds.c
+++ b/server/reds.c
@@ -2265,7 +2265,7 @@ static void reds_handle_ssl_accept(int fd, int even
Signed-off-by: Frediano Ziglio
---
server/red-channel.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/server/red-channel.c b/server/red-channel.c
index fdd85b9..4bc2faa 100644
--- a/server/red-channel.c
+++ b/server/red-channel.c
@@ -1506,7 +1506,7 @@ static void
Make version_string a constant.
Also there is no need to have a pointer but declare the buffer as static
Signed-off-by: Frediano Ziglio
---
server/reds.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/server/reds.c b/server/reds.c
index edbdaad..4225847 100644
--- a/server
Instead of using CPU time use a timer depending on real times.
Currently that time in the record log is not used.
However if we want to reproduce problems with stream would be useful
to have real times instead.
Signed-off-by: Frediano Ziglio
---
server/red-worker.c | 4 ++--
1 file changed, 2
Mainly small changes.
Mostly could or should squashed to main ones.
Frediano Ziglio (4):
removed unused sent field
do not crash if client send spurious messages
move gl_draw_async_count to DisplayChannel
do not reset gl_draw_ongoing before calling
display_channel_gl_draw_done
server
Reduce critical message to a warning.
This condition can be easily be trigger by malicious clients.
This patch could be squashed in another.
Signed-off-by: Frediano Ziglio
---
server/dcc.c | 6 +-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/server/dcc.c b/server/dcc.c
index
This patch should be squashed to another one.
Signed-off-by: Frediano Ziglio
---
server/dcc.h | 1 -
1 file changed, 1 deletion(-)
diff --git a/server/dcc.h b/server/dcc.h
index 842b7d4..a482938 100644
--- a/server/dcc.h
+++ b/server/dcc.h
@@ -132,7 +132,6 @@ typedef struct GlScanoutUnixItem
This will cause a failure of the function. The function is supposed
to be called with this flag TRUE.
This patch should be squashed into another.
Signed-off-by: Frediano Ziglio
---
server/dcc.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/server/dcc.c b/server/dcc.c
index 2367c5e..5ccbda1
Looks like is a more appropriate place.
Note that this make patch smaller.
Also this is more symmetric having gl_draw_ongoing in DisplayChannelClient.
This patch could be squashed in another.
Signed-off-by: Frediano Ziglio
---
server/display-channel.c | 18 --
server/display
This patch should be squashed in earlier patches.
Signed-off-by: Frediano Ziglio
---
server/red-dispatcher.c | 18 +-
server/spice-qxl.h | 21 ++---
server/spice-server.syms | 4 ++--
3 files changed, 21 insertions(+), 22 deletions(-)
diff --git a/server
These automatic variable are used just inside the function.
Signed-off-by: Frediano Ziglio
---
server/dcc.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/server/dcc.c b/server/dcc.c
index 99aadf0..4f458ec 100644
--- a/server/dcc.c
+++ b/server/dcc.c
@@ -792,9 +792,9
The parameter was not used.
Signed-off-by: Frediano Ziglio
---
server/dcc.c | 26 --
1 file changed, 8 insertions(+), 18 deletions(-)
diff --git a/server/dcc.c b/server/dcc.c
index 8fe7fc3..99aadf0 100644
--- a/server/dcc.c
+++ b/server/dcc.c
@@ -725,7 +725,7 @@ glz
Make code more readable.
Value is exactly the same.
Signed-off-by: Frediano Ziglio
---
server/event-loop.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/server/event-loop.c b/server/event-loop.c
index 9eae913..9ef7a46 100644
--- a/server/event-loop.c
+++ b/server/event
Signed-off-by: Frediano Ziglio
---
server/red-worker.c | 7 ---
server/red-worker.h | 1 -
2 files changed, 8 deletions(-)
diff --git a/server/red-worker.c b/server/red-worker.c
index ba37b6c..5d6512f 100644
--- a/server/red-worker.c
+++ b/server/red-worker.c
@@ -99,13 +99,6 @@ QXLInstance
Signed-off-by: Frediano Ziglio
---
server/cache-item.tmpl.c | 2 +-
server/dcc.c | 2 +-
server/red-channel.c | 6 +++---
server/red-channel.h | 2 +-
4 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/server/cache-item.tmpl.c b/server/cache-item.tmpl.c
index
The only usage of this ring was to have a message when there was no
commands on the list.
Signed-off-by: Frediano Ziglio
---
server/red-dispatcher.c | 15 ---
1 file changed, 15 deletions(-)
diff --git a/server/red-dispatcher.c b/server/red-dispatcher.c
index 374d5a9..19fbf61
_RETRIES) {
worker->event_timeout = MIN(worker->event_timeout, CMD_RING_POLL_TIMEOUT);
} else if (worker->display_poll_tries == CMD_RING_POLL_RETRIES &&
!worker->qxl->st->qif->req_cmd_notification(worker->qxl)) {
continue;
}
worker->display_poll_
Signed-off-by: Frediano Ziglio
---
server/red-worker.c | 7 ---
server/red-worker.h | 1 -
2 files changed, 8 deletions(-)
diff --git a/server/red-worker.c b/server/red-worker.c
index 1757b8e..05d6af3 100644
--- a/server/red-worker.c
+++ b/server/red-worker.c
@@ -92,13 +92,6 @@ struct
Signed-off-by: Frediano Ziglio
---
server/red-worker.c | 1 -
server/red-worker.h | 1 -
2 files changed, 2 deletions(-)
diff --git a/server/red-worker.c b/server/red-worker.c
index 5d6512f..3bb8227 100644
--- a/server/red-worker.c
+++ b/server/red-worker.c
@@ -469,7 +469,6
Some cleanups and style changes.
Frediano Ziglio (11):
dispatcher: remove unused async_commands ring
worker: simplify process loops
event loop: use G_SOURCE_REMOVE instead of FALSE
channel: rename misleading functions
dcc: remove group_id from compression functions
remove unused
---
server/cursor-channel.c | 7 ---
1 file changed, 7 deletions(-)
diff --git a/server/cursor-channel.c b/server/cursor-channel.c
index 4c15582..bbaac34 100644
--- a/server/cursor-channel.c
+++ b/server/cursor-channel.c
@@ -45,13 +45,6 @@ typedef struct CursorItem {
G_STATIC_ASSERT(sizeof
CommonChannel does not need to know about RedWorker.
This reduce a bit dependencies between objects.
Signed-off-by: Frediano Ziglio
---
server/cursor-channel.c | 2 +-
server/dcc-encoders.c| 3 +--
server/display-channel.c | 5 ++---
server/red-worker.c | 12 ++--
server
agent_state->read_state = VDI_PORT_READ_STATE_READ_DATA;
> -agent_state->current_read_buf = vdi_port_read_buf_get(reds);
> +agent_state->current_read_buf =
> reds_get_vdi_port_read_buf(reds);
> spice_assert(agent_state->current_read_bu
>
> From: Jonathon Jongsma
>
> Also add reds_get_core_interface() accessor for external use.
> ---
> server/char-device.c| 32 ---
> server/inputs-channel.c | 7 ---
> server/main-channel.c | 13 +++--
> server/reds-private.h | 2 ++
> server/re
>
> From: Jonathon Jongsma
>
> ---
> server/reds.c | 13 +++--
> 1 file changed, 7 insertions(+), 6 deletions(-)
>
> diff --git a/server/reds.c b/server/reds.c
> index 6467c7e..7b8848a 100644
> --- a/server/reds.c
> +++ b/server/reds.c
> @@ -2265,7 +2265,7 @@ static void reds_handle_ss
> @@ -48,7 +48,7 @@ struct SpiceMigrateState {
> };
>
> /* main thread only */
> -void reds_handle_channel_event(int event, SpiceChannelEventInfo *info);
> +void reds_handle_channel_event(RedsState *reds, int event,
> SpiceChannelEventInfo *info);
>
> void reds_disable_mm_time(Re
>
> From: Jonathon Jongsma
>
> Various functions were still using the global 'reds' variable rather
> than the local argument of type RedsState
I think we decided to rename all variable/argument to reds at the end
so this patch is not doing the right thing.
> ---
> server/reds.c | 68
> +
>
> Hi
>
> On Thu, Feb 4, 2016 at 4:25 PM, Frediano Ziglio wrote:
> > Here you can have a race condition.
> > If red_dispatcher_async_complete wake up the Qemu thread before reset
> > gl_draw_async it could be possible Qemu will try to send another draw
> >
>
> Hi
>
> On Thu, Feb 4, 2016 at 4:29 PM, Frediano Ziglio wrote:
> >> +{
> >> +spice_return_if_fail(qxl != NULL);
> >> +spice_return_if_fail(qxl->st->gl_draw_async == NULL);
> >
> > Here you need to clo
>
> See the related protocol changes for message details.
>
> 2 new functions are exported:
> - spice_gl_scanout() to specify the current scanout. The server will
> then own the given fd. It will keep the most recent version to set
> upcoming clients scanout with the up to date version.
> - s
hed unless the source is destroyed.
Signed-off-by: Frediano Ziglio
---
server/tests/test-loop.c | 40 ++--
1 file changed, 30 insertions(+), 10 deletions(-)
diff --git a/server/tests/test-loop.c b/server/tests/test-loop.c
index 1c2f496..0bcc953 100644
--- a/ser
tivated before the event is dispatched the event will be
> dispatched unless the source is destroyed.
>
> Signed-off-by: Frediano Ziglio
Small note:
This tests make the "make check" fails, this is expected the current
code does not handle it. I had a small discussion with Chr
>
> On Mon, 2016-02-01 at 08:47 -0500, Frediano Ziglio wrote:
> > >
> > > From: Jonathon Jongsma
> > >
> > > Acked-by: Frediano Ziglio
> > > ---
> > > server/display-channel.c | 13 +++--
> > > server/display-ch
>
> On Fri, 2016-01-29 at 10:57 -0500, Frediano Ziglio wrote:
> > >
> > > On Fri, 2016-01-29 at 13:28 +, Frediano Ziglio wrote:
> > > > Remove global/static from red_record_qxl.c.
> > > > Defined a structure and use it to hold record state.
>
> When a new custom display mode is added, the current WDDM driver notifies
> a disconnection and reconnection of the virtual monitor to force Windows
> to update the display modes. This produces an ugly effect, keeping the
> screen black for up to some seconds and usually not repainting it
> af
reds->secure_listen_watch == NULL) {
> spice_warning("set fd handle failed");
> return -1;
Acked-by: Frediano Ziglio
Frediano
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel
_socket,
> SPICE_WATCH_EVENT_READ,
> - reds_accept, NULL);
> + reds_accept, reds);
> if (reds->listen_watch == NULL) {
> spice_warning("set fd handle failed");
&g
>
> On Tue, 2016-02-09 at 05:43 -0500, Frediano Ziglio wrote:
> > >
> > > From: Jonathon Jongsma
> > >
> > > ---
> > > server/reds.c | 13 +++--
> > > 1 file changed, 7 insertions(+), 6 deletions(-)
> > >
> >
> Hi, I answer inline
> El 10/02/16 a las 16:33, Frediano Ziglio escribió:
> > > When a new custom display mode is added, the current WDDM driver notifies
> >
>
> > > a disconnection and reconnection of the virtual monitor to force Windows
> >
>
e_wan_compression_t reds_get_zlib_glz_state(const RedsState *reds);
> > +SpiceCoreInterfaceInternal* reds_get_core_interface(RedsState *reds);
> >
> > #endif
> > diff --git a/server/smartcard.c b/server/smartcard.c
> > index 9b8f7c6..0be3235 100644
---
server/display-channel.c | 12 +---
server/display-channel.h | 2 --
server/reds-private.h| 1 +
server/reds.c| 22 +-
server/reds.h| 5 ++---
5 files changed, 21 insertions(+), 21 deletions(-)
diff --git a/server/display-channel.c b/
> Subject: [PATCH] Store 'renderers' as GArray in RedsState
>
This version change just that renderers are not stored in DisplayChannel.
Note that this (as your patch) share the array content causing theoretical
problems if the array is changed in Reds while accessed by DisplayChannel.
Frediano
From: Jonathon Jongsma
Since these are server-level variables, move them into RedsState.
However, num_active_workers was removed because:
- each dispatcher always has 1 active worker, so we can determine the
number of active workers by counting the dispatchers
- it was never actually set correc
From: Jonathon Jongsma
Requires changing a bunch of internal API to take MainDispatcher
arguments, etc. The main dispatcher object is now owned by RedsState,
since that is the object that previously created (initialized) it.
---
server/main-channel.c| 3 +-
server/main-dispatcher.c | 83 +++
301 - 400 of 10211 matches
Mail list logo