summaryrefslogtreecommitdiffstats
path: root/drivers/md/md.c
diff options
context:
space:
mode:
authorJonathan Brassow2011-06-08 07:10:08 +0200
committerNeilBrown2011-06-08 07:10:08 +0200
commit629acb6abac0ef217ee579e14084af2ce7381dbc (patch)
tree75963147cec3ff2e16aa775d103cb41706e503b0 /drivers/md/md.c
parentLinux 3.0-rc2 (diff)
downloadkernel-qcow2-linux-629acb6abac0ef217ee579e14084af2ce7381dbc.tar.gz
kernel-qcow2-linux-629acb6abac0ef217ee579e14084af2ce7381dbc.tar.xz
kernel-qcow2-linux-629acb6abac0ef217ee579e14084af2ce7381dbc.zip
MD: no integrity register if no gendisk
Don't attempt md_integrity_register if there is no gendisk struct available. When MD arrays are built via device-mapper, the gendisk structure is not available via mddev. Signed-off-by: Jonathan Brassow <jbrassow@redhat.com> Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'drivers/md/md.c')
-rw-r--r--drivers/md/md.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/md/md.c b/drivers/md/md.c
index aa640a85bb21..4ea02c634d33 100644
--- a/drivers/md/md.c
+++ b/drivers/md/md.c
@@ -1781,8 +1781,8 @@ int md_integrity_register(mddev_t *mddev)
if (list_empty(&mddev->disks))
return 0; /* nothing to do */
- if (blk_get_integrity(mddev->gendisk))
- return 0; /* already registered */
+ if (!mddev->gendisk || blk_get_integrity(mddev->gendisk))
+ return 0; /* shouldn't register, or already is */
list_for_each_entry(rdev, &mddev->disks, same_set) {
/* skip spares and non-functional disks */
if (test_bit(Faulty, &rdev->flags))