Commit Graph

193 Commits

Author SHA1 Message Date
Karel Zak 75c1d2aee6 ionice: add a note about none class and CFQ
Reported-by: Corrado Zoccolo <czoccolo@gmail.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
2009-11-18 17:13:35 +01:00
Karel Zak b6534e4fd8 chrt: use c.h
Signed-off-by: Karel Zak <kzak@redhat.com>
2009-10-16 01:01:48 +02:00
Peter Breitenlohner 7c7c2e5d19 ionice.1: formatting
Signed-off-by: Peter Breitenlohner <peb@mppmu.mpg.de>
2009-08-17 12:11:13 +02:00
Karel Zak 30688dde55 build-sys: rename to _execdir
The variable name "usrlibexecdir" is very confusing (because we have
/usr/libexec). The "exec" prefix is required for user-defined
directories, see

   http://www.gnu.org/software/hello/manual/automake/The-Two-Parts-of-Install.html#The-Two-Parts-of-Install

This patch renames all usr*execdir variables to usr*_execdir.

Signed-off-by: Karel Zak <kzak@redhat.com>
2009-07-04 01:23:41 +02:00
Jakob Unterwurzacher 5dc9371ce6 ionice: Allow setting the none class
Allow users to set the "none" class on processes. Using the
none class has the distict advantage that the io priority
is inherited from the cpu nice level. Update the man page
to reflect the change.

Signed-off-by: Jakob Unterwurzacher <jakobunt@gmail.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
2009-05-27 23:43:18 +02:00
Aurelien Jarno b64279dab8 chrt: don't assume SCHED_BATCH and SCHED_IDLE exist
SCHED_FIFO, SCHED_OTHER, SCHED_RR are part of POSIX 1003.1b Process
Scheduling, so it is correct to assume they always exists.

SCHED_BATCH and SCHED_IDLE are Linux specific, we should not assume
they exists.

Defining SCHED_BATCH and SCHED_IDLE to random values (ie the ones found
on Linux systems) is not an option as they may *collide* with the one of
other systems. For example on GNU/kFreeBSD we have:

   #define SCHED_RR        3

and on Linux we have:

   #define SCHED_BATCH     3

[kzak@redhat.com: - add "Linux specific" notes to chrt.1
                  - add a note about BATCH and PR conflict to
                    this commit message]

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Signed-off-by: Karel Zak <kzak@redhat.com>
2009-05-07 11:28:08 +02:00
Karel Zak 357e7c3b2d ionice: change Jens Axboe's email
Based on
   util-linux-2.14.2-schedutils_fix_email.patch
from SUSE src.rpm package.

Signed-off-by: Karel Zak <kzak@redhat.com>
2009-04-23 13:22:27 +02:00
Aurelien Jarno 40bc2ab516 chrt: add a comment about non POSIX 1003.1b attributes in chrt.1
Mention that only SCHED_FIFO, SCHED_OTHER and SCHED_RR are part of
POSIX 1003.1b Process Scheduling in chrt.1.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2009-04-23 13:14:33 +02:00
Karel Zak 6c00cbbe97 chrt: output buglet when reporting scheduling class
% chrt -i 0 ./a.out &
[1] 60479
% chrt -p 60479
pid 60479's current scheduling policy: SCHED_IDLE
SCHED_RR
pid 60479's current scheduling priority: 0

We have a spurious and incorrect SCHED_RR in there...

Address-Red-Hat-Bugzilla: #483706
Signed-off-by: Karel Zak <kzak@redhat.com>
2009-02-03 10:22:07 +01:00
Karel Zak 97fd43f5d3 ionice: fix typo in manpage
Reported-by: Jakob Unterwurzacher <jakobunt@gmail.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
2009-02-02 11:21:04 +01:00
Karel Zak 9bc0e24612 ionice: a little cleanup of "none" description
We practically have three io scheduling classes. The "none" is
de facto "best-effort" class for processes that has not asked
for io priority.

Signed-off-by: Karel Zak <kzak@redhat.com>
2009-01-22 15:27:47 +01:00
Jakob Unterwurzacher 9b93a22389 ionice: Extend the man page to explain the "none" class and cpu-nice inheritance
Extend the ionice man page to explain the "none" class and how the
cpu-nice => io-priority inheritance works.

