aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/erl_ptab.h
diff options
context:
space:
mode:
authorRickard Green <[email protected]>2012-08-08 02:20:05 +0200
committerRickard Green <[email protected]>2012-12-03 21:18:05 +0100
commitb434a3ab242dde66e23a72122474854f51a61eff (patch)
treef205873230fb86943e6667c0b0de2e2563c82d1e /erts/emulator/beam/erl_ptab.h
parent3b523c25af0df45fbf68ab3cf50c0556f1d4e0a1 (diff)
downloadotp-b434a3ab242dde66e23a72122474854f51a61eff.tar.gz
otp-b434a3ab242dde66e23a72122474854f51a61eff.tar.bz2
otp-b434a3ab242dde66e23a72122474854f51a61eff.zip
Prepare for use of ptab functionality also for ports
Diffstat (limited to 'erts/emulator/beam/erl_ptab.h')
-rw-r--r--erts/emulator/beam/erl_ptab.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/erts/emulator/beam/erl_ptab.h b/erts/emulator/beam/erl_ptab.h
index 6e94130df9..b65db330e5 100644
--- a/erts/emulator/beam/erl_ptab.h
+++ b/erts/emulator/beam/erl_ptab.h
@@ -34,9 +34,13 @@
#include "erl_thr_progress.h"
#undef ERL_THR_PROGRESS_TSD_TYPE_ONLY
#include "erl_alloc.h"
+#include "erl_monitors.h"
-#define ERTS_TRACER_PROC(P) (P)->common.tracer_proc
-#define ERTS_TRACE_FLAGS(P) (P)->common.trace_flags
+#define ERTS_TRACER_PROC(P) ((P)->common.tracer_proc)
+#define ERTS_TRACE_FLAGS(P) ((P)->common.trace_flags)
+
+#define ERTS_P_LINKS(P) ((P)->common.u.alive.links)
+#define ERTS_P_MONITORS(P) ((P)->common.u.alive.monitors)
#define IS_TRACED(p) \
(ERTS_TRACER_PROC((p)) != NIL)
@@ -49,6 +53,8 @@ typedef struct {
Eterm id;
#ifdef ERTS_SMP
erts_atomic32_t refc;
+#else
+ erts_smp_atomic32_t refc; /* Temporary solution during dev; to be removed! */
#endif
Eterm tracer_proc;
Uint trace_flags;
@@ -57,6 +63,8 @@ typedef struct {
struct {
Uint64 started_interval;
struct reg_proc *reg;
+ ErtsLink *links;
+ ErtsMonitor *monitors;
#ifdef ERTS_SMP
ErtsSmpPTimer *ptimer;
#else