diff options
author | Lukas Larsson <[email protected]> | 2018-09-19 16:37:55 +0200 |
---|---|---|
committer | Lukas Larsson <[email protected]> | 2019-02-21 16:38:04 +0100 |
commit | 9a7df41a9e5361049a17c8aa971b52599fba2632 (patch) | |
tree | 9084706715fd064a1011753e2e72fe49e05875ba /lib/kernel | |
parent | 0184c2e0438ac42c44d14e92b13e2807e0a670b3 (diff) | |
download | otp-9a7df41a9e5361049a17c8aa971b52599fba2632.tar.gz otp-9a7df41a9e5361049a17c8aa971b52599fba2632.tar.bz2 otp-9a7df41a9e5361049a17c8aa971b52599fba2632.zip |
erts: Move reason in dist messages to payload
The dist messages EXIT, EXIT2 and MONITOR_DOWN have been
updated with new versions that send the reason term as
part of the payload of the message instead of as part
of the control message.
This allows the decode of the reason to be done by the
receiving process instead of the dist entry which in turn
makes it possible for multiple decodes to be done in
parallel.
This change is done in order to make it easier to fragment
the potentially large payload of EXIT, EXIT2 and MONITOR_DOWN
into multiple distribution messages.
OTP-15611
Diffstat (limited to 'lib/kernel')
-rw-r--r-- | lib/kernel/include/dist.hrl | 2 | ||||
-rw-r--r-- | lib/kernel/src/dist_util.erl | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/lib/kernel/include/dist.hrl b/lib/kernel/include/dist.hrl index 003852f1b0..48701e12e4 100644 --- a/lib/kernel/include/dist.hrl +++ b/lib/kernel/include/dist.hrl @@ -42,6 +42,8 @@ -define(DFLAG_BIG_CREATION, 16#40000). -define(DFLAG_SEND_SENDER, 16#80000). -define(DFLAG_BIG_SEQTRACE_LABELS, 16#100000). +%% -define(DFLAG_NO_MAGIC, 16#200000). %% Used internally only +-define(DFLAG_EXIT_PAYLOAD, 16#400000). %% Also update dflag2str() in ../src/dist_util.erl %% when adding flags... diff --git a/lib/kernel/src/dist_util.erl b/lib/kernel/src/dist_util.erl index ecc022b28d..1d70a0593c 100644 --- a/lib/kernel/src/dist_util.erl +++ b/lib/kernel/src/dist_util.erl @@ -116,6 +116,8 @@ dflag2str(?DFLAG_SEND_SENDER) -> "SEND_SENDER"; dflag2str(?DFLAG_BIG_SEQTRACE_LABELS) -> "BIG_SEQTRACE_LABELS"; +dflag2str(?DFLAG_EXIT_PAYLOAD) -> + "EXIT_PAYLOAD"; dflag2str(_) -> "UNKNOWN". |