Commit Graph

816 Commits

Author SHA1 Message Date
Neil Brown
e81cdd9f37 Stop map_dev from returning [0:0]
We sometimes need the NULL when major==minor==0.
So make sure all callers of map_dev can cope with NULL.
2006-06-20 10:01:43 +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
beca3d00d9 Release 2.5.1 2006-06-16 10:54:14 +10:00
Neil Brown
82d8a04691 Update Changelog for 2.5.1 2006-06-16 10:53:55 +10:00
Neil Brown
067db4dfcd Fix offsetof macro for 64bit hosts 2006-06-16 10:53:50 +10:00
Neil Brown
eed35d6661 Fix memory leak in monitor mode
When rescanning /dev, we didn't free the old list.
Also don't search for device with a number of 0,0

Signed-off-by: Neil Brown <neilb@suse.de>
2006-06-16 10:26:12 +10:00
Neil Brown
02761a7c44 Fix up some internalbitmap tests 2006-06-16 10:21:11 +10:00
martin f. krafft
4e9b583928 Allow CONFFILE2 to be overridden during make invocation. 2006-06-02 20:53:02 +10:00
martin f krafft
77e521ce74 CPPFLAGS gets used automatically on implicit rules.
Take it out for cosmetic reasons to prevent duplicate -DDEBIAN.

Signed-off-by: Neil Brown <neilb@suse.de>
2006-06-02 20:47:29 +10:00
Neil Brown
6a255b69be Avoid misdetection of overlapping partitions...
As version-0.90 superblock don't record the superblock
offset, it is possible for overlapping partitions,
or a partition that starts on a 64K boundary in the whole device
to result in mis-detection - one partition or device might
be detected where the other was intended.

To avoid this awkward possibility, we reject assembly attempts
which seem to have two devices that are different but have the
same version-0.90 superblock.

To avoid this problem altogether, switch to version-1 metadata.

Signed-off-by: Neil Brown <neilb@suse.de>
2006-06-02 06:58:39 +00:00
Neil Brown
8268ed7403 Remove libssl dependancy and always use sha1.c code
Apparently there are license issues with openssl, so
just use sha1.c always.   This means we can get rid of
SHA1.c

Signed-off-by: Neil Brown <neilb@suse.de>
2006-06-02 06:12:19 +00:00
Neil Brown
ab56093f3b Get --stop to honour --quiet
And as a side effect, if --quiet isn't given, stopped devices are
reported.

Signed-off-by: Neil Brown <neilb@suse.de>
2006-06-02 05:53:22 +00:00
Neil Brown
0ae03b8ad8 Yet another include file that someone doesn't like....
It seems byteswap.h isn't universally accepted, so
we do it by hand...

Signed-off-by: Neil Brown <neilb@suse.de>
2006-06-02 05:37:47 +00:00
Neil Brown
058574b1da Allow default metadata to be specified in mdadm.conf
CREATE metadata=1
in mdadm.conf will cause version-1 superblocks to be the default.

Signed-off-by: Neil Brown <neilb@suse.de>
2006-06-02 05:33:40 +00:00
Neil Brown
1d1e104b0d Don't try to create a new device when using --manage or --grow
... as that's just silly!

Signed-off-by: Neil Brown <neilb@suse.de>
2006-06-02 01:53:13 +00:00
Neil Brown
efd441d17b Finally (I hope) get byteorder stuff portable.
/usr/include/endian.h and /usr/include/byteswap.h together
can give us almost what we need...

Signed-off-by: Neil Brown <neilb@suse.de>
2006-06-02 01:49:00 +00:00
Neil Brown
a524a7ee7e Fix typo in mail message from --monitor
From: martin f krafft <madduck@madduck.net>

