| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
Previously it was possible to set the WRITEMOSTLY flag when
adding a device to an array, but not to clear the flag when re-adding.
This is now possible with --readwrite.
Signed-off-by: NeilBrown <neilb@suse.de>
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
This did not work before as we couldn't mark it clean as there would
be some parity blocks out of sync, and raid6 will not assemble a
dirty degraded array.
So make such arrays doubly degraded (the last device becomes a spare)
and clean.
|
|
|
|
| |
Particularly, add the wiki on osdl.org
|
|
|
|
| |
Instead of MSW.LSW, just print it as a 64bit number.
|
|
|
|
|
|
|
|
|
|
|
| |
array.size is 32bits and counts K. So for arrays with
more than 4Terrabytes, it can overflow.
The correct number can be read from sysfs, but there are still
a few places that use array.size and risk truncation. What is worse.
they compare a number of kilobytes with a number of sectors !!
So use get_component_size() to read the sysfs information, and be
more consistent about units.
|
|
|
|
|
|
|
|
|
| |
Some kernel versions don't put a space between 'active' and '(auto-read-only)'
in /proc/mdstat. This causes a parsing problem leaving 'level' set to
NULL which causes a crash.
So synthesise a space there if it is missing, and check for 'level' to
be NULL and don't de-ref if it is.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
We were multiplying MD_RESERVED_SECTORS by 1024 instead of 512,
so lots of 'is it too small' checks were wrong.
|
|
|
|
|
|
| |
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).
|
|
|
|
|
|
|
|
|
| |
From: Ian Dall <ian@beware.dropbear.id.au>
I have a small patch to mdadm which allows the write-behind amount to be
set a array grow time (instead of currently only at grow or create
time). I have tested this fairly extensively on some arrays built out of
loop back devices, and once on a real live array.
|
| |
|
|
|
|
| |
Missing devices as well as failed devices cause an error.
|
|
|
|
| |
This is equivalent to raidautorun that some distros provide.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The new superblock needs to have a new disk.number. This is a bit of a hack...
Fix handling of negative bitmap offsets on 64bit hosts.
The bitmap offset is a signed 32bit number, so casting to (long)
isn't sufficient. We must cast to (int32_t).
Fix various problems with --grow --add for linear.
The code to add a drive to a live linear array had never
been tested properly and so was buggy. This tidies it up
and means that the new regression-test passes.
|
|
|
|
|
| |
This if you unplug a device and udev removes the entry from /dev,
you can still remove the device.
|
| |
|
| |
|
|
|
|
|
| |
This allows mdadm to correctly restart a raid6 grow that
crashed during the critcal phase.
|
|
|
|
|
| |
The case that doesn't initialise it is impossible,
so just return with an error..
|
| |
|
| |
|
|
|
|
|
| |
--incremental allows arrays to be assembled one device at a time.
This is expected to be used with udev.
|
| |
|
|
|
|
| |
map_dev can be slow and interferes with trying to stop the array.
|
|
|
|
| |
This improves quality of error message.
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
A number of odd bugs here, but now we have a regression test as well.
|
| |
|
|
|
|
|
| |
because it only shows how much of each device is actually used, not
how big they are.
|
|
|
|
|
| |
The setting used unfortunately requires intimate knowledge of the
kernel, and it not reset when the reshape finishes.
|
|
|
|
| |
and is also degraded.
|
|
|
|
|
| |
so the array devices with 'standard' names
get created automatically, as this is almost always what is wanted.
|
|
|
|
| |
size.
|
|
|
|
|
|
| |
Previously it onl worked when one missing device.
Also split the "force" update_super method into two and it
is really serving two functions.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
If an auto-assembly attempt failes because the array cannot be
opened or because the array has already been created, then we
get into an infinite loop.
Reported-by: Dan Pascu <dan@ag-projects.com>
Fixes-debian-bug: 396582
|
|
|
|
|
|
|
|
|
| |
From: Goswin Brederlow <brederlo@informatik.uni-tuebingen.de>
This is already mentioned in the config documentation, but not in the
place when the normal default is mentioned.
Fixes-debian-bug: 396914
|
|
|
|
| |
Otherwise we quickly lose it...
|
| |
|
| |
|
|
|
|
|
| |
Need to mask of bits above the bottom 16 when calculating number of
copies.
|
|
|
|
|
|
|
| |
From: Luca Berra <bluca@comedia.it>
Put another way, if we find any active arrays, then assume things are
going as planned.
|