mirror of https://gitee.com/openkylin/qemu.git
trace: remove malloc tracing
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 <pbonzini@redhat.com> Reviewed-by: Alberto Garcia <berto@igalia.com> Message-id: 1442417924-25831-1-git-send-email-pbonzini@redhat.com Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
This commit is contained in:
parent
2e4ccbbc64
commit
98cf48f60a
|
@ -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"
|
vm_state_notify(int running, int reason) "running %d reason %d"
|
||||||
load_file(const char *name, const char *path) "name %s location %s"
|
load_file(const char *name, const char *path) "name %s location %s"
|
||||||
runstate_set(int new_state) "new state %d"
|
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"
|
system_wakeup_request(int reason) "reason=%d"
|
||||||
qemu_system_shutdown_request(void) ""
|
qemu_system_shutdown_request(void) ""
|
||||||
qemu_system_powerdown_request(void) ""
|
qemu_system_powerdown_request(void) ""
|
||||||
|
|
27
vl.c
27
vl.c
|
@ -2703,26 +2703,6 @@ static const QEMUOption *lookup_opt(int argc, char **argv,
|
||||||
return popt;
|
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,
|
static int machine_set_property(void *opaque,
|
||||||
const char *name, const char *value,
|
const char *name, const char *value,
|
||||||
Error **errp)
|
Error **errp)
|
||||||
|
@ -2950,11 +2930,6 @@ int main(int argc, char **argv, char **envp)
|
||||||
bool userconfig = true;
|
bool userconfig = true;
|
||||||
const char *log_mask = NULL;
|
const char *log_mask = NULL;
|
||||||
const char *log_file = 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_events = NULL;
|
||||||
const char *trace_file = NULL;
|
const char *trace_file = NULL;
|
||||||
ram_addr_t maxram_size;
|
ram_addr_t maxram_size;
|
||||||
|
@ -2970,8 +2945,6 @@ int main(int argc, char **argv, char **envp)
|
||||||
error_set_progname(argv[0]);
|
error_set_progname(argv[0]);
|
||||||
qemu_init_exec_dir(argv[0]);
|
qemu_init_exec_dir(argv[0]);
|
||||||
|
|
||||||
g_mem_set_vtable(&mem_trace);
|
|
||||||
|
|
||||||
module_call_init(MODULE_INIT_QOM);
|
module_call_init(MODULE_INIT_QOM);
|
||||||
|
|
||||||
qemu_add_opts(&qemu_drive_opts);
|
qemu_add_opts(&qemu_drive_opts);
|
||||||
|
|
Loading…
Reference in New Issue