diff options
author | Rickard Green <[email protected]> | 2014-09-25 17:05:48 +0200 |
---|---|---|
committer | Rickard Green <[email protected]> | 2014-09-25 17:05:48 +0200 |
commit | 3e4491cf98d6ec0ff8b10dfdfac8d8c0b7031e61 (patch) | |
tree | 1bee4fc91742e3291792caacc61d20a67a80300d /erts/emulator/beam/erl_init.c | |
parent | 743ed31108ee555db18d9833186865e85e34333e (diff) | |
parent | 6084a42a24fca52a5de2bc487c0cd2be46dcc21f (diff) | |
download | otp-3e4491cf98d6ec0ff8b10dfdfac8d8c0b7031e61.tar.gz otp-3e4491cf98d6ec0ff8b10dfdfac8d8c0b7031e61.tar.bz2 otp-3e4491cf98d6ec0ff8b10dfdfac8d8c0b7031e61.zip |
Merge branch 'rickard/eager-check-io/OTP-12117' into rickard/maint-17/eager-check-io/OTP-12117
* rickard/eager-check-io/OTP-12117:
Introduce support for eager check I/O scheduling
Conflicts:
erts/emulator/beam/erl_bif_info.c
erts/emulator/beam/erl_init.c
erts/emulator/beam/erl_process.c
erts/preloaded/ebin/erlang.beam
Diffstat (limited to 'erts/emulator/beam/erl_init.c')
-rw-r--r-- | erts/emulator/beam/erl_init.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/erts/emulator/beam/erl_init.c b/erts/emulator/beam/erl_init.c index 88c4006934..ef77e1d7fc 100644 --- a/erts/emulator/beam/erl_init.c +++ b/erts/emulator/beam/erl_init.c @@ -548,6 +548,8 @@ void erts_usage(void) erts_fprintf(stderr, " see the erl(1) documentation for more info.\n"); erts_fprintf(stderr, "-sct cput set cpu topology,\n"); erts_fprintf(stderr, " see the erl(1) documentation for more info.\n"); + erts_fprintf(stderr, "-secio bool enable/disable eager check I/O scheduling,\n"); + erts_fprintf(stderr, " see the erl(1) documentation for more info.\n"); #if ERTS_HAVE_SCHED_UTIL_BALANCING_SUPPORT_OPT erts_fprintf(stderr, "-sub bool enable/disable scheduler utilization balancing,\n"); #else @@ -1674,6 +1676,19 @@ erl_start(int argc, char **argv) erts_usage(); } } + else if (has_prefix("ecio", sub_param)) { + arg = get_arg(sub_param+4, argv[i+1], &i); + if (sys_strcmp("true", arg) == 0) + erts_eager_check_io = 1; + else if (sys_strcmp("false", arg) == 0) + erts_eager_check_io = 0; + else { + erts_fprintf(stderr, + "bad schedule eager check I/O value '%s'\n", + arg); + erts_usage(); + } + } else if (has_prefix("pp", sub_param)) { arg = get_arg(sub_param+2, argv[i+1], &i); if (sys_strcmp(arg, "true") == 0) |