Changes semaphore API
authorBarret Rhoden <brho@cs.berkeley.edu>
Fri, 9 Nov 2012 15:10:20 +0000 (07:10 -0800)
committerBarret Rhoden <brho@cs.berkeley.edu>
Fri, 9 Nov 2012 15:10:20 +0000 (07:10 -0800)
commitd0709ca3df08ac0b982c42ae1a2f84ce993d9fb9
tree74fd99ebcf96a5cf9faea13e74132fd01d4cdf66
parent13a74b883da91214350bb64ce19e66328413f8f5
Changes semaphore API

There now is an irqsave API, same as CVs.  All semaphore users need to
change and use irqsave if they will be called from irq context.  This
also renames sleep_on() to sem_down().  There's no awesome way to name
it, other than to know what it means to down a semaphore.

Also, we now only disable irqs when blocking a kthread for the smallest
amount of time (unless its irqsave): when we need to atomically sleep
and change to a new thread (stack).
kern/include/kthread.h
kern/src/alarm.c
kern/src/blockdev.c
kern/src/console.c
kern/src/ext2fs.c
kern/src/kthread.c
kern/src/page_alloc.c
kern/src/testing.c