aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/erl_node_tables.c
diff options
context:
space:
mode:
authorRickard Green <[email protected]>2013-05-16 17:36:12 +0200
committerRickard Green <[email protected]>2013-05-16 17:36:12 +0200
commit80129f47df9b227c45b1298e64f3e62096d81bf2 (patch)
tree46ed6d985e6cc9a164cfde3e312f29ca51fdf3a1 /erts/emulator/beam/erl_node_tables.c
parentd7e9fafa45eb96e3c34e24f03476a42e474701f0 (diff)
parentfebb7963a74930dccccd3d23ef56a54d27fd2549 (diff)
downloadotp-80129f47df9b227c45b1298e64f3e62096d81bf2.tar.gz
otp-80129f47df9b227c45b1298e64f3e62096d81bf2.tar.bz2
otp-80129f47df9b227c45b1298e64f3e62096d81bf2.zip
Merge branch 'rickard/inet_db/OTP-11074' into maint
* rickard/inet_db/OTP-11074: Do not treat port_set_data/port_get_data as signals Conflicts: erts/preloaded/ebin/erlang.beam erts/preloaded/ebin/erts_internal.beam
Diffstat (limited to 'erts/emulator/beam/erl_node_tables.c')
-rw-r--r--erts/emulator/beam/erl_node_tables.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/erts/emulator/beam/erl_node_tables.c b/erts/emulator/beam/erl_node_tables.c
index ebfba065d1..e688e55c88 100644
--- a/erts/emulator/beam/erl_node_tables.c
+++ b/erts/emulator/beam/erl_node_tables.c
@@ -1371,6 +1371,7 @@ setup_reference_table(void)
/* Insert all ports */
max = erts_ptab_max(&erts_port);
for (i = 0; i < max; i++) {
+ ErlOffHeap *ohp;
erts_aint32_t state;
Port *prt;
@@ -1389,8 +1390,9 @@ setup_reference_table(void)
if (ERTS_P_MONITORS(prt))
insert_monitors(ERTS_P_MONITORS(prt), prt->common.id);
/* Insert port data */
- for(hfp = prt->bp; hfp; hfp = hfp->next)
- insert_offheap(&(hfp->off_heap), HEAP_REF, prt->common.id);
+ ohp = erts_port_data_offheap(prt);
+ if (ohp)
+ insert_offheap(ohp, HEAP_REF, prt->common.id);
/* Insert controller */
if (prt->dist_entry)
insert_dist_entry(prt->dist_entry,