Bump... >-----Original Message----- >From: Eoff, Ullysses A >Sent: Wednesday, August 08, 2012 1:22 PM >To: wayland-devel@lists.freedesktop.org >Cc: Eoff, Ullysses A >Subject: [PATCH wayland] test: remove memory leak checks > >From: "U. Artie Eoff" <ullysses.a.e...@intel.com> > >Wrapping dynamic memory functions (malloc, realloc, free, calloc) >can be problematic, for instance, when instrumenting code with >coverage hooks. >In general, the community consensus is to avoid writing your own >memory leak checking and to use an existing tool such as valgrind >to do this job for you. The same could probably be said for >fd leak checks, but will leave that for a separate exercise. > >Signed-off-by: U. Artie Eoff <ullysses.a.e...@intel.com> >--- > tests/sanity-test.c | 22 ---------------------- > tests/test-runner.c | 51 --------------------------------------------------- > 2 files changed, 73 deletions(-) > >diff --git a/tests/sanity-test.c b/tests/sanity-test.c >index 67ca663..03044af 100644 >--- a/tests/sanity-test.c >+++ b/tests/sanity-test.c >@@ -64,28 +64,6 @@ FAIL_TEST(sanity_assert) > assert(0); > } > >-FAIL_TEST(sanity_malloc_direct) >-{ >- void *p; >- >- p = malloc(10); /* memory leak */ >- assert(p); /* assert that we got memory, also prevents >- * the malloc from getting optimized away. */ >- free(NULL); /* NULL must not be counted */ >-} >- >-FAIL_TEST(sanity_malloc_indirect) >-{ >- struct wl_array array; >- >- wl_array_init(&array); >- >- /* call into library that calls malloc */ >- wl_array_add(&array, 14); >- >- /* not freeing array, must leak */ >-} >- > FAIL_TEST(sanity_fd_leak) > { > int fd[2]; >diff --git a/tests/test-runner.c b/tests/test-runner.c >index 63ce384..354091d 100644 >--- a/tests/test-runner.c >+++ b/tests/test-runner.c >@@ -20,8 +20,6 @@ > * OF THIS SOFTWARE. > */ > >-#define _GNU_SOURCE >- > #include <unistd.h> > #include <stdio.h> > #include <stdlib.h> >@@ -29,52 +27,11 @@ > #include <sys/wait.h> > #include <string.h> > #include <assert.h> >-#include <dlfcn.h> > #include <errno.h> > #include "test-runner.h" > >-static int num_alloc; >-static void* (*sys_malloc)(size_t); >-static void (*sys_free)(void*); >-static void* (*sys_realloc)(void*, size_t); >-static void* (*sys_calloc)(size_t, size_t); >- > extern const struct test __start_test_section, __stop_test_section; > >-__attribute__ ((visibility("default"))) void * >-malloc(size_t size) >-{ >- num_alloc++; >- return sys_malloc(size); >-} >- >-__attribute__ ((visibility("default"))) void >-free(void* mem) >-{ >- if (mem != NULL) >- num_alloc--; >- sys_free(mem); >-} >- >-__attribute__ ((visibility("default"))) void * >-realloc(void* mem, size_t size) >-{ >- if (mem == NULL) >- num_alloc++; >- return sys_realloc(mem, size); >-} >- >-__attribute__ ((visibility("default"))) void * >-calloc(size_t nmemb, size_t size) >-{ >- if (sys_calloc == NULL) >- return NULL; >- >- num_alloc++; >- >- return sys_calloc(nmemb, size); >-} >- > static const struct test * > find_test(const char *name) > { >@@ -90,12 +47,10 @@ find_test(const char *name) > static void > run_test(const struct test *t) > { >- int cur_alloc = num_alloc; > int cur_fds; > > cur_fds = count_open_fds(); > t->run(); >- assert(cur_alloc == num_alloc && "memory leak detected in test."); > assert(cur_fds == count_open_fds() && "fd leak detected"); > exit(EXIT_SUCCESS); > } >@@ -107,12 +62,6 @@ int main(int argc, char *argv[]) > int total, pass; > siginfo_t info; > >- /* Load system malloc, free, and realloc */ >- sys_calloc = dlsym(RTLD_NEXT, "calloc"); >- sys_realloc = dlsym(RTLD_NEXT, "realloc"); >- sys_malloc = dlsym(RTLD_NEXT, "malloc"); >- sys_free = dlsym(RTLD_NEXT, "free"); >- > if (argc == 2) { > t = find_test(argv[1]); > if (t == NULL) { >-- >1.7.11.2
_______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/wayland-devel