|
|
1.1 root 1: .TH VDFORMAT 8S "27 March 1985"
2: .UC 4
3: .SH NAME
4: .I Vdformat
5: \- Format disk media and / or relocate bad sectors on drives attached to VDDC
6: disk controllers.
7: .SH DESCRIPTION
8: .PP
9: .I Vdformat
10: is a stand-alone program used to
11: format and certify disk media before constructing new file systems,
12: or to replace newly formed bad spots on existing file systems.
13: In both cases, the result is a
14: virtually perfect disk surface for data storage.
15: This manual page describes the operation of
16: .I vdformat
17: and the error messages which may be produced during abnormal operations.
18: .PP
19: \fBFormatting\fP a disk surface is a simple operation; it consists of
20: blindly writing the sector format information (including the
21: sector number, gaps, and data area) to each sector on the disk media.
22: The controller uses this information during normal operations to find
23: the correct sector on the disk to write on.
24: .PP
25: \fBCertifying\fP the medium is a little more difficult than formatting.
26: It is accomplished
27: by writing test patterns to each sector,
28: reading them back, and comparing the resultant data to the original patterns.
29: A sector is considered bad if either a hard or soft error occured while
30: accessing the disk. (
31: .I Hard errors
32: are characterized by unrecoverable
33: disk data errors, or by
34: differences revealed when comparing the disk data with the original
35: certification pattern.
36: On the other hand, data errors that were corrected by the
37: disk controller's error correction circuitry are termed
38: .I soft errors. )
39: .PP
40: The patterns used for certification are:
41: .sp 1
42: .nf
43: pattern #0 -- 49249249 (hex)
44: pattern #1 -- 6cb1b360 (hex)
45: pattern #2 -- b6db6db6 (hex)
46: pattern #3 -- 33333333 (hex)
47: pattern #4 -- ffff2924 (hex)
48: pattern #5 -- 6db6db6d (hex)
49: pattern #6 -- 09d6cd80 (hex)
50: pattern #7 -- b2c6cd80 (hex)
51: pattern #8 -- db6db6db (hex)
52: pattern #9 -- 88888888 (hex)
53: .fi
54: .sp 1
55: These patterns were selected from a list of patterns recommended
56: by CDC, DEC, and CCI engineers. The selection was made by
57: studying the general effectiveness of each pattern and selecting the
58: ten most efficacious patterns.
59: .PP
60: As a rule:
61: as more patterns are used during certification, more soft errors will
62: be discovered. If the only concern is finding every hard error on the disk,
63: then one or two patterns are sufficient. However, if
64: finding every soft spot on the disk is a high priority, then
65: use all ten patterns. Fair warning: expect at least four and one-half
66: hours of formatting
67: time, per drive, if all ten patterns are used on a high capacity drive.
68: .PP
69: During relocation
70: .I vdformat
71: reads the list of blocks to be relocated, allocates an unused
72: flawless sector, and
73: commands the VDDC controller to replace the bad sector with the new sector.
74: To minimize data loss owing to media defects; the data is read out of
75: each sector being replaced and written back into the new sector
76: for later access. No guarantees are given for
77: data integrity if the sector being replaced contained a hard error, but,
78: most of the data should still be intact.
79: .PP
80: After attempting to relocate each sector;
81: .I vdformat
82: will display a line informing the operator of the operation's results.
83: If the relocation was
84: successful the sector number of the new sector will be displayed, otherwise,
85: the operator will
86: be told about the failure and processing will continue.
87: .PP
88: If a drive develops uncorrectable
89: defects after formatting and certification, or annoying soft spots appear,
90: use the \fBrelocation option\fP
91: to map out all the new bad sectors.
92: When this is done, the disk will once again
93: have a perfect surface for data storage.
94: .SH EXAMPLES
95: Sample runs of
96: .I vdformat
97: are shown below. The format option and the relocation option are shown
98: separately. Boldface means user input. Parenthetical lines are comments.
99: .PP
100: The output from
101: .I vdformat
102: is verbose. This is done for two reasons: to provide possitive
103: feedback to the operator so he/she will
104: know exactly what is happening, and to aid diagnostics
105: if a failure occurs.
106: .nf
107: .sp
108: \fBEXAMPLE OF FORMAT OPTION\fP
109: .in +0.2i
110: Boot
111: : \fBxfd(0,0)/stand/vdformat\fP
112: nnnnn+nnnn+nnnnnn start 0x800
113: Do you wish to format media? [y/n] (n): \fBy\fP
114: This is DESTRUCTIVE! Are you sure? [y/n] (y): \fBy\fP
115: Number of patterns to use when verifying? [1-10]: (5) \fB10\fP
116:
117: Enter controller number and drive number for each disk.
118: Key <RETURN> to controller number prompt when through.
119:
120: Controller number? [0-3]: \fB0\fP
121: Unit number? [0-3]: \fB1\fP
122: Drive type? [fsd/smd/xfd/xsd]: \fBxfd\fP
123: Is an 'xfd' drive on controller 0 unit 1 ok? [y/n] (n): \fBy\fP
124:
125: Controller number? [0-3]: (just a 'return' means no more entries)
126:
127: *********** Formatting on controller 0, drive 1, started ***********
128:
129: Formatting media...
130: Formatting complete.
131: Creating maintenance cylinders...
132: Verifying maintenance area...
133:
134: Scanning cylinder 709..
135:
136: No bad sectors found in maintenance area.
137: Maintenance area verified.
138: Writing read only patterns.
139: Writing Read / Write patterns.
140: Maintenance cylinders complete.
141: Scanning for bad sectors...
142: Verifying bad sector relocation area...
143:
144: Scanning cylinder 706...
145: The following sector is bad:
146: 542977
147:
148: 1 bad sector found in file system area.
149: Relocation area verified.
150: Verifying file system area...
151:
152: Scanning cylinder 0...........................................
153: : (prints one dot for each cylinder verified.)
154: :
155: :
156: Scanning cylinder 700...... (4 1/2 hours later...)
157: The following sectors are bad:
158: 1639
159: 2407
160: 271323
161:
162: 3 bad sectors found in file system area.
163: File system area verified.
164:
165: Bad block scan complete.
166: Relocating bad sectors...
167: Sector #1639 relocated to sector #542215
168: Sector #2407 relocated to sector #542247
169: Sector #271323 relocated to sector #542235
170: Relocation complete.
171:
172: ********** Formatting on controller 0, drive 1 completed ok. **********
173: .in -0.2i
174: .sp
175: \fBEXAMPLE OF RELOCATION OPTION\fP
176: .in +0.2i
177: Boot
178: : \fBxfd(0,0)/stand/vdformat\fP
179: nnnnn+nnnn+nnnnnn start 0x800
180: Do you wish to format media? [y/n] (n): \fBn\fP
181: Do you wish to relocate bad sectors? [y/n] (n): \fBy\fP
182:
183: Enter controller number and drive number for each disk.
184: Key <RETURN> to controller number prompt when through.
185:
186: Controller number? [0-3]: \fB0\fP
187: Unit number? [0-3]: \fB1\fP
188: Drive type? [fsd/smd/xfd/xsd]: \fBxfd\fP
189: Is an 'xfd' drive on controller 0 unit 1 ok? [y/n] (n): \fBy\fP
190:
191: Controller number? [0-3]:
192:
193: *********** Relocation on controller 0, drive 1, started ***********
194:
195: Just key <RETURN> when through entering sector numbers.
196: Sector number? \fB4711\fP
197: Relocate sector #4711? [y/n] (n) \fBy\fP
198:
199: Sector number? \fB9640\fP
200: Relocate sector #9640? [y/n] (n) \fBy\fP
201:
202: Sector number? \fB8519\fP
203: Relocate sector #8519? [y/n] (n) \fBy\fP
204:
205: Sector number?
206:
207: Relocating bad sectors...
208: Sector #4711 relocated to sector #542343
209: Sector #8519 relocated to sector #542375
210: Sector #9640 relocated to sector #542216
211: Relocation complete.
212:
213: ********** Relocation on controller 0, drive 1 completed ok. **********
214: .in -0.2i
215: .fi
216: .sp 1
217: .SH DIAGNOSTICS
218: .sp 1
219: Below is a list of each possible error message, an explanation
220: of what the message means, and suggestions for corrective actions.
221: Any comments related to hardware problems are in no way
222: definitive or complete; they are merely meant to aim the operator in the
223: probable direction when a failure occurs.
224: .PP
225: Every error will produce one or more
226: messages, and each hard error will display the status word that caused
227: .I vdformat
228: to fail. The status word will be displayed in hexadecimal, so
229: conversion to binary is up to the operator.
230: The meanings of the status word's bit fields are:
231: .sp 1
232: .in +0.1i
233: .nf
234: 31 0
235: +--------------------------------+
236: ||||||||||||||||||||||||||||||||||
237: +--------------------------------+
238: ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^
239: ||||| |||||||||||||||||||||||||+-- Header CRC error detected.
240: ||||| ||||||||||||||||||||||||+--- Header compare error.
241: ||||| |||||||||||||||||||||||+---- Disk write protected.
242: ||||| ||||||||||||||||||||||+----- Controller fault.
243: ||||| |||||||||||||||||||||+------ Disk seek error.
244: ||||| ||||||||||||||||||||+------- Uncorrectable data error.
245: ||||| |||||||||||||||||||+-------- Disk not on cylinder.
246: ||||| ||||||||||||||||||+--------- Disk drive not ready.
247: ||||| |||||||||||||||||+---------- Alternate track accessed.
248: ||||| ||||||||||||||||+----------- Seek started.
249: ||||| |||||||||||||||+------------ Invalid disk address issued.
250: ||||| ||||||||||||||+------------- Non-existent memory error.
251: ||||| |||||||||||||+-------------- Main memory parity error.
252: ||||| ||||||||||||+--------------- Data compare error.
253: ||||| |||||||||||+---------------- Drive is ready.
254: ||||| ||||||||||+----------------- Operation aborted.
255: ||||| |||||||||+------------------ Tried data strobe early.
256: ||||| ||||||||+------------------- Tried data strobe late.
257: ||||| |||||||+-------------------- Tried track offset plus.
258: ||||| ||||||+--------------------- Tried track offset minus.
259: ||||| |||||+---------------------- Controller performed data correction.
260: ||||| ||||+----------------------- Uncorrected error happened (hard).
261: ||||| |||+------------------------ Corrected error happened (soft).
262: ||||| ||+------------------------- An error happened (hard or soft).
263: ||||| |+-------------------------- Invalid command.
264: ||||+-+--------------------------- unused.
265: |||+------------------------------ DCB aborted by system.
266: ||+------------------------------- Unsuccessful completion.
267: |+-------------------------------- DCB completed.
268: +--------------------------------- DCB started.
269: .fi
270: .sp 1
271: .in -0.2i
272: \fBError messages and their meanings.\fP
273: .sp 1
274: .in +0.2i
275: .nf
276: 1. \fB****** Formatting on controller x, drive y ABORTED! *****\fP
277: .fi
278: .in +0.5i
279: An uncorrectable error was encountered and the format operation was
280: terminated. The lines above this message should show exactly what
281: happened to force conclusion of the formatting process.
282: If another unit is on the list of drives to be formatted then processing
283: will continue with the next drive.
284: .in -0.5i
285: .sp 1
286: .nf
287: 2. \fB****** Relocation on controller x, drive y ABORTED! *****\fP
288: .fi
289: .in +0.5i
290: An uncorrectable error was encountered and the relocate operation was
291: terminated. The lines above this message should show exactly what
292: happened to force conclusion of the relocation process.
293: If another unit is to have sectors relocated then processing
294: will continue with the next drive.
295: .in -0.5i
296: .sp 1
297: .nf
298: 3. \fBA drive number must be specified!\fP
299: .fi
300: .in +0.5i
301: Only a carriage return was keyed in response to the "Drive number" prompt.
302: There is no default drive number, so
303: .I vdformat
304: checks to make sure that a valid drive number was specified, and forces
305: the operator to enter a valid drive number.
306: .in -0.5i
307: .sp 1
308: .nf
309: 4. \fBAn operation must be specified!\fP
310: .fi
311: .in +0.5i
312: .I Vdformat
313: has only two options: format, and relocate. If neither operation was
314: specified, this error message is printed and the operator is given
315: another chance at specifying an appropriate operation.
316: .in -0.5i
317: .sp 1
318: .nf
319: 5. \fBBad sector relocation area is full!\fP
320: .fi
321: .in +0.5i
322: An appropriate relocation sector could not be allocated on the disk.
323: The disk should be replaced.
324: .in -0.5i
325: .sp 1
326: .nf
327: 6. \fBSector number must be between 0 and nnn!\fP
328: .fi
329: .in +0.5i
330: The sector number specified for relocation was out of range for the disk.
331: Reenter an appropriate number.
332: .in -0.5i
333: .sp 1
334: .nf
335: 7. \fBController number nn is illegal!\fP
336: .fi
337: .in +0.5i
338: The controller number specified was either non-numeric
339: or out of range.
340: Reenter an appropriate number.
341: .in -0.5i
342: .sp 1
343: .nf
344: 8. \fBCPU aborted operation! Status = xxxxxxxx\fP
345: .fi
346: .in +0.5i
347: This message should never happen, but if it does it is indicative of a
348: CPU related problem.
349: .in -0.5i
350: .sp 1
351: .nf
352: 9. \fBData error during format operation!\fP
353: .fi
354: .in +0.5i
355: A \fBreally bad\fP spot was found on the disk surface. The spot was so
356: bad that formatting can not continue... If the cables to the drive are intact,
357: the disk drive should be replaced.
358: .in -0.5i
359: .sp 1
360: .nf
361: 10. \fBDisk seek error! Status = xxxxxxxx\fP
362: .fi
363: .in +0.5i
364: The disk failed to seek to a new cylinder properly. Check cables to
365: the drive, and if they are ok, replace the drive.
366: .in -0.5i
367: .sp 1
368: .nf
369: 11. \fBDrive failed to start!\fP
370: .fi
371: .in +0.5i
372: A stopped drive failed to spin up when commanded to do so. Make sure the
373: "start" button on the drive is depressed, the cables are ok, and the disk
374: is powered on. If everything is ok, and the problem still persists, try
375: powering the system down to reset the Versabus. If that fails replace
376: the drive.
377: .in -0.5i
378: .sp 1
379: .nf
380: 12. \fBDrive is not ready! Status = xxxxxxxx\fP
381: .fi
382: .in +0.5i
383: The disk suddenly spun down or dropped off cylinder. Check cables to
384: the drive, and if they are ok, replace the drive.
385: .in -0.5i
386: .sp 1
387: .nf
388: 13. \fBDrive is write protected! Status = xxxxxxxx\fP
389: .fi
390: .in +0.5i
391: The drive was write protected during a write or format operation. Release
392: the write protect switch on the drive and start the operation over.
393: .in -0.5i
394: .sp 1
395: .nf
396: 14. \fBDrive number nn is illegal!\fP
397: .fi
398: .in +0.5i
399: Each controller can have a maximum of four drives connected to it.
400: Therefore, the drive number must be between zero and three. (All drive and
401: controller numbers are zero relative.) Reenter a drive number between zero
402: and three.
403: .in -0.5i
404: .sp 1
405: .nf
406: 15. \fBDump of MDCB: nnn nnn nnn and DCB: nnn nnn nnn nnn nnn nnn nnn\fP
407: .fi
408: .in +0.5i
409: This message is for use by CCI systems programmers to aid diagnoses over the
410: phone. The meaning of each field is as follows:
411: .sp 1
412: .nf
413: .in +0.3i
414: \fBMDCB Layout\fP
415: +--------+--------+--------+--------+
416: | Address of first DCB |
417: +--------+--------+--------+--------+
418: | Address of current DCB |
419: +--------+--------+--------+--------+
420: | Address of DCB causing interupt |
421: +--------+--------+--------+--------+
422: | Controller status | (see description above.)
423: +--------+--------+--------+--------+
424:
425:
426: .ti +0.05i
427: \fBDCB Layout\fP
428: +--------+--------+--------+--------+
429: | Address of next DCB |
430: +--------+--------+--------+--------+
431: | interupt flags | opcode |
432: +--------+--------+--------+--------+
433: | operation status | (see description above.)
434: +--------+--------+--------+--------+
435: | | | trailer|
436: | unused | unit | word |
437: | | | count |
438: +--------+--------+--------+--------+
439: | error memory address |
440: +--------+--------+--------+--------+
441: | error word count |
442: +--------+--------+--------+--------+
443: | error track | error cylinder |
444: +--------+--------+--------+--------+
445: | trailer |
446: | : |
447: +--------+--------+--------+--------+
448: .fi
449: .in -0.8i
450: .sp 1
451: .nf
452: 16. \fBEntry ignored!\fP
453: .fi
454: .in +0.5i
455: This message is just an advisory message.
456: When verifying that a controller / drive / drive type combination is
457: ok and the operator answered 'no', it shows that this combination will
458: not be entered into the list of drives to be done.
459: .in -0.5i
460: .sp 1
461: .nf
462: 17. \fBIllegal drive type 'xxx'\fP
463: .fi
464: .in +0.5i
465: Drive type specified was not an 'fsd', 'smd', 'xfd' or 'xsd'
466: drive. Specify
467: a correct drive type.
468: .in -0.5i
469: .sp 1
470: .nf
471: 18. \fBInvalid disk address issued! Status = xxxxxxxx\fP
472: .fi
473: .in +0.5i
474: A disk address, that the drive was incapable of seeking to, was issued.
475: Make sure the drive type was specified correctly. If the drive type was
476: correct, check cables and controller firmware revision levels for problems.
477: .in -0.5i
478: .sp 1
479: .nf
480: 19. \fBMain memory parity error! Status = xxxxxxxx\fP
481: .fi
482: .in +0.5i
483: An uncorrectable parity error was detected while accessing system
484: memory. Run memory diagnostics before continuing.
485: .in -0.5i
486: .sp 1
487: .nf
488: 20. \fBMaximum of 1000 bad tracks exceeded!\fP
489: .fi
490: .in +0.5i
491: For the sake of sanity, an arbitrary limit of 1000 disk errors was set.
492: If a disk has more than one-thousand errors, then the disk
493: should be replaced. Be sure to check the cables before throwing out a
494: perfectly good disk though.
495: .in -0.5i
496: .sp 1
497: .nf
498: 21. \fBNon-existent memory error! Status = xxxxxxxx\fP
499: .fi
500: .in +0.5i
501: The VDDC disk controller was asked to write to memory that is not
502: present on the system memory bus. Check the CPU operations and
503: the main memory voltages to ensure proper operation before retrying.
504: .in -0.5i
505: .sp 1
506: .nf
507: 22. \fBNot on cylinder error! Status = xxxxxxxx\fP
508: .fi
509: .in +0.5i
510: The disk suddenly spun down or dropped off cylinder. Check cables to
511: the drive, and the controller revision level, if they are ok, replace the drive.
512: .in -0.5i
513: .sp 1
514: .nf
515: 23. \fBPattern count must be between 1 and 10.\fP
516: .fi
517: .in +0.5i
518: From one to ten patterns may be used during certification. The operator
519: entered a number that was greater than ten. Reenter a correct number.
520: .in -0.5i
521: .sp 1
522: .nf
523: 24. \fBResponse must start with a digit!\fP
524: .fi
525: .in +0.5i
526: All numbers entered should start with a decimal digit. Number conversions
527: stop at the end of line character, or the first non-numeric character found.
528: Reenter line containing only numeric characters.
529: .in -0.5i
530: .sp 1
531: .nf
532: 25. \fBSector #nnnnnnnn was not relocated successfully! Status = xxxxxxxx\fP
533: .fi
534: .in +0.5i
535: After attempting to relocate a sector, the controller failed to show
536: successful relocation of the sector. Check cables, controller revision levels,
537: and, if all else fails, try a new drive.
538: .in -0.5i
539: .sp 1
540: .nf
541: 26. \fBVDDC controller timeout during drive configuration.\fP
542: .fi
543: .in +0.5i
544: The disk controller got hung up during a configuration operation.
545: This should not happen, however, if it does,
546: reset system, check cables, and controller prom
547: revision levels then try again.
548: .in -0.5i
549: .sp 1
550: .nf
551: 27. \fBVDDC controller timeout during startup operation.\fP
552: .fi
553: .in +0.5i
554: The disk controller got hung up while trying to start the drives.
555: Reset system, check cables,
556: and controller prom revision levels, then try again.
557: .in -0.5i
558: .sp 1
559: .nf
560: 28. \fBVDDC controller timeout in access.\fP
561: .fi
562: .in +0.5i
563: Controller hung up while trying to read or write to disk.
564: Reset system, check cables, and controller prom revision levels, then try again.
565: .in -0.5i
566: .sp 1
567: .nf
568: 29. \fBVDDC controller timeout in format sectors.\fP
569: .fi
570: .in +0.5i
571: The disk controller hung up while trying to format a drive.
572: Reset system, check cables, and controller prom revision levels, then try again.
573: .in -0.5i
574: .sp 1
575: .nf
576: 30. \fBYou must specify at least one controller number!\fP
577: .fi
578: .in +0.5i
579: During a \fBformat\fP or \fBrelocation\fP operation,
580: there must be at least one unit
581: on the list of drives left to do. Enter at least one controller /
582: unit / drive type and then the operation can begin.
583: .in -0.7i
584: .sp 1
585: .SH BUGS
586: Occasionally the VDDC controller hangs up and \fBwill not reset\fP itself when
587: commanded to do so. Since there is no way to reset the Versabus from the
588: Power-6 CPU, the controller can only be reset by turning the power to the CPU
589: off and then on again. Until that is done, every drive
590: attached to the hung controller will also fail when accessed.
591: This problem should rarely, if ever, occur.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.