Message ID | 1486724177-14817-4-git-send-email-tom.leiming@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Looks fine,
Reviewed-by: Christoph Hellwig <hch@lst.de>
but this really needs to be patch 2 in this series.
diff --git a/drivers/md/md.c b/drivers/md/md.c index 4c1b82defa78..3425c2b779a6 100644 --- a/drivers/md/md.c +++ b/drivers/md/md.c @@ -5270,8 +5270,11 @@ int md_run(struct mddev *mddev) sysfs_notify_dirent_safe(rdev->sysfs_state); } - if (mddev->bio_set == NULL) + if (mddev->bio_set == NULL) { mddev->bio_set = bioset_create(BIO_POOL_SIZE, 0); + if (!mddev->bio_set) + return -ENOMEM; + } spin_lock(&pers_lock); pers = find_pers(mddev->level, mddev->clevel);
The current behaviour is to fall back to allocate bio from 'fs_bio_set', that isn't a correct way because it might cause deadlock. So this patch simply return failure if mddev->bio_set can't be created. Signed-off-by: Ming Lei <tom.leiming@gmail.com> --- drivers/md/md.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)