[Spice-devel] [PATCH spice-server v2 00/23] Use GLib memory allocation
Frediano Ziglio
fziglio at redhat.com
Wed Sep 20 07:50:53 UTC 2017
Reduce the usage of spice_new*/spice_malloc* allocations.
They were designed in a similar way to GLib ones.
Now that we use GLib make sense to remove them.
However the versions we support for GLib can use different memory
allocators so we have to match g_free with GLib allocations
and spice_* ones (which uses always malloc allocator) with free().
The final target is to remove spice_new*/spice_malloc*
functions/helper from spice-common.
This series finish changing all allocations from spice_XXX
to Glib memory functions (tests excluded).
You will notice some patches have changes only in allocation part
without any free. This means code has leaks, not a regression.
If you check the code there is still a spice_malloc_n call in
display-channel.c. This is required as the memory is freed by
spice-common with a normal free.
Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
Frediano Ziglio (23):
lz4-encoder: Use GLib memory functions
mjpeg: Use GLib memory functions
reds-stream: Use GLib memory functions
smartcard: Use GLib memory functions
stream: Use GLib memory functions
spicevmc: Use GLib memory functions
gstreamer-encoder: Use GLib memory functions
char-device: Use GLib memory functions
event-loop: Use GLib memory functions
dispatcher: Use GLib memory functions
Use GLib memory functions for SpiceChannelEventInfo
reds: Use GLib memory functions for link message
reds: Use GLib memory functions for ChannelSecurityOptions
dcc: Use GLib memory functions
display-channel: Use GLib memory functions
replay-qxl: Use GLib memory functions
worker: Use GLib memory functions
tree: Use GLib memory functions
inputs-channel: Use GLib memory functions
image-cache: Use GLib memory functions
pixmap-cache: Use GLib memory functions
parse-qxl: Use GLib memory functions
red-pipe-item: Use GLib memory functions
server/cache-item.tmpl.c | 6 ++---
server/char-device.c | 12 +++++-----
server/cursor-channel.c | 2 +-
server/dcc.c | 40 ++++++++++++++++----------------
server/dispatcher.c | 4 ++--
server/display-channel.c | 6 ++---
server/event-loop.c | 8 +++----
server/gstreamer-encoder.c | 16 ++++++-------
server/image-cache.c | 4 ++--
server/inputs-channel.c | 10 ++++----
server/lz4-encoder.c | 8 +++----
server/main-channel-client.c | 14 ++++++------
server/mjpeg-encoder.c | 28 +++++++++++------------
server/pixmap-cache.c | 6 ++---
server/red-channel-client.c | 8 +++----
server/red-channel.c | 2 +-
server/red-parse-qxl.c | 46 ++++++++++++++++++-------------------
server/red-pipe-item.c | 2 +-
server/red-replay-qxl.c | 48 +++++++++++++++++++--------------------
server/red-worker.c | 8 +++----
server/reds-stream.c | 39 ++++++++++++-------------------
server/reds.c | 14 ++++++------
server/smartcard-channel-client.c | 2 +-
server/smartcard.c | 14 ++++++------
server/spicevmc.c | 24 ++++++++++----------
server/stream.c | 8 +++----
server/tree.c | 8 +++----
27 files changed, 189 insertions(+), 198 deletions(-)
--
2.13.5
More information about the Spice-devel
mailing list