rename libmallocwrap -> libustinstr-malloc
authorPierre-Marc Fournier <pierre-marc.fournier@polymtl.ca>
Wed, 17 Mar 2010 17:49:09 +0000 (13:49 -0400)
committerPierre-Marc Fournier <pierre-marc.fournier@polymtl.ca>
Wed, 17 Mar 2010 17:49:09 +0000 (13:49 -0400)
Makefile.am
configure.ac
libmallocwrap/Makefile.am [deleted file]
libmallocwrap/README [deleted file]
libmallocwrap/mallocwrap.c [deleted file]
libmallocwrap/run [deleted file]
libustinstr-malloc/Makefile.am [new file with mode: 0644]
libustinstr-malloc/README [new file with mode: 0644]
libustinstr-malloc/mallocwrap.c [new file with mode: 0644]
libustinstr-malloc/run [new file with mode: 0644]
usttrace

index e2d131a8ac592e90c242c3cbd6b04b4952343909..112e8ebf8944ab528cf11f793d78d16c9a666e1d 100644 (file)
@@ -5,7 +5,7 @@ ACLOCAL_AMFLAGS = -I m4
 # libust and '.' (that contains the linker script). However, '.'
 # must be installed after libust so it can overwrite libust.so with
 # the linker script.
-SUBDIRS = snprintf libustcomm libust . tests libmallocwrap ustd ustctl libustfork include
+SUBDIRS = snprintf libustcomm libust . tests libustinstr-malloc ustd ustctl libustfork include
 
 EXTRA_DIST = doc libust.ldscript.in libust-initializer.c
 dist_bin_SCRIPTS = usttrace
