1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263
|
Tue Aug 6 14:42:36 CEST 2002
v0.3
-added SCHED_FIFO, SCHED_RR, static priorities
-updated documentation
-included some scheduler overview (sched-design.txt)
-misc typo-fixes
-added Makefile for fast compiling / installing
-fixed logical errors in CHECK_RANGE_PRIO, CHECK_RANGE_POLICY
(must've been quite late ;-)
Sat Aug 10 16:26:19 CEST 2002
v0.5
-man-page is ready and also installed via make install
-README restructured
-Wondering about the fast version-progress?
The whole package is now roughly half of what I've been dreaming of.
Still missing are e.g. some numbers.
Fri Aug 30 16:52:27 CEST 2002
v0.6 (only for me)
-minor source (-h / -v switches), README and Makefile (target: zipman,
unzipman) fixes
Wed Sep 4 10:22:31 CEST 2002
v0.7
-huge README updates with some numbers, improvements
-return-value updates: return values represent the number of failed
sched_setscheduler()-calls with 0 being everything okay.
Sun Sep 22 00:18:09 CEST 2002
v0.8
-some code work, #define SCHED_*, replace 0 with SCHED_NORMAL and such minor
stuff
-clarified the meaning of "higher" in README
-asked for util-linux inclusion
Mon Nov 11 17:26:45 CET 2002
v0.8b
-minor cleanups
Tue Aug 26 19:53:41 CEST 2003
v0.9
-implement better error handling to return exactly (well I tried at my
best knowledge) what went wrong during the sched_setscheduler()-call
-set_process() no longer automatically calls print_process()
-minor README/man-page updates regarding kernel versions 2.5 and 2.6
Sun Aug 31 16:14:35 CEST 2003
v0.95
-add support for CPU-affinity
-simplify error-handling in code
-overhaul the man-page
Tue Dec 24 21:31:59 CET 2003 (Tue Jan 6 13:37:32 CET 2004)
v0.96
-it is bad practice to have the "prerequisites" containing technical
stuff before the "about / info"-section explaing what the hell this
even is. README changed accordingly.
-moved installing into file INSTALL
-Con made a suggestion for using schedtool as a wrapper to start processes
with adjusted scheduling-params. Here you go, Con (option -e for (e)xec)!
-added parenthesis for safety in print_process in the big
if( ... || ... || ... ) --now--> if( (...) || (...) || (...) )
-fixed an argument-BUG ("prio >= prio_min" instead of "p >= ...") in
#define CHECK_RANGE_PRIO which did not change behaviour, but was wrong.
-made my debug-printing accessible via -DDEBUG_ME
-merry christmas
Thu Jan 15 14:41:06 CET 2004
v0.97
-changed -e(xecute) semantics from fork() to in-place exec() much like RML's
tools do it. This means that the schedtool-process will be overwritten by
the specified command.
-added padding for better readable output; may change to dynamic spacing in
future versions
Wed Jan 21 15:44:59 CET 2004
v0.98
-there, people, you have it: your changed cmdline parsing, no need for quoting
multi-argument-commands, just plain
#> schedtool -3 -e cpu-hog -x1 -l2
THIS MEANS ALSO THAT YOU NO LONGER CAN MIX ARGS AND OPTIONS LIKE:
#> schedtool 1 2 3 4 -3 5 6
-restructured the help-output to be more "comprehendable" ... as an admin I get
serious pain reading it now
-and, hooray, schedtool is now silent "as that is standard unix behaviour"
unless you specify -v, which will print for each setting PID and so on, which
is indeed what I prefer to have.
Now that you have it all like you wanted,
send me money or even better, hot chicks.
Wed Jan 28 13:51:05 CET 2004
v0.99
-build schedtool with affinity is now the default
-changed Makefile a bit; new target no_affinity
-included support for SCHED_ISO (patch by Con Kolivas)
-update docs to reflect changes
Sun Apr 4 10:38:17 CEST 2004
v0.99.1
-support nice operations; schedtool is now capable of setting ALL scheduling
attributes!
-minor change in engine (move execute into the loop to eliminate duplicate
code; the code is slowly getting a mess with all these checks here and there)
-documentation /man-page update; man-page now lists SCHED_*
-Makefile: new target install-doc, installs some docs into $PREFIX/share/doc/schedtool
Tue Apr 20 11:45:19 CEST 2004
v1.0
-released 1.0; more documentation updates and clarifications
Wed Jun 30 20:27:29 CEST 2004
v1.1.0
-added "NO WARRANTY" to help output
-add raw mode for the kernel hackers; allows direct input of the numerical
policy value and changed docs accordingly.
Mon Jul 5 14:12:35 CEST 2004
v1.1.1
-added a list mode for affinity, additional to the bitmask mode
-identified 2 FIXMEs
Sun Aug 1 14:00:58 CEST 2004
-fixed one fixme: check affinity input for isdigit()
-changed the CHECK_RANGE_PRIO macro a bit for code cleanup
-moved affinity setting to the end of the loop, because may fail with ENOSYS
Sun Sep 19 19:50:09 CEST 2004
v1.1.2
-added missing padding for NICE in output
-changed custom "policy not implemented" error to "value out of range / policy
not implemented" to indicate wrong values when setting affinity or such
Tue Sep 28 20:59:42 CEST 2004
v1.2
-finally try to not break affinity-compiled binaries on non-affinity kernels
(2nd FIXME fixed)
-use getpid() instead of PID 0 (== current process) when in execute mode
Sun Oct 3 18:14:46 CEST 2004
v1.2.1
-REALLY DO NOT break affinity stuff; sched_getaffinity() suddenly returns 4 on
success instead of 0 as declared in the man-page on at least kernels 2.6.8+
-pad nice-levels correctly; they can be negative, as such we need %3d in
printf()
Tue Oct 12 13:04:53 CEST 2004
v1.2.2
-adjust copyright
-correct typo in man-page
-correctly figure out affinity; I was missing an #include <linux/unistd.h>
Sun Oct 17 00:41:43 CEST 2004
v1.2.3
-get the affinity-ifdef-stuff right. Oh my.
-really up version to 1.2.3 (I'm getting old)
-remove superfluous break in schedtool.c::engine(), execute part
-correct another typo in man-page
Sat Nov 27 00:27:23 CET 2004
v1.2.4
-add a "probe" mode (-r), similar to sched-utils; lists prio_min/max
-add helper-functions get_prio_min_max() and print_prio_min_max()
Sat Feb 5 19:59:44 CET 2005
v1.2.5
-fix NULL pointer printing when policy is out-of-range of TAB[] ; instead,
print numeric value + <UNKNOWN>
-behave more nicely with SCHED_ISO and newer -ck kernels (inspired by cr7)
Tue Jan 17 18:50:04 CET 2006
v1.2.6
-add support for SCHED_IDLEPRIO in 2.6.16-ck kernels
-update documentation accordingly; remove old stuff about SCHED_BATCH which is
in mainline 2.6 now
Mon Sep 30 22:29:48 CEST 2006
v1.2.7
-update man-page: get section(8) right again, mention affinity list mode
Tue Nov 14 21:22:18 CET 2006
v1.2.8
-try to initialize aff_mask in a more portable way
-minor man-page update
-change SCHED_IDLE to SCHED_IDLEPRIO everywhere
-change MANPATH to $PREFIX/share/man
Sun Nov 26 15:27:12 CET 2006
v1.2.9
-spelling fixes for README; thanks to Sven Hartrumpf
-Makefile fix for installing man-page (wrong path); thanks to Adam Sampson
Fri Jul 20 20:24:24 CEST 2007
v1.2.10
-fix incorrect use of $DISTDIR in Makefile for RPM-bulding
thanks to Adel Gadllah
-fix version to 1.2.10 (forgot for 1.2.9)
Mon Sep 15 15:35:29 CEST 2008
v1.3.0
-bring schedtool to new glibc affinity api (cpu_set_t) & make it work under new glibcs again
-bug-fix behaviour when 1 wrong PID was given - all other (valid) PIDs would run into error
|