Commit Graph

75 Commits

Author SHA1 Message Date
Neil Brown bf4fb153a4 Fix and test --update=uuid
A number of odd bugs here, but now we have a regression test as well.
2006-12-14 17:31:29 +11:00
Neil Brown 37dfc3d638 When resync finished, report the mismatch count if there is one.
This doesn't get mailed out, but will appear in syslog...
Maybe it should be mailed if it was a 'check' or 'repair' pass...
2006-12-14 17:31:25 +11:00
Neil Brown e336254463 Change 'Device Size' to 'Used Dev Size'
because it only shows how much of each device is actually used, not
how big they are.
2006-12-14 17:31:19 +11:00
Neil Brown 583315d9c5 Give useful message if raid4/5/6 cannot be started because it is not clean and is also degraded. 2006-12-14 17:31:13 +11:00
Neil Brown d645b91a1b Fix a misleading comment. 2006-12-14 17:31:08 +11:00
Neil Brown bee8ec56f4 Support --update=devicesize for cases where the underlying device can change size. 2006-12-14 17:31:03 +11:00
Neil Brown 199171a297 Improve allocation and use of space for bitmaps in version1 metadata
Depending on the size of the array we reserve space for up to 128K
of bitmap, and we use it where possible.
When hot-adding to a version 1.0 we can still only use the 3K at the
end though - need a sysfs interface to improve that.

If a small chunksize is requested on Create, we don't auto-enlarge
the reserved space - this still needs to be fixed.
2006-12-14 17:31:00 +11:00
Neil Brown b5e3d1901f Remove some unused interfaces to the metadata handlers.
This stuff has never been used (at least as far as git history can
see).  I wonder why it was there...
2006-12-14 17:30:53 +11:00
Neil Brown 67a8c82d60 Make Assemble/Force work on raid6 with 2 missing devices.
Previously it onl worked when one missing device.
Also split the "force" update_super method into two and it
is really serving two functions.
2006-12-14 17:30:51 +11:00
Neil Brown 434b77559e --update=resync did exactly the wrong thing for version1 metadata. 2006-11-13 09:12:09 +11:00
Neil Brown b7a708af6f Fixed UUID printing in "--detail --brief" for version1 metadata. 2006-11-09 16:28:27 +11:00
Neil Brown 1746711680 Increase default size of bitmap for v1 superblocks.
It can be increased further, but that takes a bit more code
so will wait for 2.6.
2006-10-19 16:46:38 +10:00
Neil Brown 26a0b8fd7a Fix array-subscript error.
->name is sized to '33' to have room for a trailing nul,
but thhat needs to get put in position '32'.  Doh!
2006-10-19 16:38:20 +10:00
Neil Brown c1c05f7f9a Fix typo in earlier patch.
Thanks Martin Krafft
2006-10-10 06:30:07 +10:00
Neil Brown 83205b6419 Fix some endian-ness issues with v1 superblocks. 2006-10-09 11:17:12 +10:00
Neil Brown 7eae7080e2 Work around bug in --add handling for version-1 superblocks
In 2.6.17 (and prior), the dev_number is ignored when a device
is added to an active array.  Rather the first free number is used.
So we work around this by making sure we use the first free
number for dev_number.

Description...
2006-06-26 12:26:09 +10:00
Neil Brown c3684618b7 Add 'Array Slot' line to --examine for version-1 superblocks
to make it a bit easier to see what is happening.
2006-06-26 12:26:01 +10:00
Paul Clements b015e6c268 Move a variable declaration to the declaration area.
While declaring variables in the middle of code withs with
newer gcc's it doesn't work with older, and it is arguably
less readable, so just do the right thing.

From: Paul Clements <paul.clements@steeleye.com>
2006-06-20 10:01:47 +10:00
Paul Clements 722966c66d Fix problem with post-increment usage in macro
Bad/bad/bad, and cause compiler error on ppc (gcc 3.2.3).

From: Paul Clements <paul.clements@steeleye.com>
2006-06-20 10:01:23 +10:00
Neil Brown 067db4dfcd Fix offsetof macro for 64bit hosts 2006-06-16 10:53:50 +10:00
Neil Brown 9fca7d6236 check return status of all write/fwrite functions as required by glibc 2.4
From: Luca Berra <bluca@vodka.it>

