Return to BSD News archive
Newsgroups: comp.unix.bsd Path: sserve!manuel!munnari.oz.au!sgiblab!sdd.hp.com!decwrl!deccrl!news.crl.dec.com!pa.dec.com!ninja!fungus.zso.dec.com!mbs From: mbs@fungus.zso.dec.com (Michael Schmitz) Subject: Adaptec SCSI bug? Message-ID: <1992Jul30.210037.9265@ninja.zso.dec.com> Sender: news@ninja.zso.dec.com (USENET News System) Nntp-Posting-Host: fungus.zso.dec.com Organization: Digital Equipment Corporation - DECwest Engineering Date: Thu, 30 Jul 1992 21:00:37 GMT Lines: 25 In trying to figure out why my 386BSD 0.1 sometimes hangs during heavy disk I/O, I noticed the following in the adaptec driver: In i386/isa/as.c NSCATTER is set to 17, but the adaptec documentation gives the maximum size for a scatter/gather array as 16. Scatter/gather is always used, so that the data area pointed to by b_addr (in a struct buf) may be backed by physically contiguous pages or not. Question: Can the physical pages backing a struct buf ever be not physically contiguous? If contiguous, then scatter/gather is not needed at all. Question: Are struct bufs (data area) limited to 8K? In this case (allowing for rounding) the loop that collects the scatter/gather info would only execute at most three times anyway. By the way, I'm using 32 Megs for swap, so it can be a swap resource problem. --Michael-- mbs@zso.dec.com