summaryrefslogtreecommitdiffstats
path: root/block
diff options
context:
space:
mode:
authorTejun Heo <tj@kernel.org>2008-08-29 11:41:51 +0200
committerJens Axboe <jens.axboe@oracle.com>2008-10-09 08:56:11 +0200
commit2bbedcb4c1abac498f18e5770d62ae66ff235ada (patch)
tree2609360651b9a0d137c5c564a971152c90d52001 /block
parent759f8ca3048f7438aa3129268d7252552505d662 (diff)
downloadlinux-2bbedcb4c1abac498f18e5770d62ae66ff235ada.tar.gz
linux-2bbedcb4c1abac498f18e5770d62ae66ff235ada.tar.bz2
linux-2bbedcb4c1abac498f18e5770d62ae66ff235ada.zip
block: don't test for partition size in bdget_disk() and blk_lookup_devt()
bdget_disk() and blk_lookup_devt() never cared whether the specified partition (or disk) is zero sized or not. I got confused while converting those not to depend on consecutive minor numbers in commit 5a6411b1178baf534aa9138052864dfa89d3eada and later when dev0 was added it broke callers which expected to get valid return for zero sized disk devices. So, they never needed nr_sects checks in the first place. Kill them. This problem was spotted and debugged by Bartlmoiej Zolnierkiewicz. Signed-off-by: Tejun Heo <tj@kernel.org> Cc: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Diffstat (limited to 'block')
-rw-r--r--block/genhd.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/block/genhd.c b/block/genhd.c
index 32ee73c67560..ed926b760ca0 100644
--- a/block/genhd.c
+++ b/block/genhd.c
@@ -584,7 +584,7 @@ struct block_device *bdget_disk(struct gendisk *disk, int partno)
struct block_device *bdev = NULL;
part = disk_get_part(disk, partno);
- if (part && (part->nr_sects || partno == 0))
+ if (part)
bdev = bdget(part_devt(part));
disk_put_part(part);
@@ -1031,7 +1031,7 @@ dev_t blk_lookup_devt(const char *name, int partno)
continue;
part = disk_get_part(disk, partno);
- if (part && (part->nr_sects || partno == 0)) {
+ if (part) {
devt = part_devt(part);
disk_put_part(part);
break;