aboutsummaryrefslogtreecommitdiff
path: root/drivers/block/aoe
diff options
context:
space:
mode:
authorEd L. Cashin <ecashin@coraid.com>2008-02-08 04:20:09 -0800
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2008-02-08 09:22:32 -0800
commit578c4aa0b455a1850208ccc67ca1ca23697e72f5 (patch)
tree5f5fc92ff4b7ab066191d4c3c2a7f25adaf1a9e9 /drivers/block/aoe
parent1d75981a8094e9f84fae65a6a83b361e3893b971 (diff)
aoe: make error messages more specific
Andrew Morton pointed out that the "too many targets" message in patch 2 could be printed for failing GFP_ATOMIC allocations. This patch makes the messages more specific. Signed-off-by: Ed L. Cashin <ecashin@coraid.com> Cc: Greg KH <greg@kroah.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')
-rw-r--r--drivers/block/aoe/aoecmd.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/drivers/block/aoe/aoecmd.c b/drivers/block/aoe/aoecmd.c
index bcea36c87d0..1e37cf6d921 100644
--- a/drivers/block/aoe/aoecmd.c
+++ b/drivers/block/aoe/aoecmd.c
@@ -957,15 +957,17 @@ addtgt(struct aoedev *d, char *addr, ulong nframes)
for (; tt < te && *tt; tt++)
;
- if (tt == te)
+ if (tt == te) {
+ printk(KERN_INFO
+ "aoe: device addtgt failure; too many targets\n");
return NULL;
-
+ }
t = kcalloc(1, sizeof *t, GFP_ATOMIC);
- if (!t)
- return NULL;
f = kcalloc(nframes, sizeof *f, GFP_ATOMIC);
- if (!f) {
+ if (!t || !f) {
+ kfree(f);
kfree(t);
+ printk(KERN_INFO "aoe: cannot allocate memory to add target\n");
return NULL;
}
@@ -1029,9 +1031,6 @@ aoecmd_cfg_rsp(struct sk_buff *skb)
if (!t) {
t = addtgt(d, h->src, n);
if (!t) {
- printk(KERN_INFO
- "aoe: device addtgt failure; "
- "too many targets?\n");
spin_unlock_irqrestore(&d->lock, flags);
return;
}