]> git.ipfire.org Git - thirdparty/mdadm.git/blame_incremental - TODO
mdadm-0.8.2
[thirdparty/mdadm.git] / TODO
... / ...
CommitLineData
1
2Document "missing"
3
4
5?? Allow -S /dev/md? - current complains subsequent not a/d/r - DONE
6
7* new "Query" mode to subsume --detail and --examine.
8 --query or -Q, takes a device and tells if it is an MD device,
9 and also tells in a raid superblock is found.
10 DONE
11
12* write mdstat.c to parse /proc/mdstat file
13 Build list of arrays: name, rebuild-percent
14 DONE
15
16* parse /proc/partitions and map major/minor into /dev/* names,
17 and use that for default DEVICE list ????
18
19* --detail --scan to read /proc/mdstat, and then iterate over these,
20 but assume --brief. --verbose can override
21 check each subdevice to see if it is in conf_get_devs.
22 Warn if not.
23 DONE, but don't warn yet...
24
25* Support multipath ... maybe...
26 maybe DONE
27
28* --follow to syslog
29
30* --follow to move spares around
31
32* --follow to notice other events:
33 rebuild started
34 spare activated
35 spare removed
36 spare added
37
38------------------------------------
39- --examine --scan scans all drives and build an mdadm.conf file DONE
40
41- check superblock checksum in examine DONE
42- report "chunk" or "rounding" depending on raid level DONE
43- report "linear" instead of "-1" for raid level DONE
44- decode ayout depending on raid level DONE
45- --verbose and --force flags. DONE
46
47- set md_minor, *_disks for Create - DONE
48- for create raid5, how to choose between
49 all working, but not insync
50 one missing, one spare, insync DONE (--force)
51- and for raid1 - some failed drives... (missing)
52
53- when RUN_ARRAY, make sure *_disks counts are right
54
55- get --detail to extract extra stuff from superblock,
56 like uuid DONE
57- --detail --brief to give a config file line DONE
58- parse config file. DONE
59- test...
60
61- when --assemble --scan, if an underlying device is an md device,
62 then try to assemble that device first.
63
64
65- mdadm -S /dev/md0 /dev/md1 gives internal error FIXED
66
67- mdadm --detail --scan print summary of what it can find?
68
69
70---------
71Assemble doesn't add spares. - DONE
72Create to allow "missing" name for devices.
73Create to accept "--force" for do exactly what is requested
74- get Assemble to upgrade devices if force flag.
75ARRAY lines in config file to have super_minor=n
76ARRAY lines in config file to have device=pattern, and only accept
77 those devices
78 If UUID given, insist on that
79 If not, but super_minor given, require all found with that minor
80 to have same uuid
81 If only device given, all valid supers on those devices must have
82 same uuid
83allow /dev/mdX as first argument before any options
84Possible --dry-run option for create and assemble--force
85
86Assemble to check that all devices mentioned in superblock
87 are present.
88
89New mode: --Monitor (or --Follow)
90 Periodically check status of all arrays (listed in config file).
91 Log every event and apparent cause - or differences
92 Email and alert - or run a program - for important events
93 Move spares around if necessary.
94
95 An Array line can have a spare-group= field that indicates that
96 the array shares spares with other arrays with the same
97 spare-group name.
98 If an array has a failed and no spares, then check all other
99 arrays in the spare group. If one has no failures and a spare,
100 then consider that spare.
101 Choose the smallest considered spare that is large enough.
102 If there is one, then hot-remove it from it's home, and
103 hot-add it to the array in question.
104
105 --mail-to address
106 --alert-handler program
107
108 Will also extract information from /proc/mdstat if present,
109 and consider 20% marks in rebuild as events.
110
111 Events are:
112 drive fails - causes mail to be sent
113 rebuild started
114 spare activated
115 spare removed
116 spare added