On Sun, 08 Jul 2007 18:30:54 -0700, Neil Brown wrote:
On Tuesday July 3, Ian Dall wrote:
> There doesn't seem to be any designated place to send bug reports and
> feature requests to mdadm, so I hope I am doing the right thing by
> sending it here.
Yes. Exactly the right thing, thanks.
I have applied the patch and pushed it out into .git. It will appear
in the next release of mdadm.
Thank,
NeilBrown
>
> I have a small patch to mdamd which allows the write-behind amount to be
> set a array grow time (instead of currently only at grow or create
> time). I have tested this fairly extensively on some arrays built out of
> loop back devices, and once on a real live array. I haven't lot any data
> and it seems to work OK, though it is possible I am missing something.
>
> --- mdadm-2.6.1/mdadm.c.writebehind 2006-12-21 16:12:50.000000000 +1030
> +++ mdadm-2.6.1/mdadm.c 2007-06-30 13:16:22.000000000 +0930
> @@ -827,6 +827,7 @@
> bitmap_chunk = bitmap_chunk ? bitmap_chunk * 1024 : 512;
> continue;
>
> + case O(GROW, WriteBehind):
> case O(BUILD, WriteBehind):
> case O(CREATE, WriteBehind): /* write-behind mode */
> write_behind = DEFAULT_MAX_WRITE_BEHIND;
This change appears to not be enough:
# mdadm --grow /dev/md0 --write-behind
mdadm: no changes to --grow
# mdadm -X /dev/sdb1 | fgrep Write
Write Mode : Normal
The releavant mdadm code for handling GROW reads:
case GROW:
[...]
else if (bitmap_file) {
if (delay == 0) delay = DEFAULT_BITMAP_DELAY;
rv = Grow_addbitmap(devlist->devname, mdfd, bitmap_file,
bitmap_chunk, delay, write_behind, force);
So the only way to make use of the newly enabled --write-behind
for --grow is:
# mdadm --grow /dev/md0 -b internal --write-behind
mdadm: failed to set internal bitmap.
# mdadm -X /dev/sdb1 | fgrep Write
Write Mode : Allow write behind, max 256
However the "-b internal" produces an error message
for devices with persistent superblocks...
Also, mdadm --grow --help doesn't document the use
of --write-behind (also missing for --build --help and
--create --help).
PS: I'm not subscribed to the mailing list, so please CC: me on replies.
---
ciaoTJ
--
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html