diff options
author | bde <bde@FreeBSD.org> | 1999-01-15 09:15:27 +0000 |
---|---|---|
committer | bde <bde@FreeBSD.org> | 1999-01-15 09:15:27 +0000 |
commit | 836496c3c77585a9603b1ce20cc257c7eb818729 (patch) | |
tree | 8d535d68d43610ad6ed9b8527ae3c4c8ab59e031 /sys/isa/fdc.h | |
parent | 69a1352a25afd31d1b5a63f514d886cdb2864e28 (diff) | |
download | FreeBSD-src-836496c3c77585a9603b1ce20cc257c7eb818729.zip FreeBSD-src-836496c3c77585a9603b1ce20cc257c7eb818729.tar.gz |
Fixed corruption of the fd buffer queue. Once upon a time, the active
buffer had to be left on the head of the queue for [bufq]disksort()
to sort against. This isn't right for devices that can support multiple
active i/o's, and only the fd driver did it. "Fixing" this in rev.1.36
of ufs_disksubr.c broke the fd driver in much the same way as rev.1.52
of <sys/buf.h> broke it (see rev.1.119).
Bug reported and fix tested by: dt
Diffstat (limited to 'sys/isa/fdc.h')
-rw-r--r-- | sys/isa/fdc.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/isa/fdc.h b/sys/isa/fdc.h index c8c275f..43bf9f8 100644 --- a/sys/isa/fdc.h +++ b/sys/isa/fdc.h @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * from: @(#)fd.c 7.4 (Berkeley) 5/25/91 - * $Id: fdc.h,v 1.11 1998/07/29 13:00:42 bde Exp $ + * $Id: fdc.h,v 1.12 1998/12/12 08:16:01 imp Exp $ * */ @@ -68,7 +68,8 @@ struct fdc_data u_int status[7]; /* copy of the registers */ enum fdc_type fdct; /* chip version of FDC */ int fdc_errs; /* number of logged errors */ - struct buf_queue_head head; /* Head of buf chain */ + struct buf_queue_head head; + struct buf *bp; /* active buffer */ }; /***********************************************************************\ |