Signed-off-by: Jakob Unterwurzacher <jakobunt@gmail.com>
2009-01-16 13:47:56 +01:00
Karel Zak bd9d9f05e6 chrt: add NLS support, clean error messages and return codes
Signed-off-by: Karel Zak <kzak@redhat.com>
2008-09-23 23:33:10 +02:00
Martin Steigerwald c779d6e94f chrt: support CFS SCHED_IDLE priority and document it
Signed-off-by: Martin Steigerwald <ms@teamix.de>
Signed-off-by: Karel Zak <kzak@redhat.com>
2008-09-23 23:28:00 +02:00
Karel Zak 030d18fd2a ionice: add strtol() checks, cleanup usage text and man page
* cleanup usage() output

 * check strtol(); don't ignore wrong command line options

The original ionice design was a little broken, because it was
possible to specify a PID and also a COMMAND:

	ionice -c2 -p 123 /bin/foo

but the command /bin/foo was executed without requested scheduling
class. That's stupid behaviour.

Now you have to use "-p PID" **or** COMMAND, but not both. Nothing is
ignored and all options are checked.

Signed-off-by: Karel Zak <kzak@redhat.com>
2008-09-06 14:54:01 +02:00
Stephan Maka ef0fe2e8aa ionice: let -p handle multiple PIDs
Makes ionice -p usable like renice, this time backwards compatible

[kzak@redhat.com: - fix coding style
                  - add ioprio_setpid()]

Signed-off-by: Stephan Maka <stephan@spaceboyz.net>
Signed-off-by: Karel Zak <kzak@redhat.com>
2008-09-05 16:18:14 +02:00
Karel Zak 5bd11d0d11 ionice: cleanup error messages, add NLS support
Signed-off-by: Karel Zak <kzak@redhat.com>
2008-08-14 11:40:08 +02:00
Karel Zak 8eec9db243 ionice: cleanup man page
Signed-off-by: Karel Zak <kzak@redhat.com>
2008-08-14 11:19:07 +02:00
Lubomir Kundrak 4d125dfc41 ionice: add -t option
This patch allows "tolerant" behavior, i.e. proceeding even if
priority could not be set. This might be of use in case something
(selinux, old kernel, etc.) does not allow the requested scheduling
priority to be set.

This could be to some extend done as follows:

	ionice -c3 command || command

but the downside is that one could not really tell if what failed was
setting priority or command itself, which could result in duplicate
command run.

This patch solves the situation, so that user can do

	ionice -t -c3 command

Addresses-Red-Hat-Bugzilla: #443842
Signed-off-by: Lubomir Kundrak <lkundrak@redhat.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
2008-06-16 13:08:51 +02:00
Karel Zak 776452cbfc ionice: update man page to reflect IDLE class change in 2.6.25
The idle class is safe for non-root users since 2.6.25.
http://lwn.net/Articles/266256/

Addresses-Red-Hat-Bugzilla: #443823
Signed-off-by: Karel Zak <kzak@redhat.com>
2008-04-28 12:23:40 +02:00
James Youngman c4e1583799 build-sys: ignore a bunch of generated files, mostly binaries
Signed-off-by: James Youngman <jay@gnu.org>
Signed-off-by: Karel Zak <kzak@redhat.com>
2008-04-14 14:08:00 +02:00
Stepan Kasal a3ca3a44c5 build-sys: use dist_man_MANS instead of man_MANS
Signed-off-by: Stepan Kasal <skasal@redhat.com>
2007-12-17 10:08:49 +01:00
Karel Zak cd66291bde ionice: add a note about permissions to ionice.1
Signed-off-by: Karel Zak <kzak@redhat.com>
2007-09-20 14:33:31 +02:00
Karel Zak bf928360f2 build-sys: remove hardcoded _GNU_SOURCE
We have AC_GNU_SOURCE, so we needn't any extra hardcoded _GNU_SOURCE.

Signed-off-by: Karel Zak <kzak@redhat.com>
2007-09-20 00:57:01 +02:00
Mike Frysinger 72065909cc build-sys: unify method for checking system calls and fallback handling
Co-Author: Stepan Kasal <skasal@redhat.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Stepan Kasal <skasal@redhat.com>
2007-09-20 00:22:22 +02:00
Matthias Koenig 2b25841371 ionice: clean up error handling
Print error in case execvp fails and use exit macros.

Based on patch by Bernhard Voelker <mail@bernhard-voelker.de>

