diff options
author | Yu Kuai <yukuai3@huawei.com> | 2024-12-02 02:59:12 +0100 |
---|---|---|
committer | Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com> | 2024-12-03 15:55:15 +0100 |
commit | e97c4e18c847803016aa60066cb6e57c528d83a6 (patch) | |
tree | 89b1486ef073cbd084e4d0a156a419849b79a2cd | |
parent | Manage: forbid re-add to the array without metadata (diff) | |
download | mdadm-e97c4e18c847803016aa60066cb6e57c528d83a6.tar.xz mdadm-e97c4e18c847803016aa60066cb6e57c528d83a6.zip |
mdadm: ask user if bitmap is not set
Instead of auto-forcing bitmap only for large arrays, it is more
reasonable to let user do the chooice if bimtap is not set.
Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
-rw-r--r-- | Create.c | 12 | ||||
-rw-r--r-- | mdadm.c | 8 |
2 files changed, 8 insertions, 12 deletions
@@ -949,18 +949,6 @@ int Create(struct supertype *st, struct mddev_ident *ident, int subdevs, } } - if (!s->bitmap_file && - !st->ss->external && - s->level >= 1 && - st->ss->add_internal_bitmap && - s->journaldisks == 0 && - (s->consistency_policy != CONSISTENCY_POLICY_RESYNC && - s->consistency_policy != CONSISTENCY_POLICY_PPL) && - (s->write_behind || s->size > 100*1024*1024ULL)) { - if (c->verbose > 0) - pr_err("automatically enabling write-intent bitmap on large array\n"); - s->bitmap_file = "internal"; - } if (s->bitmap_file && str_is_none(s->bitmap_file) == true) s->bitmap_file = NULL; @@ -1535,6 +1535,14 @@ int main(int argc, char *argv[]) break; } + if (!s.bitmap_file) { + if (c.runstop != 1 && s.level >= 1 && + ask("To optimalize recovery speed, it is recommended to enable write-indent bitmap, do you want to enable it now?")) + s.bitmap_file = "internal"; + else + s.bitmap_file = "none"; + } + rv = Create(ss, &ident, devs_found - 1, devlist->next, &s, &c); break; case MISC: |