aboutsummaryrefslogtreecommitdiffstats
path: root/erts
diff options
context:
space:
mode:
authorRickard Green <[email protected]>2019-04-29 16:47:36 +0200
committerRickard Green <[email protected]>2019-04-29 16:47:36 +0200
commitf2f68e47f6445a318f31a1686f123b264ebd940f (patch)
treefe5159e65553be32ceb4e9254d7f3b977e8a2b73 /erts
parent423915fae526b294774e70c821aed89e860f3345 (diff)
parent44b56000116a473082d7bcfef911f510972b9cec (diff)
downloadotp-f2f68e47f6445a318f31a1686f123b264ebd940f.tar.gz
otp-f2f68e47f6445a318f31a1686f123b264ebd940f.tar.bz2
otp-f2f68e47f6445a318f31a1686f123b264ebd940f.zip
Merge branch 'rickard/dist-q-sz-fix'
* rickard/dist-q-sz-fix: Fix distribution queue size adjustment
Diffstat (limited to 'erts')
-rw-r--r--erts/emulator/beam/dist.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/erts/emulator/beam/dist.c b/erts/emulator/beam/dist.c
index 27599f38e0..d15db760a2 100644
--- a/erts/emulator/beam/dist.c
+++ b/erts/emulator/beam/dist.c
@@ -3455,6 +3455,8 @@ dist_ctrl_get_data_1(BIF_ALIST_1)
obufsize -= size_obuf(obuf);
if (reds < 0) {
erts_de_runlock(dep);
+ if (obufsize)
+ erts_atomic_add_nob(&dep->qsize, (erts_aint_t) -obufsize);
ERTS_BIF_YIELD1(bif_export[BIF_dist_ctrl_get_data_1],
BIF_P, BIF_ARG_1);
}