From bfea3f39cbc01e79a5a511332f0a93a4dc435954 Mon Sep 17 00:00:00 2001 From: mycroft Date: Wed, 8 May 2002 18:45:49 +0000 Subject: [PATCH] Wire CLKF_BASEPRI() to 0 on this platform. (See tech-kern.) --- sys/arch/i386/include/cpu.h | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/sys/arch/i386/include/cpu.h b/sys/arch/i386/include/cpu.h index 9db10b7b8ae0..f0d00f56332f 100644 --- a/sys/arch/i386/include/cpu.h +++ b/sys/arch/i386/include/cpu.h @@ -1,4 +1,4 @@ -/* $NetBSD: cpu.h,v 1.78 2002/01/31 17:41:38 christos Exp $ */ +/* $NetBSD: cpu.h,v 1.79 2002/05/08 18:45:49 mycroft Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -103,12 +103,14 @@ extern struct cpu_info cpu_info_store; * encapsulate the previous machine state in an opaque * clockframe; for now, use generic intrframe. * - * XXX intrframe has a lot of gunk we don't need. + * Note: Since spllowersoftclock() does not actually unmask the currently + * running (hardclock) interrupt, CLKF_BASEPRI() *must* always be 0; otherwise + * we could stall hardclock ticks if another interrupt takes too long. */ #define clockframe intrframe #define CLKF_USERMODE(frame) USERMODE((frame)->if_cs, (frame)->if_eflags) -#define CLKF_BASEPRI(frame) ((frame)->if_ppl == 0) +#define CLKF_BASEPRI(frame) (0) #define CLKF_PC(frame) ((frame)->if_eip) #define CLKF_INTR(frame) ((frame)->if_ppl & (1 << IPL_TAGINTR))