aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorTejun Heo <tj@kernel.org>2008-08-25 06:56:17 -0400
committerJens Axboe <jens.axboe@oracle.com>2008-10-09 02:56:08 -0400
commit3e1a7ff8a0a7b948f2684930166954f9e8e776fe (patch)
tree0a8642f5cdbc6ddfdd66dc7241c915e57b3cb7ff /include
parent689d6fac40b41c7bf154f362deaf442548e4dc81 (diff)
block: allow disk to have extended device number
Now that disk and partition handlings are mostly unified, it's easy to allow disk to have extended device number. This patch makes add_disk() use extended device number if disk->minors is zero. Both sd and ide-disk are updated to use this. * sd_format_disk_name() is implemented which can generically determine the drive name. This removes disk number restriction stemming from limited device names. * If sd index goes over SD_MAX_DISKS (which can be increased now BTW), sd simply doesn't initialize minors letting block layer choose extended device number. * If CONFIG_DEBUG_EXT_DEVT is set, both sd and ide-disk always set minors to 0 and use extended device numbers. Signed-off-by: Tejun Heo <tj@kernel.org> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/genhd.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/include/linux/genhd.h b/include/linux/genhd.h
index 04524c213de1..206cdf96c3a7 100644
--- a/include/linux/genhd.h
+++ b/include/linux/genhd.h
@@ -59,6 +59,7 @@ enum {
59}; 59};
60 60
61#define DISK_MAX_PARTS 256 61#define DISK_MAX_PARTS 256
62#define DISK_NAME_LEN 32
62 63
63#include <linux/major.h> 64#include <linux/major.h>
64#include <linux/device.h> 65#include <linux/device.h>
@@ -140,7 +141,7 @@ struct gendisk {
140 int minors; /* maximum number of minors, =1 for 141 int minors; /* maximum number of minors, =1 for
141 * disks that can't be partitioned. */ 142 * disks that can't be partitioned. */
142 143
143 char disk_name[32]; /* name of major driver */ 144 char disk_name[DISK_NAME_LEN]; /* name of major driver */
144 145
145 /* Array of pointers to partitions indexed by partno. 146 /* Array of pointers to partitions indexed by partno.
146 * Protected with matching bdev lock but stat and other 147 * Protected with matching bdev lock but stat and other