Replaced allocations done using malloc(), calloc(), and realloc() to their equivalent functions in GLib.
Memory that is allocated locally and freed when the function exits are annotated g_autofree so that the deallocation is automatically handled. Subsequently, I could remove a bunch of free() calls. Also, tried to keep the semantics of the code as is, but when the allocation is a small one, or a crucial one, I replaced the NULL-checking mechanisms with glib's functions that crash on error. This is related to a patch that I had submitted as a part of a previous series. The previous patch had some errors. Also, I thought that it's better to split the patch into smaller pieces. The previous patch can be found here: https://lists.gnu.org/archive/html/qemu-devel/2021-03/msg05153.html Mahmoud Mandour (8): virtiofsd: Changed allocations of fuse_req to GLib functions virtiofds: Changed allocations of iovec to GLib's functions virtiofsd: Changed fuse_pollhandle allocation to GLib's functions virtiofsd: Changed allocations of fuse_session to GLib's functions virtiofsd: Changed allocation of lo_map_elems to GLib's functions virtiofsd: Changed allocations of fv_VuDev & its internals to GLib functions virtiofsd/passthrough_ll.c: Changed local allocations to GLib functions virtiofsd/fuse_virtio.c: Changed allocations of locals to GLib tools/virtiofsd/fuse_lowlevel.c | 43 +++++++++++--------------------- tools/virtiofsd/fuse_virtio.c | 34 ++++++++----------------- tools/virtiofsd/passthrough_ll.c | 21 ++++++---------- 3 files changed, 34 insertions(+), 64 deletions(-) -- 2.25.1