cvs commit: src/sys/kern kern_fork.c sched_4bsd.c sched_ule.c
Jeff Roberson
jroberson at chesapeake.net
Wed Oct 29 09:55:00 PST 2003
On Wed, 29 Oct 2003, Bruce Evans wrote:
> bde 2003/10/29 06:40:41 PST
>
> FreeBSD src repository
>
> Modified files:
> sys/kern kern_fork.c sched_4bsd.c sched_ule.c
> Log:
> Removed sched_nest variable in sched_switch(). Context switches always
> begin with sched_lock held but not recursed, so this variable was
> always 0.
Thanks. I still intend to comment on our earlier exchange on this. Mail
backlog and all..
Cheers,
Jeff
>
> Removed fixup of sched_lock.mtx_recurse after context switches in
> sched_switch(). Context switches always end with this variable in the
> same state that it began in, so there is no need to fix it up. Only
> sched_lock.mtx_lock really needs a fixup.
>
> Replaced fixup of sched_lock.mtx_recurse in fork_exit() by an assertion
> that sched_lock is owned and not recursed after it is fixed up. This
> assertion much match the one in mi_switch(), and if sched_lock were
> recursed then a non-null fixup of sched_lock.mtx_recurse would probably
> be needed again, unlike in sched_switch(), since fork_exit() doesn't
> return to its caller in the normal way.
>
> Revision Changes Path
> 1.207 +1 -1 src/sys/kern/kern_fork.c
> 1.26 +0 -3 src/sys/kern/sched_4bsd.c
> 1.69 +0 -3 src/sys/kern/sched_ule.c
>
More information about the cvs-src
mailing list