diff options
author | rgrimes <rgrimes@FreeBSD.org> | 1994-10-04 06:39:27 +0000 |
---|---|---|
committer | rgrimes <rgrimes@FreeBSD.org> | 1994-10-04 06:39:27 +0000 |
commit | 22ae4f18c6970733c125d40f05d076885e6d182c (patch) | |
tree | 9d71c94fef868ba2d47d0e1661fc01235513b9b6 | |
parent | da97dc92f809db951c305ef4e2c9f273675253c5 (diff) | |
download | FreeBSD-src-22ae4f18c6970733c125d40f05d076885e6d182c.zip FreeBSD-src-22ae4f18c6970733c125d40f05d076885e6d182c.tar.gz |
Pull in 1.1.5.1 changes to sd.c from 1.23 to 1.27 (basically the fixes for
drives that return sector counts of 0 and cause division by 0 traps during
the probe).
Reviewed by: Dave <root@hclb.demon.co.uk>
Obtained from: FreeBSD 1.1.5.1
-rw-r--r-- | sys/scsi/sd.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/scsi/sd.c b/sys/scsi/sd.c index 5a4429a..9c26926 100644 --- a/sys/scsi/sd.c +++ b/sys/scsi/sd.c @@ -14,7 +14,7 @@ * * Ported to run under 386BSD by Julian Elischer (julian@dialix.oz.au) Sept 1992 * - * $Id: sd.c,v 1.30 1994/09/02 04:12:23 davidg Exp $ + * $Id: sd.c,v 1.31 1994/09/28 20:16:44 se Exp $ */ #define SPLSD splbio @@ -905,10 +905,13 @@ sd_get_parms(unit, flags) } else { /* set it to something reasonable */ - sectors = 32; disk_parms->heads = 64; disk_parms->cyls = sectors / (64 * 32); + sectors = 32; } + /* keep secsiz sane too - we may divide by it later */ + if(disk_parms->secsiz == 0) + disk_parms->secsiz = SECSIZE; disk_parms->sectors = sectors; /* dubious on SCSI *//*XXX */ } sd->sc_link->flags |= SDEV_MEDIA_LOADED; |