Source-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: [wrstuden-revivesa] src/sys
Module Name: src
Committed By: wrstuden
Date: Fri Oct 10 18:10:30 UTC 2008
Modified Files:
src/sys/kern [wrstuden-revivesa]: kern_sa.c
src/sys/sys [wrstuden-revivesa]: savar.h userret.h
Log Message:
Add code to adjust how we generate upcalls in sa_yield(). The
key problem is that we can only return from sys_sa_yield() iff
there are upcalls, and in some cases we can only tell that there
are upcalls to deliver after we have run userret().
So if we get woken up in a way that might not have generated upcalls
(timers, signals), try delivering upcalls. If we delivered something,
exit.
Add a flag to the vp & set it if we do this. In userret(), clear
the flag if set. Also, clear it in sa_upcall_userret() iff we get
into there.
Add comments describing the above so that the next person looking at
the code can understand it.
To generate a diff of this commit:
cvs rdiff -r1.91.2.46 -r1.91.2.47 src/sys/kern/kern_sa.c
cvs rdiff -r1.24.2.11 -r1.24.2.12 src/sys/sys/savar.h
cvs rdiff -r1.16.2.2 -r1.16.2.3 src/sys/sys/userret.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Home |
Main Index |
Thread Index |
Old Index