1219820SjeffAs in libmthca, need to initialize SRQ WQE scatter entries to the 2219820Sjeffinvalid lkey at work queue creation time. 3219820Sjeff 4219820SjeffSigned-off-by: Jack Morgenstein <jackm@dev.mellanox.co.il> 5219820Sjeff 6219820SjeffIndex: libmlx4/src/srq.c 7219820Sjeff=================================================================== 8219820Sjeff--- libmlx4.orig/src/srq.c 2009-12-09 15:08:52.000000000 +0200 9219820Sjeff+++ libmlx4/src/srq.c 2009-12-09 18:44:32.000000000 +0200 10219820Sjeff@@ -128,6 +128,7 @@ int mlx4_alloc_srq_buf(struct ibv_pd *pd 11219820Sjeff struct mlx4_srq *srq) 12219820Sjeff { 13219820Sjeff struct mlx4_wqe_srq_next_seg *next; 14219820Sjeff+ struct mlx4_wqe_data_seg *scatter; 15219820Sjeff int size; 16219820Sjeff int buf_size; 17219820Sjeff int i; 18219820Sjeff@@ -160,6 +161,11 @@ int mlx4_alloc_srq_buf(struct ibv_pd *pd 19219820Sjeff for (i = 0; i < srq->max; ++i) { 20219820Sjeff next = get_wqe(srq, i); 21219820Sjeff next->next_wqe_index = htons((i + 1) & (srq->max - 1)); 22219820Sjeff+ 23219820Sjeff+ for (scatter = (void *) (next + 1); 24219820Sjeff+ (void *) scatter < (void *) next + (1 << srq->wqe_shift); 25219820Sjeff+ ++scatter) 26219820Sjeff+ scatter->lkey = htonl(MLX4_INVALID_LKEY); 27219820Sjeff } 28219820Sjeff 29219820Sjeff srq->head = 0; 30