]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
MINOR: compat: automatically include malloc.h on glibc
authorWilly Tarreau <w@1wt.eu>
Tue, 3 Nov 2020 14:50:40 +0000 (15:50 +0100)
committerWilly Tarreau <w@1wt.eu>
Thu, 5 Nov 2020 18:27:08 +0000 (19:27 +0100)
This is in order to access malloc_trim() which is convenient after
clearing huge maps to reclaim memory. When this is detected, we also
define HA_HAVE_MALLOC_TRIM.

include/haproxy/compat.h

index 97cde46c3e36811fe580bd4a6fe0dc21dc753cea..581141c1f18c2f272ed21ad1fbfab321e144b873 100644 (file)
@@ -240,6 +240,15 @@ typedef struct { } empty_t;
 #endif
 #endif
 
+/* malloc_trim() can be very convenient to reclaim unused memory especially
+ * from huge pattern files. It's available (and really usable) in glibc 2.8 and
+ * above.
+ */
+#if (defined(__GNU_LIBRARY__) && (__GLIBC__ > 2 || __GLIBC__ == 2 && __GLIBC_MINOR__ >= 8))
+#include <malloc.h>
+#define HA_HAVE_MALLOC_TRIM
+#endif
+
 /* Max number of file descriptors we send in one sendmsg(). Linux seems to be
  * able to send 253 fds per sendmsg(), not sure about the other OSes.
  */