aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSverker Eriksson <[email protected]>2016-05-30 20:44:10 +0200
committerSverker Eriksson <[email protected]>2016-05-30 20:44:10 +0200
commit728b48254bf4e3979a2e4c6cd667ace5cd020d12 (patch)
tree53a5a438f024264224f6cbb71fc27da5a6f8abbc
parentbf46ff0561ee64cc99f30da30a52ca5268af134e (diff)
downloadotp-728b48254bf4e3979a2e4c6cd667ace5cd020d12.tar.gz
otp-728b48254bf4e3979a2e4c6cd667ace5cd020d12.tar.bz2
otp-728b48254bf4e3979a2e4c6cd667ace5cd020d12.zip
erts: Fix ASSERT provoked by map_SUITE:t_rare_map_overflow
The same bug was fixed for OTP 18 in cb62c989e59f0ec8556f9f1d4e9a45b by provoking yet another GC. But now in 19 we are ok with heap fragments so just remove the asserts.
-rw-r--r--erts/emulator/beam/erl_gc.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/erts/emulator/beam/erl_gc.c b/erts/emulator/beam/erl_gc.c
index c7bbbd5ca0..9da82f9bf2 100644
--- a/erts/emulator/beam/erl_gc.c
+++ b/erts/emulator/beam/erl_gc.c
@@ -1198,7 +1198,6 @@ minor_collection(Process* p, ErlHeapFragment *live_hf_end,
done:
ASSERT(HEAP_SIZE(p) == next_heap_size(p, HEAP_SIZE(p), 0));
- ASSERT(MBUF(p) == NULL);
/* The heap usage during GC should be larger than what we end up
after a GC, even if we grow it. If this assertion is not true
@@ -1591,6 +1590,9 @@ major_collection(Process* p, ErlHeapFragment *live_hf_end,
HIGH_WATER(p) = HEAP_TOP(p);
+#ifdef HARDDEBUG
+ disallow_heap_frag_ref_in_heap(p);
+#endif
remove_message_buffers(p);
if (p->flags & F_ON_HEAP_MSGQ)
@@ -1603,9 +1605,6 @@ major_collection(Process* p, ErlHeapFragment *live_hf_end,
adjusted = adjust_after_fullsweep(p, need, objv, nobj);
-#ifdef HARDDEBUG
- disallow_heap_frag_ref_in_heap(p);
-#endif
ErtsGcQuickSanityCheck(p);
return gc_cost(size_after, adjusted ? size_after : 0);