Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 17 Jul 1998 20:15:35 -0700 (PDT)
From:      Bruce Evans <bde@FreeBSD.ORG>
To:        cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG, cvs-sys@FreeBSD.ORG
Subject:   cvs commit: src/sys/i386/isa fd.c
Message-ID:  <199807180315.UAA02563@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
bde         1998/07/17 20:15:34 PDT

  Modified files:
    sys/i386/isa         fd.c 
  Log:
  Fixed error handling after a seek error that can't happen.  When the
  controller reports a successful seek, it is very unlikely to report
  seeking to a cylinder other than the one requested, but we check for
  this, and botched the error handling for the requested_cylinder != 0
  case.  This error happened when the bug fixed in rev.1.52 of <sys/buf.h>
  caused the head of buffer queue to change to one starting on a different
  cylnder - the requested cylinder was found, but it wasn't what we
  thought we requested.  The fix is simply to arrange to reset the state
  machine.
  
  Corruption of the buffer queue seems to only have been a problem in the
  floppy driver.  Other drivers dequeue the head of the queue before doing
  physical i/o on it, so the corruption at worse broke the elevator sort
  order.  Dequeueing breaks it anyway.
  
  Revision  Changes    Path
  1.119     +3 -1      src/sys/i386/isa/fd.c

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199807180315.UAA02563>