diff options
author | John Högberg <[email protected]> | 2018-06-21 17:48:35 +0200 |
---|---|---|
committer | John Högberg <[email protected]> | 2018-06-28 09:06:43 +0200 |
commit | 29ce7ab0e4403fa688d1e5e5e2170e88d7e8f299 (patch) | |
tree | 5f9c9b8e3f07d1a249c2796416ba45c4bea5ab13 /erts/emulator/beam/erl_alloc.c | |
parent | c67615343b8ab10f10ffc40eccc24c6ec36cd9cd (diff) | |
download | otp-29ce7ab0e4403fa688d1e5e5e2170e88d7e8f299.tar.gz otp-29ce7ab0e4403fa688d1e5e5e2170e88d7e8f299.tar.bz2 otp-29ce7ab0e4403fa688d1e5e5e2170e88d7e8f299.zip |
Add 'chaos first fit' to test mixed-order carrier migration
Diffstat (limited to 'erts/emulator/beam/erl_alloc.c')
-rw-r--r-- | erts/emulator/beam/erl_alloc.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/erts/emulator/beam/erl_alloc.c b/erts/emulator/beam/erl_alloc.c index bd0f136cd8..493c3799c2 100644 --- a/erts/emulator/beam/erl_alloc.c +++ b/erts/emulator/beam/erl_alloc.c @@ -1400,7 +1400,15 @@ handle_au_arg(struct au_init *auip, auip->init.aoff.blk_order = FF_AOBF; } else { - bad_value(param, sub_param + 1, alg); + if (auip->init.util.alloc_no == ERTS_ALC_A_TEST + && sys_strcmp("chaosff", alg) == 0) { + auip->astrat = ERTS_ALC_S_FIRSTFIT; + auip->init.aoff.crr_order = FF_CHAOS; + auip->init.aoff.blk_order = FF_CHAOS; + } + else { + bad_value(param, sub_param + 1, alg); + } } if (!strategy_support_carrier_migration(auip)) auip->init.util.acul = 0; |