]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blobdiff - drivers/md/raid10.c
md: Push down data integrity code to personalities.
[mirror_ubuntu-zesty-kernel.git] / drivers / md / raid10.c
index 7298a5e5a183f35f81e63706fe385dd125174a8b..3d9020cf6f6e4482c857644f721366fb8102f3d3 100644 (file)
@@ -1170,6 +1170,7 @@ static int raid10_add_disk(mddev_t *mddev, mdk_rdev_t *rdev)
                        break;
                }
 
+       md_integrity_add_rdev(rdev, mddev);
        print_conf(conf);
        return err;
 }
@@ -1203,7 +1204,9 @@ static int raid10_remove_disk(mddev_t *mddev, int number)
                        /* lost the race, try later */
                        err = -EBUSY;
                        p->rdev = rdev;
+                       goto abort;
                }
+               md_integrity_register(mddev);
        }
 abort:
 
@@ -2225,6 +2228,7 @@ static int run(mddev_t *mddev)
 
        if (conf->near_copies < mddev->raid_disks)
                blk_queue_merge_bvec(mddev->queue, raid10_mergeable_bvec);
+       md_integrity_register(mddev);
        return 0;
 
 out_free_conf: