From 20929c0606cef175567060b50527fe1deeebaf19 Mon Sep 17 00:00:00 2001 From: Doug Ledford Date: Mon, 22 Feb 2010 00:28:48 +0000 Subject: [PATCH] - The uuid patch cause a different problem during assembly, so use a gross hack to work around the uuid issue that won't break assembly until fixed properly upstream (bz567132) --- mdadm-3.1.1-endian.patch | 29 ++++++++++++++++------------- mdadm.spec | 7 ++++++- 2 files changed, 22 insertions(+), 14 deletions(-) diff --git a/mdadm-3.1.1-endian.patch b/mdadm-3.1.1-endian.patch index 4ea127c..7342019 100644 --- a/mdadm-3.1.1-endian.patch +++ b/mdadm-3.1.1-endian.patch @@ -1,13 +1,16 @@ ---- mdadm-3.1.1/super1.c.endian 2010-02-18 01:39:56.079803165 -0500 -+++ mdadm-3.1.1/super1.c 2010-02-18 01:40:07.973803550 -0500 -@@ -1667,10 +1667,6 @@ struct superswitch super1 = { - .locate_bitmap = locate_bitmap1, - .write_bitmap = write_bitmap1, - .free_super = free_super1, --#if __BYTE_ORDER == BIG_ENDIAN -- .swapuuid = 0, --#else - .swapuuid = 1, --#endif - .name = "1.x", - }; +--- mdadm-3.1.1/util.c.endian 2010-02-21 19:13:56.253610477 -0500 ++++ mdadm-3.1.1/util.c 2010-02-21 19:16:26.338375501 -0500 +@@ -395,7 +395,12 @@ char *__fname_from_uuid(int id[4], int s + + char *fname_from_uuid(struct supertype *st, struct mdinfo *info, char *buf, char sep) + { +- return __fname_from_uuid(info->uuid, st->ss->swapuuid, buf, sep); ++ // dirty hack to work around an issue with super1 superblocks... ++ // super1 superblocks need swapuuid set in order for assembly to ++ // work, but can't have it set if we want this printout to match ++ // all the other uuid printouts in super1.c, so we force swapuuid ++ // to 1 to make our printout match the rest of super1 ++ return __fname_from_uuid(info->uuid, (st->ss == &super1) ? 1 : st->ss->swapuuid, buf, sep); + } + + #ifndef MDASSEMBLE diff --git a/mdadm.spec b/mdadm.spec index 8032812..8b30c4b 100644 --- a/mdadm.spec +++ b/mdadm.spec @@ -1,7 +1,7 @@ Summary: The mdadm program controls Linux md devices (software RAID arrays) Name: mdadm Version: 3.1.1 -Release: 0.gcd9a8b5.4%{?dist} +Release: 0.gcd9a8b5.5%{?dist} Source: http://www.kernel.org/pub/linux/utils/raid/mdadm/mdadm-%{version}-gcd9a8b5.tar.bz2 Source1: mdmonitor.init Source2: raid-check @@ -81,6 +81,11 @@ fi %attr(0700,root,root) %dir /var/run/mdadm %changelog +* Sun Feb 21 2010 Doug Ledford - 3.1.1-0.gcd9a8b5.5 +- The uuid patch cause a different problem during assembly, so use a gross + hack to work around the uuid issue that won't break assembly until fixed + properly upstream (bz567132) + * Sun Feb 21 2010 Doug Ledford - 3.1.1-0.gcd9a8b5.4 - Fix problem with booting multiple imsm containers when they aren't listed "just so" in the mdadm.conf file (bz554974)