summaryrefslogtreecommitdiffstats
path: root/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog781
1 files changed, 11 insertions, 770 deletions
diff --git a/ChangeLog b/ChangeLog
index adf622c..c7e0f7a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,770 +1,11 @@
-Changed Prior to this release
- - --readwrite can be used with --re-add to clear the writemostly
- flag.
-
-Changes Prior to 2.6.7 release
- - Avoid NULL reference calling free_super and elsewhere.
- - Remove stray semicolon (Causes compile error with gcc-2.95)
- - Fix autoassemble for stack arrays.
-
-Changes Prior to 2.6.6 release
- - "make everything" now make mdassemble.auto
- - fix compile problem with mdassemble.auto
- - Update FAQ URLs in man page again.
-
-Changes Prior to 2.6.5 release
- - Avoid segfault when parsing /proc/mdstat with auto-read-only
- arrays.
- - Fix problem with failing to add devices to v.large (>4TB) arrays,
- cause by problems with device-size overflow.
- - For v0.90 superblocks, print the 'Events' count as a real count,
- not 2 numbers separated by a dot.
- - Updates some URLs in the man page.
- - Allow creation of a RAID6 with exactly one missing device.
- - Use LOG_PID for syslog, so you get the pid of mdadm in the log
- files.
- - --export now works with --examine too (not just --detail)
- - Improve auto-creation of device special file when using
- --incremental
- - Simple locking for --incremental so mdadm doesn't get confused
- when run concurrently with itself.
- - Make --incremental cope better with arrays that are being reshaped.
-
-Changes Prior to 2.6.4 release
- - Make "--create --auto=mdp" work for non-standard device names.
- - Fix restarting of a 'reshape' if it was stopped in the middle.
- - Fix a segfault when using v1 superblock.
- - Make --write-mostly effective when re-adding a device to an array.
- - Various minor fixes
-
-Changes Prior to 2.6.3 release
- - allow --write-behind to be set for --grow.
- - When adding new disk to an array, don't reserve so much bitmap
- space that the disk cannot store the required data. (Needed when
- 1.x array was created with older mdadm).
- - When adding a drive that was a little too small, we did not get
- the correct error message.
- - Make sure that if --assemble find an array in the critical region
- of a reshape, and cannot find the critical data to restart the
- reshape, it gives an error message.
- - Fix segfault with '--detail --export' and non-persistent
- superblocks.
- - Various manpage updates.
- - Improved 'raid4' support (--assemble, --monitor)
- - Option parsing fixes w.r.t -a
- - Interpret "--assemble --metadata=1" to allow any version 1.x
- metadata, and be more specific in the "metadata=" message printed
- with --examine --brief
- - Fix spare migration in --monitor.
-
-Changes Prior to 2.6.2 release
- - --fail detached and --remove faulty can be used to fail and
- remove devices that are no longer physically present.
- - --export option for --detail or present information in a format
- that can be processed by udev.
- - fix internal bitmap allocation problems with v1.1, v1.2 metadata.
- - --help now goes to stdout so you can direct it to a pager.
- - Various manpage updates.
- - Make "--grow --add" for linear arrays really work.
- - --auto-detect to trigger in-kernel autodetect.
- - Make return code for "--detail --test" more reliable. Missing
- devices as well as failed devices cause an error.
-
-Changes Prior to 2.6.1 release
- - --monitor was producing some meaningless warnings due to a bug.
- - Fix some compiler warnings.
- - Fully support --grow for raid6. If a reshape crashed during the
- critical period, mdadm wouldn't restore the Q information
- properly.
- - Update documentation for --grow.
-
-Changes Prior to 2.6 release
- - Fixed UUID printing in "--detail --brief" for version1 metadata.
- - --update=resync did exactly the wrong thing for version1 metadata.
- It caused a resync to not happen, rather than to happen.
- - Allow --assemble --force to mark a raid6 clean when it has two
- missing devices (which is needed else if won't assemble.
- Without this fix it would only assemble if one or zero
- missing devices.
- - Support --update=devicesize for cases where the underlying device
- can change size.
- - Default to --auto=yes so the array devices with 'standard' names
- get created automatically, as this is almost always what is wanted.
- - Give useful message if raid4/5/6 cannot be started because it is
- not clean and is also degraded.
- - Increase raid456 stripe cache size if needed to --grow the array.
- The setting used unfortunately requires intimate knowledge of the
- kernel, and it not reset when the reshape finishes.
- - Change 'Device Size' to 'Used Dev Size' because it only shows how
- much of each device is actually used, not how big they are.
- - --wait or -W will wait for resync activity to finish on the given
- devices.
- - Fix some problems with --update=uuid and add a test.
- - If two drives in a raid5 disappear at the same time, then "-Af"
- will add them both in rather than just one and forcing the array
- to 'clean'. This is slightly safer in some cases.
- - Check device is large enough before hot-add: this improves quality
- of error message.
- - Don't hold md device open for so long in --monitor mode - map_dev
- can be slow and interferes with trying to stop the array.
- - Support --uuid= with --create to choose your own UUID.
- - New major more "--incremental" for incremental assemble of arrays,
- intended for use with udev.
-
-Changes Prior to 2.5.6 release
- - Fix bug which meant "bitmap=xxx" in mdadm.conf was not handled
- properly.
- - Documentation updates.
- - Fix bug that caused infinite loop when doing auto-assembly,
- in certain cases where arrays couldn't be assembled.
-
-Changes Prior to 2.5.5 release
- - Don't #include linux/blkpg.h as that isn't safe. Just
- include the content literally.
- - Reduce maximum bitmap usage when working with bitmap files,
- so that a only single-page allocations are made, even on
- 64bit hosts with 4K pages.
- - Close stray fd in mdassemble so that it can assemble stacked
- devices
- - If mdassemble finds an array already assembled, it marks it
- read-write.
- - Remove error in md_open if array is already active. This isn't
- needed and gets in the ways if an array was created e.g. in
- initramfs, but device doesn't yet exist in /dev.
- - When --assemble --scan is run, if all arrays that could be found
- have already been started, don't report an error.
- - Fix a couple of bugs related to raid10 and the new 'offset' layout.
- - Improve error message when a wrong '--update' option is given.
-
-Changes Prior to 2.5.4 release
- - When creating devices in /dev/md/ create matching symlinks
- from /dev. e.g. /dev/md0 -> /dev/md/0.
- Allow this to be disabled in mdadm.conf or on command line.
- - Fix some endian-ness issues with version-1 superblocks (affects
- bigendian only).
- - Fix endian problem with 'bitmap' metadata
- - Allow a number (of partitions) after the 'yes' option to --auto=
- This is particularly useful in the 'create' line in mdadm.conf.
- - Remove partitions from any whole device that is made part of
- an md array. This is a work-around for annoying messages
- when the first block on some drive accidentally looks like a
- partition table.
-
-Changes Prior to 2.5.3 release
- - Document v0.91 superblocks in md.4
- - Make GPL explicit in man pages.
- - Fix recent breakage of starting degraded arrays.
- - Tidyup automatic name choice for v-1 arrays:
- /dev/md_d0 now becomes '0', not '_d0'.
-
-Changes Prior to 2.5.2 release
- - Fix problem with compiling with gcc-2 compilers
- - Fix compile problem of post-incrmenting a variable in a macro arg.
- - Stop map_dev from returning [0:0], as that breaks things.
- - Add 'Array Slot' line to --examine for version-1 superblocks
- to make it a bit easier to see what is happening.
- - Work around bug in --add handling for version-1 superblocks
- in 2.6.17 (and prior).
- - Make -assemble a bit more resilient to finding strange
- information in superblocks.
- - Don't claim newly added spares are InSync!! (don't know why that
- code was ever in there)
- - Work better when no 'ftw' is available, and check to see
- if current uclibc provides ftw.
- - Never use /etc/mdadm.conf if --config file is given (previously
- some code used one, some used the other).
-
-Changes Prior to 2.5.1 release
- - Various fixes for gcc warnings
- - uclibc warnings
- - Makefile improvements for static linking/intalling
- - Makefile uninstall target
- - Really fix return status of --examine
- - Typos
- - Byteorder stuff (again)
- - Don't try to create devices with --manage or --grow
- - allow default metadata (superblock) type to be specified
- in mdadm.conf
- - Get --stop to list devices stopped but honour --quiet
- - remove libssl dependency
- - Avoid some misdetection of overlapping partitions
- - Fix memory leak in --monitor mode
-
-Changes Prior to 2.5 release
- - Support 'mailfrom' line in mdadm.conf so the From: line in alert
- emails can be explicitly set.
- - Arrange that SparesMissing (which is similar in import to
- DegradedArray) generates an Email.
- - Assume "DEVICE partitions" if no DEVICE line is given.
- - Support new 'offset' layout for raid10.
- - When creating a bitmap file, choose a chunksize to limit number
- of bitmap chunks to 2 million. More than this can cause kmalloc
- failure.
- - New 'CREATE' line in mdadm.conf for defaults such as owner, group,
- mode and auto-flag
- - --detail checks if array has been started or not and includes that
- in report.
- - When using --update=uuid on an array with a bitmap, update the
- bitmap's uuid too.
- - Add a copy of /proc/mdstat to the mail message sent by mdadm
- --monitor.
- - New flag --no-degraded to avoid starting arrays if there are
- fewer devices available than last time the array was started.
- This is only needed with --scan, as with --scan, that behaviour
- is the default.
- - Support for 'homehost' concept. This is a fairly major update.
- It includes a configfile option and a command line option for
- specifying a homehost, records that host in the superblock,
- and reports the homehost where possible.
- - Support for Auto Assembly. "mdadm -As" will, if provided with
- the name of a homehost, try to assemble all arrays it can find
- that were created for that homehost. See man pages for more details.
-
-Changes Prior to 2.4.1 release
- - Honour --write-mostly when adding to an array without persistent
- superblocks.
- - Fix alignment problem in version-1 superblocks.
- NOTE: This is an incompatable change affecting raid5 reshape.
- If you want to reshape a raid5 using version-1 superblocks,
- use 2.6.17-rc2 or later, and mdadm-2.4.1 or later.
-
-Changes Prior to 2.4 release
- - Rewrite 'reshape' support including performing a backup
- of the critical region for a raid5 growth, and restoring that
- backup after a crash.
- - Put a 'canary' at each end of the backup so a corruption
- can be more easily detected.
- - Remove useless 'ident' arguement from ->getinfo_super method.
- - Support --backup-file for backing-up critical section during
- growth.
- - Erase old superblocks (of different versions) when creating new
- array.
- - Allow --monitor to work with arrays with >28 devices
- - Report reshape information in --detail
- - Handle symlinks in /dev better
- - Fix mess in --detail output which a device is missing.
- - Manpage tidyup
- - Support 'bitmap=' in mdadm.conf for auto-assembling arrays with
- write-intent bitmaps in separate files.
- - Updates to md.4 man page including section on RESTRIPING and SYSFS
-
-Changes Prior to 2.3.1 release
- - Fixed -O2 compile so I could make and RPM.
- - Type cast number to be printed %llu so it compiles on 64bit
- machines. (Thanks Luca).
- - Stop using asm/byteorder.h - to make Redhat happy :-(
- - Require bitmap files to have a '/' in their name.
- - Error-check a few syscalls - code from SuSE package.
-
-Changes Prior to 2.3 release
- - Try /etc/mdadm/mdadm.conf if /etc/mdadm.conf doesn't exist.
- This provided compatability for Debian.
- - Fixed for version-1 superblock:
- report chunksize for raid6 and raid10
- make sure device size used is a multiple of chunksize
- - Fix "--assemble --scan" crash.
- - Fix completely failure to create array on ppc64
- - Fix memcmp in place of memcpy
- - A few minor improvements to online help
- - Clean up usage of 'long long' for used-size of devices, so
- that it is possible to create a raid1 of 7TB devices!
- - Make internal bitmaps work on 7TB raid1 arrays.
- - Provide error message if --examine doesn't find any superblock.
- - Report 'reshape' status in --examine - this depends on kernel
- patches that are not yet finalised.
- - Report bitmap status in --detail and --examine
- - Default to v1 superblocks instead of v0.90 if the array
- is too big for 0.90 to handle.
- - Sort the output of "mdadm --detail --scan" so that it is
- in a suitable order for assembling arrays. i.e. components come
- before an array that they are part of.
- - Print size of large reiserfs array properly went warning of
- possible confilcts.
-
-Changes Prior to 2.2 release
- - Assorted bug fixes
- - Support write-intent-bitmaps on raid10
- - Support little-endian (Rather than hostendian) bitmaps.
- - Return correct error code from 'mdadm -S'
- - Remove extra blank line from 'mdadm -Eb' output.
- - Improve option parsing so that -a and -b do not have
- optional arguements: the arg is either required or not
- depending on context.
- - Allow scanning of devices listed in /proc/partitions even
- if they don't appear in /dev.
- - Support --assume-clean in --create mode as well as --build
- - Add support for --monitor to report to syslog: -y or --syslog.
- Thanks to Ross Vandegrift
- - --monitor now reports which device failed in a 'Fail' message
- This broke with 2.6
- - Improve chance of array starting properly after a crash.
- mdadm was insisting the event numbers were identical, but this
- isn't needed, and is a problem if the crash was while the metadata
- was being updated.
- - Support --update==uuid
- - Added README.initramfs and mkinitramfs to help people use an
- initram for starting md arrays at boot.
-
-Changes Prior to 2.1 release
- - Fix assembling of raid10 array when devices are missing.
- mdadm now correctly detects if a array is workable or not
- depending on which devices are present, and so will correctly
- handle "--assemble --force" if multiple devices have failed.
- - Report raid10 layout in --examine output.
- - Fix assembling of arrays that use the version-1 superblock and
- have spares. Previously the spares would be ignored.
- - Fix bug so that multiple drives can be re-added at once.
- - Fix problem with hot-adding a bitmap to version-1-superblock
- arrays.
-
-Changes Prior to 2.0
- - Support assembling from byte-swapped superblocks
- metadata type "0.swap" and --update=byteorder
- - write-mostly and write-behind support for raid1.
- - Support --name= and 'name=' config entry for identifying
- arrays be name.
- - RAID10 in man pages.
- - Lot of minor manpage updates
-
-Changes Prior to 2.0-devel-3 release
- - Assorted fixes for multiple bugs...
- - Add test suite
-
-Changes Prior to 1.12.0 release
- Several of these are backported from the Debian package
- - Don't use 'lstat' to check for blockdevices, use stat.
- - Document --size=max option for --grow
- - Document SparesMissing event and DeviceDisappeared/WrongLevel
- - --stop --scan repeatly cycles until no more progress can be made
- so that stack devices are stopped properly
- - Minor type rationalisation for ident->uuid - now always 'int[]'
- - Fix type in online help for --grow (was -F, now -G)
- - Allow --auto command line option to set default auto=
- value when running "--assemble --scan". Previously
- --auto was ignored if --scan was given
- - Fix a few type casts
- - Fix parsing of /dev/md/N in is_standard
- - Fix rounding errors in human_size()
- - Fix silly example in mdadm.conf-examples
- - When finding a /dev name for a device, prefer shorter names
- - Suppress listing of devices= in --brief output of -D or -E,
- unless -v is given (-vv gives the old behaviour with -Dsv).
- This is because the device list can change and so is not a
- stable aspect of the array
- - Allow --force with --grow so '-Gfn1' works (on raid1)
- - Replace sprintf calls with snprintf (to quiet diet-libc)
- - Add man page for mdassemble
- - Fix compilation with tinyc
-
-Changes Prior to 1.11.0 release
- - Fix embarassing bug which causes --add to always fail.
-
-Changes Prior to 1.10.0 release
- - Fix bug with --config=partitions
- - Open sub-devices with O_EXCL to detect if already in use
- - Make sure superblock updates are flushed directly to disk.
-
-Changes Prior to 2.0-devel-1 release
- - Support for version-1 superblock. See --metadata option.
- - Support for bitmap based intent logging.
- - Minor fixes.
-
-Changes Prior to 1.9.0 release
- - Fix rpm build problem (stray %)
- - Minor manpage updates
- - Change "dirty" status to "active" as it was confusing people.
- - --assemble --auto recognises 'standard' name and insists on using
- the appropriate major/minor number for them.
- - Remove underscore from partition names, so partitions of
- "foo" are "foo1", "foo2" etc (unchanged) and partitions of
- "f00" are "f00p1", "f00p2" etc rather than "f00_p1"...
- - Use "major", "minor", "makedev" macros instead of
- "MAJOR", "MINOR", "MKDEV" so that large device numbers work
- on 2.6 (providing you have glibc 2.3.3 or later).
- - Add some missing closes of open file descriptors.
- - Reread /proc/partition for every array assembled when using
- it to find devices, rather than only once.
- - Make "mdadm -Ss" stop stacked devices properly, by reversing the
- order in which arrays are stopped.
- - Improve some error messages.
- - Allow device name to appear before first option, so e.g.
- mdadm /dev/md0 -A /dev/sd[ab]
- works.
- - Assume '-Q' if just a device is given, rather than being silent.
- - Change "dirty" status to "active" as it was confusing people.
-
-Changes Prior to 1.8.0 release
- - Makefile cleanup from Luca Berra <bluca@comedia.it>
- - --pid-file (-i) to set a pid file to use with --monitor --daemonise
- - Fix typo in mdadm man page
- - Fix coredump when "-s" used with no config file present.
- - Support new "faulty" personality which can inject synthetic
- faults. (Not in kernel.org yet at 1Nov2004)
- - Support raid0/linear on devices > 2 Terabytes
- - Make sure raid6 resyncs when created with one missing device
-
-Changes Prior to 1.7.0 release
- - Support "--grow --add" to add a device to a linear array, if the
- kernel supports it. Not documented yet.
- - Restore support for uclibc which was broken recently.
- - Several improvements to the output of --detail, including
- reporting "resyncing" or "recovering" in the state.
- - Close filedescriptor at end of --detail (exit would have closed it
- anyway, so this isn't abig deal).
- - Report "Sync checkpoint" in --examine output if appropriate.
- - Add --update=resync for --assemble mode to for a resync when the
- array is assembled.
- - Add support for "raid10", which is under development in 2.6.
- Not documented yet.
- - --monitor now reads spare-group and spares info from config file
- even when names of arrays to scan are given on the command line
-
-Changes Prior to 1.6.0 release
- - Device name given in -Eb is determined by examining /dev rather
- than assuming /dev/md%d
- - Fix bug in --monitor where an array could be held open an so
- could not be stopped without killing mdadm.
- - Add --grow mode. Currently only --size and --raid-disks can be
- changed. Both require kernel support which, at the time of
- writing, is not in a release kernel yet.
- - Don't print out "errors" or "no-errors" in -D and -E, as the bit
- is never set or used.
- - Use md event notification in 2.6.??? to make --monitor mode
- respond instantly to events.
- - Add --auto= option and auto= configfile entry to tell mdadm to
- create device files as needed. This is particularly useful
- with partitioned arrays where the major device number can change.
- - When generating --brief listing, if the standard name doesn't
- exist, search /dev for one rather than using a temp name.
- - Allow --build to build raid1 and multipath arrays.
- - Add "--assume-clean" for Create and Build, particularly for raid1
- Note: this is dangerous. Only use it if you are certain.
- - Fix bug so that Rebuild status monitoring works again.
- - Add "degraded" and "recovering" options to the "Status:"
- entry for --detail
-
-Changes Prior to 1.5.0 release
- - new commands "mdassemble" which is a stripped-down equivalent of
- "mdadm -As", that can be compiled with dietlibc.
- Thanks to Luca Berra <bluca@comedia.it>.
- It can be using in an initramfs or initrd.
- - Fix compiling error with BLKGETSIZE64 and some signed/unsigned
- comparison warnings.
- - Add Rebuild Status (% complete) to --detail output.
- - Support "--monitor --test" which will generate a test alert
- for each array once, to test notification paths.
- - Generate RebuildFinished event when rebuild finishes.
- - Support for raid6 as found in 2.6.2 - thanks to
- H. Peter Anvin <hpa@zytor.com>
- - Support partitioned md arrays with a different major number and
- naming scheme (md_dX in /proc/mdstat, /dev/md/dXpY in /dev).
-
-Changes Prior to 1.4.0 release
- - Document fact that creating a raid5 array really creates a
- degraded array with a spare.
- - Add "spares=" tag to config file and generate it wit --detail and
- --examine
- - Add "SparesMissing" event when --monitor first sees an array and
- it doesn't have the enough spare devices.
- - Add --update=summaries for --assemble to update summary
- information in superblock, and correct other inconsistancies in
- the superblock.
- - Add --test option to --detail to set a meaningful exit status.
-
-Changes Prior to 1.3.0 release
- - Make 'size' and unsigned long in Create to allow creation of
- larger arrays.
- - Explicitly flag spare devices as 'spare' in --detail and --examine
- output. Previously they simply had no flags lists.
- - Make MailCmd (for monitor) configurable in Makefile, and default
- to "/usr/sbin/sendmail -t". Also split out the warning related
- flags into CWFLAGS for easier build configurability.
- - Minor bugfix in Manage code.
- - --monitor now notices and reports degraded arrays at startup using
- "DegradedArray" event, and also has a --oneshot option to only
- report DegradedArrays, and then exit.
- - Small man-page clarification w.r.t. raid levels and raid4 in
- particular.
- - Disallow creation of arrays with only one device as this is
- probably a mistake. --force will override this check.
- - Correct some misleading documentation in the "mdadm --create --help"
- message.
- - Ignore chunksize if raid1 or multipath.
- - Explicit statement in man page that raid-disks cannot be changed
- after array is created.
- - Improve message when attempting to start an array with
- insufficient devices. Instead of required the array to be full,
- we only require it has as many active devices as last time.
-
-Changes Prior to 1.2.0 release
- - Fix bug where --daemonise required an argument.
- - In --assemble --verbose, print appropriate message if device is
- not in devices= list
- - Updated mdadm.conf.5 to reflect fact that device= takes wildcards
- - Typos: componenet -> component
- - Reduce size of "--help" message put excess into "--help-options"
- - Fix bug introduced when MD_SB_DISKS dependancy removed, and which
- caused spares not be assembled properly.
- - Print appropriate message if --monitor --scan decides not to
- monitor anything.
-Changes Prior to 1.1.0 release
- - add --deamonise flag for --monitor - forks and prints pid to stdout
- - Fix bug so we REALLY clear dirty flag with -Af
- - -Db now prints a 'devices=' word for each array.
- - "mdadm -A /dev/md0" will get info from configfile, even without scan
- - When assembling multipath arrays, ignore devices which are flagged
- as having errors.
- - take --super-minor=dev to mean "use the minor number of the mddev
- being assembled.
- - take --config=none to mean "completely ignore config file"
- - Make --monitor require --scan or a device list.
-Changes Prior to 1.0.9 release
- - Documentation updates including kernel parameters documented
- in md.4
- - --assemble --force for raid4/5 will mark clean, needed for 2.5
- - --detail prints out the events counter as well
- - flush device before reading superblock to be sure to get
- current data
- - added mdadm.static target to makefile for static linking
- - --monitor was ignoring /dev/md0 due to off-by-one error
- - Fix assorted typos
- - Fix printing of Gibibytes - calc was wrong.
- - Fix printing of Array Size in --detail when very big.
- - --monitor no longer tries to work for raid0 or linear as these
- have nothing to be monitored.
- - The word 'partitions' on a DEVICE line will cause all partitions
- listed in /proc/partitions to be considered
- - If the config file is called 'partitions' then it will be treated
- as though it contained exactly 'device partitions' so e.g.
- mdadm -Ebsc partitions
- will find all raid partitions easily.
- - successfully assemble multipath devices by ignoring raid_disk
- value from superblock (it is always the same).
- - --assemble not tied to MD_SB_DISKS limit quite so much
- - Support compiling with tcc
- - Support compiling with uclibc - just skip scan of /dev
- - Add --update= option for Assemble mode. Either sparc2.2
- or super-minor updates are possible. See mdadm.8
-
-Changes Prior to 1.0.1 release
- - Round off MB/GiB etc values instead of round down.
- - Add --sparc2.2 option to examine to shift superblock around
- and --sparc2.2update to rewrite the superblock
- - Fix assorted typos in online help
-
-Changes Prior to 1.0.0 release
- - Allow --config with Misc mode (for --examine --scan)
- - Add $(CXFLAGS) to end of CFLAGS in makefile
- - When making an N disk raid5 array, the Nth drive
- is moved to the end of the array as a spare rather than
- being shifted up one place. This means that when the
- kernel builds onto the last spare and inserts it,
- the devices will be in the expected order.
- - Man page improvements
-Changes Prior to 0.8.2 release
- - Correct spelling of persist[ae]nce/persist[ae]nt.
- - Change "disk" to "device" in options and config file
- - convert array size to "long long" *before* shift-left in -D and -Q
-
-Changes Prior to 0.8.1 release
- - Add "INSTALL" file.
- - Fix some "i" variables that were not being set properly
- - Initialise minsize and maxsize so that compilers don't complain.
- - Tidy up Makefile and mdadm.spec installations
- - Add "multipath" to documentation of valid levels
-
-Changes Prior to 0.8 release
- - Fix another bug in Assemble.c due to confusing 'i' with 'j'
- - Minimal, untested, support for multipath
- - re-write of argument parsing to have more coherent modes,
- - add --query,-Q option
- - Update mdadm.8 to reflect arg processing change and --query
- - Change "long" to "unsigned long" for device sizes
- - Handle "mailaddr" and "program" lines in config file for follow/scan mode.
- - --follow --scan will exit if no program or mail found
- - Add MAILADDR and PROGRAM to mdadm.conf-example
- - Spell check man pages
- - consistently use "component devices" instead of "subdevices"
- - Make -Wall -Werror really work and fix lots of errors.
- - --detail and --stop can have --scan which chooses devices from /proc/mdstat
- - --monitor detects 20% changes in resync, failed spares,
- disappearing arrays,
- - --monitor --scan will automatically add any devices found in /proc/mdstat
- - --monitor will move spares between arrays with same spare-group if necessary
- - Documentation for Monitor Mode
- - --query notes if the array containing the given device is active or not
- - Finished md.4 man page.
-
-Changes Prior to 0.7.2 release
- - mdadm.spec updates and ifdef BLKGETSIZE64 from Luca Berra -- bluca@comedia.it
- - more mdadm.spec updates from Gregory Leblanc <gleblanc@linuxweasel.com>
- - make directory for mdadm.conf configurable in Makefile
- - Finished mdadm.conf.5. Removed details of conf file from
- mdadm.8 leaving a reference to mdadm.conf.5.
- - Fix bug in Assemble.c, thanks to Junaid Rizvi <domdev@sat.net.pk>
- - Get --assemble --force to make sure old major/minor numbers are
- consistant, as md.c worries about this :-(
-
-
-Changes Prior to 0.7.1 release
- - update mdadm.spec
- - use BLKGETSIZE64 if available for array size
- - give human readable as GiB/MiB and GB and MB, with 2 decimal point precision
- - Only warn about size variation for raid1/4/5.
- - Started md.4 man page
- - Started mdadm.conf.5 man page
-
-Changes Prior to 0.7 release
-
- - Fix makefile to install binary at /sbin and not /sbin/sbin
- Also install man page.
- - Add --zero-superblock based on --destroywithextremeprejudice
- from Dale Stephenson <steph@snapserver.com>
- - change name to mdadm. It is palandromic, and much nicer to pronouce.
-
-Changes Prior to 0.6 release
-
- - Remove the limit on the number of device names that can be
- given on the command line.
- - Fix bug in --assemble --force where it would only update a
- single superblock.
- - Fix bogus printing of big numbers not being block devices
- when given names of devices that don't exist.
- - When --assemble --force, consider superblocks with an event
- count that is 1 behind as out-of-date. Normally they are
- considered up-to-date (as the kernel assumes this too).
- - When marking drives as not-failed in the superblock,
- we also mark them as ACTIVE and SYNC.
- - Don't start arrays for which not all drives are available unless:
- --scan which implies that all drives were found automatically
- --run which means the user knows what they want
- --force which means that we are fixing something broken
- - Make sure all device numbers passed as 3rd arg of ioctl
- are passed as unsigned lock, so that it works on SPARC
- - If HOT_ADD_DISK failes for -a, then only try ADD_NEW_DISK
- if we cannot read from the array, i.e. if the array is
- not started yet.
- - man page update
- - Taught Examine to handle --scan. It examines all devices listed
- on DEVICE lines in the config file.
- - Added --brief (-b) flag for Examine and Detail to print out
- and mdctl.conf compatible description with uuid=, level=,
- disks= and - for Examine - devices=
- --examine --brief collects all devices the make the one array and
- list them as one entry.
- - Added level= and disks= options to ARRAY lines in config files
- so --brief output could be used as-is.
- - Make parity style ({left,right}-{,a}symmetric) consistantly use -,
- never _.
- - Add "Array Size" to --detail output
- - Change "Size" to "Device Size" and exclude from Detail of arrays
- that do not have a consistent device size.
- - Add Human readable MiB or GiB value on size lines of Detail and Examine
- - --assemble --scan doesn't complain about active drives
- - require number of spares given in -x to be listed.
- - Made --build actually work.
-Changes Prior to 0.5 release
-
- --assemble:
- spare drives are handled properly.
-
- --force can be used to recover from 2-drive failures on RAID5
- If you belive that /dev/hda1 /dev/hdb1 /dev/hdc1 /dev/hdd1 should
- make a raid5 array, but it has experienced multiple failures and
- wont start, then
-
- mdctl --assemble --force /dev/md0 /dev/hd[abcd]1
-
- Should update the superblock on the newest failed drive and
- restart the array in degraded mode. You should then remove the
- remaining failed drive and re-add it (if you are happy that it
- might work).
-
- Ofcourse whenever you have a 2-drive failure, you have a risk
- of corruption in data that hasn't be changed for a long time. So
- this doesn't give you your array back all nice and happy, but it
- does allow you to recover data that might not be corrupt.
-
- More flexibility in identifying a RAID array in the mdctl.conf
- e.g.
- array /dev/md4 super-minor=4
-
- assembles /dev/md4 from all devices found that have a raid
- superblock that says the minor number of the array is 4.
- If the blocks with the right minor number do not all have the
- same UUID, an error is flags and no assembly happens.
-
- array /dev/md3 devices=/dev/hd[abc]2
-
- Assembles /dev/md3 drom /dev/hda2 /dev/hdb2 and/dev/hdc2. All
- devices must exist and have raid superblock with the same uuid.
-
- If two identity specifiers are used, only devices that match all
- of them are considered, so
-
- array /dev/md2 devices=/dev/hd?2 super-minor=2
-
- will assemble /dev/md2 using all /dev/hd?2 devices which have a
- raid superblock with minor number 2.
-
- --create:
- When listing devices for --create, the word "missing" can be
- used to indicate that the respective slot does not have a
- working drive currently. This is similar to the "failed-disk"
- directive in mkraid/raidtab.
- e.g.
- mdctl --create --level=5 -raid-disks=4 --spare-disks=2
- /dev/md0 /dev/sda /dev/sdb missing /dev/sdc /dev/sdd /dev/sde
-
- will create a raid5 array with the third slot empty, and two
- spares.
-
- By default, raid5 arrays are created with the last slot empty
- and drive listed for the last slot added as a spare. If a
- "missing" slot is given, or if --force is given, then --create
- does exactly what you ask and doesn't try to be clever.
-
-
- --follow / --monitor:
-
- This is a new mode. I couldn't stop my self from picking a name
- starting with F (as current modes start A,B,C,D,E) but I
- relented and provided an alternate name that is somewhat more
- meaningful.
-
- In this mode, mdctl does not exit, but runs continuously and
- periodically polls all the md devices to see if they have had
- any interested state change.
- The changes that it currently notices are:
- Fail - an active disc fails
- FailSpare - a spare, that was presumably being build, fails
- ActiveSpare - a spare becomes active, presumably after a rebuild.
-
- Options:
- --mail mailaddress - send Email on any Fail* event
- --program program - run the program on any event.
- Args are: eventname mddevice subdevice(if-known)
- --delay seconds - change from the default 60second pause
- between polls.
-
- I plan to add functionality to this mode to allow sharing of
- spare drives. If an array is marks "spare-group=fred", and it
- has a failed drive and no spares, and if some other array is
- also "spare-group=fred" and it has no failed drives, but does
- have a spare drive that is big enough, the spare will be moved
- to the first array.
-
- I also have the idea of adding a --grow mode which will re-organise
- the data on an N disk raid0/4/5 array to be on an N+M disk array.
- I have no concrete plans for this though.
-
- I got rid of the "v" in the archive file name, and include the
- version number in the directory created by the archive.
-
- There is now a man page and mdctl.spec (for rpm) thanks to
- Danilo Godec <danci@agenda.si>.
-
- Ofcourse, the man page is now out of date and despite being based on
- the --help output, is not wholy correct. After I get --follow
- working properly, I plan to revise the various documentation and/or
- the code to make sure the two match.
+Please see git logs for detailed change log.
+This file just contains highlight.
+
+Changed Prior to release 3.0
+ - Support for externally managed metadata, specifically DDF and IMSM.
+ - Depend on udev to create entries in /dev, rather than creating them
+ ourselves.
+ - remove --auto-update-home-hosts
+ - new config file line "auto"
+ - new "<ignore>" and "any" options for "homehost"
+ - numerous bug fixes and minor enhancements.