*BSD News Article 25284


Return to BSD News archive

Newsgroups: comp.os.386bsd.development
Path: sserve!newshost.anu.edu.au!munnari.oz.au!news.Hawaii.Edu!ames!elroy.jpl.nasa.gov!usc.edu!howland.reston.ans.net!usenet.ins.cwru.edu!eff!news.kei.com!news.oc.com!utacfd.uta.edu!rwsys!hammy!gordon
From: gordon@sneaky.lonestar.org (Gordon Burditt)
Subject: Re: [FreeBSD 1.0R] DMA Problems?
References: <CHCErs.G5w@genesis.nred.ma.us> <2dj25i$1ga@u.cc.utah.edu> <2encotINN3sq@bonnie.sax.de>
Organization: /usr/lib/news/organi[sz]ation
Date: Tue, 21 Dec 1993 10:28:27 GMT
Message-ID: <CIDrrv.3MJ@sneaky.lonestar.org>
Lines: 40

>In fact, i'm also experiencing lotta DMA overruns when attempting to do
>some floppy IO while some heavy compile job is running. This is in a box
>with an Adaptec SCSI, and i didn't track it down whether it's the CPU
>load that causes the trouble (would really look strange to me), or if
>it's the heavy disk IO that happens while compiling.
>
>Assuming it's the latter, so it could be some problem with the host adaptor
>DMA cycles - does the adaptec really care for other DMA requests floating
>around on the bus while it is considering to take over the bus?

The default Adaptec 154x bus-on (11 us) and bus-off (4 us) times can
starve floppy DMA, which needs one access every 16 microseconds.
This causes DMA overruns (reading) and underruns (writing).  It gets
a little more complicated as the CPU and refresh insist on getting in
a shot, also.  

From the Adaptec EZ-SCSI manual, page D-9:

/f<bus off time>

This option sets the bus-off time for the AHA-1540/1542 host adapter only.
(An AHA-1740 host adapter running in Standard Mode will accept this option
without giving an error message, but the setting will have no physical effect
on the board.)  Valid bus-off times are between 1 and 64 microseconds.  The
default time is 4 microseconds.  

If it takes a very long time to back up your system with a floppy tape drive 
or a floppy disk backup program, you probably need to change the bus-off
time to 12 microseconds and the bus-on time to 4 microseconds.  If you
change one setting be sure to change the other setting as well.

...

The default bus-on time is 11 microseconds.

END QUOTE


					Gordon L. Burditt
					sneaky.lonestar.org!gordon