diff options
-rw-r--r-- | asm.h | 2 | ||||
-rw-r--r-- | spinlock.c | 4 | ||||
-rw-r--r-- | x86.h | 6 |
3 files changed, 6 insertions, 6 deletions
@@ -1,5 +1,5 @@ // -// macros to create x86 segments from assembler +// assembler macros to create x86 segments // #define SEG_NULLASM \ @@ -20,8 +20,8 @@ initlock(struct spinlock *lock, char *name) // Acquire the lock. // Loops (spins) until the lock is acquired. -// (Because contention is handled by spinning, -// must not go to sleep holding any locks.) +// Holding a lock for a long time may cause +// other CPUs to waste time spinning to acquire it. void acquire(struct spinlock *lock) { @@ -1,5 +1,4 @@ -// Special assembly routines to access x86-specific -// hardware instructions. +// Routines to let C code use special x86 instructions. static inline uchar inb(ushort port) @@ -131,7 +130,8 @@ sti(void) asm volatile("sti"); } -// Layout of the trap frame on the stack upon entry to trap. +// Layout of the trap frame built on the stack by the +// hardware and by trapasm.S, and passed to trap(). struct trapframe { // registers as pushed by pusha uint edi; |