From a114208c341bc5a712d49fcc016cf27f4651f212 Mon Sep 17 00:00:00 2001 From: jhb Date: Thu, 17 Jan 2008 18:59:38 +0000 Subject: Use cpu_spinwait() (i.e., "pause") when spinning on rdtsc during DELAY(). MFC after: 1 week --- sys/isa/atrtc.c | 1 + 1 file changed, 1 insertion(+) (limited to 'sys/isa') diff --git a/sys/isa/atrtc.c b/sys/isa/atrtc.c index a67db31..f31c7ea 100644 --- a/sys/isa/atrtc.c +++ b/sys/isa/atrtc.c @@ -291,6 +291,7 @@ DELAY(int n) start = rdtsc(); end = start + (tsc_freq * n) / 1000000; do { + cpu_spinwait(); now = rdtsc(); } while (now < end || (now > start && end < start)); sched_unpin(); -- cgit v1.1