gc@vax135.UUCP (Eugene Cristofor) (05/03/85)
Are there any tools to allow updating of revectoring info for RA81/UDA50? When a new sector goes bad it should be added to the map with a relatively simple user-level program, maybe with some ioctl() calls to the driver. The only method our DEC reps can suggest is reformatting of the whole disk, after which yours truly has to restore everything form tape, which takes forever! Any insights will be appreciated! vax135!gc
rfs@ihlpl.UUCP (r. stork) (05/03/85)
> Are there any tools to allow updating of revectoring info > for RA81/UDA50? When a new sector goes bad it should be added > to the map with a relatively simple user-level program, maybe > with some ioctl() calls to the driver. > > The only method our DEC reps can suggest is reformatting of the > whole disk, after which yours truly has to restore everything > form tape, which takes forever! > > Any insights will be appreciated! > > vax135!gc You should have your DEC reps contact their next level of support for the correct procedures on dealing with the problem. The approach they are using is the ABSOLUTE worst way to deal with the problem. The reasons for this are due to the DSA Architecture. Each RA81 has a set of tables containing the bad spots found at manufacturing time. When the drive is formatted these tables are copied into another set of drive tables (working area). The DEC CE's have no tool to change the manufacturing table. Any bad spots found in formatting will be added to these tables. If you are running VMS or have hacked Bad Block Revectoring into your disk driver, this working area will dynamically grow as the operating system finds bad spots and retires them in favor of alternates (either on track or not). Good so far. One problem is that the current DEC formatting tool is a non-exhaustive formatter that will not find all the bad spots. They assumed that everyone would have BBR and DSA systems so no more powerful tool was needed in the field. The problem is that BBR is not in all flavors of UNIX, so when a new bad spot appears, you do your dump to tape, they re-format, and you restore, to the ORIGINAL manufacturers list of defects plus whatever the formatter finds. So now you likely will get all kinds of bad spots back. There is no good solution except to have BBR on your system, but here is a hack that will work. Boot up under VMS, and create a VMS filesystem that fills up the entire RA81. Write a little program that fills is up completely with files. File size should be about 64KB. Let this thing run overnight (12 hours, but you only do it once). Now run analyze on the VMS filesystem you build. This reads each file on the disk. VMS will find the bad spots and re-vector them for you. Do it again since it only takes an hour. You now have a logically free disk. Dump the filesystem to tape (30 Minutes) and save them. Now boot up UNIX and put your filesystem out on disk. Your problem is solved. The RA81` will use the tables just filled by VMS and will work fine until a new bad spot appears. When that happens simply dump your UNIX filesystem to tape as before, boot VMS and read-in the tape you made, run analyze once and restore your filesystem. This is the approach that we are using with Ra81's in my lab. It was developed after discussions with the RA81 project manager and several of DEC's technical support people. By the way, the DEC CE's did most of the VMS stuff, and keep several copies of the tapes in all the Chicago offices serving RA81's. All of the CE's in our area working on Ra81's were told NOT to format them except when the read/write board or datapath interface board had gone bad. This could then cause the bad spot tables(FCT I think.) to fill up with many bad spots and hence slow down the drive due to re-vectoring. One last point, DEC has promised that a new diagnostic will soon be available to allow the CE's to at least read the status of the drive internal tables. Hope this helps. Ron Stork ihlpl!rfs
cspencer@bbnccv.UUCP (Cliff Spencer) (05/03/85)
> Are there any tools to allow updating of revectoring info > for RA81/UDA50? Dec does have a tool to do this. It is called "rabads" and runs as a standalone program. cliff
chris@umcp-cs.UUCP (Chris Torek) (05/05/85)
There is a beta-test version of a bad block forwarding uda50 driver for 4.2BSD available from dave@riacs.ARPA. It works, mostly, though I won't say it's the cleanest code I've ever seen. (Just today I put a few hours into cleaning it up somewhat. What a mess... but it does actually work.) I don't know if the Ultrix UDA50 driver does bad block forwarding. The one that was current as of around last June doesn't. It would be nice if they used Dave's code (except that it doesn't work with 3Coms, but then again DEC probably would just say "buy DEUNAs..."). By the way, to give credit where it is due, Dave's code appears to be mostly a combination of watrose!arwhite's and qtlon!tony's modifications of the original 4.1BSD code (whether that came from Berkeley or elsewhere, I know not). It would be nice if Dave's version made it into 4.3... The current code on ucbmonet still seems to be the version by decvax!rich and Jim Gettys, which doesn't have bad block forwarding. (Funny, it even still has the bug which hangs udopen under the right conditions. With a hack to get around it, no less. Yuck! Someone should do something about this!... Why are you all looking at *me*??) -- In-Real-Life: Chris Torek, Univ of MD Comp Sci Dept (+1 301 454 4251) UUCP: {seismo,allegra,brl-bmd}!umcp-cs!chris CSNet: chris@umcp-cs ARPA: chris@maryland