Signed-off-by: Matthias Koenig <mkoenig@suse.de>
Signed-off-by: Karel Zak <kzak@redhat.com>
2007-08-27 23:58:05 +02:00
Mike Frysinger 19a224ad6a taskset: check for existence of sched_getaffinity
Some architectures do no reliably provide sched_getaffinity, so make sure the
define exists before we try using it.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2007-08-27 10:48:29 +02:00
LaMont Jones 5ebbcdf9c8 man-pages: cleanup of chrt.1 and taskset.1
Signed-off-by: LaMont Jones <lamont@mmjgroup.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
2007-08-15 12:03:51 +02:00
Matthias Koenig 8dbfe5a1fe ionice: cleanup usage for idle class
The idle class has no class data. It will print a warning if
a prio argument is given for it, since this will be ignored.
Output for idle class will not contain prio data.

Signed-off-by: Matthias Koenig <mkoenig@suse.de>
2007-07-25 16:44:17 +02:00
Matthias Koenig 697d58e867 schedutils: fix chrt docs and pid=0 usage
Fix some documentation bugs for chrt.
Make it work with PID 0, which means current process.

Signed-off-by: Matthias Koenig <mkoenig@suse.de>
2007-07-16 15:12:36 +02:00
Karel Zak 4dfadf9c3a ionice: prefer SYS_ioprio_{set,get} from glibc to hardcoded version
It's better to use glibc SYS_ioprio_{set,get} definitions rather than an
incomplete (not all archs) and hardcoded version from ionice.c.

Signed-off-by: Karel Zak <kzak@redhat.com>
2007-07-16 12:22:54 +02:00
Karel Zak 86d62711a9 man pages: add "AVAILABILITY" section
Signed-off-by: Karel Zak <kzak@redhat.com>
2007-07-03 01:17:04 +02:00
David Miller eba338783e ionice: fix ionice build on sparc
Provide the proper syscall numbers for this architecture.

Signed-off-by: David S. Miller <davem@davemloft.net>
2007-07-02 13:52:41 +02:00
Cliff Wickman f7e3dc0533 taskset: independent of hardcoded NR_CPUS max.
This patch makes the taskset command independent of the system's maximum
number of cpus (CONFIG_NR_CPUS).  The maximum for CONFIG_NR_CPUS is a
moving target.

With this patch the size of the systems's cpumask_t is gotten from
sched_getaffinity(2).

This patch uses variable length bitmasks borrowed from Paul Jackson's
variable size bitmask routines (hence I kept his copyright notice).
This replaces the use of the glibc CPU_SETSIZE, CPU_SET, CPU_ZERO and
CPU_ISSET macros which depend on a hardcoded size for cpu_set_t.

(also fixes one little nit: the -V option is "-v" in the built-in help, so
 changed the built-in help)

Signed-off-by: Cliff Wickman <cpw@sgi.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
2007-06-19 15:00:10 +02:00
Karel Zak 09dd84cac7 schedutils: define SCHED_BATCH when compile with old glibc
This is temporary workaround and it will be removed in 2.14 when
minimal number of people will use old systems where is not defined
SCHED_BATCH in (bits/)sched.h.

Signed-off-by: Karel Zak <kzak@redhat.com>
2007-04-11 23:18:08 +02:00
Karel Zak df3773fba0 schedutils: add support for SCHED_BATCH
Signed-off-by: Karel Zak <kzak@redhat.com>
2007-01-16 15:24:13 +01:00
Karel Zak 5ee003094e schedutils: remove extra hyptens from man pages
Signed-off-by: Karel Zak <kzak@redhat.com>
2007-01-16 14:30:24 +01:00
Karel Zak 8eeb575c0d build-sys: remove generated autotools stuff from git
The generated autotools stuff shouldn't be maintained by SCM. After check out
from git use ./autogen.sh. For more details see README.devel.

Signed-off-by: Karel Zak <kzak@redhat.com>
2007-01-03 22:20:44 +01:00
Karel Zak cf6d7faebb Imported from util-linux-2.13-pre6 tarball. 2006-12-07 00:27:13 +01:00
Karel Zak ca3ea756e7 Imported from util-linux-2.13-pre4 tarball. 2006-12-07 00:27:06 +01:00
Karel Zak 9cb689775c Imported from util-linux-2.13-pre3 tarball. 2006-12-07 00:27:03 +01:00
Karel Zak baf39af15b Imported from util-linux-2.13-pre2 tarball. 2006-12-07 00:26:58 +01:00
Karel Zak 48d7b13a1e Imported from util-linux-2.13-pre1 tarball. 2006-12-07 00:26:54 +01:00