diff options
Diffstat (limited to 'net/rds/ib_cm.c')
-rw-r--r-- | net/rds/ib_cm.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/net/rds/ib_cm.c b/net/rds/ib_cm.c index cd67026be2d5..51c868923f64 100644 --- a/net/rds/ib_cm.c +++ b/net/rds/ib_cm.c | |||
@@ -375,23 +375,21 @@ static int rds_ib_setup_qp(struct rds_connection *conn) | |||
375 | goto out; | 375 | goto out; |
376 | } | 376 | } |
377 | 377 | ||
378 | ic->i_sends = vmalloc_node(ic->i_send_ring.w_nr * sizeof(struct rds_ib_send_work), | 378 | ic->i_sends = vzalloc_node(ic->i_send_ring.w_nr * sizeof(struct rds_ib_send_work), |
379 | ibdev_to_node(dev)); | 379 | ibdev_to_node(dev)); |
380 | if (!ic->i_sends) { | 380 | if (!ic->i_sends) { |
381 | ret = -ENOMEM; | 381 | ret = -ENOMEM; |
382 | rdsdebug("send allocation failed\n"); | 382 | rdsdebug("send allocation failed\n"); |
383 | goto out; | 383 | goto out; |
384 | } | 384 | } |
385 | memset(ic->i_sends, 0, ic->i_send_ring.w_nr * sizeof(struct rds_ib_send_work)); | ||
386 | 385 | ||
387 | ic->i_recvs = vmalloc_node(ic->i_recv_ring.w_nr * sizeof(struct rds_ib_recv_work), | 386 | ic->i_recvs = vzalloc_node(ic->i_recv_ring.w_nr * sizeof(struct rds_ib_recv_work), |
388 | ibdev_to_node(dev)); | 387 | ibdev_to_node(dev)); |
389 | if (!ic->i_recvs) { | 388 | if (!ic->i_recvs) { |
390 | ret = -ENOMEM; | 389 | ret = -ENOMEM; |
391 | rdsdebug("recv allocation failed\n"); | 390 | rdsdebug("recv allocation failed\n"); |
392 | goto out; | 391 | goto out; |
393 | } | 392 | } |
394 | memset(ic->i_recvs, 0, ic->i_recv_ring.w_nr * sizeof(struct rds_ib_recv_work)); | ||
395 | 393 | ||
396 | rds_ib_recv_init_ack(ic); | 394 | rds_ib_recv_init_ack(ic); |
397 | 395 | ||