Date: Tue, 23 Jan 2007 08:46:51 +0000 (UTC) From: Jeff Roberson <jeff@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/amd64/linux32 linux32_machdep.c src/sys/i386/linux linux_machdep.c src/sys/kern init_main.c kern_fork.c kern_idle.c kern_intr.c kern_kse.c kern_kthread.c kern_switch.c kern_thr.c sched_4bsd.c sched_core.c subr_taskqueue.c subr_turnstile.c ... Message-ID: <200701230846.l0N8kpmU057054@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
jeff 2007-01-23 08:46:51 UTC
FreeBSD src repository
Modified files:
sys/amd64/linux32 linux32_machdep.c
sys/i386/linux linux_machdep.c
sys/kern init_main.c kern_fork.c kern_idle.c
kern_intr.c kern_kse.c kern_kthread.c
kern_switch.c kern_thr.c sched_4bsd.c
sched_core.c subr_taskqueue.c
subr_turnstile.c
sys/sys proc.h sched.h
sys/vm vm_glue.c vm_zeroidle.c
Log:
- Remove setrunqueue and replace it with direct calls to sched_add().
setrunqueue() was mostly empty. The few asserts and thread state
setting were moved to the individual schedulers. sched_add() was
chosen to displace it for naming consistency reasons.
- Remove adjustrunqueue, it was 4 lines of code that was ifdef'd to be
different on all three schedulers where it was only called in one place
each.
- Remove the long ifdef'd out remrunqueue code.
- Remove the now redundant ts_state. Inspect the thread state directly.
- Don't set TSF_* flags from kern_switch.c, we were only doing this to
support a feature in one scheduler.
- Change sched_choose() to return a thread rather than a td_sched. Also,
rely on the schedulers to return the idlethread. This simplifies the
logic in choosethread(). Aside from the run queue links kern_switch.c
mostly does not care about the contents of td_sched.
Discussed with: julian
- Move the idle thread loop into the per scheduler area. ULE wants to
do something different from the other schedulers.
Suggested by: jhb
Tested on: x86/amd64 sched_{4BSD, ULE, CORE}.
Revision Changes Path
1.28 +4 -3 src/sys/amd64/linux32/linux32_machdep.c
1.68 +4 -3 src/sys/i386/linux/linux_machdep.c
1.273 +1 -1 src/sys/kern/init_main.c
1.266 +1 -1 src/sys/kern/kern_fork.c
1.47 +2 -42 src/sys/kern/kern_idle.c
1.139 +2 -2 src/sys/kern/kern_intr.c
1.227 +3 -3 src/sys/kern/kern_kse.c
1.37 +2 -1 src/sys/kern/kern_kthread.c
1.128 +3 -82 src/sys/kern/kern_switch.c
1.59 +1 -1 src/sys/kern/kern_thr.c
1.95 +65 -34 src/sys/kern/sched_4bsd.c
1.12 +62 -20 src/sys/kern/sched_core.c
1.38 +1 -1 src/sys/kern/subr_taskqueue.c
1.166 +1 -1 src/sys/kern/subr_turnstile.c
1.471 +0 -10 src/sys/sys/proc.h
1.31 +11 -0 src/sys/sys/sched.h
1.219 +2 -2 src/sys/vm/vm_glue.c
1.42 +1 -1 src/sys/vm/vm_zeroidle.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200701230846.l0N8kpmU057054>
