spice/server
Frediano Ziglio ef4b1bdb27 red-channel-client: Prevent too tight loop waiting for ACKs
RedChannelClient has a "handle-acks" feature.
If this feature is enabled, after the configured number of messages it
waits for an ACK from the client.
If is waiting for an ACK it stops sending messages.
However the write notification was not disabled, causing the loop event
to always trigger, as the socket in this case is ready to accept data.
Specifically red_channel_client_event is continuously called.
This is noticeable using slow network environments and having
some additional loop instrumentation.

Signed-off-by: Frediano Ziglio <fziglio@redhat.com>
Acked-by: Christophe Fergeau <cfergeau@redhat.com>
2017-09-19 10:50:32 +01:00
..
tests tests: Rename stat-main.c to test-stat.c 2017-09-18 13:50:26 +01:00
.gitignore gitignore: Reuse top-level gitignore 2016-12-14 19:09:21 +00:00
agent-msg-filter.c Fix minor inconsistencies with declaration and definition 2017-02-16 10:28:52 +00:00
agent-msg-filter.h Unify header guards 2017-03-30 18:17:20 +01:00
cache-item.h Unify header guards 2017-03-30 18:17:20 +01:00
cache-item.tmpl.c channel-client: Remove red_channel_client_pipe_add_tail_push 2017-09-18 17:46:37 +01:00
char-device.c char-device: Allows to handle port events from any char device 2017-08-23 16:11:49 +01:00
char-device.h char-device: Allows to handle port events from any char device 2017-08-23 16:11:49 +01:00
common-graphics-channel.c common-graphics-channel: Move "qxl" property to DisplayChannel 2017-09-07 06:42:01 +01:00
common-graphics-channel.h common-graphics-channel: Move "qxl" property to DisplayChannel 2017-09-07 06:42:01 +01:00
cursor-channel-client.c channel: Move RedChannel::on_disconnect to RedChannelClient 2017-08-31 15:51:57 +02:00
cursor-channel-client.h channel: Move RedChannel::on_disconnect to RedChannelClient 2017-08-31 15:51:57 +02:00
cursor-channel.c channel: Call red_channel_disconnect_if_pending_send() from red_channel_wait_all_sent() 2017-09-12 18:19:33 +02:00
cursor-channel.h cursor-channel: Remove dependency from QXL 2017-09-07 06:41:49 +01:00
dcc-private.h Unify header guards 2017-03-30 18:17:20 +01:00
dcc-send.c common-graphics-channel: Move "qxl" property to DisplayChannel 2017-09-07 06:42:01 +01:00
dcc.c channel-client: Remove red_channel_client_pipe_add_tail_push 2017-09-18 17:46:37 +01:00
dcc.h dcc: Make dcc_stop static 2017-09-07 12:15:31 +01:00
demarshallers.h Unify header guards 2017-03-30 18:17:20 +01:00
dispatcher.c Dispatcher: remove async_done callback 2017-09-07 10:22:15 -05:00
dispatcher.h Add documentation for Dispatcher 2017-09-07 11:12:45 -05:00
display-channel-private.h common-graphics-channel: Move "qxl" property to DisplayChannel 2017-09-07 06:42:01 +01:00
display-channel.c common-graphics-channel: Move "qxl" property to DisplayChannel 2017-09-07 06:42:01 +01:00
display-channel.h display-channel: Make some declarations private 2017-09-02 08:27:26 +01:00
display-limits.h Unify header guards 2017-03-30 18:17:20 +01:00
event-loop.c Remove core_public and core_interface_adapter globals usage 2016-11-15 16:49:09 +00:00
glib-compat.h Unify header guards 2017-03-30 18:17:20 +01:00
glz-encode-match.tmpl.c server: rename _tmpl files 2015-11-26 13:33:36 +00:00
glz-encode.tmpl.c Fix -Werror=format with DEBUG_ENCODE 2016-07-01 14:00:37 +02:00
glz-encoder-dict.c Make various functions static 2017-04-05 12:39:20 +02:00
glz-encoder-dict.h Make various functions static 2017-04-05 12:39:20 +02:00
glz-encoder-priv.h Unify header guards 2017-03-30 18:17:20 +01:00
glz-encoder.c Use bool rather than int return values when appropriate 2017-03-09 18:39:29 +01:00
glz-encoder.h Unify header guards 2017-03-30 18:17:20 +01:00
gstreamer-encoder.c gstreamer: Check if ORC library can work 2017-08-30 15:59:46 +01:00
image-cache.c Use bool rather than int return values when appropriate 2017-03-09 18:39:29 +01:00
image-cache.h Unify header guards 2017-03-30 18:17:20 +01:00
image-encoders.c Use bool rather than int return values when appropriate 2017-03-09 18:39:29 +01:00
image-encoders.h Unify header guards 2017-03-30 18:17:20 +01:00
inputs-channel-client.c channel: Move RedChannel::on_disconnect to RedChannelClient 2017-08-31 15:51:57 +02:00
inputs-channel-client.h Unify header guards 2017-03-30 18:17:20 +01:00
inputs-channel.c Use new red_channel_pipes_add instead of red_channel_pipes_new_add 2017-09-06 11:39:03 +01:00
inputs-channel.h channel: Move RedChannel::on_disconnect to RedChannelClient 2017-08-31 15:51:57 +02:00
jpeg-encoder.c Sort include order in source files 2016-12-16 08:16:21 +00:00
jpeg-encoder.h Unify header guards 2017-03-30 18:17:20 +01:00
lz4-encoder.c log: remove not widely used logging domain usage 2017-06-16 07:53:00 +01:00
lz4-encoder.h Unify header guards 2017-03-30 18:17:20 +01:00
main-channel-client.c Use new red_channel_pipes_add instead of red_channel_pipes_new_add 2017-09-06 11:39:03 +01:00
main-channel-client.h Use new red_channel_pipes_add instead of red_channel_pipes_new_add 2017-09-06 11:39:03 +01:00
main-channel.c Use new red_channel_pipes_add instead of red_channel_pipes_new_add 2017-09-06 11:39:03 +01:00
main-channel.h main-channel: Fix multimedia time argument type 2017-08-29 16:37:21 +01:00
main-dispatcher.c MainDispatcher: use correct argument type 2017-09-07 10:22:15 -05:00
main-dispatcher.h Unify header guards 2017-03-30 18:17:20 +01:00
Makefile.am gstreamer: Check if ORC library can work 2017-08-30 15:59:46 +01:00
memslot.c Add a red_memslot_info_destroy function 2016-11-25 14:36:40 +00:00
memslot.h Add a red_memslot_info_destroy function 2016-11-25 14:36:40 +00:00
migration-protocol.h Unify header guards 2017-03-30 18:17:20 +01:00
mjpeg-encoder.c mjpeg: Reuse realloc instead of implementing it manually 2017-09-11 21:05:50 +01:00
net-utils.c build-sys: Add configure check for TCP_KEEPIDLE 2017-03-31 12:22:52 +02:00
net-utils.h reds-stream: Introduce reds_stream_get_no_delay() helper 2017-03-31 12:22:52 +02:00
pixmap-cache.c Use bool rather than int return values when appropriate 2017-03-09 18:39:29 +01:00
pixmap-cache.h Unify header guards 2017-03-30 18:17:20 +01:00
red-channel-capabilities.c Initialize earlier GLib type system if necessary 2017-03-30 18:05:30 +01:00
red-channel-capabilities.h Unify header guards 2017-03-30 18:17:20 +01:00
red-channel-client.c red-channel-client: Prevent too tight loop waiting for ACKs 2017-09-19 10:50:32 +01:00
red-channel-client.h channel-client: Remove red_channel_client_pipe_add_tail_push 2017-09-18 17:46:37 +01:00
red-channel.c channel: Fix leak in red_channel_remove_client 2017-09-18 16:30:39 +01:00
red-channel.h channel: Remove no longer used red_channel_apply_clients{_data,} 2017-09-12 18:19:33 +02:00
red-client.c red-client: Prevent RedChannelClient creation when the RedClient is being destroyed 2017-08-31 18:05:26 +01:00
red-client.h Make various functions static 2017-04-05 12:39:20 +02:00
red-common.h Remove iterator from list iteration macros 2017-08-21 12:54:47 +01:00
red-parse-qxl.c red-parse-qxl: s/true/false 2017-05-02 11:30:47 +02:00
red-parse-qxl.h red-parse-qxl: Change int/1/0 to bool/true/false 2017-05-02 11:30:43 +02:00
red-pipe-item.c MainChannel: remove another init_send_data arg 2016-12-20 16:11:13 +00:00
red-pipe-item.h Unify header guards 2017-03-30 18:17:20 +01:00
red-qxl.c red-qxl: Reuse red_qxl_async_complete 2017-09-18 17:49:25 +01:00
red-qxl.h red-qxl: Remove AsyncCommand 2017-09-18 17:49:25 +01:00
red-record-qxl.c log: Do not print function name twice during logging 2017-06-18 09:53:27 +01:00
red-record-qxl.h Unify header guards 2017-03-30 18:17:20 +01:00
red-replay-qxl.c red-qxl: Move private declarations to red-worker.h 2017-09-08 16:51:25 +01:00
red-worker.c red-qxl: Remove AsyncCommand 2017-09-18 17:49:25 +01:00
red-worker.h red-qxl: Remove AsyncCommand 2017-09-18 17:49:25 +01:00
reds-private.h reds: use SpiceMouseMode for RedsState::mouse_mode 2017-08-23 22:16:05 +01:00
reds-stream.c reds-stream: Allows to change core interface 2017-09-07 15:02:11 +01:00
reds-stream.h reds-stream: Remove shutdown field 2017-09-11 21:03:25 +01:00
reds.c reds: Fix leaks if reds_init_client_ssl_connection fails 2017-09-12 11:58:40 +01:00
reds.h Avoid using global variable for channel IDs 2017-09-02 08:20:56 +01:00
smartcard-channel-client.c channel: Move RedChannel::on_disconnect to RedChannelClient 2017-08-31 15:51:57 +02:00
smartcard-channel-client.h channel: Move RedChannel::on_disconnect to RedChannelClient 2017-08-31 15:51:57 +02:00
smartcard.c smartcard: Fix typo in comment 2017-09-18 10:45:28 +01:00
smartcard.h Unify header guards 2017-03-30 18:17:20 +01:00
sound.c channel: Allow NULL RedChannelClient::on_disconnect() 2017-08-31 15:51:57 +02:00
sound.h Change playback_compression to bool type 2017-04-07 15:08:43 -05:00
spice-audio.h Split spice.h 2014-11-27 14:27:18 +01:00
spice-bitmap-utils.c Attempt to create bitmap debug directory 2017-04-07 16:45:54 +01:00
spice-bitmap-utils.h Unify header guards 2017-03-30 18:17:20 +01:00
spice-bitmap-utils.tmpl.c server: rename _tmpl files 2015-11-26 13:33:36 +00:00
spice-char.h Constify spice_server_char_device_recognized_subtypes 2016-06-29 08:09:03 +01:00
spice-core.h Unify header guards 2017-03-30 18:17:20 +01:00
spice-experimental.h Unify header guards 2017-03-30 18:17:20 +01:00
spice-input.h Split spice.h 2014-11-27 14:27:18 +01:00
spice-migration.h server: Use SPICE_GNUC_DEPRECATED to avoid a dependency on glib.h 2016-08-12 09:47:40 +01:00
spice-qxl.h spice-qxl: Add version information 2017-09-07 16:13:49 +01:00
spice-replay.h Unify header guards 2017-03-30 18:17:20 +01:00
spice-server-enums.tmpl.c syntax-check: Use templates for glib-mkenums 2016-11-14 17:45:32 +00:00
spice-server-enums.tmpl.h syntax-check: Use templates for glib-mkenums 2016-11-14 17:45:32 +00:00
spice-server.h Convert RedChannelClient hierarchy to GObject 2016-10-07 14:46:37 -05:00
spice-server.syms streaming: Let the administrator pick the video encoder and codec 2016-06-14 17:04:40 +02:00
spice-version.h.in build-sys: generate spice-version.h 2014-11-27 14:27:33 +01:00
spice.h Make red-replay-qxl.h a public header 2016-11-10 06:37:15 +00:00
spicevmc.c Avoid using global variable for channel IDs 2017-09-02 08:20:56 +01:00
stat-file.c stat-file: Avoid compiler warning 2017-02-03 18:13:22 +00:00
stat-file.h Unify header guards 2017-03-30 18:17:20 +01:00
stat.h Unify header guards 2017-03-30 18:17:20 +01:00
stream.c stream: Simplify FOREACH_STREAMS macro 2017-09-13 11:24:08 +01:00
stream.h Unify header guards 2017-03-30 18:17:20 +01:00
sw-canvas.c remove sw-canvas.h 2016-05-09 12:45:37 +01:00
tree.c DisplayChannel: start documenting drawable tree 2017-03-09 12:01:35 -06:00
tree.h Unify header guards 2017-03-30 18:17:20 +01:00
utils.c worker: move dcc_add_surface_area_image 2015-11-23 13:50:44 +00:00
utils.h Unify header guards 2017-03-30 18:17:20 +01:00
video-encoder.h Unify header guards 2017-03-30 18:17:20 +01:00
zlib-encoder.c Sort include order in source files 2016-12-16 08:16:21 +00:00
zlib-encoder.h Unify header guards 2017-03-30 18:17:20 +01:00