]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/commitdiff
Update xfsprogs so that the libdisk/md.c code sets stripe width using number
authorTim Shimmin <tes@sgi.com>
Thu, 21 Sep 2006 15:50:04 +0000 (15:50 +0000)
committerTim Shimmin <tes@sgi.com>
Thu, 21 Sep 2006 15:50:04 +0000 (15:50 +0000)
of raid-disks and doesn't include spare disks.
Make xfsprogs get its __u32 & friends types from <asm/types.h> if it exists.
Merge of master-melb:xfs-cmds:27016a by kenmcd.

  Bump to 2.8.13.

VERSION
configure.in
doc/CHANGES
include/platform_defs.h.in
libdisk/md.c

diff --git a/VERSION b/VERSION
index 4d924ef8718ebe62e8186357f63f902408aab7e8..612208390932b6e00cc388f303beb6279cc7fabc 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -3,5 +3,5 @@
 #
 PKG_MAJOR=2
 PKG_MINOR=8
-PKG_REVISION=12
+PKG_REVISION=13
 PKG_BUILD=1
index 809046e79ba8b383a575d4e9366afbb74c48b17b..b451d7bf5780346824692cdd7ec0d70265d183ba 100644 (file)
@@ -57,6 +57,7 @@ AC_HAVE_GETMNTINFO
 
 AC_TYPE_PSINT
 AC_TYPE_PSUNSIGNED
+AC_CHECK_TYPES(__u32,,,[#include <asm/types.h>])
 AC_SIZEOF_POINTERS_AND_LONG
 AC_MANUAL_FORMAT
 
index 04a7c6ac742687bed75857fbd48af4e9b6d5cf92..f7fc8545cc41ae77c8fc1abc39d6e0c0f037c906 100644 (file)
@@ -1,7 +1,13 @@
-xfsprogs-2.8.x
+xfsprogs-2.8.13 (21 September 2006)
        - Fix v2 directory checking with holes and unreadable blocks.
        - Fix a memory leak in dir2 checking.
-       
+       - Update libdisk/md support to work out the stripe width
+         based on (# raid-disks - # parity disks) which
+         doesn't include any spare disks (which we mistakenly did before).
+         Thanks to Shailendra Tripathi's suggestions.
+       - Get the kernel int types of __u32 and friends from <asm/types.h>
+         if we can, otherwise define them ourselves.
+
 xfsprogs-2.8.12 (29 August 2006)
        - Multi-thread modifications to xfs_repair.
        - Updated Polish translation, thanks to Jakub Bogusz.
index 09f7fea7b23f36ecb9535268e1379313f4301c24..64dc9a9fa977a3c1a28d353e405ddccd7c695e2b 100644 (file)
 #include <unistd.h>
 #include <sys/types.h>
 
+#undef HAVE___U32
+#ifdef HAVE___U32
+#include <asm/types.h>
+#else
 typedef unsigned char          __u8;
 typedef signed char            __s8;
 typedef unsigned short         __u16;
@@ -39,6 +43,7 @@ typedef unsigned int          __u32;
 typedef signed int             __s32;
 typedef unsigned long long int __u64;
 typedef signed long long int   __s64;
+#endif
 
 typedef __u16                  __be16;
 typedef __u32                  __be32;
index 9b3ff5f4d45c0cf4d5558913081c191e3b11a51c..b7f348a097cc4d8ff7679a350c5d81e4dca939a0 100644 (file)
@@ -61,11 +61,11 @@ md_get_subvol_stripe(
                 */
                switch (md.level) {
                case 6:
-                       md.nr_disks--;
+                       md.raid_disks--;
                        /* fallthrough */
                case 5:
                case 4:
-                       md.nr_disks--;
+                       md.raid_disks--;
                        /* fallthrough */
                case 1:
                case 0:
@@ -77,7 +77,7 @@ md_get_subvol_stripe(
 
                /* Update sizes */
                *sunit = md.chunk_size >> 9;
-               *swidth = *sunit * md.nr_disks;
+               *swidth = *sunit * md.raid_disks;
                *sectalign = (md.level == 4 || md.level == 5 || md.level == 6);
 
                return 1;