ERR_PTR() dereference in net/rds/ib.c
Dan Carpenter [Thu, 9 Apr 2009 14:09:46 +0000 (14:09 +0000)]
rdma_create_id() doesn't return NULL, only ERR_PTR().

Found by smatch (http://repo.or.cz/w/smatch.git).  Compile tested.

regards,
dan carpenter

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Andy Grover <andy.grover@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

net/rds/ib.c

index 4933b38..b9bcd32 100644 (file)
@@ -224,8 +224,8 @@ static int rds_ib_laddr_check(__be32 addr)
         * IB and iWARP capable NICs.
         */
        cm_id = rdma_create_id(NULL, NULL, RDMA_PS_TCP);
-       if (!cm_id)
-               return -EADDRNOTAVAIL;
+       if (IS_ERR(cm_id))
+               return PTR_ERR(cm_id);
 
        memset(&sin, 0, sizeof(sin));
        sin.sin_family = AF_INET;