diff options
author | Ed Cashin <ecashin@coraid.com> | 2012-10-04 20:16:40 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-10-05 14:05:28 -0400 |
commit | 0c966214589b9767fd8771b71328f83bac58cb25 (patch) | |
tree | fa46832f149cb30b1847bc6eee13e79ef9c0c444 /drivers/block/aoe/aoeblk.c | |
parent | eecdf226721673095ef7849f960350897392e8bf (diff) |
aoe: support more AoE addresses with dynamic block device minor numbers
The ATA over Ethernet protocol uses a major (shelf) and minor (slot)
address to identify a particular storage target. These changes remove an
artificial limitation the aoe driver imposes on the use of AoE addresses.
For example, without these changes, the slot address has a maximum of 15,
but users commonly use slot numbers much greater than that.
The AoE shelf and slot address space is often used sparsely. Instead of
using a static mapping between AoE addresses and the block device minor
number, the block device minor numbers are now allocated on demand.
Signed-off-by: Ed Cashin <ecashin@coraid.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/block/aoe/aoeblk.c')
-rw-r--r-- | drivers/block/aoe/aoeblk.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/block/aoe/aoeblk.c b/drivers/block/aoe/aoeblk.c index 83160ab0d273..00dfc5008ad4 100644 --- a/drivers/block/aoe/aoeblk.c +++ b/drivers/block/aoe/aoeblk.c | |||
@@ -249,7 +249,7 @@ aoeblk_gdalloc(void *vp) | |||
249 | q->queuedata = d; | 249 | q->queuedata = d; |
250 | d->gd = gd; | 250 | d->gd = gd; |
251 | gd->major = AOE_MAJOR; | 251 | gd->major = AOE_MAJOR; |
252 | gd->first_minor = d->sysminor * AOE_PARTITIONS; | 252 | gd->first_minor = d->sysminor; |
253 | gd->fops = &aoe_bdops; | 253 | gd->fops = &aoe_bdops; |
254 | gd->private_data = d; | 254 | gd->private_data = d; |
255 | set_capacity(gd, d->ssize); | 255 | set_capacity(gd, d->ssize); |