diff options
-rw-r--r-- | drivers/block/aoe/aoecmd.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/block/aoe/aoecmd.c b/drivers/block/aoe/aoecmd.c index e3291dfa7607..2a6a4316db00 100644 --- a/drivers/block/aoe/aoecmd.c +++ b/drivers/block/aoe/aoecmd.c @@ -1359,6 +1359,13 @@ aoecmd_cfg_rsp(struct sk_buff *skb) "Check shelf dip switches.\n"); return; } + if (h->minor >= NPERSHELF) { + pr_err("aoe: e%ld.%d %s, %d\n", + aoemajor, h->minor, + "slot number larger than the maximum", + NPERSHELF-1); + return; + } sysminor = SYSMINOR(aoemajor, h->minor); if (sysminor * AOE_PARTITIONS + AOE_PARTITIONS > MINORMASK) { |