Subversion Repositories HelenOS-historic

Compare Revisions

Ignore whitespace Rev 125 → Rev 221

/SPARTAN/trunk/src/time/clock.c
84,18 → 84,20
*/
 
if (THREAD) {
__u64 ticks;
spinlock_lock(&CPU->lock);
CPU->needs_relink++;
spinlock_unlock(&CPU->lock);
spinlock_lock(&THREAD->lock);
if (!THREAD->ticks--) {
spinlock_unlock(&THREAD->lock);
if (ticks = THREAD->ticks)
THREAD->ticks--;
spinlock_unlock(&THREAD->lock);
if (!ticks && !PREEMPTION_DISABLED) {
scheduler();
}
else {
spinlock_unlock(&THREAD->lock);
}
}
 
}