1move  pthread_cond_t fields to the end of structs, because
2their size changed from RHAS4 to RHAS5. In all the cases,
3the intervening entries were not accessed outside libibverbs
4(in non-XRC applications).
5    
6The structs modified are: ibv_cq, ibv_srq, and ibv_qp.
7(OFED 1.3 libibverbs commit 4c29c266a3c0932cd06e8f2b4e238aecd3c65dcc)
8    
9Pointed out by:  Changqing Tang <changquing.tang@hp.com>
10    
11Signed-off-by: Jack Morgenstein <jackm@dev.mellanox.co.il>
12
13Index: libibverbs/include/infiniband/verbs.h
14===================================================================
15--- libibverbs.orig/include/infiniband/verbs.h	2009-11-01 15:18:24.585280000 +0200
16+++ libibverbs/include/infiniband/verbs.h	2009-11-01 15:18:28.759417000 +0200
17@@ -565,13 +565,14 @@ struct ibv_srq {
18 	struct ibv_pd	       *pd;
19 	uint32_t		handle;
20 
21-	pthread_mutex_t		mutex;
22-	pthread_cond_t		cond;
23 	uint32_t		events_completed;
24 
25 	uint32_t		xrc_srq_num;
26 	struct ibv_xrc_domain  *xrc_domain;
27 	struct ibv_cq	       *xrc_cq;
28+
29+	pthread_mutex_t		mutex;
30+	pthread_cond_t		cond;
31 };
32 
33 struct ibv_qp {
34@@ -586,11 +587,12 @@ struct ibv_qp {
35 	enum ibv_qp_state       state;
36 	enum ibv_qp_type	qp_type;
37 
38-	pthread_mutex_t		mutex;
39-	pthread_cond_t		cond;
40 	uint32_t		events_completed;
41 
42 	struct ibv_xrc_domain  *xrc_domain;
43+
44+	pthread_mutex_t		mutex;
45+	pthread_cond_t		cond;
46 };
47 
48 struct ibv_comp_channel {
49@@ -606,10 +608,11 @@ struct ibv_cq {
50 	uint32_t		handle;
51 	int			cqe;
52 
53-	pthread_mutex_t		mutex;
54-	pthread_cond_t		cond;
55 	uint32_t		comp_events_completed;
56 	uint32_t		async_events_completed;
57+
58+	pthread_mutex_t		mutex;
59+	pthread_cond_t		cond;
60 };
61 
62 struct ibv_ah {
63