aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/erl_gc.h
diff options
context:
space:
mode:
authorLukas Larsson <[email protected]>2015-11-16 14:57:12 +0100
committerLukas Larsson <[email protected]>2015-11-16 15:45:06 +0100
commit9d0a5bf2c1cc564fd38268cbb5313cd8813ea138 (patch)
tree021538f095dcde9fb51ce20e819fdc4a03a2c8d2 /erts/emulator/beam/erl_gc.h
parent263d1e6bb37cb09f0d09039da625f14db656f552 (diff)
downloadotp-9d0a5bf2c1cc564fd38268cbb5313cd8813ea138.tar.gz
otp-9d0a5bf2c1cc564fd38268cbb5313cd8813ea138.tar.bz2
otp-9d0a5bf2c1cc564fd38268cbb5313cd8813ea138.zip
erts: Add garbage_collection_info to process_info/2
This info request returns greater details about the current gc state. This info is not included in the default process_info/1 as it would clutter the default printout with too much information.
Diffstat (limited to 'erts/emulator/beam/erl_gc.h')
-rw-r--r--erts/emulator/beam/erl_gc.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/erts/emulator/beam/erl_gc.h b/erts/emulator/beam/erl_gc.h
index d603866cbf..2cedd9361f 100644
--- a/erts/emulator/beam/erl_gc.h
+++ b/erts/emulator/beam/erl_gc.h
@@ -132,6 +132,11 @@ typedef struct {
Uint64 garbage_cols;
} ErtsGCInfo;
+#define ERTS_PROCESS_GC_INFO_MAX_TERMS (11) /* number of elements in process_gc_info*/
+#define ERTS_PROCESS_GC_INFO_MAX_SIZE \
+ (ERTS_PROCESS_GC_INFO_MAX_TERMS * (2/*cons*/ + 3/*2-tuple*/ + BIG_UINT_HEAP_SIZE))
+Eterm erts_process_gc_info(struct process*, Uint *, Eterm **);
+
void erts_gc_info(ErtsGCInfo *gcip);
void erts_init_gc(void);
int erts_garbage_collect_nobump(struct process*, int, Eterm*, int);