Skip to content

Commit

Permalink
partitions/ibm: fix non-DASD devices
Browse files Browse the repository at this point in the history
Don't error out if the dasd_biodasdinfo symbol is not available.

Cc: [email protected]
Fixes: 26d7e28 ("s390/dasd: remove ioctl_by_bdev calls")
Reported-by: Christian Borntraeger <[email protected]>
Signed-off-by: Christoph Hellwig <[email protected]>
Tested-by: Christian Borntraeger <[email protected]>
Reviewed-by: Stefan Haberland <[email protected]>
Signed-off-by: Jens Axboe <[email protected]>
  • Loading branch information
Christoph Hellwig authored and axboe committed Oct 7, 2020
1 parent 6d53a9f commit 7370997
Showing 1 changed file with 3 additions and 4 deletions.
7 changes: 3 additions & 4 deletions block/partitions/ibm.c
Original file line number Diff line number Diff line change
Expand Up @@ -305,8 +305,6 @@ int ibm_partition(struct parsed_partitions *state)
if (!disk->fops->getgeo)
goto out_exit;
fn = symbol_get(dasd_biodasdinfo);
if (!fn)
goto out_exit;
blocksize = bdev_logical_block_size(bdev);
if (blocksize <= 0)
goto out_symbol;
Expand All @@ -326,7 +324,7 @@ int ibm_partition(struct parsed_partitions *state)
geo->start = get_start_sect(bdev);
if (disk->fops->getgeo(bdev, geo))
goto out_freeall;
if (fn(disk, info)) {
if (!fn || fn(disk, info)) {
kfree(info);
info = NULL;
}
Expand Down Expand Up @@ -370,7 +368,8 @@ int ibm_partition(struct parsed_partitions *state)
out_nogeo:
kfree(info);
out_symbol:
symbol_put(dasd_biodasdinfo);
if (fn)
symbol_put(dasd_biodasdinfo);
out_exit:
return res;
}

0 comments on commit 7370997

Please sign in to comment.