summaryrefslogtreecommitdiffstats
path: root/mdadm.conf-example (unfollow)
Commit message (Collapse)AuthorFilesLines
2008-08-19Make metadata updates from manage to monitor 'synchronous'NeilBrown1-18/+25
A metadata update may modify the data structure of the metadata including freeing things, so it is not safe of the manager to touch the metadata while an update is pending in the monitor. So When an update has been submitted, don't do anything else in the manager until it is complete. Signed-off-by: NeilBrown <neilb@suse.de>
2008-08-19Extra option for set_array_state: you choose dirty or clean.NeilBrown4-15/+21
When we first start an array, it might be good to start recovery straight away. That requires setting the array to 'dirty', but only the metadata handler can know if that is required or not. So have a third possible 'consistent' option to set_array_state. Either 'no' or 'yes' or 'you choose'. Return value indicates what was chosen. '1' (no) should be chosen unless there is a good reason. Signed-off-by: NeilBrown <neilb@suse.de>
2008-08-15mdmon: handle failures versus readauto arraysDan Williams2-4/+21
Transition readauto arrays to active before failing drives. Hmm... why do we keep reblocking / renotifying in the readonly case? Need to bottom out on this, but not right now. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-08-15mdmon: allow degraded arrays to be monitoredDan Williams3-3/+15
manage_new is too strict in the face of failed devices. Teach it to monitor degraded arrays. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-08-15imsm: include not synced disks in imsm_count_failedDan Williams1-0/+2
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-08-15imsm: use disk_ord_tbl to identify rebuilding disksDan Williams1-2/+22
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-08-12imsm: fix up assembly of disks that are not in-syncDan Williams1-10/+41
1/ Do not assemble !in_sync or failed devices in container_content. 2/ Prevent activation of failed or configured devices in activate_spare. 3/ Be sure to avoid dirty degraded if the array was shutdown cleanly. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-08-12imsm: fix create by mdmon-updateDan Williams1-3/+3
imsm_dev dynamically grows, so dev_idx needs to be moved up in the definition to avoid getting clobbered. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-08-12imsm: write_super return 0 on successDan Williams1-5/+5
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-08-12imsm: update mpb_size in write_super_imsmDan Williams1-0/+5
With dev->vol.map and mpb->disk entries entering and leaving the parameter block write_super_imsm needs to update the size before writeback. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-08-12mdmon: use activate spare for re-addDan Williams2-92/+139
Disks that are not in-sync or failed are not assembled into member arrays by mdadm. Teach mdmon to resolve this situation by checking for spares at start. imsm_activate_spare() is updated to prefer devices that can be re-added versus new spares. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-08-12imsm: fix handling of the 'migr_state' and 'migr_type' bitsDan Williams1-23/+54
The option-rom and the Matrix driver mark resyncs/rebuilds with the migrate state bits. Update sizeof_imsm_dev to allow allocation of imsm_dev entries large enough to grow if migr_state is later set. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-08-11imsm: add get_imsm_map and sizeof_imsm_mapDan Williams1-37/+41
retrieve map entries from a imsm_dev, and cleanup imsm_copy_dev Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-08-11imsm: drop 'external' from imsm_examine_briefDan Williams1-4/+1
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-08-11imsm: ensure 'usable' remains clear until the disk is in_syncDan Williams1-1/+7
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-08-09imsm: spare devices are represented as single disk containersDan Williams1-116/+221
This poses a small problem for the case of handling multiple raid1 arrays across separate disk pairs i.e. 2 mirrors on 4 disks. The option-ROM will configure this as two containers. We may need the capability for one container to ask for an unused spare in another container. For now spares will just maintain the affinity established at assemble time. To support this configuration spare devices must be allowed to be assembled into the container even though the metadata indicates the disk belongs to a different family. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-08-09imsm: store imsm_disk entries in the super->disks listDan Williams1-56/+25
removes the need to lookup the disk by index in a few cases and is a preparation step for tracking spares outside the current anchor. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-08-07mdmon: use 'recover' instead of 'repair' when activating a spareDan Williams1-1/+1
Repair sets MD_RECOVERY_REQUESTED in md which may not result in the spare device being recovered. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-08-07imsm: bad block management (phase1)Jacek Danecki1-4/+74
This is the initial defensive implementation of bad block management support. It simply precludes assembly if there are entries in the bad block logs. This is sufficient for now as the conditions that lead to an entry in the bad block log would cause the array to be failed by MD (as of 2.6.27). [dan.j.williams@intel.com: general cleanups] Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-08-07imsm: do not mark arrays 'clean' if resync still in progressDan Williams1-5/+13
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-08-07imsm: raid5 layout is left-asymmetricDan Williams1-1/+1
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-08-05mdmon: ignore inactive arrays and other manage_new() cleanupsDan Williams1-23/+49
While mdadm is constructing an array mdmon may see an intermediate state (some disks not yet added / redundancy attributes like sync_action not available). Waiting for mdstat->active == true ensures that the array is ready to be handled. This fixes a bug in create array via mdmon update whereby failures are not detected in the new array. Introduce aa_ready() to catch cases where the active_array is not correctly initialized. Barring a kernel bug this should never trigger, nonetheless it precludes a class of bugs like the one mentioned above from triggering. Cleanup the exit paths and only call replace_array when the new array is ready to be inserted into container->arrays. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-08-01Cosmetic cleanup of some messages.NeilBrown3-5/+7
e.g. --raid-disks is preferred over --raid-devices. Thanks to "Jon Nelson" <jnelson-linux-raid@jamponi.net> Signed-off-by: NeilBrown <neilb@suse.de>
2008-07-26imsm: trim some memory wastageDan Williams1-4/+16
drop the previously loaded data as load_imsm_super_all loops through the disks. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-07-26imsm: refactor mpb handling into parse and coalesceDan Williams1-117/+241
Maintaining a single global buffer is unwieldly when extending/rewriting sections of the metadata. Parse the metadata into component data structures upon reading and coalesce to a coherent buffer before writing. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-07-25mdmon: don't fork if DEBUGDan Williams1-16/+32
2008-07-25imsm: use component_size not total array size in container_content_imsmDan Williams1-6/+1
Also kill setting ->array.size as nothing appears to be using it. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-07-25imsm: take chunksize into account when calculating blocks_per_memberDan Williams1-1/+6
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-07-25sysfs: deprecate sysfs_disk_to_sgDan Williams3-13/+3
The cmd_filter patch merged for 2.6.27 broke retrieving the serial number via an ioctl to /dev/sgN. In debugging this I found that other utilities like sdparm simply run the ioctl on /dev/sdX. So just convert to that for protection in numbers, but scream on the mailing list for the inconvenience grr... Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-07-25imsm: fix store_zero_imsm breakage from posix_memalign conversionDan Williams1-2/+2
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-07-25imsm: debug environment variable to use 'device name' as 'serial number'Dan Williams1-3/+46
Facilitate using loopback devices for the imsm regression suite Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-07-25imsm: allow --examine to succeed with damaged metadataDan Williams1-2/+15
limp along after seeing mismatched serial numbers Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-07-25imsm: handle degraded->normal transitions in set_diskDan Williams2-6/+16
Removes the need for the call to ->set_array_state when sync_action transitions from 'recover' to 'idle'. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-07-25imsm: create array via update to mdmonDan Williams1-1/+168
2008-07-25Clean up usage of open()Doug Ledford7-9/+9
Fix on call that passed an invalid mode to open Don't pass a third arg unless we also pass O_CREAT Use symbolic args for 2nd and 3rd args Signed-off-by: Doug Ledford <dledford@redhat.com>
2008-07-24Add support for distribution specific build extensionsDoug Ledford1-0/+6
Signed-off-by: Doug Ledford <dledford@redhat.com>
2008-07-22install mdmon to the same location as mdadmJacek Danecki1-1/+2
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-07-22imsm: remove some castsDan Williams1-3/+3
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-07-21imsm: activate_spare: fix handling of data_offsetDan Williams1-9/+14
Neil rightly points out that imsm_activate_spare may skip valid free space on a spare, fix this up. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-07-19Document MDADM_NO_MDMONDan Williams1-0/+10
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-07-19Documentation fixup for stripe_cache_sizeDan Williams1-6/+9
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-07-19Document preread_bypass_thresholdDan Williams1-0/+9
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-07-18msg: add a timeout to ping_monitorNeilBrown1-2/+2
Though it should never bee needed, having a timeout in ping_monitor is a sensible safeguard. Signed-off-by: Neil Brown <neilb@suse.de>
2008-07-18monitor: call get_resync_start on array shutdown.NeilBrown1-0/+1
If the array is shutdown as soon as resync finishes, we might not notice the resync finish. So on array shutdown, check for current resync pos. Signed-off-by: Neil Brown <neilb@suse.de>
2008-07-18Manage: sync with mdmon before stopping containers.NeilBrown1-0/+9
mdmon sometimes opens the container. That will prevent 'stop' from working. So sync with mdmon first. Signed-off-by: Neil Brown <neilb@suse.de>
2008-07-18Manage: fixed some error message in --stopNeilBrown1-6/+11
Explain the meaning of 'quiet' explicitly, and fix some grammar and formatting. Signed-off-by: Neil Brown <neilb@suse.de>
2008-07-18mdmon: fork and run as a daemon.NeilBrown2-1/+45
start_mdmon now waits for mdmon to complete initialisation and, importantly, listen on the socket, before continuing. Signed-off-by: Neil Brown <neilb@suse.de>
2008-07-18sysfs: avoid possible data corruption in sys_load.NeilBrown1-1/+1
Don't retry to remove a newline from the end of an empty string. Signed-off-by: Neil Brown <neilb@suse.de>
2008-07-18Correct readlink usage in sysfs.cNeilBrown1-2/+4
readlink doesn't nul-terminate the returned string, so we must be sure to do that. Signed-off-by: Neil Brown <neilb@suse.de>
2008-07-18Don't assume that mdmon is in the current directory.NeilBrown1-4/+27
Rather, assume that it is in the same directory from which mdadm was run. If not, then maybe /sbin or current directory. Signed-off-by: Neil Brown <neilb@suse.de>