From: Roland Dreier Mask bits correctly from jhash result in ib_fmr_hash() so that the computed bucket index is within our hash table. This fixes an SDP crash. Signed-off-by: Roland Dreier Signed-off-by: Andrew Morton --- 25-akpm/drivers/infiniband/core/fmr_pool.c | 5 ++--- 1 files changed, 2 insertions(+), 3 deletions(-) diff -puN drivers/infiniband/core/fmr_pool.c~ib-fix-fmr-pool-crash drivers/infiniband/core/fmr_pool.c --- 25/drivers/infiniband/core/fmr_pool.c~ib-fix-fmr-pool-crash Fri Apr 1 13:53:37 2005 +++ 25-akpm/drivers/infiniband/core/fmr_pool.c Fri Apr 1 13:53:37 2005 @@ -103,9 +103,8 @@ struct ib_fmr_pool { static inline u32 ib_fmr_hash(u64 first_page) { - return jhash_2words((u32) first_page, - (u32) (first_page >> 32), - 0); + return jhash_2words((u32) first_page, (u32) (first_page >> 32), 0) & + (IB_FMR_HASH_SIZE - 1); } /* Caller must hold pool_lock */ _