diff options
author | bde <bde@FreeBSD.org> | 2001-02-19 04:15:59 +0000 |
---|---|---|
committer | bde <bde@FreeBSD.org> | 2001-02-19 04:15:59 +0000 |
commit | 49ef1aaa13c43ce23bf5d856364d1178c713f50c (patch) | |
tree | 219c776d96f8d73df01532ba4edd707494dd09e7 /sys/kern/kern_clock.c | |
parent | 36f2d71ceca8d0445030141a65266e670dbf66bb (diff) | |
download | FreeBSD-src-49ef1aaa13c43ce23bf5d856364d1178c713f50c.zip FreeBSD-src-49ef1aaa13c43ce23bf5d856364d1178c713f50c.tar.gz |
Changed the aston() family to operate on a specified process instead of
always on curproc. This is needed to implement signal delivery properly
(see a future log message for kern_sig.c).
Debogotified the definition of aston(). aston() was defined in terms
of signotify() (perhaps because only the latter already operated on
a specified process), but aston() is the primitive.
Similar changes are needed in the ia64 versions of cpu.h and trap.c.
I didn't make them because the ia64 is missing the prerequisite changes
to make astpending and need_resched per-process and those changes are
too large to make without testing.
Diffstat (limited to 'sys/kern/kern_clock.c')
-rw-r--r-- | sys/kern/kern_clock.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/kern/kern_clock.c b/sys/kern/kern_clock.c index fb4b4a6..6e99f24 100644 --- a/sys/kern/kern_clock.c +++ b/sys/kern/kern_clock.c @@ -172,14 +172,14 @@ hardclock(frame) itimerdecr(&pstats->p_timer[ITIMER_VIRTUAL], tick) == 0) { mtx_lock_spin(&sched_lock); p->p_sflag |= PS_ALRMPEND; - aston(); + aston(p); mtx_unlock_spin(&sched_lock); } if (timevalisset(&pstats->p_timer[ITIMER_PROF].it_value) && itimerdecr(&pstats->p_timer[ITIMER_PROF], tick) == 0) { mtx_lock_spin(&sched_lock); p->p_sflag |= PS_PROFPEND; - aston(); + aston(p); mtx_unlock_spin(&sched_lock); } } |