[PATCH] aoe 1/12: remove too-low cap on minor number

remove too-low cap on minor number

Signed-off-by: Ed L. Cashin <ecashin@coraid.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
ecashin@coraid.com 2005-04-18 22:00:17 -07:00 committed by Greg KH
parent c0698f2f6e
commit fc458dcda2
2 changed files with 10 additions and 4 deletions

View File

@ -2,9 +2,14 @@
#define VERSION "5"
#define AOE_MAJOR 152
#define DEVICE_NAME "aoe"
/* set AOE_PARTITIONS to 1 to use whole-disks only
* default is 16, which is 15 partitions plus the whole disk
*/
#ifndef AOE_PARTITIONS
#define AOE_PARTITIONS 16
#endif
#define SYSMINOR(aoemajor, aoeminor) ((aoemajor) * 10 + (aoeminor))
#define AOEMAJOR(sysminor) ((sysminor) / 10)
#define AOEMINOR(sysminor) ((sysminor) % 10)

View File

@ -577,7 +577,7 @@ aoecmd_cfg_rsp(struct sk_buff *skb)
struct aoe_cfghdr *ch;
ulong flags, bufcnt, sysminor, aoemajor;
struct sk_buff *sl;
enum { MAXFRAMES = 8, MAXSYSMINOR = 255 };
enum { MAXFRAMES = 8 };
h = (struct aoe_hdr *) skb->mac.raw;
ch = (struct aoe_cfghdr *) (h+1);
@ -594,9 +594,10 @@ aoecmd_cfg_rsp(struct sk_buff *skb)
}
sysminor = SYSMINOR(aoemajor, h->minor);
if (sysminor > MAXSYSMINOR) {
printk(KERN_INFO "aoe: aoecmd_cfg_rsp: sysminor %ld too "
"large\n", sysminor);
if (sysminor * AOE_PARTITIONS + AOE_PARTITIONS > MINORMASK) {
printk(KERN_INFO
"aoe: e%ld.%d: minor number too large\n",
aoemajor, (int) h->minor);
return;
}