spice/server
Yonit Halperin 16b38ec84e red_worker.c: fix not sending all pending messages when the device is stopped
red_wait_outgoing_item only waits till the currently outgoing msg is
completely sent.
red_wait_outgoing_items does the same for multi-clients. handle_dev_stop erroneously called
red_wait_outgoing_items, instead of waiting till all the items in the
pipes are sent.
This waiting is necessary because after drawables are sent to the client, we release them from the
device. The device might have been stopped due to moving to the non-live
phase of migration. Accessing the device memory during this phase can lead
to inconsistencies.

Also, MSG_MIGRATE should be the last message sent to the client, before
MSG_MIGRATE_DATA. Due to this bug, msgs were marshalled and sent after
handle_dev_stop and after handle_dev_display_migrate which sometimes led
to the release of surfaces, and inserting MSG_DISPLAY_DESTROY_SURFACE
after MSG_MIGRATE.

This patch also removes the calls to red_wait_outgoing_items, from
dev_flush_surfaces. They were unnecessary.
2012-11-26 11:08:11 -05:00
..
tests Revert "server: add websockets support via libwebsockets" 2012-11-04 13:48:42 +02:00
.gitignore gitignore: add generated_*, vim temps, pyc 2010-11-08 16:06:55 +02:00
agent-msg-filter.c server: Filter VD_AGENT_MONITORS_CONFIG 2012-09-13 14:47:32 +03:00
agent-msg-filter.h server: Filter VD_AGENT_MONITORS_CONFIG 2012-09-13 14:47:32 +03:00
char_device.c char_device.c: when the state is destroyed, also free the buffer that is being written to the device 2012-11-26 11:08:10 -05:00
char_device.h char_device.c: add ref count for write-to-device buffers 2012-11-26 11:08:08 -05:00
demarshallers.h Remove trailing blank lines 2012-01-13 18:11:59 +02:00
dispatcher.c Don't do arithmetic on void * type, use uint8_t instead 2012-04-25 09:40:18 +01:00
dispatcher.h server/dispatcher: add dispatcher_register_async_done_callback 2011-11-08 16:22:21 +02:00
glz_encode_match_tmpl.c add #include <config.h> to all source files 2011-05-03 14:44:10 +02:00
glz_encode_tmpl.c Remove trailing whitespace from end of lines 2012-01-13 18:11:59 +02:00
glz_encoder_config.h Fix multiple printf format problems 2012-04-25 09:42:11 +01:00
glz_encoder_dictionary_protected.h server: s/max_encdoers/max_encoders/ 2012-08-30 17:08:09 +03:00
glz_encoder_dictionary.c server: s/max_encdoers/max_encoders/ 2012-08-30 17:08:09 +03:00
glz_encoder_dictionary.h Remove trailing blank lines 2012-01-13 18:11:59 +02:00
glz_encoder.c Remove trailing blank lines 2012-01-13 18:11:59 +02:00
glz_encoder.h Use the spice-common submodule 2012-03-25 18:59:10 +02:00
inputs_channel.c inputs_channel: Fix wrong handling of key up/down on big endian 2012-10-18 17:44:23 +02:00
inputs_channel.h Remove trailing blank lines 2012-01-13 18:11:59 +02:00
jpeg_encoder.c Use the spice-common logging functions 2012-03-25 19:00:00 +02:00
jpeg_encoder.h Remove trailing whitespace from end of lines 2012-01-13 18:11:59 +02:00
main_channel.c enable seamless migration and set migration protocol version 2012-08-27 09:13:14 +03:00
main_channel.h main: restore state from migration data 2012-08-27 09:13:08 +03:00
main_dispatcher.c seamless migration: migration completion on the destination side 2012-08-27 09:13:00 +03:00
main_dispatcher.h seamless migration: migration completion on the destination side 2012-08-27 09:13:00 +03:00
Makefile.am Revert "server: add websockets support via libwebsockets" 2012-11-04 13:48:42 +02:00
migration_protocol.h enable seamless migration and set migration protocol version 2012-08-27 09:13:14 +03:00
mjpeg_encoder.c server/mjpeg_encoder: realloc encoder->row, when a wider frame is given 2012-05-16 08:55:11 +03:00
mjpeg_encoder.h server/mjpeg_encoder: Fix memory leak for the inital output buffer given for each frame 2012-05-10 14:01:04 +03:00
red_bitmap_utils.h Remove trailing blank lines 2012-01-13 18:11:59 +02:00
red_channel.c server: freezed->froze, missing whitespace after declarations 2012-08-30 17:08:09 +03:00
red_channel.h red_channel: remove unused migrate flag from RedChannel 2012-08-27 09:13:12 +03:00
red_client_cache.h Use the spice-common logging functions 2012-03-25 19:00:00 +02:00
red_client_shared_cache.h Use the spice-common logging functions 2012-03-25 19:00:00 +02:00
red_common.h server/red_parse_qxl: add bitmap consistency check 2012-09-03 19:27:22 +03:00
red_dispatcher.c server: red_dispatcher: check major/minor of qxl for client_monitors_config 2012-10-24 12:10:27 +02:00
red_dispatcher.h server/red_dispatcher: client_monitors_config support 2012-09-13 14:47:31 +03:00
red_memslots.c Add support for QXLComposite to spice server 2012-08-24 13:44:42 -04:00
red_memslots.h server: allow failure in getvirt 2012-04-05 18:28:49 +03:00
red_parse_qxl.c server/red_parse_qxl: fix bitmap_consistent again 2012-09-05 23:00:55 +03:00
red_parse_qxl.h Add support for QXLComposite to spice server 2012-08-24 13:44:42 -04:00
red_tunnel_worker.c server/red_tunnel_worker: remove unneeded expect_migrate_mark 2012-08-30 17:08:09 +03:00
red_tunnel_worker.h server: Unset executable bit of red_tunnel_worker.h 2011-05-05 20:04:49 +03:00
red_worker.c red_worker.c: fix not sending all pending messages when the device is stopped 2012-11-26 11:08:11 -05:00
red_worker.h server: add monitors_config support 2012-07-22 13:50:49 +03:00
reds_gl_canvas.c Use the spice-common submodule 2012-03-25 18:59:10 +02:00
reds_gl_canvas.h Use the spice-common submodule 2012-03-25 18:59:10 +02:00
reds_sw_canvas.c Use the spice-common submodule 2012-03-25 18:59:10 +02:00
reds_sw_canvas.h Use the spice-common submodule 2012-03-25 18:59:10 +02:00
reds-private.h Revert "server: add websockets support via libwebsockets" 2012-11-04 13:48:42 +02:00
reds.c reds.c: fix calls to spice_marshaller_add_ref with ptr to memory that might be released before sending 2012-11-26 11:08:10 -05:00
reds.h Revert "server: add websockets support via libwebsockets" 2012-11-04 13:48:42 +02:00
smartcard.c smartcard.c: avoid marshalling migration data with reference to a memory that might be released before send has completed 2012-11-26 11:08:10 -05:00
smartcard.h smartcard: use SpiceCharDeviceState for managing reading from the device 2012-07-03 14:13:42 +03:00
snd_worker.c snd channel: fix accessing freed memory 2012-10-11 20:23:47 +02:00
snd_worker.h Remove trailing blank lines 2012-01-13 18:11:59 +02:00
spice-experimental.h Remove trailing blank lines 2012-01-13 18:11:59 +02:00
spice-server.syms Revert "server: add websockets support via libwebsockets" 2012-11-04 13:48:42 +02:00
spice.h Revert "server: add websockets support via libwebsockets" 2012-11-04 13:48:42 +02:00
spicevmc.c red_channel: remove unused migrate flag from RedChannel 2012-08-27 09:13:12 +03:00
stat.h Remove trailing blank lines 2012-01-13 18:11:59 +02:00
zlib_encoder.c Use the spice-common logging functions 2012-03-25 19:00:00 +02:00
zlib_encoder.h applying zlib compression over glz on WAN connection 2010-06-21 15:05:37 +02:00