diff options
-rw-r--r-- | drivers/infiniband/core/mad.c | 11 | ||||
-rw-r--r-- | drivers/infiniband/core/uverbs_cmd.c | 2 | ||||
-rw-r--r-- | drivers/infiniband/hw/amso1100/c2_cq.c | 2 | ||||
-rw-r--r-- | drivers/infiniband/hw/ehca/ehca_reqs.c | 2 | ||||
-rw-r--r-- | drivers/infiniband/hw/ipath/ipath_qp.c | 2 | ||||
-rw-r--r-- | drivers/infiniband/hw/ipath/ipath_rc.c | 8 | ||||
-rw-r--r-- | drivers/infiniband/hw/ipath/ipath_ruc.c | 8 | ||||
-rw-r--r-- | drivers/infiniband/hw/ipath/ipath_uc.c | 4 | ||||
-rw-r--r-- | drivers/infiniband/hw/ipath/ipath_ud.c | 8 | ||||
-rw-r--r-- | drivers/infiniband/hw/mthca/mthca_cmd.c | 2 | ||||
-rw-r--r-- | drivers/infiniband/hw/mthca/mthca_cq.c | 2 | ||||
-rw-r--r-- | include/rdma/ib_verbs.h | 2 |
12 files changed, 28 insertions, 25 deletions
diff --git a/drivers/infiniband/core/mad.c b/drivers/infiniband/core/mad.c index 5ed141ebd1c8..13efd4170349 100644 --- a/drivers/infiniband/core/mad.c +++ b/drivers/infiniband/core/mad.c | |||
@@ -642,7 +642,8 @@ static void snoop_recv(struct ib_mad_qp_info *qp_info, | |||
642 | spin_unlock_irqrestore(&qp_info->snoop_lock, flags); | 642 | spin_unlock_irqrestore(&qp_info->snoop_lock, flags); |
643 | } | 643 | } |
644 | 644 | ||
645 | static void build_smp_wc(u64 wr_id, u16 slid, u16 pkey_index, u8 port_num, | 645 | static void build_smp_wc(struct ib_qp *qp, |
646 | u64 wr_id, u16 slid, u16 pkey_index, u8 port_num, | ||
646 | struct ib_wc *wc) | 647 | struct ib_wc *wc) |
647 | { | 648 | { |
648 | memset(wc, 0, sizeof *wc); | 649 | memset(wc, 0, sizeof *wc); |
@@ -652,7 +653,7 @@ static void build_smp_wc(u64 wr_id, u16 slid, u16 pkey_index, u8 port_num, | |||
652 | wc->pkey_index = pkey_index; | 653 | wc->pkey_index = pkey_index; |
653 | wc->byte_len = sizeof(struct ib_mad) + sizeof(struct ib_grh); | 654 | wc->byte_len = sizeof(struct ib_mad) + sizeof(struct ib_grh); |
654 | wc->src_qp = IB_QP0; | 655 | wc->src_qp = IB_QP0; |
655 | wc->qp_num = IB_QP0; | 656 | wc->qp = qp; |
656 | wc->slid = slid; | 657 | wc->slid = slid; |
657 | wc->sl = 0; | 658 | wc->sl = 0; |
658 | wc->dlid_path_bits = 0; | 659 | wc->dlid_path_bits = 0; |
@@ -713,7 +714,8 @@ static int handle_outgoing_dr_smp(struct ib_mad_agent_private *mad_agent_priv, | |||
713 | goto out; | 714 | goto out; |
714 | } | 715 | } |
715 | 716 | ||
716 | build_smp_wc(send_wr->wr_id, be16_to_cpu(smp->dr_slid), | 717 | build_smp_wc(mad_agent_priv->agent.qp, |
718 | send_wr->wr_id, be16_to_cpu(smp->dr_slid), | ||
717 | send_wr->wr.ud.pkey_index, | 719 | send_wr->wr.ud.pkey_index, |
718 | send_wr->wr.ud.port_num, &mad_wc); | 720 | send_wr->wr.ud.port_num, &mad_wc); |
719 | 721 | ||
@@ -2355,7 +2357,8 @@ static void local_completions(struct work_struct *work) | |||
2355 | * Defined behavior is to complete response | 2357 | * Defined behavior is to complete response |
2356 | * before request | 2358 | * before request |
2357 | */ | 2359 | */ |
2358 | build_smp_wc((unsigned long) local->mad_send_wr, | 2360 | build_smp_wc(recv_mad_agent->agent.qp, |
2361 | (unsigned long) local->mad_send_wr, | ||
2359 | be16_to_cpu(IB_LID_PERMISSIVE), | 2362 | be16_to_cpu(IB_LID_PERMISSIVE), |
2360 | 0, recv_mad_agent->agent.port_num, &wc); | 2363 | 0, recv_mad_agent->agent.port_num, &wc); |
2361 | 2364 | ||
diff --git a/drivers/infiniband/core/uverbs_cmd.c b/drivers/infiniband/core/uverbs_cmd.c index 743247ec065e..df1efbc10882 100644 --- a/drivers/infiniband/core/uverbs_cmd.c +++ b/drivers/infiniband/core/uverbs_cmd.c | |||
@@ -933,7 +933,7 @@ ssize_t ib_uverbs_poll_cq(struct ib_uverbs_file *file, | |||
933 | resp->wc[i].vendor_err = wc[i].vendor_err; | 933 | resp->wc[i].vendor_err = wc[i].vendor_err; |
934 | resp->wc[i].byte_len = wc[i].byte_len; | 934 | resp->wc[i].byte_len = wc[i].byte_len; |
935 | resp->wc[i].imm_data = (__u32 __force) wc[i].imm_data; | 935 | resp->wc[i].imm_data = (__u32 __force) wc[i].imm_data; |
936 | resp->wc[i].qp_num = wc[i].qp_num; | 936 | resp->wc[i].qp_num = wc[i].qp->qp_num; |
937 | resp->wc[i].src_qp = wc[i].src_qp; | 937 | resp->wc[i].src_qp = wc[i].src_qp; |
938 | resp->wc[i].wc_flags = wc[i].wc_flags; | 938 | resp->wc[i].wc_flags = wc[i].wc_flags; |
939 | resp->wc[i].pkey_index = wc[i].pkey_index; | 939 | resp->wc[i].pkey_index = wc[i].pkey_index; |
diff --git a/drivers/infiniband/hw/amso1100/c2_cq.c b/drivers/infiniband/hw/amso1100/c2_cq.c index 05c9154d46f4..5175c99ee586 100644 --- a/drivers/infiniband/hw/amso1100/c2_cq.c +++ b/drivers/infiniband/hw/amso1100/c2_cq.c | |||
@@ -153,7 +153,7 @@ static inline int c2_poll_one(struct c2_dev *c2dev, | |||
153 | 153 | ||
154 | entry->status = c2_cqe_status_to_openib(c2_wr_get_result(ce)); | 154 | entry->status = c2_cqe_status_to_openib(c2_wr_get_result(ce)); |
155 | entry->wr_id = ce->hdr.context; | 155 | entry->wr_id = ce->hdr.context; |
156 | entry->qp_num = ce->handle; | 156 | entry->qp = &qp->ibqp; |
157 | entry->wc_flags = 0; | 157 | entry->wc_flags = 0; |
158 | entry->slid = 0; | 158 | entry->slid = 0; |
159 | entry->sl = 0; | 159 | entry->sl = 0; |
diff --git a/drivers/infiniband/hw/ehca/ehca_reqs.c b/drivers/infiniband/hw/ehca/ehca_reqs.c index b46bda1bf85d..08d3f892d9f3 100644 --- a/drivers/infiniband/hw/ehca/ehca_reqs.c +++ b/drivers/infiniband/hw/ehca/ehca_reqs.c | |||
@@ -579,7 +579,7 @@ poll_cq_one_read_cqe: | |||
579 | } else | 579 | } else |
580 | wc->status = IB_WC_SUCCESS; | 580 | wc->status = IB_WC_SUCCESS; |
581 | 581 | ||
582 | wc->qp_num = cqe->local_qp_number; | 582 | wc->qp = NULL; |
583 | wc->byte_len = cqe->nr_bytes_transferred; | 583 | wc->byte_len = cqe->nr_bytes_transferred; |
584 | wc->pkey_index = cqe->pkey_index; | 584 | wc->pkey_index = cqe->pkey_index; |
585 | wc->slid = cqe->rlid; | 585 | wc->slid = cqe->rlid; |
diff --git a/drivers/infiniband/hw/ipath/ipath_qp.c b/drivers/infiniband/hw/ipath/ipath_qp.c index 46c1c89bf6ae..64f07b19349f 100644 --- a/drivers/infiniband/hw/ipath/ipath_qp.c +++ b/drivers/infiniband/hw/ipath/ipath_qp.c | |||
@@ -379,7 +379,7 @@ void ipath_error_qp(struct ipath_qp *qp, enum ib_wc_status err) | |||
379 | wc.vendor_err = 0; | 379 | wc.vendor_err = 0; |
380 | wc.byte_len = 0; | 380 | wc.byte_len = 0; |
381 | wc.imm_data = 0; | 381 | wc.imm_data = 0; |
382 | wc.qp_num = qp->ibqp.qp_num; | 382 | wc.qp = &qp->ibqp; |
383 | wc.src_qp = 0; | 383 | wc.src_qp = 0; |
384 | wc.wc_flags = 0; | 384 | wc.wc_flags = 0; |
385 | wc.pkey_index = 0; | 385 | wc.pkey_index = 0; |
diff --git a/drivers/infiniband/hw/ipath/ipath_rc.c b/drivers/infiniband/hw/ipath/ipath_rc.c index ce6038743c5c..5ff20cb04494 100644 --- a/drivers/infiniband/hw/ipath/ipath_rc.c +++ b/drivers/infiniband/hw/ipath/ipath_rc.c | |||
@@ -702,7 +702,7 @@ void ipath_restart_rc(struct ipath_qp *qp, u32 psn, struct ib_wc *wc) | |||
702 | wc->opcode = ib_ipath_wc_opcode[wqe->wr.opcode]; | 702 | wc->opcode = ib_ipath_wc_opcode[wqe->wr.opcode]; |
703 | wc->vendor_err = 0; | 703 | wc->vendor_err = 0; |
704 | wc->byte_len = 0; | 704 | wc->byte_len = 0; |
705 | wc->qp_num = qp->ibqp.qp_num; | 705 | wc->qp = &qp->ibqp; |
706 | wc->src_qp = qp->remote_qpn; | 706 | wc->src_qp = qp->remote_qpn; |
707 | wc->pkey_index = 0; | 707 | wc->pkey_index = 0; |
708 | wc->slid = qp->remote_ah_attr.dlid; | 708 | wc->slid = qp->remote_ah_attr.dlid; |
@@ -836,7 +836,7 @@ static int do_rc_ack(struct ipath_qp *qp, u32 aeth, u32 psn, int opcode) | |||
836 | wc.opcode = ib_ipath_wc_opcode[wqe->wr.opcode]; | 836 | wc.opcode = ib_ipath_wc_opcode[wqe->wr.opcode]; |
837 | wc.vendor_err = 0; | 837 | wc.vendor_err = 0; |
838 | wc.byte_len = wqe->length; | 838 | wc.byte_len = wqe->length; |
839 | wc.qp_num = qp->ibqp.qp_num; | 839 | wc.qp = &qp->ibqp; |
840 | wc.src_qp = qp->remote_qpn; | 840 | wc.src_qp = qp->remote_qpn; |
841 | wc.pkey_index = 0; | 841 | wc.pkey_index = 0; |
842 | wc.slid = qp->remote_ah_attr.dlid; | 842 | wc.slid = qp->remote_ah_attr.dlid; |
@@ -951,7 +951,7 @@ static int do_rc_ack(struct ipath_qp *qp, u32 aeth, u32 psn, int opcode) | |||
951 | wc.opcode = ib_ipath_wc_opcode[wqe->wr.opcode]; | 951 | wc.opcode = ib_ipath_wc_opcode[wqe->wr.opcode]; |
952 | wc.vendor_err = 0; | 952 | wc.vendor_err = 0; |
953 | wc.byte_len = 0; | 953 | wc.byte_len = 0; |
954 | wc.qp_num = qp->ibqp.qp_num; | 954 | wc.qp = &qp->ibqp; |
955 | wc.src_qp = qp->remote_qpn; | 955 | wc.src_qp = qp->remote_qpn; |
956 | wc.pkey_index = 0; | 956 | wc.pkey_index = 0; |
957 | wc.slid = qp->remote_ah_attr.dlid; | 957 | wc.slid = qp->remote_ah_attr.dlid; |
@@ -1511,7 +1511,7 @@ void ipath_rc_rcv(struct ipath_ibdev *dev, struct ipath_ib_header *hdr, | |||
1511 | wc.status = IB_WC_SUCCESS; | 1511 | wc.status = IB_WC_SUCCESS; |
1512 | wc.opcode = IB_WC_RECV; | 1512 | wc.opcode = IB_WC_RECV; |
1513 | wc.vendor_err = 0; | 1513 | wc.vendor_err = 0; |
1514 | wc.qp_num = qp->ibqp.qp_num; | 1514 | wc.qp = &qp->ibqp; |
1515 | wc.src_qp = qp->remote_qpn; | 1515 | wc.src_qp = qp->remote_qpn; |
1516 | wc.pkey_index = 0; | 1516 | wc.pkey_index = 0; |
1517 | wc.slid = qp->remote_ah_attr.dlid; | 1517 | wc.slid = qp->remote_ah_attr.dlid; |
diff --git a/drivers/infiniband/hw/ipath/ipath_ruc.c b/drivers/infiniband/hw/ipath/ipath_ruc.c index f7530512045d..e86cb171872e 100644 --- a/drivers/infiniband/hw/ipath/ipath_ruc.c +++ b/drivers/infiniband/hw/ipath/ipath_ruc.c | |||
@@ -137,7 +137,7 @@ bad_lkey: | |||
137 | wc.vendor_err = 0; | 137 | wc.vendor_err = 0; |
138 | wc.byte_len = 0; | 138 | wc.byte_len = 0; |
139 | wc.imm_data = 0; | 139 | wc.imm_data = 0; |
140 | wc.qp_num = qp->ibqp.qp_num; | 140 | wc.qp = &qp->ibqp; |
141 | wc.src_qp = 0; | 141 | wc.src_qp = 0; |
142 | wc.wc_flags = 0; | 142 | wc.wc_flags = 0; |
143 | wc.pkey_index = 0; | 143 | wc.pkey_index = 0; |
@@ -336,7 +336,7 @@ again: | |||
336 | wc.opcode = ib_ipath_wc_opcode[wqe->wr.opcode]; | 336 | wc.opcode = ib_ipath_wc_opcode[wqe->wr.opcode]; |
337 | wc.vendor_err = 0; | 337 | wc.vendor_err = 0; |
338 | wc.byte_len = 0; | 338 | wc.byte_len = 0; |
339 | wc.qp_num = sqp->ibqp.qp_num; | 339 | wc.qp = &sqp->ibqp; |
340 | wc.src_qp = sqp->remote_qpn; | 340 | wc.src_qp = sqp->remote_qpn; |
341 | wc.pkey_index = 0; | 341 | wc.pkey_index = 0; |
342 | wc.slid = sqp->remote_ah_attr.dlid; | 342 | wc.slid = sqp->remote_ah_attr.dlid; |
@@ -426,7 +426,7 @@ again: | |||
426 | wc.status = IB_WC_SUCCESS; | 426 | wc.status = IB_WC_SUCCESS; |
427 | wc.vendor_err = 0; | 427 | wc.vendor_err = 0; |
428 | wc.byte_len = wqe->length; | 428 | wc.byte_len = wqe->length; |
429 | wc.qp_num = qp->ibqp.qp_num; | 429 | wc.qp = &qp->ibqp; |
430 | wc.src_qp = qp->remote_qpn; | 430 | wc.src_qp = qp->remote_qpn; |
431 | /* XXX do we know which pkey matched? Only needed for GSI. */ | 431 | /* XXX do we know which pkey matched? Only needed for GSI. */ |
432 | wc.pkey_index = 0; | 432 | wc.pkey_index = 0; |
@@ -447,7 +447,7 @@ send_comp: | |||
447 | wc.opcode = ib_ipath_wc_opcode[wqe->wr.opcode]; | 447 | wc.opcode = ib_ipath_wc_opcode[wqe->wr.opcode]; |
448 | wc.vendor_err = 0; | 448 | wc.vendor_err = 0; |
449 | wc.byte_len = wqe->length; | 449 | wc.byte_len = wqe->length; |
450 | wc.qp_num = sqp->ibqp.qp_num; | 450 | wc.qp = &sqp->ibqp; |
451 | wc.src_qp = 0; | 451 | wc.src_qp = 0; |
452 | wc.pkey_index = 0; | 452 | wc.pkey_index = 0; |
453 | wc.slid = 0; | 453 | wc.slid = 0; |
diff --git a/drivers/infiniband/hw/ipath/ipath_uc.c b/drivers/infiniband/hw/ipath/ipath_uc.c index e636cfd67a82..325d6634ff53 100644 --- a/drivers/infiniband/hw/ipath/ipath_uc.c +++ b/drivers/infiniband/hw/ipath/ipath_uc.c | |||
@@ -49,7 +49,7 @@ static void complete_last_send(struct ipath_qp *qp, struct ipath_swqe *wqe, | |||
49 | wc->opcode = ib_ipath_wc_opcode[wqe->wr.opcode]; | 49 | wc->opcode = ib_ipath_wc_opcode[wqe->wr.opcode]; |
50 | wc->vendor_err = 0; | 50 | wc->vendor_err = 0; |
51 | wc->byte_len = wqe->length; | 51 | wc->byte_len = wqe->length; |
52 | wc->qp_num = qp->ibqp.qp_num; | 52 | wc->qp = &qp->ibqp; |
53 | wc->src_qp = qp->remote_qpn; | 53 | wc->src_qp = qp->remote_qpn; |
54 | wc->pkey_index = 0; | 54 | wc->pkey_index = 0; |
55 | wc->slid = qp->remote_ah_attr.dlid; | 55 | wc->slid = qp->remote_ah_attr.dlid; |
@@ -411,7 +411,7 @@ void ipath_uc_rcv(struct ipath_ibdev *dev, struct ipath_ib_header *hdr, | |||
411 | wc.status = IB_WC_SUCCESS; | 411 | wc.status = IB_WC_SUCCESS; |
412 | wc.opcode = IB_WC_RECV; | 412 | wc.opcode = IB_WC_RECV; |
413 | wc.vendor_err = 0; | 413 | wc.vendor_err = 0; |
414 | wc.qp_num = qp->ibqp.qp_num; | 414 | wc.qp = &qp->ibqp; |
415 | wc.src_qp = qp->remote_qpn; | 415 | wc.src_qp = qp->remote_qpn; |
416 | wc.pkey_index = 0; | 416 | wc.pkey_index = 0; |
417 | wc.slid = qp->remote_ah_attr.dlid; | 417 | wc.slid = qp->remote_ah_attr.dlid; |
diff --git a/drivers/infiniband/hw/ipath/ipath_ud.c b/drivers/infiniband/hw/ipath/ipath_ud.c index 49f1102af8b3..9a3e54664ee4 100644 --- a/drivers/infiniband/hw/ipath/ipath_ud.c +++ b/drivers/infiniband/hw/ipath/ipath_ud.c | |||
@@ -66,7 +66,7 @@ bad_lkey: | |||
66 | wc.vendor_err = 0; | 66 | wc.vendor_err = 0; |
67 | wc.byte_len = 0; | 67 | wc.byte_len = 0; |
68 | wc.imm_data = 0; | 68 | wc.imm_data = 0; |
69 | wc.qp_num = qp->ibqp.qp_num; | 69 | wc.qp = &qp->ibqp; |
70 | wc.src_qp = 0; | 70 | wc.src_qp = 0; |
71 | wc.wc_flags = 0; | 71 | wc.wc_flags = 0; |
72 | wc.pkey_index = 0; | 72 | wc.pkey_index = 0; |
@@ -255,7 +255,7 @@ static void ipath_ud_loopback(struct ipath_qp *sqp, | |||
255 | wc->status = IB_WC_SUCCESS; | 255 | wc->status = IB_WC_SUCCESS; |
256 | wc->opcode = IB_WC_RECV; | 256 | wc->opcode = IB_WC_RECV; |
257 | wc->vendor_err = 0; | 257 | wc->vendor_err = 0; |
258 | wc->qp_num = qp->ibqp.qp_num; | 258 | wc->qp = &qp->ibqp; |
259 | wc->src_qp = sqp->ibqp.qp_num; | 259 | wc->src_qp = sqp->ibqp.qp_num; |
260 | /* XXX do we know which pkey matched? Only needed for GSI. */ | 260 | /* XXX do we know which pkey matched? Only needed for GSI. */ |
261 | wc->pkey_index = 0; | 261 | wc->pkey_index = 0; |
@@ -474,7 +474,7 @@ done: | |||
474 | wc.vendor_err = 0; | 474 | wc.vendor_err = 0; |
475 | wc.opcode = IB_WC_SEND; | 475 | wc.opcode = IB_WC_SEND; |
476 | wc.byte_len = len; | 476 | wc.byte_len = len; |
477 | wc.qp_num = qp->ibqp.qp_num; | 477 | wc.qp = &qp->ibqp; |
478 | wc.src_qp = 0; | 478 | wc.src_qp = 0; |
479 | wc.wc_flags = 0; | 479 | wc.wc_flags = 0; |
480 | /* XXX initialize other fields? */ | 480 | /* XXX initialize other fields? */ |
@@ -651,7 +651,7 @@ void ipath_ud_rcv(struct ipath_ibdev *dev, struct ipath_ib_header *hdr, | |||
651 | wc.status = IB_WC_SUCCESS; | 651 | wc.status = IB_WC_SUCCESS; |
652 | wc.opcode = IB_WC_RECV; | 652 | wc.opcode = IB_WC_RECV; |
653 | wc.vendor_err = 0; | 653 | wc.vendor_err = 0; |
654 | wc.qp_num = qp->ibqp.qp_num; | 654 | wc.qp = &qp->ibqp; |
655 | wc.src_qp = src_qp; | 655 | wc.src_qp = src_qp; |
656 | /* XXX do we know which pkey matched? Only needed for GSI. */ | 656 | /* XXX do we know which pkey matched? Only needed for GSI. */ |
657 | wc.pkey_index = 0; | 657 | wc.pkey_index = 0; |
diff --git a/drivers/infiniband/hw/mthca/mthca_cmd.c b/drivers/infiniband/hw/mthca/mthca_cmd.c index 768df7265b81..968d1519761c 100644 --- a/drivers/infiniband/hw/mthca/mthca_cmd.c +++ b/drivers/infiniband/hw/mthca/mthca_cmd.c | |||
@@ -1854,7 +1854,7 @@ int mthca_MAD_IFC(struct mthca_dev *dev, int ignore_mkey, int ignore_bkey, | |||
1854 | 1854 | ||
1855 | memset(inbox + 256, 0, 256); | 1855 | memset(inbox + 256, 0, 256); |
1856 | 1856 | ||
1857 | MTHCA_PUT(inbox, in_wc->qp_num, MAD_IFC_MY_QPN_OFFSET); | 1857 | MTHCA_PUT(inbox, in_wc->qp->qp_num, MAD_IFC_MY_QPN_OFFSET); |
1858 | MTHCA_PUT(inbox, in_wc->src_qp, MAD_IFC_RQPN_OFFSET); | 1858 | MTHCA_PUT(inbox, in_wc->src_qp, MAD_IFC_RQPN_OFFSET); |
1859 | 1859 | ||
1860 | val = in_wc->sl << 4; | 1860 | val = in_wc->sl << 4; |
diff --git a/drivers/infiniband/hw/mthca/mthca_cq.c b/drivers/infiniband/hw/mthca/mthca_cq.c index 1159c8a0f2c5..efd79ef109a6 100644 --- a/drivers/infiniband/hw/mthca/mthca_cq.c +++ b/drivers/infiniband/hw/mthca/mthca_cq.c | |||
@@ -534,7 +534,7 @@ static inline int mthca_poll_one(struct mthca_dev *dev, | |||
534 | } | 534 | } |
535 | } | 535 | } |
536 | 536 | ||
537 | entry->qp_num = (*cur_qp)->qpn; | 537 | entry->qp = &(*cur_qp)->ibqp; |
538 | 538 | ||
539 | if (is_send) { | 539 | if (is_send) { |
540 | wq = &(*cur_qp)->sq; | 540 | wq = &(*cur_qp)->sq; |
diff --git a/include/rdma/ib_verbs.h b/include/rdma/ib_verbs.h index 73aafd7bb503..765589f4d166 100644 --- a/include/rdma/ib_verbs.h +++ b/include/rdma/ib_verbs.h | |||
@@ -420,8 +420,8 @@ struct ib_wc { | |||
420 | enum ib_wc_opcode opcode; | 420 | enum ib_wc_opcode opcode; |
421 | u32 vendor_err; | 421 | u32 vendor_err; |
422 | u32 byte_len; | 422 | u32 byte_len; |
423 | struct ib_qp *qp; | ||
423 | __be32 imm_data; | 424 | __be32 imm_data; |
424 | u32 qp_num; | ||
425 | u32 src_qp; | 425 | u32 src_qp; |
426 | int wc_flags; | 426 | int wc_flags; |
427 | u16 pkey_index; | 427 | u16 pkey_index; |