1As in libmthca, need to initialize SRQ WQE scatter entries to the 2invalid lkey at work queue creation time. 3 4Signed-off-by: Jack Morgenstein <jackm@dev.mellanox.co.il> 5 6Index: libmlx4/src/srq.c 7=================================================================== 8--- libmlx4.orig/src/srq.c 2009-12-09 15:08:52.000000000 +0200 9+++ libmlx4/src/srq.c 2009-12-09 18:44:32.000000000 +0200 10@@ -128,6 +128,7 @@ int mlx4_alloc_srq_buf(struct ibv_pd *pd 11 struct mlx4_srq *srq) 12 { 13 struct mlx4_wqe_srq_next_seg *next; 14+ struct mlx4_wqe_data_seg *scatter; 15 int size; 16 int buf_size; 17 int i; 18@@ -160,6 +161,11 @@ int mlx4_alloc_srq_buf(struct ibv_pd *pd 19 for (i = 0; i < srq->max; ++i) { 20 next = get_wqe(srq, i); 21 next->next_wqe_index = htons((i + 1) & (srq->max - 1)); 22+ 23+ for (scatter = (void *) (next + 1); 24+ (void *) scatter < (void *) next + (1 << srq->wqe_shift); 25+ ++scatter) 26+ scatter->lkey = htonl(MLX4_INVALID_LKEY); 27 } 28 29 srq->head = 0; 30