summaryrefslogtreecommitdiffstats
path: root/include/jemalloc/internal/extent_structs.h
diff options
context:
space:
mode:
authorQi Wang <interwq@gwu.edu>2019-08-05 19:59:21 (GMT)
committerQi Wang <interwq@gwu.edu>2019-08-05 19:59:21 (GMT)
commitea6b3e973b477b8061e0076bb257dbd7f3faa756 (patch)
treeeb52a159ee9b9cf80e87e809a80035e49d7f96e2 /include/jemalloc/internal/extent_structs.h
parentb0b3e49a54ec29e32636f4577d9d5a896d67fd20 (diff)
parent0cfa36a58a91b30996b30c948d67e1daf184c663 (diff)
downloadjemalloc-5.2.1.zip
jemalloc-5.2.1.tar.gz
jemalloc-5.2.1.tar.bz2
Merge branch 'dev'5.2.1
Diffstat (limited to 'include/jemalloc/internal/extent_structs.h')
-rw-r--r--include/jemalloc/internal/extent_structs.h27
1 files changed, 26 insertions, 1 deletions
diff --git a/include/jemalloc/internal/extent_structs.h b/include/jemalloc/internal/extent_structs.h
index ceb1897..767cd89 100644
--- a/include/jemalloc/internal/extent_structs.h
+++ b/include/jemalloc/internal/extent_structs.h
@@ -128,7 +128,11 @@ struct extent_s {
#define EXTENT_BITS_BINSHARD_SHIFT (EXTENT_BITS_NFREE_WIDTH + EXTENT_BITS_NFREE_SHIFT)
#define EXTENT_BITS_BINSHARD_MASK MASK(EXTENT_BITS_BINSHARD_WIDTH, EXTENT_BITS_BINSHARD_SHIFT)
-#define EXTENT_BITS_SN_SHIFT (EXTENT_BITS_BINSHARD_WIDTH + EXTENT_BITS_BINSHARD_SHIFT)
+#define EXTENT_BITS_IS_HEAD_WIDTH 1
+#define EXTENT_BITS_IS_HEAD_SHIFT (EXTENT_BITS_BINSHARD_WIDTH + EXTENT_BITS_BINSHARD_SHIFT)
+#define EXTENT_BITS_IS_HEAD_MASK MASK(EXTENT_BITS_IS_HEAD_WIDTH, EXTENT_BITS_IS_HEAD_SHIFT)
+
+#define EXTENT_BITS_SN_SHIFT (EXTENT_BITS_IS_HEAD_WIDTH + EXTENT_BITS_IS_HEAD_SHIFT)
#define EXTENT_BITS_SN_MASK (UINT64_MAX << EXTENT_BITS_SN_SHIFT)
/* Pointer to the extent that this structure is responsible for. */
@@ -228,4 +232,25 @@ struct extents_s {
bool delay_coalesce;
};
+/*
+ * The following two structs are for experimental purposes. See
+ * experimental_utilization_query_ctl and
+ * experimental_utilization_batch_query_ctl in src/ctl.c.
+ */
+
+struct extent_util_stats_s {
+ size_t nfree;
+ size_t nregs;
+ size_t size;
+};
+
+struct extent_util_stats_verbose_s {
+ void *slabcur_addr;
+ size_t nfree;
+ size_t nregs;
+ size_t size;
+ size_t bin_nfree;
+ size_t bin_nregs;
+};
+
#endif /* JEMALLOC_INTERNAL_EXTENT_STRUCTS_H */