On Tue, 03 Nov 2009 13:39:22 -0800
Al Chu <ch...@llnl.gov> wrote:

> Need to check for NULL?  Manpage says its possible:

Good idea; V2 below,
Ira


From: Ira Weiny <wei...@llnl.gov>
Date: Tue, 3 Nov 2009 13:19:33 -0800
Subject: [PATCH] infiniband-diags/ibqueryerrors: Fix realloc size to prevent 
core

        Realloc size was wrong causing a core when enough errors were
        suppressed.  Reproduced by running:

        ibqueryerrors -c -s 
RcvSwRelayErrors,LinkDowned,VL15Dropped,XmtWait,SymbolErrors,LinkRecovers,RcvErrors

Signed-off-by: Ira Weiny <wei...@llnl.gov>
---
 infiniband-diags/src/ibqueryerrors.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/infiniband-diags/src/ibqueryerrors.c 
b/infiniband-diags/src/ibqueryerrors.c
index f83f29e..2b5f63f 100644
--- a/infiniband-diags/src/ibqueryerrors.c
+++ b/infiniband-diags/src/ibqueryerrors.c
@@ -381,7 +381,11 @@ void print_node(ibnd_node_t * node, void *user_data)
 
 static void add_suppressed(enum MAD_FIELDS field)
 {
-       suppressed_fields = realloc(suppressed_fields, sizeof(enum MAD_FIELDS));
+       suppressed_fields = realloc(suppressed_fields,
+                                   (sup_total+1)*sizeof(enum MAD_FIELDS));
+       if (!suppressed_fields)
+               IBERROR("realloc failed");
+
        suppressed_fields[sup_total] = field;
        sup_total++;
 }
-- 
1.5.4.5

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to