X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=lib%2Fleak-checker.c;h=1fd3d5b5fb656b36cabdf7417ecf477d86a82738;hb=f606c7e99465477cf0533ecbc4795a0f8fe635e0;hp=c2c4348f5841fbc4a7fd36a95b54a5ddbe685d0a;hpb=34e63086edddcae06d7c1a4fa84fec0861e50758;p=openvswitch diff --git a/lib/leak-checker.c b/lib/leak-checker.c index c2c4348f..1fd3d5b5 100644 --- a/lib/leak-checker.c +++ b/lib/leak-checker.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2008, 2009 Nicira Networks. + * Copyright (c) 2008, 2009, 2010 Nicira, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -18,25 +18,25 @@ #include "leak-checker.h" #include #include "backtrace.h" - -#define THIS_MODULE VLM_leak_checker #include "vlog.h" +VLOG_DEFINE_THIS_MODULE(leak_checker); + #ifndef HAVE_MALLOC_HOOKS void -leak_checker_start(const char *file_name UNUSED) +leak_checker_start(const char *file_name OVS_UNUSED) { VLOG_WARN("not enabling leak checker because the libc in use does not " "have the required hooks"); } void -leak_checker_set_limit(off_t max_size UNUSED) +leak_checker_set_limit(off_t max_size OVS_UNUSED) { } void -leak_checker_claim(const void *p UNUSED) +leak_checker_claim(const void *p OVS_UNUSED) { } @@ -141,7 +141,7 @@ log_callers(const char *format, ...) putc(':', file); backtrace_capture(&backtrace); for (i = 0; i < backtrace.n_frames; i++) { - fprintf(file, " 0x%x", backtrace.frames[i]); + fprintf(file, " 0x%"PRIxPTR, backtrace.frames[i]); } putc('\n', file); } @@ -180,7 +180,7 @@ reset_hooks(void) } static void * -hook_malloc(size_t size, const void *caller UNUSED) +hook_malloc(size_t size, const void *caller OVS_UNUSED) { void *p; @@ -209,23 +209,22 @@ leak_checker_claim(const void *p) } static void -hook_free(void *p, const void *caller UNUSED) +hook_free(void *p, const void *caller OVS_UNUSED) { if (!p) { return; } set_hooks(&libc_hooks); + log_callers("free(%p)", p); free(p); get_hooks(&libc_hooks); - log_callers("free(%p)", p); - reset_hooks(); } static void * -hook_realloc(void *p, size_t size, const void *caller UNUSED) +hook_realloc(void *p, size_t size, const void *caller OVS_UNUSED) { void *q;