summaryrefslogtreecommitdiffstats
path: root/m4
diff options
context:
space:
mode:
authorCosta Tsaousis (ktsaou) <costa@tsaousis.gr>2016-09-30 23:19:06 +0300
committerCosta Tsaousis (ktsaou) <costa@tsaousis.gr>2016-09-30 23:19:06 +0300
commit9c9b9973fd36c382705b9f415f725b8dcf6edd33 (patch)
tree4ab66e9e3bc11675b78474fe6ba29caecddac63b /m4
parente30a7ca2e69ca750c87d81f2439fe759c842062b (diff)
reduce netdata virtual memory size by setting MALLOC_ARENA_MAX; portable way of detecting mallinfo() and mallopt()
Diffstat (limited to 'm4')
-rwxr-xr-xm4/ax_c_mallinfo.m421
-rwxr-xr-xm4/ax_c_mallopt.m420
2 files changed, 41 insertions, 0 deletions
diff --git a/m4/ax_c_mallinfo.m4 b/m4/ax_c_mallinfo.m4
new file mode 100755
index 0000000000..a8f8cc2447
--- /dev/null
+++ b/m4/ax_c_mallinfo.m4
@@ -0,0 +1,21 @@
+# AC_C_MALLINFO
+# -------------
+# Define HAVE_C_MALLINFO if mallinfo() works.
+AN_IDENTIFIER([mallinfo], [AC_C_MALLINFO])
+AC_DEFUN([AC_C_MALLINFO],
+[AC_CACHE_CHECK([for mallinfo], ac_cv_c_mallinfo,
+[AC_LINK_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#include <malloc.h>
+ int main(int argc, char **argv) {
+ struct mallinfo mi = mallinfo();
+ printf("%d%d%d\n", mi.uordblks, mi.hblkhd, mi.arena);
+ }
+ ]])],
+ [ac_cv_c_mallinfo=yes],
+ [ac_cv_c_mallinfo=no])])
+if test $ac_cv_c_mallinfo = yes; then
+ AC_DEFINE([HAVE_C_MALLINFO], 1,
+ [Define to 1 if glibc mallinfo exists.])
+fi
+])# AC_C_MALLINFO
diff --git a/m4/ax_c_mallopt.m4 b/m4/ax_c_mallopt.m4
new file mode 100755
index 0000000000..31c4fdc36a
--- /dev/null
+++ b/m4/ax_c_mallopt.m4
@@ -0,0 +1,20 @@
+# AC_C_MALLOPT
+# -------------
+# Define HAVE_C_MALLOPT if mallopt() works.
+AN_IDENTIFIER([mallopt], [AC_C_MALLOPT])
+AC_DEFUN([AC_C_MALLOPT],
+[AC_CACHE_CHECK([for mallopt], ac_cv_c_mallopt,
+[AC_LINK_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#include <malloc.h>
+ int main(int argc, char **argv) {
+ mallopt(M_ARENA_MAX, 1);
+ }
+ ]])],
+ [ac_cv_c_mallopt=yes],
+ [ac_cv_c_mallopt=no])])
+if test $ac_cv_c_mallopt = yes; then
+ AC_DEFINE([HAVE_C_MALLOPT], 1,
+ [Define to 1 if glibc mallopt exists.])
+fi
+])# AC_C_MALLOPT