md: don't allow bitmap file to be added to raid0/linear.
An array can only accept a bitmap if it will call bitmap_daemon_work periodically, which means it needs a thread running. If there is no thread, don't allow a bitmap to be added. Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
parent
a8461a61c2
commit
d66b1b395a
|
@ -5961,7 +5961,7 @@ static int set_bitmap_file(struct mddev *mddev, int fd)
|
|||
int err = 0;
|
||||
|
||||
if (mddev->pers) {
|
||||
if (!mddev->pers->quiesce)
|
||||
if (!mddev->pers->quiesce || !mddev->thread)
|
||||
return -EBUSY;
|
||||
if (mddev->recovery || mddev->sync_thread)
|
||||
return -EBUSY;
|
||||
|
@ -6263,7 +6263,7 @@ static int update_array_info(struct mddev *mddev, mdu_array_info_t *info)
|
|||
rv = update_raid_disks(mddev, info->raid_disks);
|
||||
|
||||
if ((state ^ info->state) & (1<<MD_SB_BITMAP_PRESENT)) {
|
||||
if (mddev->pers->quiesce == NULL)
|
||||
if (mddev->pers->quiesce == NULL || mddev->thread == NULL)
|
||||
return -EINVAL;
|
||||
if (mddev->recovery || mddev->sync_thread)
|
||||
return -EBUSY;
|
||||
|
|
Loading…
Reference in New Issue