Date: Fri, 3 Feb 1995 16:17:04 -0800 (PST) From: "Justin T. Gibbs" <gibbs@estienne.CS.Berkeley.EDU> To: terry@cs.weber.edu (Terry Lambert) Cc: bugs@warlock.win.net, freebsd-hackers@FreeBSD.org Subject: Re: FIX FOR CACHE/DMA RANGE PROBLEMS (was Re: new SNAP) Message-ID: <199502040017.QAA11664@estienne.cs.berkeley.edu> In-Reply-To: <9502032126.AA23872@cs.weber.edu> from "Terry Lambert" at Feb 3, 95 02:26:26 pm
next in thread | previous in thread | raw e-mail | index | archive | help
> > > Are you possitive that your motherboard can do DMA above 16meg?? Not all > > EISA machines are created equal you know. I also cannot guarantee that the > > diagnostic code in there is up to date. I've been running without it enabled > > for some time now. > > Look, you can diagnose a cache problem: > > o Do a pattern write to the first block of swap. > o Use the same buffer. Do a pattern write of a different pattern > to the second block of swap. > o Use the same buffer. DMA read the first block of swap. Examine > the first byte of the buffer. Do you see the character you used > in the first or the second pattern? > o If you have a cache problem, turn off the cache or turn on BINVD > or use programmed I/O. > > This should be automatic. If necessary, reserve a disk block before the > mountable part of the 'a' slice to do the test (assuming no swap). > > > Diagnosing a DMA range restriction is similarly easy: > > o Make sure that you have a memory area that is clean both with > and without the 16M range mask. This is the tricky part. > o Fill the lower memory area with a pattern. > o Do a write of the lower memory area to the first block of swap. > o Fill both the upper and lower memory are with a different > pattern. > o Do a DMA read into the upper memory address. > o Determine if the controller wrote upper or lower memory. > o If you have a DMA range restriction, turn on bouncing. > > > All this "try setting this, try setting that" is just mindless frobbing. > This is not the job of the device driver. I think that many of these types of problems are detectable. The question is who has the time or interest to write the code. > > Terry Lambert > terry@cs.weber.edu > --- > Any opinions in this posting are my own and not those of my present > or previous employers. > -- Justin T. Gibbs ============================================== TCS Instructional Group - Programmer/Analyst 1 Cory | Po | Danube | Volga | Parker | Torus ==============================================
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199502040017.QAA11664>