diff options
author | jeff <jeff@FreeBSD.org> | 2004-12-14 10:34:27 +0000 |
---|---|---|
committer | jeff <jeff@FreeBSD.org> | 2004-12-14 10:34:27 +0000 |
commit | 422a07b8e1df1d5ade35b56f0fd3eaec2c425131 (patch) | |
tree | 1a61758fe99f54c1f0d5f4ea7900da7d0cdfbca2 /sys/kern/kern_physio.c | |
parent | ccf97ed87f086f46cc6e18d665218832133a8321 (diff) | |
download | FreeBSD-src-422a07b8e1df1d5ade35b56f0fd3eaec2c425131.zip FreeBSD-src-422a07b8e1df1d5ade35b56f0fd3eaec2c425131.tar.gz |
- In kseq_choose(), don't recalculate slice values for processes with a
nice of 0. Doing so can cause an infinite loop because they should be
running, but a nice -20 process could prevent them from doing so.
- Add a new flag KEF_PRIOELEV to flag a thread that has had its priority
elevated due to priority propagation. If a thread has had its priority
elevated, we assume that it must go on the current queue and it must
get a slice.
- In sched_userret() if our priority was elevated and we shouldn't have
a timeslice, yield here until we should.
Found/Tested by: glebius
Diffstat (limited to 'sys/kern/kern_physio.c')
0 files changed, 0 insertions, 0 deletions