1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 #ifndef _RF__RF_MAP_H_
34 #define _RF__RF_MAP_H_
35
36 #include "rf_types.h"
37 #include "rf_alloclist.h"
38 #include "rf_raid.h"
39
40
41 RF_AccessStripeMapHeader_t *rf_MapAccess(RF_Raid_t *, RF_RaidAddr_t,
42 RF_SectorCount_t, caddr_t, int);
43
44 void rf_MarkFailuresInASMList(RF_Raid_t *, RF_AccessStripeMapHeader_t *);
45
46 RF_AccessStripeMap_t *rf_DuplicateASM(RF_AccessStripeMap_t *);
47
48 RF_PhysDiskAddr_t *rf_DuplicatePDA(RF_PhysDiskAddr_t *);
49
50 int rf_ConfigureMapModule(RF_ShutdownList_t **);
51
52 RF_AccessStripeMapHeader_t *rf_AllocAccessStripeMapHeader(void);
53
54 void rf_FreeAccessStripeMapHeader(RF_AccessStripeMapHeader_t *);
55
56 RF_PhysDiskAddr_t *rf_AllocPhysDiskAddr(void);
57
58 RF_PhysDiskAddr_t *rf_AllocPDAList(int);
59
60 void rf_FreePhysDiskAddr(RF_PhysDiskAddr_t *);
61
62 RF_AccessStripeMap_t *rf_AllocAccessStripeMapComponent(void);
63
64 RF_AccessStripeMap_t *rf_AllocASMList(int);
65
66 void rf_FreeAccessStripeMapComponent(RF_AccessStripeMap_t *);
67
68 void rf_FreeAccessStripeMap(RF_AccessStripeMapHeader_t *);
69
70 int rf_CheckStripeForFailures(RF_Raid_t *, RF_AccessStripeMap_t *);
71
72 int rf_NumFailedDataUnitsInStripe(RF_Raid_t *, RF_AccessStripeMap_t *);
73
74 void rf_PrintAccessStripeMap(RF_AccessStripeMapHeader_t *);
75
76 void rf_PrintFullAccessStripeMap(RF_AccessStripeMapHeader_t *, int);
77
78 void rf_PrintRaidAddressInfo(RF_Raid_t *, RF_RaidAddr_t, RF_SectorCount_t);
79
80 void rf_ASMParityAdjust(RF_PhysDiskAddr_t *, RF_StripeNum_t, RF_SectorNum_t,
81 RF_RaidLayout_t *, RF_AccessStripeMap_t *);
82
83 void rf_ASMCheckStatus(RF_Raid_t *, RF_PhysDiskAddr_t *,
84 RF_AccessStripeMap_t *, RF_RaidDisk_t **, int);
85
86 #endif