Bug#628668: mdadm: Impossible to clear the write-mostly flag in metadata

2012-01-10 Thread Michael Tokarev
reassign 628668 src:linux-2.6
fixed 628668 3.1.0-1
thanks

On 02.08.2011 07:45, NeilBrown wrote:
[]
 This needs to be fixed in the kernel.
 I have added a patch to me 'for-next' branch and it should appear in 3.1-rc
 at some stage.
 
 Thanks for the report.

Reassigning to kernel and closing.

Thanks,

/mjt



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#628668: mdadm: Impossible to clear the write-mostly flag in metadata

2011-08-01 Thread NeilBrown
On Tue, 31 May 2011 10:37:53 +0200 (CEST) Anders Boström
and...@netinsight.net wrote:

 Package: mdadm
 Version: 3.1.4-1+8efb9d1
 Severity: normal
 
 When turning off write-mostly on a device in an active raid1 array,
 using something like this:
 
 echo -writemostly /sys/block/md127/md/dev-md2/state
 
 write-mostly is turned off:
 
 flash:~ mdadm -D /dev/md127 
 /dev/md127:
 Version : 1.2
   Creation Time : Thu Oct 15 13:32:06 2009
  Raid Level : raid1
  Array Size : 312581688 (298.10 GiB 320.08 GB)
   Used Dev Size : 312581688 (298.10 GiB 320.08 GB)
Raid Devices : 2
   Total Devices : 2
 Persistence : Superblock is persistent
 
 Update Time : Tue May 31 10:35:15 2011
   State : clean
  Active Devices : 2
 Working Devices : 2
  Failed Devices : 0
   Spare Devices : 0
 
Name : flash:mirror1  (local to host flash)
UUID : 066d46b2:5ca5113d:261cfcc0:626c2d62
  Events : 842
 
 Number   Major   Minor   RaidDevice State
3   920  active sync   /dev/md/2
2   831  active sync writemostly   /dev/sda3
 flash:~ 
 
 But the metadata isn't updated:
 
 flash:~ mdadm -E /dev/md/2
 /dev/md/2:
   Magic : a92b4efc
 Version : 1.2
 Feature Map : 0x0
  Array UUID : 066d46b2:5ca5113d:261cfcc0:626c2d62
Name : flash:mirror1  (local to host flash)
   Creation Time : Thu Oct 15 13:32:06 2009
  Raid Level : raid1
Raid Devices : 2
 
  Avail Dev Size : 625163376 (298.10 GiB 320.08 GB)
  Array Size : 625163376 (298.10 GiB 320.08 GB)
 Data Offset : 144 sectors
Super Offset : 8 sectors
   State : clean
 Device UUID : c995047e:7f56e673:9fc386be:dac782e1
 
   Flags : write-mostly
 Update Time : Tue May 31 10:29:08 2011
Checksum : 8020a873 - correct
  Events : 842
 
 
Device Role : Active device 0
Array State : AA ('A' == active, '.' == missing)
 flash:~ 
 
 And after a reboot, md2 is flagged as writemostly again.
 
 / Anders
 

This needs to be fixed in the kernel.
I have added a patch to me 'for-next' branch and it should appear in 3.1-rc
at some stage.

Thanks for the report.

NeilBrown



http://neil.brown.name/git?p=md;a=commitdiff;h=f5d912d100ea7078bd28668aa3265ebd2bb53a84

From: NeilBrown ne...@suse.de
Date: Tue, 2 Aug 2011 03:38:35 + (+1000)
Subject: md: ensure changes to 'write-mostly' are reflected in metadata.
X-Git-Url: 
http://neil.brown.name/git?p=md;a=commitdiff_plain;h=f5d912d100ea7078bd28668aa3265ebd2bb53a84

md: ensure changes to 'write-mostly' are reflected in metadata.

The 'write-mostly' flag can be changed through sysfs.
With 0.90 metadata, those changes are reflected in the metadata.
For 1.x metadata, they aren't.

So fix super_1_sync to record 'write-mostly' status.

Signed-off-by: NeilBrown ne...@suse.de
---

diff --git a/drivers/md/md.c b/drivers/md/md.c
index 1cd9bfb..9a88023 100644
--- a/drivers/md/md.c
+++ b/drivers/md/md.c
@@ -1738,6 +1738,11 @@ static void super_1_sync(mddev_t *mddev, mdk_rdev_t 
*rdev)
sb-level = cpu_to_le32(mddev-level);
sb-layout = cpu_to_le32(mddev-layout);
 
+   if (test_bit(WriteMostly, rdev-flags))
+   sb-devflags |= WriteMostly1;
+   else
+   sb-devflags = ~WriteMostly1;
+
if (mddev-bitmap  mddev-bitmap_info.file == NULL) {
sb-bitmap_offset = 
cpu_to_le32((__u32)mddev-bitmap_info.offset);
sb-feature_map = cpu_to_le32(MD_FEATURE_BITMAP_OFFSET);




--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#628668: mdadm: Impossible to clear the write-mostly flag in metadata

2011-05-31 Thread Anders Boström
Package: mdadm
Version: 3.1.4-1+8efb9d1
Severity: normal

When turning off write-mostly on a device in an active raid1 array,
using something like this:

echo -writemostly /sys/block/md127/md/dev-md2/state

write-mostly is turned off:

flash:~ mdadm -D /dev/md127 
/dev/md127:
Version : 1.2
  Creation Time : Thu Oct 15 13:32:06 2009
 Raid Level : raid1
 Array Size : 312581688 (298.10 GiB 320.08 GB)
  Used Dev Size : 312581688 (298.10 GiB 320.08 GB)
   Raid Devices : 2
  Total Devices : 2
Persistence : Superblock is persistent

Update Time : Tue May 31 10:35:15 2011
  State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

   Name : flash:mirror1  (local to host flash)
   UUID : 066d46b2:5ca5113d:261cfcc0:626c2d62
 Events : 842

Number   Major   Minor   RaidDevice State
   3   920  active sync   /dev/md/2
   2   831  active sync writemostly   /dev/sda3
flash:~ 

But the metadata isn't updated:

flash:~ mdadm -E /dev/md/2
/dev/md/2:
  Magic : a92b4efc
Version : 1.2
Feature Map : 0x0
 Array UUID : 066d46b2:5ca5113d:261cfcc0:626c2d62
   Name : flash:mirror1  (local to host flash)
  Creation Time : Thu Oct 15 13:32:06 2009
 Raid Level : raid1
   Raid Devices : 2

 Avail Dev Size : 625163376 (298.10 GiB 320.08 GB)
 Array Size : 625163376 (298.10 GiB 320.08 GB)
Data Offset : 144 sectors
   Super Offset : 8 sectors
  State : clean
Device UUID : c995047e:7f56e673:9fc386be:dac782e1

  Flags : write-mostly
Update Time : Tue May 31 10:29:08 2011
   Checksum : 8020a873 - correct
 Events : 842


   Device Role : Active device 0
   Array State : AA ('A' == active, '.' == missing)
flash:~ 

And after a reboot, md2 is flagged as writemostly again.

/ Anders



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org