diff options
author | jeff <jeff@FreeBSD.org> | 2003-04-02 06:46:43 +0000 |
---|---|---|
committer | jeff <jeff@FreeBSD.org> | 2003-04-02 06:46:43 +0000 |
commit | 6470e002eb8ea4132df07e807cbe873b93299a2a (patch) | |
tree | c480807b94daf652ba0e33589fea9398ade62b76 /sys/netinet/tcp_syncache.c | |
parent | bb610376a5e993ec00e22a5e13f106b3b43d90f6 (diff) | |
download | FreeBSD-src-6470e002eb8ea4132df07e807cbe873b93299a2a.zip FreeBSD-src-6470e002eb8ea4132df07e807cbe873b93299a2a.tar.gz |
- Add in support for KSEs with 0 slice values on the run queue. If we try
to select a KSE with a slice of 0 we will update its slice and insert it
onto the next queue.
- Pass the KSE instead of the ksegrp into sched_slice(). This more
accurately reflects the behavior of the code. Slices are granted to kses.
- Add a function kseq_nice_min() which finds the smallest nice value
assigned to the kseg of any KSE on the queue.
- Rewrite the logic in sched_slice(). Add a large comment describing the
new slice selection scheme. To summarize, slices are assigned based on
the nice value. Priorities are still calculated based on the nice and
interactivity of a process. Slice sizes of 0 may be granted for KSEs
whos nice is 20 or futher away from the lowest nice on the run queue.
Other nice values are scaled across the range [min, min+20]. This fixes
ULEs bad behavior with positively niced processes.
Diffstat (limited to 'sys/netinet/tcp_syncache.c')
0 files changed, 0 insertions, 0 deletions