Signed-off-by: Neil Brown <neilb@suse.de>
2006-06-02 01:34:30 +00:00
Neil Brown
e52f8e251a Fix error code from examine properly..
The last one was wrong :-(

Signed-off-by: Neil Brown <neilb@suse.de>
2006-06-02 01:32:45 +00:00
Neil Brown
c97be4db86 Improve compiling for static binaries.
Have "#ifdef STATIC" in config.c, and the 'rmconf' target
was a mess.
Instead, create 'pwgr.c' with stub routines for those unavailable
when statically compiled, and include that in STATICOBJ

Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-29 04:09:21 +00:00
Neil Brown
0c239ef733 Make add_dev for uclibc return something.
As it is now 'int', it needs to.

Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-29 04:02:15 +00:00
Neil Brown
3bb59d4044 Add uninstall target to Makefile
From: "Dirk Jagdmann" <jagdmann@gmail.com>

Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-29 02:18:22 +00:00
Neil Brown
ff7754ede3 New install-* targets for installing differently compiled mdadms
e.g. install-static to install the statically compiled version, etc.

From: "Dirk Jagdmann" <jagdmann@gmail.com>
Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-29 02:18:22 +00:00
Neil Brown
1377730fc4 Makefile improvements for static linking.
From: "Dirk Jagdmann" <jagdmann@gmail.com>
Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-29 02:18:22 +00: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
280a927d3d Uclibc has deprecated 'random' so use 'rand' instead.
glibc says of rand

       Do not use this function in applications  intended  to  be
       portable when good randomness is needed.

Go figure...

Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-29 02:06:32 +00:00
Neil Brown
b56c363090 add CFLAGS to mdassemble build and fix a couple of non-returning functions
pass CFLAGS to mdassemble build, enabling -Wall -Werror showed some
issues also fixed by the patch.

From: Luca Berra <bluca@vodka.it>
Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-29 02:06:32 +00:00
Neil Brown
b1ec2d6a74 This is to avoid gcc warnings when building with strict-aliasing optimization
fix for another srict-aliasing problem, you can typecast a reference to a
void pointer to anything, you cannot typecast a reference to a
struct.

From: Luca Berra <bluca@vodka.it>
Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-29 02:06:32 +00:00
Neil Brown
382245c31f snprintf size should be at most the size of the buffer
From: Luca Berra <bluca@vodka.it>
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
d1f1011b94 Make sure everything compiles...
Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-26 04:28:33 +00:00
Neil Brown
589395d696 Support --auto-update-homehost
This can be used to bootstrape homehost tagging.

If no arrays are found that are tagged, we look for any array
and tag it.

Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-26 04:16:07 +00:00
Neil Brown
b3b33eb5cd Set default name for v1 array based on device name.
Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-26 03:24:02 +00:00
Neil Brown
d55e3aefc0 Support auto-assembling of stacked devices
and assorted bugfixes.

Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-26 03:11:57 +00:00
Neil Brown
2e2642f2c5 Never remove device nodes of active devices.
This is just too risky.

Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-26 02:32:15 +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
e7bb5d23a9 Choose better devnumbers and tidy up some issues with finding names.
Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-26 01:40:53 +00:00
Neil Brown
da6b5ca9bd Initial implementation of auto-assembly
This basically works, but needs various improvements and some tests.

Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-26 00:50:15 +00:00
Neil Brown
8a46fe8487 Allow autoassembly to choose it's own name for the array.
This cannot be used yet, but it is working towards auto-assembly.

When auto-assembling an array, we make a name in /dev/md/
giving a number (from the peferred minor) or name (from set-name).

Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-23 06:46:40 +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
811e6cbed7 Reorganise Assemble code somewhat.
We make sure all devices can are consistent before doing any --update
This saves us from updating some but not all of an array, and then
aborting.

It also means we can backtrack on out decisions, which we might want to
do later.

Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-23 06:12:40 +00:00
Neil Brown
624920bbb6 Make sure name matching for array assembly understand the possibility of a homehost
This "--assemble --name=foo" on host 'bar' will assemble an array named
'foo' or 'bar:foo'.

Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-23 05:24:22 +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
997aed5dee Allow homehost to be set on command line or in config file
Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-19 05:50:08 +00:00
Neil Brown
8fe9db0ffe Improve code for recognising config lines.
No more magic numbers.

Signed-off-by: Neil Brown <neilb@suse.de>
2006-05-19 05:33:05 +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