summaryrefslogtreecommitdiffstats
path: root/mdopen.c
Commit message (Collapse)AuthorAgeFilesLines
* Make device-special files for partitions when using --incrementalNeil Brown2008-05-051-3/+7
|
* Unify code into find_free_devnum.Neil Brown2008-05-051-31/+5
| | | | | Two places have code to find a free md device number. Make this a subroutine.
* Simplistig locking for --incremental.Bill Nottingham2008-05-051-1/+14
| | | | | | | | | | | | | | | | | | From: Bill Nottingham <notting@redhat.com> mdadm --incremental doesn't really do any locking. If you get multiple events in parallel for the same device (that has not yet started), they will all go down the path to create the array. One will succeed, the rest will have SET_ARRAY_INFO die with -EBUSY (md: array mdX already has disks!) and will exit without adding the disk. Original bug report is: https://bugzilla.redhat.com/show_bug.cgi?id=433932 This is solved by adding very very rudimentary locking. Incremental() now opens the device with O_EXCL to ensure only one invocation is frobbing the array at once. A simple loop just tries to open 5 times a second for 5 seconds. If the array stays locked that long, you probably have bigger issues.
* Create /dev/md if needed and it doesn't exist.Bill Nottingham2008-05-051-0/+14
| | | | From: Bill Nottingham <notting@redhat.com>
* Remove spaces/tabs from ends of lines.Neil Brown2007-12-141-1/+1
|
* Make sure --auto=mdp is honoured properlyNeil Brown2007-10-171-0/+1
| | | | | This would only create partitioned devices if the device name was a 'standard' name. This this patch, any name will work.
* mdopen.c don't shadow major() and minor()maximilian attems2007-09-271-32/+32
| | | | | | | s/(major|minor)/\1_num/ Signed-off-by: maximilian attems <max@stro.at> Signed-off-by: Neil Brown <neilb@suse.de>
* Add new mode: --incrementalNeil Brown2006-12-211-0/+48
| | | | | --incremental allows arrays to be assembled one device at a time. This is expected to be used with udev.
* Default to --auto=yesNeil Brown2006-12-141-7/+7
| | | | | so the array devices with 'standard' names get created automatically, as this is almost always what is wanted.
* Check error return on a couple of syscalls.Michael Labuschke2006-10-231-3/+6
| | | | From: "Michael Labuschke" <michael@labuschke.de>
* Don't fail md_open if array already active.Luca Berra2006-10-161-12/+3
| | | | | | From: Luca Berra <bluca@comedia.it> There is no need and it causes occasional problems.
* Allow symlink creation to be disabled from command line or mdadm.confNeil Brown2006-08-111-5/+5
|
* Create symlinks from /dev into /dev/mdNeil Brown2006-08-111-0/+28
| | | | | When (auto)creating devices in /dev/md/, create an appropriate symlink from /dev to avoid confusion.
* More consistent honoring of --configfileNeil Brown2006-06-261-1/+1
| | | | | Never use /etc/mdadm.conf if --config file is given (previously some code used one, some used the other).
* Support auto-assembling of stacked devicesNeil Brown2006-05-261-1/+1
| | | | | | and assorted bugfixes. Signed-off-by: Neil Brown <neilb@suse.de>
* Never remove device nodes of active devices.Neil Brown2006-05-261-1/+3
| | | | | | This is just too risky. Signed-off-by: Neil Brown <neilb@suse.de>
* Choose better devnumbers and tidy up some issues with finding names.Neil Brown2006-05-261-2/+5
| | | | Signed-off-by: Neil Brown <neilb@suse.de>
* Just updaqte copyright dates and email addressNeil Brown2006-05-191-1/+1
| | | | Signed-off-by: Neil Brown <neilb@suse.de>
* Arrange the 'auto' setting in mdadm.conf can choose default type.Neil Brown2006-05-161-34/+59
| | | | | | | | | | | | So when you say auto=md or auto=part in mdadm.conf, it give a preference for type of array, but standard name will override. But --auto=md is more insistant. FIXME I'm not at all happy about handling of names that already exist. I don't think that should be removed if the device is active. Signed-off-by: Neil Brown <neilb@suse.de>
* Allow default creation info to to be stored in mdadm.confNeil Brown2006-05-151-2/+11
| | | | | | Default owner, group, mode and 'auto' flag can be given in a 'CREATE' line. Signed-off-by: Neil Brown <neilb@suse.de>
* Create missing /dev files where needed.Neil Brown2006-03-281-1/+1
| | | | | | | Whenever we need a device file to open, if one cannot be found in /dev, create a temporary one. Signed-off-by: Neil Brown <neilb@suse.de>
* Release some compile fixes.Neil Brown2006-02-061-5/+10
| | | | Signed-off-by: Neil Brown <neilb@suse.de>
* Sort mdstat entries so that composites are well-ordered.Neil Brown2006-01-311-1/+1
| | | | | | | This means that "-Ds" lists arrays in an approprate order for assembly. Signed-off-by: Neil Brown <neilb@suse.de>
* Replace sprintf calls with snprintfNeil Brown2005-06-141-2/+3
| | | | | | To quiet diet-libc Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
* Add device files created with --auto to list of known device files.Neil Brown2005-06-141-0/+4
| | | | Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
* Avoid using lstat, it isn't right.Neil Brown2005-06-141-1/+1
| | | | Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
* Fix uninitialised variable compile warning.Neil Brown2005-04-041-1/+1
| | | | Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
* Document new --auto behaviourNeil Brown2005-04-041-0/+4
| | | | Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
* Change MAJOR() etc to major() etcNeil Brown2005-04-041-8/+13
| | | | | | | | | This allows for larger device number if glibc supports it (requires 2.3.3). Also fail before creating larger device number if glibc support isn't present. Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
* When assembling with --auto, honour common device namesNeil Brown2005-04-041-43/+64
| | | | Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
* mdadm-1.8.0mdadm-1.8.0Neil Brown2004-11-011-0/+193