Return to BSD News archive
Path: sserve!newshost.anu.edu.au!munnari.oz.au!constellation!osuunx.ucc.okstate.edu!moe.ksu.ksu.edu!zaphod.mps.ohio-state.edu!wupost!uunet!think.com!enterpoop.mit.edu!ira.uka.de!rz.uni-karlsruhe.de!news.uni-stuttgart.de!zrzr0111 From: zrzr0111@helpdesk.rus.uni-stuttgart.de (Kurt Jaeger aka PI) Newsgroups: comp.os.386bsd.questions Subject: [Q] Adaptec 2372B (RLL controller) and bad144 Date: 31 Mar 1993 11:58:16 GMT Organization: User Help Desk, Comp.Center (RUS), U of Stuttgart, FRG Lines: 100 Distribution: world Message-ID: <1pc10o$ohu@info2.rus.uni-stuttgart.de> NNTP-Posting-Host: helpdesk.rus.uni-stuttgart.de Summary: bad144 is not able to write a new bad sector table, i/o error Hi! First let me describe my setup: 386, no FPU, Seagate-4144, Adaptec 2372B controller, 12 MB RAM. Second, the problem: The mount of the root filesystem on disk does not work, it boots from the harddisk, but does not find a bad sector table. It seems the bad sector area can't be written to. Third: What did I try ? [the longest part 8-}]: At the beginning, the disk seemed to loose any disklabel I put onto it. disklabel printed the error disklabel: ioctl DIOWDINFO: No disk label on disk; use "disklabel -r" to install initial label. It took quite a time before I realized that disklabel -R, reading a proto file like the one generated with disklabel -r wd0, can be used to *really* write a lasting disk label. The protofile currently contains all relevant information, I hope. There is only one partition listed in my protofile, part-a that covers the full disk (sectors 0 to 1023). When I tried to create a protofile with more partitions, I got a warning about partition b and errors for other partitions (c to h). Ok, so I installed an "initial disklabel" with disklabel -R -r wd0 /tmp/myprotofile /usr/mdec/wdboot /usr/mdev/bootwd This label is really on disk, because I can reread it after a reboot. Nice surprise 8-) Now I configured my partitions, a to d, with some values, in /etc/disktab and ran disklabel -w wd0 st4144 wdboot bootwd This survived reboots, as well. Fine, I thought. Now I tried to create a bad sector table. bad144 wd0 0 It worked, as well, or so it seemed. Using the method Terry Lee proposed in Aug.1992, I checked for bad blocks: dd if=/dev/wd0h of=/dev/null bs=512. When it ran into bad sectors, it stopped with error 5. I added one sector to the table and restartet dd. BUT: It ran into the same sector again. bad144 wd0 listed the sector I entered before ! The next few iterations on correcting the bad sector table were not successful [lowering the a partition of the "initial disklabel" 5 cylinders, lowering the d partition of the /etc/disktab disklabel for 5 cylinders, increasing them both, etc etc.] Now I can't even do a bad144 wd0 0 any more. It says (even when the floppy-fs is mounted read/write): bad144: write bad sector table file 0: Read-only filesystem [repeated for 1, 2, and some more]. When I now do a disklabel -w wd0 st4144, bad144 wd0 0 prints other errors: bad144: write bad sector table file 0: Input/Output error [repeated for 1, 2, and some more]. The whole situation seems *very* strange. So, here are a few questions, if anyone wants to comment on them ? 1. When I enter a label in the "initial label", it disappears after doing a disklabel -w wd0 st4144. Why ? 2. Is it correct to create a "initial label" with the disklabel -R command given above ? Does partition a needs to be the full disk size or what is the part-a value in the initial label used for ? 3. Any hints on what might be the problem ? I just *dont* want to fetch the source dist, decompress it on some machine and read the source of disklabel, wd.c and bad144. But if anyone tells me that it will be the only way, well. But please give me a *reason*. Thanks for reading this, So long, PI -- PI at the User Help Desk Comp.Center U of Stuttgart, FRG 27 years to go ! SMTP: pi@rus.uni-stuttgart.de Phone: +49 711 685-4828 X.400: pi@rus.uni-stuttgart.dbp.de (aka Kurt Jaeger)