Return to BSD News archive
Path: sserve!newshost.anu.edu.au!harbinger.cc.monash.edu.au!msuinfo!netnews.upenn.edu!dsinc!spool.mu.edu!howland.reston.ans.net!cs.utexas.edu!uunet!zib-berlin.de!irz401!uriah!not-for-mail From: j@uriah.sax.de (J Wunsch) Newsgroups: comp.os.386bsd.bugs Subject: Re: FreeBSD, fd0d: hard error Date: 16 Sep 1994 17:08:21 +0200 Organization: Private U**X site; member IN e.V. Lines: 33 Message-ID: <35ccd5INNgkn@bonnie.sax.de> References: <3486q6$dr6@pdq.coe.montana.edu> <34a91e$h2f@sol.sun.csd.unb.ca> <34iv96$ik4@pdq.coe.montana.edu> <34oppn$3rb@u.cc.utah.edu> NNTP-Posting-Host: bonnie.sax.de terry@cs.weber.edu (Terry Lambert) writes: >But as to the original problem, it "feels" like a seek-past-end-of-track >attempt, despite bit 3 saying it's a CRC error. Are you absolutely positive about this feeling, Terry? Remember, it was complaining about sector 15, not 16 - all HD disks contain at least 15 sectors per track. >Seeking the head on Initializing the device and keeping running track of >where it's supposedly at (shades of a Calcomp plotter driver here) and >operating on the basis of relative deltas has cleared the problem for me. Exactly what the driver does now. (Unlike in previous versions, the controller is being resetted now very often, requiring much more recalibrate commands when it comes alife again.) With the only exception, the `relative deltas' are computed by the FDC, based on the requested cylinder number and its (internal) idea of what the present cylinder number is. Btw., if it were on a wrong cylinder the picture would have been another. >Oh, you'll also see it (or similar) on some hardware if you are using >the wrong device (block vs. character) and aren't reading for exact >sizes, ... The current driver should clearly reject all transfer requests that are not a multiple of the physical sector size. (Previous versions were broken in this field.) -- cheers, J"org work: joerg_wunsch@tcd-dresden.de private: joerg_wunsch@uriah.sax.de Steinbach's Guideline for Systems Programming: Never test for an error condition you don't know how to handle.