]> Pileus Git - ~andy/linux/blobdiff - drivers/md/md.c
md: Fix apparent cut-and-paste error in super_90_validate
[~andy/linux] / drivers / md / md.c
index 9f13e13506efbb3859786879ed6a5ff42eb72e8f..a2678d882151aa751123eb3203b7098e93fc431c 100644 (file)
@@ -1180,7 +1180,7 @@ static int super_90_validate(struct mddev *mddev, struct md_rdev *rdev)
                        mddev->bitmap_info.offset =
                                mddev->bitmap_info.default_offset;
                        mddev->bitmap_info.space =
-                               mddev->bitmap_info.space;
+                               mddev->bitmap_info.default_space;
                }
 
        } else if (mddev->pers == NULL) {
@@ -3429,7 +3429,7 @@ safe_delay_store(struct mddev *mddev, const char *cbuf, size_t len)
                mddev->safemode_delay = (msec*HZ)/1000;
                if (mddev->safemode_delay == 0)
                        mddev->safemode_delay = 1;
-               if (mddev->safemode_delay < old_delay)
+               if (mddev->safemode_delay < old_delay || old_delay == 0)
                        md_safemode_timeout((unsigned long)mddev);
        }
        return len;
@@ -5628,10 +5628,7 @@ static int get_bitmap_file(struct mddev * mddev, void __user * arg)
        char *ptr, *buf = NULL;
        int err = -ENOMEM;
 
-       if (md_allow_write(mddev))
-               file = kmalloc(sizeof(*file), GFP_NOIO);
-       else
-               file = kmalloc(sizeof(*file), GFP_KERNEL);
+       file = kmalloc(sizeof(*file), GFP_NOIO);
 
        if (!file)
                goto out;