aboutsummaryrefslogtreecommitdiffstats
path: root/testing/libtbb/glibc-struct-mallinfo.patch
blob: 64056ecb14624eb76cfbdece1b598404b9819e06 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
From b577153a10c98f4e13405dc93ea2ab1a7b990e07 Mon Sep 17 00:00:00 2001
From: David Huffman <storedbox+alpine@outlook.com>
Date: Wed, 6 Jan 2016 07:09:30 -0500
Subject: [PATCH] hard-code glibc's definition of struct mallinfo

---
 src/tbbmalloc/proxy.h | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/src/tbbmalloc/proxy.h b/src/tbbmalloc/proxy.h
index 781cadc..e1ea1ae 100644
--- a/src/tbbmalloc/proxy.h
+++ b/src/tbbmalloc/proxy.h
@@ -32,6 +32,26 @@
 
 #include <stddef.h>
 
+// The following definition was taken from /usr/include/malloc.h as provided by
+// the glibc-devel-2.19-17.4.x86_64 package on openSUSE Leap 42.1; it is
+// made available under the GNU Lesser General Public License v2.1 or later.
+// See <https://www.gnu.org/licenses>.
+//
+// Copyright (C) 1996-2014 Free Software Foundation, Inc.
+struct mallinfo
+{
+  int arena;    /* non-mmapped space allocated from system */
+  int ordblks;  /* number of free chunks */
+  int smblks;   /* number of fastbin blocks */
+  int hblks;    /* number of mmapped regions */
+  int hblkhd;   /* space in mmapped regions */
+  int usmblks;  /* maximum total allocated space */
+  int fsmblks;  /* space available in freed fastbin blocks */
+  int uordblks; /* total allocated space */
+  int fordblks; /* total free space */
+  int keepcost; /* top-most, releasable (via malloc_trim) space */
+};
+
 extern "C" {
     void * scalable_malloc(size_t size);
     void * scalable_calloc(size_t nobj, size_t size);
-- 
2.6.2