block: fix NULL pointer dereference in register_disk
If __device_add_disk-->bdi_register_owner-->bdi_register--> bdi_register_va-->device_create_vargs fails, bdi->dev is still NULL, __device_add_disk-->register_disk will visit bdi->dev->kobj. This patch fixes that. Signed-off-by: zhengbin <zhengbin13@huawei.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
dce30ca9e3
commit
4d7c1d3fd7
|
@ -655,10 +655,12 @@ exit:
|
||||||
kobject_uevent(&part_to_dev(part)->kobj, KOBJ_ADD);
|
kobject_uevent(&part_to_dev(part)->kobj, KOBJ_ADD);
|
||||||
disk_part_iter_exit(&piter);
|
disk_part_iter_exit(&piter);
|
||||||
|
|
||||||
err = sysfs_create_link(&ddev->kobj,
|
if (disk->queue->backing_dev_info->dev) {
|
||||||
&disk->queue->backing_dev_info->dev->kobj,
|
err = sysfs_create_link(&ddev->kobj,
|
||||||
"bdi");
|
&disk->queue->backing_dev_info->dev->kobj,
|
||||||
WARN_ON(err);
|
"bdi");
|
||||||
|
WARN_ON(err);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue