spice/server
Jonathon Jongsma a78a7d2510 RedChannelClient: store pipe items in a GQueue
Instead of using a Ring (and having a ring item link in every pipe
item), store them in a GQueue. This also necesitated changing
RedCharDeviceVDIPort->priv->read_bufs to a GList as well.

Also Optimise client pipe by passing pipe position instead of data.
This avoids having the search the data scanning all the queue changing
the order of these operations from O(n) to O(1).

Signed-off-by: Frediano Ziglio <fziglio@redhat.com>
2016-09-19 07:47:05 -05:00
..
tests tests: Check setting of agent properties 2016-09-07 14:18:50 +02:00
.gitignore Update the .gitignore files for the new manual, 2015-10-16 15:48:23 -05:00
agent-msg-filter.c agent-filter: Use enum as return value 2016-09-16 11:54:56 +01:00
agent-msg-filter.h agent-filter: Use enum as return value 2016-09-16 11:54:56 +01:00
cache-item.h Move RedCacheItem size field inside cache_data union 2016-05-25 09:53:57 +01:00
cache-item.tmpl.c Use RED_CHANNEL_CLIENT() macro for casting 2016-09-08 11:41:57 +01:00
char-device.c char-device: fix mismatch of client tokens 2016-06-07 18:06:31 +01:00
char-device.h Remove obsolete comment 2016-06-01 16:21:07 +01:00
cursor-channel-client.c Add DisplayChannelClientPrivate and CursorChannelPrivate structs 2016-09-08 09:40:15 +01:00
cursor-channel-client.h Move CursorChannelClient to separate file 2016-09-08 09:38:04 +01:00
cursor-channel.c RedChannelClient: store pipe items in a GQueue 2016-09-19 07:47:05 -05:00
cursor-channel.h Move CursorChannelClient to separate file 2016-09-08 09:38:04 +01:00
dcc-private.h Add DisplayChannelClientPrivate and CursorChannelPrivate structs 2016-09-08 09:40:15 +01:00
dcc-send.c RedChannelClient: store pipe items in a GQueue 2016-09-19 07:47:05 -05:00
dcc.c RedChannelClient: store pipe items in a GQueue 2016-09-19 07:47:05 -05:00
dcc.h RedChannelClient: store pipe items in a GQueue 2016-09-19 07:47:05 -05:00
demarshallers.h Make sure all headers are independent 2016-05-18 00:24:37 +01:00
dispatcher.c Fix compiling with defined DEBUG_DISPATCHER 2016-07-01 13:59:36 +02:00
dispatcher.h unify header include order 2016-05-12 11:02:54 +01:00
display-channel.c RedChannelClient: store pipe items in a GQueue 2016-09-19 07:47:05 -05:00
display-channel.h Rename display_channel_set_monitors_config_to_primary() 2016-09-16 13:40:09 -05:00
display-limits.h worker: start a DisplayChannelClient unit 2015-11-19 12:43:02 +00:00
event-loop.c Constify event_loop_core 2016-06-29 08:08:54 +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 remove glz_encoder_config.h 2015-12-04 11:57:18 +00:00
glz-encoder-dict.h remove glz_encoder_config.h 2015-12-04 11:57:18 +00:00
glz-encoder-priv.h Make sure all headers are independent 2016-05-18 00:24:37 +01:00
glz-encoder.c server: rename files 2015-12-03 23:54:32 +00:00
glz-encoder.h unify header include order 2016-05-12 11:02:54 +01:00
gstreamer-encoder.c gstreamer: Use a dummy format to make sure format is always defined. 2016-08-11 14:47:25 +01:00
image-cache.c Make some function static 2016-05-25 15:41:58 +01:00
image-cache.h Limit direct access to DisplayChannelClient 2016-08-09 10:22:46 -05:00
image-encoders.c Make glz_dictionary_list a GList 2016-09-15 16:06:34 +01:00
image-encoders.h Use proper types in compress_send_data_t 2016-06-20 21:51:06 +01:00
inputs-channel-client.c Use RED_CHANNEL_CLIENT() macro for casting 2016-09-08 11:41:57 +01:00
inputs-channel-client.h Move InputsChannelClient to a separate file 2016-05-24 14:56:41 -05:00
inputs-channel.c Remove global key_modifiers_timer variable 2016-09-12 13:18:40 +01:00
inputs-channel.h Avoid getting channel from client 2016-05-27 18:02:29 +01:00
jpeg-encoder.c server: rename files 2015-12-03 23:54:32 +00:00
jpeg-encoder.h server: rename files 2015-12-03 23:54:32 +00:00
lz4-encoder.c Move lz4-encoder.[ch] to conditional block in Makefile.am 2016-06-16 11:16:01 -03:00
lz4-encoder.h server: rename files 2015-12-03 23:54:32 +00:00
main-channel-client.c Use RED_CHANNEL_CLIENT() macro for casting 2016-09-08 11:41:57 +01:00
main-channel-client.h Use RED_CHANNEL_CLIENT() macro for casting 2016-09-08 11:41:57 +01:00
main-channel.c Use RED_CHANNEL_CLIENT() macro for casting 2016-09-08 11:41:57 +01:00
main-channel.h Move MainChannelClient to separate file 2016-05-20 09:16:47 -05:00
main-dispatcher.c Convert Dispatcher and MainDispatcher to GObjects 2016-03-30 17:19:24 +01:00
main-dispatcher.h unify header include order 2016-05-12 11:02:54 +01:00
Makefile.am Add RedChannelClientPrivate struct 2016-09-08 09:40:15 +01:00
memslot.c memslot: do not crash if guest provide a wrong address 2016-02-18 10:36:26 +00:00
memslot.h unify header include order 2016-05-12 11:02:54 +01:00
migration-protocol.h Fix 'freezed' typo 2016-09-09 14:56:31 +01:00
mjpeg-encoder.c streaming: Avoid copying the input frame in the GStreamer encoder 2016-06-14 17:04:40 +02:00
pixmap-cache.c Fix 'freezed' typo 2016-09-09 14:56:31 +01:00
pixmap-cache.h Fix 'freezed' typo 2016-09-09 14:56:31 +01:00
red-channel-client-private.h RedChannelClient: store pipe items in a GQueue 2016-09-19 07:47:05 -05:00
red-channel-client.c RedChannelClient: store pipe items in a GQueue 2016-09-19 07:47:05 -05:00
red-channel-client.h RedChannelClient: store pipe items in a GQueue 2016-09-19 07:47:05 -05:00
red-channel.c Move RedChannelClient to separate file 2016-09-08 09:37:59 +01:00
red-channel.h Move RedChannelClient to separate file 2016-09-08 09:37:59 +01:00
red-common.h Constify event_loop_core 2016-06-29 08:08:54 +01:00
red-parse-qxl.c factor out red_validate_surface function to validate surface parameters 2016-06-08 09:59:31 +01:00
red-parse-qxl.h factor out red_validate_surface function to validate surface parameters 2016-06-08 09:59:31 +01:00
red-pipe-item.c RedChannelClient: store pipe items in a GQueue 2016-09-19 07:47:05 -05:00
red-pipe-item.h RedChannelClient: store pipe items in a GQueue 2016-09-19 07:47:05 -05:00
red-qxl.c Add red_channel_client_get_channel() 2016-08-30 16:53:29 -05:00
red-qxl.h streaming: Let the administrator pick the video encoder and codec 2016-06-14 17:04:40 +02:00
red-record-qxl.c Miscellaneous header changes 2016-08-09 10:22:46 -05:00
red-record-qxl.h record: Use proper type for timestamp 2016-06-08 15:27:48 +01:00
red-replay-qxl.c replay: Rename eof to error 2016-09-16 12:06:19 +01:00
red-replay-qxl.h unify header include order 2016-05-12 11:02:54 +01:00
red-worker.c Rename display_channel_set_monitors_config_to_primary() 2016-09-16 13:40:09 -05:00
red-worker.h Move RedChannelClient to separate file 2016-09-08 09:37:59 +01:00
reds-private.h Replace a couple Rings with GList 2016-09-16 08:49:59 +01:00
reds-stream.c use #include<> style for spice-common header inclusions. 2016-05-09 12:45:27 +01:00
reds-stream.h unify header include order 2016-05-12 11:02:54 +01:00
reds.c RedChannelClient: store pipe items in a GQueue 2016-09-19 07:47:05 -05:00
reds.h streaming: Let the administrator pick the video encoder and codec 2016-06-14 17:04:40 +02:00
smartcard.c Use RED_CHANNEL_CLIENT() macro for casting 2016-09-08 11:41:57 +01:00
smartcard.h Make sure all headers are independent 2016-05-18 00:24:37 +01:00
sound.c Add RedChannelClientPrivate struct 2016-09-08 09:40:15 +01:00
sound.h Make sure all headers are independent 2016-05-18 00:24:37 +01:00
spice-audio.h Split spice.h 2014-11-27 14:27:18 +01:00
spice-bitmap-utils.c do not compile dump_bitmap if not necessary 2016-03-24 13:11:46 +00:00
spice-bitmap-utils.h server: misc header cleanups 2015-12-09 22:17:51 +00: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 Split spice.h 2014-11-27 14:27:18 +01:00
spice-experimental.h Add missing license headers 2015-10-19 14:25:36 +02: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 Add new spice-gl stubs API 2016-02-09 14:01:12 +00:00
spice-server.h server: Use SPICE_GNUC_DEPRECATED to avoid a dependency on glib.h 2016-08-12 09:47:40 +01: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 Split spice.h 2014-11-27 14:27:18 +01:00
spicevmc.c Move RedChannelClient to separate file 2016-09-08 09:37:59 +01:00
stat.h Make sure all headers are independent 2016-05-18 00:24:37 +01:00
stream.c RedChannelClient: store pipe items in a GQueue 2016-09-19 07:47:05 -05:00
stream.h Limit direct access to DisplayChannelClient 2016-08-09 10:22:46 -05:00
sw-canvas.c remove sw-canvas.h 2016-05-09 12:45:37 +01:00
tree.c Get code more typesafe 2016-05-21 04:14:13 +01:00
tree.h Introduce SPICE_UPCAST macro 2016-05-24 18:00:51 +01:00
utils.c worker: move dcc_add_surface_area_image 2015-11-23 13:50:44 +00:00
utils.h server: Add time constants to go with spice_get_monotonic_time_ms() 2015-12-14 11:24:47 +00:00
video-encoder.h Make video-encoder.h self independent 2016-06-16 14:14:04 +01:00
zlib-encoder.c server: rename files 2015-12-03 23:54:32 +00:00
zlib-encoder.h Make sure all headers are independent 2016-05-18 00:24:37 +01:00