[patch 009/114] aoe: ignore vendor extension AoE responses

Greg KH
2009-03-14T01:23:29Z

[-- Attachment #1: aoe-ignore-vendor-extension-aoe-responses.patch --]
[-- Type: text/plain, Size: 1416 bytes --]

2.6.28-stable review patch. If anyone has any objections, please let us know.

------------------

From: Ed Cashin <ecashin@coraid.com>

commit b6d6c5175809934e04a606d9193ef04924a7a7d9 upstream.

The Welland ME-747K-SI AoE target generates unsolicited AoE responses that
are marked as vendor extensions. Instead of ignoring these packets, the
aoe driver was generating kernel messages for each unrecognized response
received. This patch corrects the behavior.

Signed-off-by: Ed Cashin <ecashin@coraid.com>
Reported-by: <karaluh@karaluh.pl>
Tested-by: <karaluh@karaluh.pl>
Cc: Alex Buell <alex.buell@munted.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

---
drivers/block/aoe/aoe.h | 1 +
drivers/block/aoe/aoenet.c | 2 ++
2 files changed, 3 insertions(+)

--- a/drivers/block/aoe/aoe.h
+++ b/drivers/block/aoe/aoe.h
@@ -18,6 +18,7 @@
enum {
AOECMD_ATA,
AOECMD_CFG,
+ AOECMD_VEND_MIN = 0xf0,

AOEFL_RSP = (1<<3),
AOEFL_ERR = (1<<2),
--- a/drivers/block/aoe/aoenet.c
+++ b/drivers/block/aoe/aoenet.c
@@ -153,6 +153,8 @@ aoenet_rcv(struct sk_buff *skb, struct n
aoecmd_cfg_rsp(skb);
break;
default:
+ if (h->cmd >= AOECMD_VEND_MIN)
+ break; /* don't complain about vendor commands */
printk(KERN_INFO "aoe: unknown cmd %d\n", h->cmd);
}