103 lines
2.8 KiB
Diff
103 lines
2.8 KiB
Diff
|
--- util-linux-2.13-pre6/schedutils/chrt.1.batch 2006-11-10 13:23:37.000000000 -0500
|
||
|
+++ util-linux-2.13-pre6/schedutils/chrt.1 2006-11-10 13:27:23.000000000 -0500
|
||
|
@@ -36,10 +36,11 @@
|
||
|
.BR chrt (1)
|
||
|
sets or retrieves the real-time scheduling attributes of an existing PID or
|
||
|
runs COMMAND with the given attributes. Both policy (one of
|
||
|
+.BR SCHED_OTHER ,
|
||
|
.BR SCHED_FIFO ,
|
||
|
.BR SCHED_RR ,
|
||
|
or
|
||
|
-.BR SCHED_OTHER )
|
||
|
+.BR SCHED_BATCH )
|
||
|
and priority can be set and retrieved.
|
||
|
.SH OPTIONS
|
||
|
.TP
|
||
|
@@ -48,6 +49,10 @@
|
||
|
.TP
|
||
|
|
||
|
.TP
|
||
|
+.B -b, --batch
|
||
|
+set scheduling policy to
|
||
|
+.BR SCHED_BATCH
|
||
|
+.TP
|
||
|
.B -f, --fifo
|
||
|
set scheduling policy to
|
||
|
.BR SCHED_FIFO
|
||
|
--- util-linux-2.13-pre6/schedutils/chrt.c.batch 2005-08-14 11:18:54.000000000 -0400
|
||
|
+++ util-linux-2.13-pre6/schedutils/chrt.c 2006-11-10 13:27:52.000000000 -0500
|
||
|
@@ -36,6 +36,8 @@
|
||
|
fprintf(stderr, "usage: %s [options] [prio] [pid | cmd [args...]]\n",
|
||
|
cmd);
|
||
|
fprintf(stderr, "manipulate real-time attributes of a process\n");
|
||
|
+ fprintf(stderr, " -b, --batch "
|
||
|
+ "set policy to SCHED_BATCH\n");
|
||
|
fprintf(stderr, " -f, --fifo "
|
||
|
"set policy to SCHED_FF\n");
|
||
|
fprintf(stderr, " -p, --pid "
|
||
|
@@ -83,6 +85,9 @@
|
||
|
case SCHED_RR:
|
||
|
printf("SCHED_RR\n");
|
||
|
break;
|
||
|
+ case SCHED_BATCH:
|
||
|
+ printf("SCHED_BATCH\n");
|
||
|
+ break;
|
||
|
default:
|
||
|
printf("unknown\n");
|
||
|
}
|
||
|
@@ -101,6 +106,13 @@
|
||
|
{
|
||
|
int max, min;
|
||
|
|
||
|
+ max = sched_get_priority_max(SCHED_OTHER);
|
||
|
+ min = sched_get_priority_min(SCHED_OTHER);
|
||
|
+ if (max >= 0 && min >= 0)
|
||
|
+ printf("SCHED_OTHER min/max priority\t: %d/%d\n", min, max);
|
||
|
+ else
|
||
|
+ printf("SCHED_OTHER not supported?\n");
|
||
|
+
|
||
|
max = sched_get_priority_max(SCHED_FIFO);
|
||
|
min = sched_get_priority_min(SCHED_FIFO);
|
||
|
if (max >= 0 && min >= 0)
|
||
|
@@ -115,12 +127,12 @@
|
||
|
else
|
||
|
printf("SCHED_RR not supported?\n");
|
||
|
|
||
|
- max = sched_get_priority_max(SCHED_OTHER);
|
||
|
- min = sched_get_priority_min(SCHED_OTHER);
|
||
|
+ max = sched_get_priority_max(SCHED_BATCH);
|
||
|
+ min = sched_get_priority_min(SCHED_BATCH);
|
||
|
if (max >= 0 && min >= 0)
|
||
|
- printf("SCHED_OTHER min/max priority\t: %d/%d\n", min, max);
|
||
|
+ printf("SCHED_BATCH min/max priority\t: %d/%d\n", min, max);
|
||
|
else
|
||
|
- printf("SCHED_OTHER not supported?\n");
|
||
|
+ printf("SCHED_BATCH not supported?\n");
|
||
|
}
|
||
|
|
||
|
int main(int argc, char *argv[])
|
||
|
@@ -130,6 +142,7 @@
|
||
|
pid_t pid = 0;
|
||
|
|
||
|
struct option longopts[] = {
|
||
|
+ { "batch", 0, NULL, 'b' },
|
||
|
{ "fifo", 0, NULL, 'f' },
|
||
|
{ "pid", 0, NULL, 'p' },
|
||
|
{ "help", 0, NULL, 'h' },
|
||
|
@@ -141,11 +154,14 @@
|
||
|
{ NULL, 0, NULL, 0 }
|
||
|
};
|
||
|
|
||
|
- while((i = getopt_long(argc, argv, "+fphmorvV", longopts, NULL)) != -1)
|
||
|
+ while((i = getopt_long(argc, argv, "+bfphmorvV", longopts, NULL)) != -1)
|
||
|
{
|
||
|
int ret = 1;
|
||
|
|
||
|
switch (i) {
|
||
|
+ case 'b':
|
||
|
+ policy = SCHED_BATCH;
|
||
|
+ break;
|
||
|
case 'f':
|
||
|
policy = SCHED_FIFO;
|
||
|
break;
|