summaryrefslogtreecommitdiffstats
path: root/sys/kern/sched_4bsd.c
Commit message (Collapse)AuthorAgeFilesLines
* Add lock assertions for various proc/thread/kse/ksegroup fields to thejhb2003-04-231-0/+12
| | | | scheduler functions.
* - Assert that the proc lock and sched_lock are held in sched_nice().jhb2003-04-221-2/+3
| | | | | | - For the 4BSD scheduler, this means that all callers of the static function resetpriority() now always hold sched_lock, so don't lock sched_lock explicitly in that function.
* - Catch up with sched api changes.jeff2003-04-111-15/+48
|
* Move the _oncpu entry from the KSE to the thread.julian2003-04-101-3/+3
| | | | | The entry in the KSE still exists but it's purpose will change a bit when we add the ability to lock a KSE to a cpu.
* Remove a trailing semicolon in SCHED_QUANTUM definition.mux2003-03-241-1/+1
| | | | | | Luckily this didn't cause any bugs. Spotted by: Samy Al Bahra <samy@kerneled.com>
* Change the process flags P_KSES to be P_THREADED.julian2003-02-271-1/+1
| | | | This is just a cosmetic change but I've been meaning to do it for about a year.
* Update comments to reflect new KSE code.davidxu2003-02-191-1/+0
|
* Move a bunch of flags from the KSE to the thread.julian2003-02-171-2/+2
| | | | | | | | I was in two minds as to where to put them in the first case.. I should have listenned to the other mind. Submitted by: parts by davidxu@ Reviewed by: jeff@ mini@
* - Unbreak world. I did not notice that libkvm was still used in some placesjeff2003-01-131-7/+5
| | | | | | to access the pctcpu. This will have to be sorted out more later as the new scheduler requires a procedural interface for this data. A more complete solution will follow.
* - Move ke_pctcpu and ke_cpticks into the scheduler specific datastructure.jeff2003-01-121-15/+30
| | | | | This will prevent access through mechanisms other than the published interfaces.
* Add code to ddb to allow backtracing an arbitrary thread.julian2002-12-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | (show thread {address}) Remove the IDLE kse state and replace it with a change in the way threads sahre KSEs. Every KSE now has a thread, which is considered its "owner" however a KSE may also be lent to other threads in the same group to allow completion of in-kernel work. n this case the owner remains the same and the KSE will revert to the owner when the other work has been completed. All creations of upcalls etc. is now done from kse_reassign() which in turn is called from mi_switch or thread_exit(). This means that special code can be removed from msleep() and cv_wait(). kse_release() does not leave a KSE with no thread any more but converts the existing thread into teh KSE's owner, and sets it up for doing an upcall. It is just inhibitted from being scheduled until there is some reason to do an upcall. Remove all trace of the kse_idle queue since it is no-longer needed. "Idle" KSEs are now on the loanable queue.
* - Add the new sched_pctcpu() function to the sched_* api.jeff2002-11-211-0/+6
| | | | | | | | - Provide a routine in sched_4bsd to add this functionality. - Use sched_pctcpu() in kern_proc, which is the one place outside of sched_4bsd where the old pctcpu value was accessed directly. Approved by: re
* - Move scheduler specific macros and defines out of proc.hjeff2002-11-211-0/+10
| | | | Approved by: re
* - Move FSCALE back to kern_sync. This is not scheduler specific.jeff2002-11-211-5/+0
| | | | | | | - Create a new callout for lbolt and move it out of schedcpu(). This is not scheduler specific either. Approved by: re
* - Implement a mechanism for allowing schedulers to place scheduler dependantjeff2002-11-211-0/+25
| | | | | | | | | data in the scheduler independant structures (proc, ksegrp, kse, thread). - Implement unused stubs for this mechanism in sched_4bsd. Approved by: re Reviewed by: luigi, trb Tested on: x86, alpha
* Tidy up the scheduler's code for changing the priority of a thread.julian2002-10-141-26/+11
| | | | Logically pretty much a NOP.
* - Create a new scheduler api that is defined in sys/sched.hjeff2002-10-121-0/+635
- Begin moving scheduler specific functionality into sched_4bsd.c - Replace direct manipulation of scheduler data with hooks provided by the new api. - Remove KSE specific state modifications and single runq assumptions from kern_switch.c Reviewed by: -arch
OpenPOWER on IntegriCloud