Date: Fri, 14 Mar 1997 07:39:43 -0500 (EST) From: Thomas David Rivers <ponds!rivers@dg-rtp.dg.com> To: ponds!MX.BA-Stuttgart.De!helbig Cc: ponds!freebsd.org!hackers Subject: Re: dscheck() and the processor level? Message-ID: <199703141239.HAA02165@lakes.water.net>
next in thread | raw e-mail | index | archive | help
> > Hi > > > > I don't think it's the case that this needs to be at splbio(), but > > could someone take a gander at that and let me know? [I'm a little > > fuzzy on just exactly when you should set the processor level to "bio" - > > just what are we protecting when we do that?] > > We won't be interrupted by interrupt sources marked with "bio" in the > kernel config file. Let's assume you have IRQ 14 and IRQ 15 set up > for your IDE-controller, primary and secondary channel. In the > GENERIC configuration file both are marked with "bio" (in the wdc0/wdc1 > line). So if you don't want your wd-interrupt service routine > start running while you are reading or changing common data-structures > you have to code splbio(). > Others interrupts like keyboard or clock still will get through and interrupt > you. > This is very well explained in man 9 spl. > > Wolfgang > Thanks! That's exactly the description I needed. I was trying to relate the (minimal) splXXX explanation in the 4.3BSD UNIX book to FreeBSD (admittedly a stretch, but that's what I have.) It never even occurred to me to simply try to do a man on 'spl' (duh) - Thanks again! - - Dave Rivers -
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199703141239.HAA02165>