aboutsummaryrefslogtreecommitdiffstats
path: root/erts/etc/common
diff options
context:
space:
mode:
authorLukas Larsson <[email protected]>2013-08-30 15:02:59 +0200
committerLukas Larsson <[email protected]>2013-08-30 15:02:59 +0200
commit63a3de06cfc02762ff933bf34ec2a4307f51749b (patch)
tree60caa068272427d355198bebe574668be69c9c69 /erts/etc/common
parent6a6bc2560c60ea790780dcfbc91336a734eff1be (diff)
parent69e01c0f5d332d34b95575203ae9d7829b9a45fa (diff)
downloadotp-63a3de06cfc02762ff933bf34ec2a4307f51749b.tar.gz
otp-63a3de06cfc02762ff933bf34ec2a4307f51749b.tar.bz2
otp-63a3de06cfc02762ff933bf34ec2a4307f51749b.zip
Merge branch 'sv-sched-percentage-option' into maint
* sv-sched-percentage-option: add erl option to set schedulers by percentages OTP-11282
Diffstat (limited to 'erts/etc/common')
-rw-r--r--erts/etc/common/erlexec.c18
1 files changed, 16 insertions, 2 deletions
diff --git a/erts/etc/common/erlexec.c b/erts/etc/common/erlexec.c
index e61ebe15f5..552afe295d 100644
--- a/erts/etc/common/erlexec.c
+++ b/erts/etc/common/erlexec.c
@@ -803,7 +803,6 @@ int main(int argc, char **argv)
case 'n':
case 'P':
case 'Q':
- case 'S':
case 't':
case 'T':
case 'R':
@@ -818,6 +817,19 @@ int main(int argc, char **argv)
add_Eargs(argv[i+1]);
i++;
break;
+ case 'S':
+ if (argv[i][2] == 'P') {
+ if (argv[i][3] != '\0')
+ goto the_default;
+ } else if (argv[i][2] != '\0')
+ goto the_default;
+ if (i+1 >= argc)
+ usage(argv[i]);
+ argv[i][0] = '-';
+ add_Eargs(argv[i]);
+ add_Eargs(argv[i+1]);
+ i++;
+ break;
case 'B':
argv[i][0] = '-';
if (argv[i][2] != '\0') {
@@ -1119,7 +1131,9 @@ usage_aux(void)
"[+l] [+M<SUBSWITCH> <ARGUMENT>] [+P MAX_PROCS] [+Q MAX_PORTS] "
"[+R COMPAT_REL] "
"[+r] [+rg READER_GROUPS_LIMIT] [+s SCHEDULER_OPTION] "
- "[+S NO_SCHEDULERS:NO_SCHEDULERS_ONLINE] [+T LEVEL] [+V] [+v] "
+ "[+S NO_SCHEDULERS:NO_SCHEDULERS_ONLINE] "
+ "[+SP PERCENTAGE_SCHEDULERS:PERCENTAGE_SCHEDULERS_ONLINE] "
+ "[+T LEVEL] [+V] [+v] "
"[+W<i|w>] [+z MISC_OPTION] [args ...]\n");
exit(1);
}