From owner-cvs-sys Sun Oct 27 00:56:21 1996 Return-Path: owner-cvs-sys Received: (from root@localhost) by freefall.freebsd.org (8.7.5/8.7.3) id AAA13471 for cvs-sys-outgoing; Sun, 27 Oct 1996 00:56:21 -0700 (PDT) Received: from grumble.grondar.za (root@grumble.grondar.za [196.7.18.130]) by freefall.freebsd.org (8.7.5/8.7.3) with ESMTP id AAA13465; Sun, 27 Oct 1996 00:56:14 -0700 (PDT) Received: from grumble.grondar.za (mark@localhost.grondar.za [127.0.0.1]) by grumble.grondar.za (8.8.2/8.7.3) with ESMTP id JAA17287; Sun, 27 Oct 1996 09:55:49 +0200 (SAT) Message-Id: <199610270755.JAA17287@grumble.grondar.za> To: Bruce Evans cc: sos@freefall.freebsd.org, cvs-all@freefall.freebsd.org, CVS-committers@freefall.freebsd.org, cvs-sys@freefall.freebsd.org Subject: Re: cvs commit: src/sys/i386/isa syscons.c Date: Sun, 27 Oct 1996 09:55:48 +0200 From: Mark Murray Sender: owner-cvs-sys@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Bruce Evans wrote: > There seems to be a more serious problem with reentrancy in > add_timer_randomness(). It is called from interrupt handlers at the > ipls of the handlers, so it may be reentered. It doesn't seem to be > designed for this. I guess it works in Linux because it is always > called with interrupts disabled. It should use splhigh() in FreeBSD. > (Don't forget the design goal that interrupts should not be masked for > too long. 20 usec is too long.) Since it is normally (*) called from > the keyboard interrupt handler at ipl >= tty_imask, it is now only safe > to gather entropy for interrupts generated by tty-class devices. I have found bits of code that look like s = splhigh(); /* handle the interrupt */ splx(s); /* or spl0(); */ But the comments in spl.h are very unenlightening. :-( Please give me a short (english!) introduction as to what the @#$% is going on here :-). M -- Mark Murray 46 Harvey Rd, Claremont, Cape Town 7700, South Africa +27 21 61-3768 GMT+0200 Finger mark@grondar.za for PGP key