From: Paolo Bonzini <pbonz...@redhat.com> The malloc vtable is not supported anymore in glib, because it broke when constructors called g_malloc. Remove tracing of g_malloc, g_realloc and g_free calls.
Note that, for systemtap users, glib also provides tracepoints glib.mem_alloc, glib.mem_free, glib.mem_realloc, glib.slice_alloc and glib.slice_free. Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> Reviewed-by: Alberto Garcia <be...@igalia.com> Message-id: 1442417924-25831-1-git-send-email-pbonz...@redhat.com Signed-off-by: Stefan Hajnoczi <stefa...@redhat.com> --- trace-events | 3 --- vl.c | 27 --------------------------- 2 files changed, 30 deletions(-) diff --git a/trace-events b/trace-events index 6790292..b813ae4 100644 --- a/trace-events +++ b/trace-events @@ -603,9 +603,6 @@ scsi_request_sense(int target, int lun, int tag) "target %d lun %d tag %d" vm_state_notify(int running, int reason) "running %d reason %d" load_file(const char *name, const char *path) "name %s location %s" runstate_set(int new_state) "new state %d" -g_malloc(size_t size, void *ptr) "size %zu ptr %p" -g_realloc(void *ptr, size_t size, void *newptr) "ptr %p size %zu newptr %p" -g_free(void *ptr) "ptr %p" system_wakeup_request(int reason) "reason=%d" qemu_system_shutdown_request(void) "" qemu_system_powerdown_request(void) "" diff --git a/vl.c b/vl.c index f2bd8d2..ea9e0e6 100644 --- a/vl.c +++ b/vl.c @@ -2703,26 +2703,6 @@ static const QEMUOption *lookup_opt(int argc, char **argv, return popt; } -static gpointer malloc_and_trace(gsize n_bytes) -{ - void *ptr = malloc(n_bytes); - trace_g_malloc(n_bytes, ptr); - return ptr; -} - -static gpointer realloc_and_trace(gpointer mem, gsize n_bytes) -{ - void *ptr = realloc(mem, n_bytes); - trace_g_realloc(mem, n_bytes, ptr); - return ptr; -} - -static void free_and_trace(gpointer mem) -{ - trace_g_free(mem); - free(mem); -} - static int machine_set_property(void *opaque, const char *name, const char *value, Error **errp) @@ -2950,11 +2930,6 @@ int main(int argc, char **argv, char **envp) bool userconfig = true; const char *log_mask = NULL; const char *log_file = NULL; - GMemVTable mem_trace = { - .malloc = malloc_and_trace, - .realloc = realloc_and_trace, - .free = free_and_trace, - }; const char *trace_events = NULL; const char *trace_file = NULL; ram_addr_t maxram_size; @@ -2970,8 +2945,6 @@ int main(int argc, char **argv, char **envp) error_set_progname(argv[0]); qemu_init_exec_dir(argv[0]); - g_mem_set_vtable(&mem_trace); - module_call_init(MODULE_INIT_QOM); qemu_add_opts(&qemu_drive_opts); -- 2.4.3