1: /*
2: * Copyright (c) 1986 Regents of the University of California.
3: * All rights reserved. The Berkeley software License Agreement
4: * specifies the terms and conditions for redistribution.
5: *
6: * @(#)dkbad.h 1.1 (2.10BSD Berkeley) 12/1/86
7: */
8:
9: /*
10: * Definitions needed to perform bad sector
11: * revectoring ala DEC STD 144.
12: *
13: * The bad sector information is located in the
14: * first 5 even numbered sectors of the last
15: * track of the disk pack. There are five
16: * identical copies of the information, described
17: * by the dkbad structure.
18: *
19: * Replacement sectors are allocated starting with
20: * the first sector before the bad sector information
21: * and working backwards towards the beginning of
22: * the disk. A maximum of 126 bad sectors are supported.
23: * The position of the bad sector in the bad sector table
24: * determines which replacement sector it corresponds to.
25: *
26: * The bad sector information and replacement sectors
27: * are conventionally only accessible through the
28: * 'c' file system partition of the disk. If that
29: * partition is used for a file system, the user is
30: * responsible for making sure that it does not overlap
31: * the bad sector information or any replacement sector.s
32: */
33:
34: /*
35: * The 2.10BSD system defines MAXBAD as 32, not 126, although there
36: * should be no problem with increasing that value. It's your basic
37: * space tradeoff. Also, 2.10 drivers tend to have the bad sector
38: * information available through the 'h' file system partition, although
39: * there are exceptions to this rule. Note, this value is also present
40: * in the bad144 program.
41: */
42: #define MAXBAD 32 /* Maximum bad sectors supported */
43:
44: struct dkbad {
45: long bt_csn; /* cartridge serial number */
46: u_short bt_mbz; /* unused; should be 0 */
47: u_short bt_flag; /* -1 => alignment cartridge */
48: struct bt_bad {
49: u_short bt_cyl; /* cylinder number of bad sector */
50: u_short bt_trksec; /* track and sector number */
51: } bt_bad[MAXBAD];
52: };
53:
54: #define ECC 0
55: #define SSE 1
56: #define BSE 2
57: #define CONT 3
Defined struct's
dkbad
defined in line
44; used 12 times
Defined macros
BSE
defined in line
56; used 2 times
CONT
defined in line
57; used 4 times
ECC
defined in line
54; used 2 times
SSE
defined in line
55;
never used
Usage of this include