index 908f54787d6cedb1a96767924bcb5153627f0add..1092d2543fee4cbcfe16e5bb9c716511ca5ec47d 100644 (file)
@@ -117,7 +117,7 @@ AC_CONFIG_FILES([
        tests/snprintf/Makefile
        tests/test-nevents/Makefile
        tests/test-libmallocwrap/Makefile
-       libmallocwrap/Makefile
+       libustinstr-malloc/Makefile
        libustfork/Makefile
        ustd/Makefile
        ustctl/Makefile
diff --git a/libmallocwrap/Makefile.am b/libmallocwrap/Makefile.am
deleted file mode 100644 (file)
index a98fe35..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-AM_CPPFLAGS = -I$(top_srcdir)/include
-
-lib_LTLIBRARIES = libmallocwrap.la
-libmallocwrap_la_SOURCES = mallocwrap.c
-libmallocwrap_la_LIBADD = -ldl
-
-noinst_SCRIPTS = run
-EXTRA_DIST = run
diff --git a/libmallocwrap/README b/libmallocwrap/README
deleted file mode 100644 (file)
index 333a01e..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-libmallocwrap is used for instrumenting calls to malloc(3) in a program, without
-need for recompiling it.
-
-libmallocwrap defines a malloc() function that is instrumented with a marker. It
-also calls the libc malloc afterwards. When loaded with LD_PRELOAD, it replaces
-the libc malloc() function, in effect instrumenting all calls to malloc().
-
-See the "run" script for a usage example.
diff --git a/libmallocwrap/mallocwrap.c b/libmallocwrap/mallocwrap.c
deleted file mode 100644 (file)
index f5d5ce3..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-/* Copyright (C) 2009  Pierre-Marc Fournier
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA
- */
-
-#define _GNU_SOURCE
-#include <dlfcn.h>
-#include <sys/types.h>
-#include <stdio.h>
-
-#include <ust/marker.h>
-
-#if 0
-INTERCEPT_PROTOTYPE(void, malloc, size_t size)
-INTERCEPT_TRACE("size %d", size)
-INTERCEPT_CALL_ARGS(size)
-INTERCEPT()
-
-#define INTERCEPT_FUNC(type, name, args...)                                            \
-__I_FUNC_TYPE(type)                                                                    \
-__I_FUNC_NAME(name)                                                                    \
-__I_FUNC_ARGS(args)
-
-#define INTERCEPT_TRACE(fmt, args...)                                                  \
-#define __I_TRACE_FMT fmt                                                              \
-#define __I_TRACE_ARGS args
-
-#define INTERCEPT_CALL_ARGS(args...)                                                   \
-#define __I_CALL_ARGS args
-
-#define INTERCEPT()                                                                    \
-__I_FUNC_TYPE __I_FUNC_NAME(__I_FUNC_ARGS)                                             \
-{                                                                                      \
-       static __I_FUNC_TYPE (*plibc_ ## __I_FUNC_NAME)(args) = NULL;                   \
-                                                                                       \
-       if(plibc_ ## __I_FUNC_NAME == NULL) {                                           \
-               plibc_ ## __I_FUNC_NAME = dlsym(RTLD_NEXT, "malloc");                   \
-               if(plibc_ ## __I_FUNC_NAME == NULL) {                                   \
-                       fprintf(stderr, "mallocwrap: unable to find malloc\n");         \
-                       return NULL;                                                    \
-               }                                                                       \
-       }                                                                               \
-                                                                                       \
-       trace_mark(ust, __I_FUNC_NAME, __I_TRACE_FMT, __I_TRACE_ARGS);                  \
-                                                                                       \
-       return plibc_ ## __I_FUNC_NAME (__I_CALL_ARGS);                                 \
-}
-#endif
-
-void *malloc(size_t size)
-{
-       static void *(*plibc_malloc)(size_t size) = NULL;
-
-       void *retval;
-
-       if(plibc_malloc == NULL) {
-               plibc_malloc = dlsym(RTLD_NEXT, "malloc");
-               if(plibc_malloc == NULL) {
-                       fprintf(stderr, "mallocwrap: unable to find malloc\n");
-                       return NULL;
-               }
-       }
-
-       retval = plibc_malloc(size);
-
-       trace_mark(ust, malloc, "size %d ptr %p", (int)size, retval);
-
-       return retval;
-}
-
-void free(void *ptr)
-{
-       static void *(*plibc_free)(void *ptr) = NULL;
-
-       if(plibc_free == NULL) {
-               plibc_free = dlsym(RTLD_NEXT, "free");
-               if(plibc_free == NULL) {
-                       fprintf(stderr, "mallocwrap: unable to find free\n");
-                       return;
-               }
-       }
-
-       trace_mark(ust, free, "ptr %p", ptr);
-
-       plibc_free(ptr);
-}
-
-MARKER_LIB
diff --git a/libmallocwrap/run b/libmallocwrap/run
deleted file mode 100644 (file)
index ce4fd10..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-
-LD_VERBOSE=1 LD_LIBRARY_PATH=.:../libust/.libs:../../liburcu LD_PRELOAD=liburcu.so:libust.so:.libs/libmallocwrap.so $1
diff --git a/libustinstr-malloc/Makefile.am b/libustinstr-malloc/Makefile.am
new file mode 100644 (file)
index 0000000..0f9007a
--- /dev/null
@@ -0,0 +1,8 @@
+AM_CPPFLAGS = -I$(top_srcdir)/include
+
+lib_LTLIBRARIES = libustinstr-malloc.la
+libustinstr_malloc_la_SOURCES = mallocwrap.c
+libustinstr_malloc_la_LIBADD = -ldl
+
+noinst_SCRIPTS = run
+EXTRA_DIST = run
diff --git a/libustinstr-malloc/README b/libustinstr-malloc/README
new file mode 100644 (file)
index 0000000..333a01e
--- /dev/null
@@ -0,0 +1,8 @@
+libmallocwrap is used for instrumenting calls to malloc(3) in a program, without
+need for recompiling it.
+
+libmallocwrap defines a malloc() function that is instrumented with a marker. It
+also calls the libc malloc afterwards. When loaded with LD_PRELOAD, it replaces
+the libc malloc() function, in effect instrumenting all calls to malloc().
+
+See the "run" script for a usage example.
diff --git a/libustinstr-malloc/mallocwrap.c b/libustinstr-malloc/mallocwrap.c
new file mode 100644 (file)
index 0000000..f5d5ce3
--- /dev/null
@@ -0,0 +1,100 @@
+/* Copyright (C) 2009  Pierre-Marc Fournier
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA
+ */
+
+#define _GNU_SOURCE
+#include <dlfcn.h>
+#include <sys/types.h>
+#include <stdio.h>
+
+#include <ust/marker.h>
+
+#if 0
+INTERCEPT_PROTOTYPE(void, malloc, size_t size)
+INTERCEPT_TRACE("size %d", size)
+INTERCEPT_CALL_ARGS(size)
+INTERCEPT()
+
+#define INTERCEPT_FUNC(type, name, args...)                                            \
+__I_FUNC_TYPE(type)                                                                    \
+__I_FUNC_NAME(name)                                                                    \
+__I_FUNC_ARGS(args)
+
+#define INTERCEPT_TRACE(fmt, args...)                                                  \
+#define __I_TRACE_FMT fmt                                                              \
+#define __I_TRACE_ARGS args
+
+#define INTERCEPT_CALL_ARGS(args...)                                                   \
+#define __I_CALL_ARGS args
+
+#define INTERCEPT()                                                                    \
+__I_FUNC_TYPE __I_FUNC_NAME(__I_FUNC_ARGS)                                             \
+{                                                                                      \
+       static __I_FUNC_TYPE (*plibc_ ## __I_FUNC_NAME)(args) = NULL;                   \
+                                                                                       \
+       if(plibc_ ## __I_FUNC_NAME == NULL) {                                           \
+               plibc_ ## __I_FUNC_NAME = dlsym(RTLD_NEXT, "malloc");                   \
+               if(plibc_ ## __I_FUNC_NAME == NULL) {                                   \
+                       fprintf(stderr, "mallocwrap: unable to find malloc\n");         \
+                       return NULL;                                                    \
+               }                                                                       \
+       }                                                                               \
+                                                                                       \
+       trace_mark(ust, __I_FUNC_NAME, __I_TRACE_FMT, __I_TRACE_ARGS);                  \
+                                                                                       \
+       return plibc_ ## __I_FUNC_NAME (__I_CALL_ARGS);                                 \
+}
+#endif
+
+void *malloc(size_t size)
+{
+       static void *(*plibc_malloc)(size_t size) = NULL;
+
+       void *retval;
+
+       if(plibc_malloc == NULL) {
+               plibc_malloc = dlsym(RTLD_NEXT, "malloc");
+               if(plibc_malloc == NULL) {
+                       fprintf(stderr, "mallocwrap: unable to find malloc\n");
+                       return NULL;
+               }
+       }
+
+       retval = plibc_malloc(size);
+
+       trace_mark(ust, malloc, "size %d ptr %p", (int)size, retval);
+
+       return retval;
+}
+
+void free(void *ptr)
+{
+       static void *(*plibc_free)(void *ptr) = NULL;
+
+       if(plibc_free == NULL) {
+               plibc_free = dlsym(RTLD_NEXT, "free");
+               if(plibc_free == NULL) {
+                       fprintf(stderr, "mallocwrap: unable to find free\n");
+                       return;
+               }
+       }
+
+       trace_mark(ust, free, "ptr %p", ptr);
+
+       plibc_free(ptr);
+}
+
+MARKER_LIB
diff --git a/libustinstr-malloc/run b/libustinstr-malloc/run
new file mode 100644 (file)
index 0000000..ce4fd10
--- /dev/null
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+LD_VERBOSE=1 LD_LIBRARY_PATH=.:../libust/.libs:../../liburcu LD_PRELOAD=liburcu.so:libust.so:.libs/libmallocwrap.so $1
index 0d2a68ae6ad4c663f534154aeb6a8da8159001e8..6ffc988c4d52b4620325f536b4049803a9d1c2a7 100755 (executable)
--- a/usttrace
+++ b/usttrace
@@ -28,7 +28,7 @@ if [ -x "${USTTRACE_DIR}/ustd/ustd" ] ; then
     # Use the not installed libraries instead
     USTD="${USTTRACE_DIR}/ustd/ustd"
     LIBINTERFORK_PATH="${USTTRACE_DIR}/libustfork/.libs/libustfork.so"
-    LIBMALLOCWRAP_PATH="${USTTRACE_DIR}/libmallocwrap/.libs/libmallocwrap.so"
+    LIBMALLOCWRAP_PATH="${USTTRACE_DIR}/libustinstr-malloc/.libs/libustinstr-malloc.so"
     LIBUST_PATH="${USTTRACE_DIR}/libust/.libs/libust.so"
 else
     # Use the libraries that the dynamic link finds
@@ -38,7 +38,7 @@ else
         exit 1
     fi
     LIBINTERFORK_PATH="libustfork.so"
-    LIBMALLOCWRAP_PATH="libmallocwrap.so"
+    LIBMALLOCWRAP_PATH="libustinstr-malloc.so"
     LIBUST_PATH="libust.so.0"
 fi
 
This page took 0.029123 seconds and 4 git commands to generate.