]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
Manage: allow manual control of external raid0 readonly flag
authorDan Williams <dan.j.williams@intel.com>
Tue, 23 Nov 2010 04:08:19 +0000 (15:08 +1100)
committerNeilBrown <neilb@suse.de>
Tue, 23 Nov 2010 04:08:19 +0000 (15:08 +1100)
mdadm --readwrite <subarray> will clear the external readonly flag ('-'
to '/'), but only for redudant arrays.  Allow raid0 arrays as well so
the user has a simple helper to control this flag.

Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: NeilBrown <neilb@suse.de>
Manage.c

index fa300c7436eb05fa0340b0cd579b4a76a203dd34..a203ec9b90062f7ca78b847cd4cfffb10ea684a8 100644 (file)
--- a/Manage.c
+++ b/Manage.c
@@ -56,7 +56,6 @@ int Manage_ro(char *devname, int fd, int readonly)
        mdi = sysfs_read(fd, -1, GET_LEVEL|GET_VERSION);
        if (mdi &&
            mdi->array.major_version == -1 &&
-           mdi->array.level > 0 &&
            is_subarray(mdi->text_version)) {
                char vers[64];
                strcpy(vers, "external:");
@@ -88,6 +87,8 @@ int Manage_ro(char *devname, int fd, int readonly)
                        if (*cp)
                                *cp = 0;
                        ping_monitor(vers+10);
+                       if (mdi->array.level <= 0)
+                               sysfs_set_str(mdi, NULL, "array_state", "active");
                }
                return 0;
        }