Date: Thu, 1 Jun 1995 18:05:35 +1000 From: Bruce Evans <bde@zeta.org.au> To: gil@limbic.ssdl.com, rgrimes@gndrsh.aac.dev.com Cc: freebsd-bugs@freefall.cdrom.com Subject: Re: kern/466: Disk error on newfs Message-ID: <199506010805.SAA25484@godzilla.zeta.org.au>
next in thread | raw e-mail | index | archive | help
>> **IMPORTANT** Disks are configured using sector sparing through >> controller low-level format. This reserves 1 sec/trk for bad >> blocks so that the disk appears "flawless" at low-level format >> time. This means that the advertised disk geometry of >> 1222cyl/15h/36sec is hardware changed to 1222cyl/15h/35sec >A wd controller reset probably wipes this setting out and goes back >to 1222/15/36 without sparing. If you can infact wipe this disk I It goes back to the original setting which is also apparently 36 sectors. Rewriting of the geometry to match the partition table and again to match the disk label got lost in the slice changes :-(. >suggest you stop using the sector sparing, get a little more capacity >and tell the install that the drive needs bad144 mapping done on it. Then there would be a problem with cylinders >= 1024. It used to be possible to handle this by changing the geometry, but this also depends on rewriting the geometry. >> >Description: >> ... >> Warning: calculated sectors per cylinder (4096) disagrees with disk >> label (525) This is normal, but sysinstall should do something to avoid it. >> /dev/rwd0a: 40960 sectors in 10 cylinders of 1 tracks, 4096 sectors >> 20.0MB in 1 cyl groups (16 c/g, 32.00MB/g, 7680 i/g) >> wd0a: hard error writing fsbn 68 or 64-79 (wd0 bn 68; cn 0 tn 1 sn 33) >> wd0: status 51<seekdone,err> error 10<no_id> sn 35 (0 based) in the middle of the block is apparently inaccessible. You might be able to enable translation. This is selectable by a jumper on my ESDI controller (WD1007V-SE/1). Then sector 35 would be writable, but there would appear to be only (1222 * 35 / 36 = 1188) cylinders and it would be relatively easy to avoid using the cylinders >= 1188. However, there would probably still be a conflict with the BIOS geometry. >> Another note that may help ... I noticed that the kernel message >> describing the disk when the kernel was booting identified the >> disk's physical geometry, and not the geometry as handled by the >> controller (using sector sparing). >That is because we did a hard controller reset which cleared any setting >values done by the BIOS at boot time. This sector sparing is usually >a BIOS handled wdsetparam thing. See above... The reset is almost irrelevant. The driver reprograms the geometry after all resets to tell the controller what it thinks it is. The problems are that translation is disabled so reprogramming fails, but no error is detected, and the number of cylinders is a little too high. Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199506010805.SAA25484>