glibc 2.4 is pedantic on ignoring return values from fprintf, fwrite and
write, so now we check the rval and actually do something with it.
in the Grow.c case i only print a warning, since i don't think we can do
anything in case we fail invalidating those superblocks (is should never
happen, but then...)

Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-29 02:06:32 +00:00
Neil Brown 41a3b72a9c Release 2.5
Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-26 07:12:48 +00:00
Neil Brown 2998bc013c Improve names reported by --examine --brief
Instead of depending (too much) on what is in /dev,
we make names based on the content of the superblock.

Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-26 02:29:12 +00:00
Neil Brown 83b6208e89 When assembly arrays using incomplete detail, prefer arrays built for this host.
i.e. if assembling with --name or --super-minor, then if we find two
different arrays with the same apparent identity, and one was built
for 'this' host, then prefer that one instead of giving up in disgust.

Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-23 06:33:28 +00:00
Neil Brown 0237e0cafd Support --update=homehost to allow updating of homehost information.
Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-23 05:16:32 +00:00
Neil Brown c4f12c1340 Allow --update=name to update the name during assembly.
Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-23 04:57:04 +00:00
Neil Brown e5eac01f3d Make sure homehost is set correctly when --update=uuid
Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-23 04:51:39 +00:00
Neil Brown a1cbd7d053 Include homehost information in --examine as appropriate
Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-19 07:19:04 +00:00
Neil Brown b6750aa8da Include homehost information in --detail where appropriate.
Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-19 07:13:03 +00:00
Neil Brown 05697ec1e2 Make homehost information appear in superblock.
When an array is created, if the homehost is know,
the superblock gets it, either in the uuid, (via sha1)
or in the name field.

Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-19 06:56:06 +00:00
Neil Brown 4f589ad0c5 Just updaqte copyright dates and email address
Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-19 05:25:11 +00:00
Neil Brown 14263cf12c When updating uuid, update the bitmap as well - internal bitmaps.
Otherwise when you "--update==uuid" an array with an internal
bitmap, it will break, badly.

Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-16 05:52:51 +00:00
Neil Brown b578481ca3 Support new offset layout for raid10
Requires 2.6.18.

Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-15 02:46:54 +00:00
Neil Brown c4d831e164 [PATCH] Make sure update_super returns correct value.
For 'force' and 'assemble', update_super must return true
if anything was changed.

Also fix a bug with wonly handling in super0.

Signed-off-by: Neil Brown <neilb@suse.de>

### Diffstat output
 ./super0.c |   18 ++++++++++++++----
 ./super1.c |    7 +++++++
 2 files changed, 21 insertions(+), 4 deletions(-)

diff ./super0.c~current~ ./super0.c
2006-04-28 14:10:38 +10:00
Neil Brown ac957baa97 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.

Signed-off-by: Neil Brown <neilb@suse.de>
2006-04-07 04:34:45 +00:00
Neil Brown bed256c241 Add information about reshape to --detail
Also fix problems with dev names and symlinks

Signed-off-by: Neil Brown <neilb@suse.de>
2006-03-28 22:44:05 +00:00
Neil Brown 313176636e Remove ident arg from getinfo_super;
Add a 'name' field to 'info' to compensate.

Signed-off-by: Neil Brown <neilb@suse.de>
2006-03-27 04:34:38 +00:00
Neil Brown 353632d927 Support restarting of a reshape on --assemble
Signed-off-by: Neil Brown <neilb@suse.de>
2006-03-20 03:17:31 +00:00
Neil Brown 1e0d770c0f Release some compile fixes.
Signed-off-by: Neil Brown <neilb@suse.de>
2006-02-06 04:18:12 +00:00
Neil Brown 561832f9d4 Some little bits and pieces...
I'm obviously bored of writing changelog entries.

Signed-off-by: Neil Brown <neilb@suse.de>
2006-02-02 03:19:57 +00:00
Neil Brown 576d6d83af Prefer version-1 superblocks for v.large devices.
Signed-off-by: Neil Brown <neilb@suse.de>
2006-01-31 00:01:48 +00:00
Neil Brown 8fac0577f0 Stuff like..
- report Intent Bitmap in --detail
- report internal bitmap in --examine
- pass' --force through to --grow --bitmap
- support v.large arrays in --grow --bitmap

Signed-off-by: Neil Brown <neilb@suse.de>
2006-01-30 23:23:45 +00:00
Neil Brown 91eedefcdd Report bitmap offset when examining v1 superblock.
Signed-off-by: Neil Brown <neilb@suse.de>
2006-01-30 03:09:32 +00:00
Neil Brown 21e92547e7 Work towards allowing larger internal bitmaps in version1 superblocks.
Signed-off-by: Neil Brown <neilb@suse.de>
2006-01-30 02:57:49 +00:00
Neil Brown b674b5b869 Have --examine report reshape details.
Signed-off-by: Neil Brown <neilb@suse.de>
2006-01-27 07:28:34 +00:00
Neil Brown 5dd497eecb Enable support for v.large raid1.
clean up 'long long' usage for size of array, so that
with v-1 superblocks a raid1 larger than 2TB is possible.

Signed-off-by: Neil Brown <neilb@suse.de>
2006-01-27 06:21:06 +00:00
Neil Brown 29e766a5f4 Minor fixes
Signed-off-by: Neil Brown <neilb@suse.de>
2006-01-27 04:48:28 +00:00
Neil Brown 838acbc272 Assorted fixes...
Signed-off-by: Neil Brown <neilb@suse.de>
2006-01-27 01:44:47 +00:00
Neil Brown d2cd3ffc02 uhm.. assort fixes, particularly for recovery offset...
Signed-off-by: Neil Brown <neilb@suse.de>
2005-12-16 01:34:49 +00:00
Neil Brown 7d99579f6a Support updating of uuid during --assemble.
Signed-off-by: Neil Brown <neilb@suse.de>
2005-12-05 05:56:33 +00:00