diff options
author | Dasaratharaman Chandramouli <dasaratharaman.chandramouli@intel.com> | 2016-07-25 16:40:16 -0400 |
---|---|---|
committer | Doug Ledford <dledford@redhat.com> | 2016-08-02 16:00:58 -0400 |
commit | a9b6b3bc295d2360480d32049c32661e809c7c5c (patch) | |
tree | ebd2849df31d28226d54540463884b67dc66ca59 /drivers/infiniband | |
parent | bd24ef5eca75b00c9d98533f5644750de2f29a65 (diff) |
IB/hfi1: Rename struct ahg_ib_header to struct hfi1_ahg_info
struct ahg_ib_header has no header specific information.
Rename it to struct hfi1_ahg_info
Reviewed-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Reviewed-by: Dean Luick <dean.luick@intel.com>
Signed-off-by: Dasaratharaman Chandramouli <dasaratharaman.chandramouli@intel.com>
Signed-off-by: Don Hiatt <don.hiatt@intel.com>
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
Diffstat (limited to 'drivers/infiniband')
-rw-r--r-- | drivers/infiniband/hw/hfi1/qp.c | 7 | ||||
-rw-r--r-- | drivers/infiniband/hw/hfi1/qp.h | 2 | ||||
-rw-r--r-- | drivers/infiniband/hw/hfi1/ruc.c | 28 | ||||
-rw-r--r-- | drivers/infiniband/hw/hfi1/ud.c | 6 | ||||
-rw-r--r-- | drivers/infiniband/hw/hfi1/verbs.c | 20 | ||||
-rw-r--r-- | drivers/infiniband/hw/hfi1/verbs.h | 4 |
6 files changed, 34 insertions, 33 deletions
diff --git a/drivers/infiniband/hw/hfi1/qp.c b/drivers/infiniband/hw/hfi1/qp.c index ad8ad33aaa73..a5aa3517e7d5 100644 --- a/drivers/infiniband/hw/hfi1/qp.c +++ b/drivers/infiniband/hw/hfi1/qp.c | |||
@@ -806,8 +806,9 @@ void *qp_priv_alloc(struct rvt_dev_info *rdi, struct rvt_qp *qp, | |||
806 | 806 | ||
807 | priv->owner = qp; | 807 | priv->owner = qp; |
808 | 808 | ||
809 | priv->s_hdr = kzalloc_node(sizeof(*priv->s_hdr), gfp, rdi->dparms.node); | 809 | priv->s_ahg = kzalloc_node(sizeof(*priv->s_ahg), gfp, |
810 | if (!priv->s_hdr) { | 810 | rdi->dparms.node); |
811 | if (!priv->s_ahg) { | ||
811 | kfree(priv); | 812 | kfree(priv); |
812 | return ERR_PTR(-ENOMEM); | 813 | return ERR_PTR(-ENOMEM); |
813 | } | 814 | } |
@@ -820,7 +821,7 @@ void qp_priv_free(struct rvt_dev_info *rdi, struct rvt_qp *qp) | |||
820 | { | 821 | { |
821 | struct hfi1_qp_priv *priv = qp->priv; | 822 | struct hfi1_qp_priv *priv = qp->priv; |
822 | 823 | ||
823 | kfree(priv->s_hdr); | 824 | kfree(priv->s_ahg); |
824 | kfree(priv); | 825 | kfree(priv); |
825 | } | 826 | } |
826 | 827 | ||
diff --git a/drivers/infiniband/hw/hfi1/qp.h b/drivers/infiniband/hw/hfi1/qp.h index ddf82988b02f..587d84d65bb8 100644 --- a/drivers/infiniband/hw/hfi1/qp.h +++ b/drivers/infiniband/hw/hfi1/qp.h | |||
@@ -63,7 +63,7 @@ static inline void clear_ahg(struct rvt_qp *qp) | |||
63 | { | 63 | { |
64 | struct hfi1_qp_priv *priv = qp->priv; | 64 | struct hfi1_qp_priv *priv = qp->priv; |
65 | 65 | ||
66 | priv->s_hdr->ahgcount = 0; | 66 | priv->s_ahg->ahgcount = 0; |
67 | qp->s_flags &= ~(RVT_S_AHG_VALID | RVT_S_AHG_CLEAR); | 67 | qp->s_flags &= ~(RVT_S_AHG_VALID | RVT_S_AHG_CLEAR); |
68 | if (priv->s_sde && qp->s_ahgidx >= 0) | 68 | if (priv->s_sde && qp->s_ahgidx >= 0) |
69 | sdma_ahg_free(priv->s_sde, qp->s_ahgidx); | 69 | sdma_ahg_free(priv->s_sde, qp->s_ahgidx); |
diff --git a/drivers/infiniband/hw/hfi1/ruc.c b/drivers/infiniband/hw/hfi1/ruc.c index c7c2f48ad8a8..ea7977dc646e 100644 --- a/drivers/infiniband/hw/hfi1/ruc.c +++ b/drivers/infiniband/hw/hfi1/ruc.c | |||
@@ -711,7 +711,7 @@ u32 hfi1_make_grh(struct hfi1_ibport *ibp, struct ib_grh *hdr, | |||
711 | #define BTH2_OFFSET (offsetof(struct hfi1_pio_header, hdr.u.oth.bth[2]) / 4) | 711 | #define BTH2_OFFSET (offsetof(struct hfi1_pio_header, hdr.u.oth.bth[2]) / 4) |
712 | 712 | ||
713 | /** | 713 | /** |
714 | * build_ahg - create ahg in s_hdr | 714 | * build_ahg - create ahg in s_ahg |
715 | * @qp: a pointer to QP | 715 | * @qp: a pointer to QP |
716 | * @npsn: the next PSN for the request/response | 716 | * @npsn: the next PSN for the request/response |
717 | * | 717 | * |
@@ -733,18 +733,18 @@ static inline void build_ahg(struct rvt_qp *qp, u32 npsn) | |||
733 | qp->s_ahgidx = sdma_ahg_alloc(priv->s_sde); | 733 | qp->s_ahgidx = sdma_ahg_alloc(priv->s_sde); |
734 | if (qp->s_ahgidx >= 0) { | 734 | if (qp->s_ahgidx >= 0) { |
735 | qp->s_ahgpsn = npsn; | 735 | qp->s_ahgpsn = npsn; |
736 | priv->s_hdr->tx_flags |= SDMA_TXREQ_F_AHG_COPY; | 736 | priv->s_ahg->tx_flags |= SDMA_TXREQ_F_AHG_COPY; |
737 | /* save to protect a change in another thread */ | 737 | /* save to protect a change in another thread */ |
738 | priv->s_hdr->ahgidx = qp->s_ahgidx; | 738 | priv->s_ahg->ahgidx = qp->s_ahgidx; |
739 | qp->s_flags |= RVT_S_AHG_VALID; | 739 | qp->s_flags |= RVT_S_AHG_VALID; |
740 | } | 740 | } |
741 | } else { | 741 | } else { |
742 | /* subsequent middle after valid */ | 742 | /* subsequent middle after valid */ |
743 | if (qp->s_ahgidx >= 0) { | 743 | if (qp->s_ahgidx >= 0) { |
744 | priv->s_hdr->tx_flags |= SDMA_TXREQ_F_USE_AHG; | 744 | priv->s_ahg->tx_flags |= SDMA_TXREQ_F_USE_AHG; |
745 | priv->s_hdr->ahgidx = qp->s_ahgidx; | 745 | priv->s_ahg->ahgidx = qp->s_ahgidx; |
746 | priv->s_hdr->ahgcount++; | 746 | priv->s_ahg->ahgcount++; |
747 | priv->s_hdr->ahgdesc[0] = | 747 | priv->s_ahg->ahgdesc[0] = |
748 | sdma_build_ahg_descriptor( | 748 | sdma_build_ahg_descriptor( |
749 | (__force u16)cpu_to_be16((u16)npsn), | 749 | (__force u16)cpu_to_be16((u16)npsn), |
750 | BTH2_OFFSET, | 750 | BTH2_OFFSET, |
@@ -752,8 +752,8 @@ static inline void build_ahg(struct rvt_qp *qp, u32 npsn) | |||
752 | 16); | 752 | 16); |
753 | if ((npsn & 0xffff0000) != | 753 | if ((npsn & 0xffff0000) != |
754 | (qp->s_ahgpsn & 0xffff0000)) { | 754 | (qp->s_ahgpsn & 0xffff0000)) { |
755 | priv->s_hdr->ahgcount++; | 755 | priv->s_ahg->ahgcount++; |
756 | priv->s_hdr->ahgdesc[1] = | 756 | priv->s_ahg->ahgdesc[1] = |
757 | sdma_build_ahg_descriptor( | 757 | sdma_build_ahg_descriptor( |
758 | (__force u16)cpu_to_be16( | 758 | (__force u16)cpu_to_be16( |
759 | (u16)(npsn >> 16)), | 759 | (u16)(npsn >> 16)), |
@@ -790,7 +790,7 @@ void hfi1_make_ruc_header(struct rvt_qp *qp, struct hfi1_other_headers *ohdr, | |||
790 | } | 790 | } |
791 | lrh0 |= (priv->s_sc & 0xf) << 12 | (qp->remote_ah_attr.sl & 0xf) << 4; | 791 | lrh0 |= (priv->s_sc & 0xf) << 12 | (qp->remote_ah_attr.sl & 0xf) << 4; |
792 | /* | 792 | /* |
793 | * reset s_hdr/AHG fields | 793 | * reset s_ahg/AHG fields |
794 | * | 794 | * |
795 | * This insures that the ahgentry/ahgcount | 795 | * This insures that the ahgentry/ahgcount |
796 | * are at a non-AHG default to protect | 796 | * are at a non-AHG default to protect |
@@ -800,9 +800,9 @@ void hfi1_make_ruc_header(struct rvt_qp *qp, struct hfi1_other_headers *ohdr, | |||
800 | * build_ahg() will modify as appropriate | 800 | * build_ahg() will modify as appropriate |
801 | * to use the AHG feature. | 801 | * to use the AHG feature. |
802 | */ | 802 | */ |
803 | priv->s_hdr->tx_flags = 0; | 803 | priv->s_ahg->tx_flags = 0; |
804 | priv->s_hdr->ahgcount = 0; | 804 | priv->s_ahg->ahgcount = 0; |
805 | priv->s_hdr->ahgidx = 0; | 805 | priv->s_ahg->ahgidx = 0; |
806 | if (qp->s_mig_state == IB_MIG_MIGRATED) | 806 | if (qp->s_mig_state == IB_MIG_MIGRATED) |
807 | bth0 |= IB_BTH_MIG_REQ; | 807 | bth0 |= IB_BTH_MIG_REQ; |
808 | else | 808 | else |
@@ -913,7 +913,7 @@ void hfi1_do_send(struct rvt_qp *qp) | |||
913 | */ | 913 | */ |
914 | if (hfi1_verbs_send(qp, &ps)) | 914 | if (hfi1_verbs_send(qp, &ps)) |
915 | return; | 915 | return; |
916 | /* Record that s_hdr is empty. */ | 916 | /* Record that s_ahg is empty. */ |
917 | qp->s_hdrwords = 0; | 917 | qp->s_hdrwords = 0; |
918 | /* allow other tasks to run */ | 918 | /* allow other tasks to run */ |
919 | if (unlikely(time_after(jiffies, timeout))) { | 919 | if (unlikely(time_after(jiffies, timeout))) { |
diff --git a/drivers/infiniband/hw/hfi1/ud.c b/drivers/infiniband/hw/hfi1/ud.c index d4afb1dfda27..08a9c1219b29 100644 --- a/drivers/infiniband/hw/hfi1/ud.c +++ b/drivers/infiniband/hw/hfi1/ud.c | |||
@@ -430,9 +430,9 @@ int hfi1_make_ud_req(struct rvt_qp *qp, struct hfi1_pkt_state *ps) | |||
430 | qp->qkey : wqe->ud_wr.remote_qkey); | 430 | qp->qkey : wqe->ud_wr.remote_qkey); |
431 | ohdr->u.ud.deth[1] = cpu_to_be32(qp->ibqp.qp_num); | 431 | ohdr->u.ud.deth[1] = cpu_to_be32(qp->ibqp.qp_num); |
432 | /* disarm any ahg */ | 432 | /* disarm any ahg */ |
433 | priv->s_hdr->ahgcount = 0; | 433 | priv->s_ahg->ahgcount = 0; |
434 | priv->s_hdr->ahgidx = 0; | 434 | priv->s_ahg->ahgidx = 0; |
435 | priv->s_hdr->tx_flags = 0; | 435 | priv->s_ahg->tx_flags = 0; |
436 | /* pbc */ | 436 | /* pbc */ |
437 | ps->s_txreq->hdr_dwords = qp->s_hdrwords + 2; | 437 | ps->s_txreq->hdr_dwords = qp->s_hdrwords + 2; |
438 | 438 | ||
diff --git a/drivers/infiniband/hw/hfi1/verbs.c b/drivers/infiniband/hw/hfi1/verbs.c index 95785651fb77..2b3fa400c593 100644 --- a/drivers/infiniband/hw/hfi1/verbs.c +++ b/drivers/infiniband/hw/hfi1/verbs.c | |||
@@ -816,19 +816,19 @@ static int build_verbs_tx_desc( | |||
816 | struct rvt_sge_state *ss, | 816 | struct rvt_sge_state *ss, |
817 | u32 length, | 817 | u32 length, |
818 | struct verbs_txreq *tx, | 818 | struct verbs_txreq *tx, |
819 | struct ahg_ib_header *ahdr, | 819 | struct hfi1_ahg_info *ahg_info, |
820 | u64 pbc) | 820 | u64 pbc) |
821 | { | 821 | { |
822 | int ret = 0; | 822 | int ret = 0; |
823 | struct hfi1_pio_header *phdr = &tx->phdr; | 823 | struct hfi1_pio_header *phdr = &tx->phdr; |
824 | u16 hdrbytes = tx->hdr_dwords << 2; | 824 | u16 hdrbytes = tx->hdr_dwords << 2; |
825 | 825 | ||
826 | if (!ahdr->ahgcount) { | 826 | if (!ahg_info->ahgcount) { |
827 | ret = sdma_txinit_ahg( | 827 | ret = sdma_txinit_ahg( |
828 | &tx->txreq, | 828 | &tx->txreq, |
829 | ahdr->tx_flags, | 829 | ahg_info->tx_flags, |
830 | hdrbytes + length, | 830 | hdrbytes + length, |
831 | ahdr->ahgidx, | 831 | ahg_info->ahgidx, |
832 | 0, | 832 | 0, |
833 | NULL, | 833 | NULL, |
834 | 0, | 834 | 0, |
@@ -846,11 +846,11 @@ static int build_verbs_tx_desc( | |||
846 | } else { | 846 | } else { |
847 | ret = sdma_txinit_ahg( | 847 | ret = sdma_txinit_ahg( |
848 | &tx->txreq, | 848 | &tx->txreq, |
849 | ahdr->tx_flags, | 849 | ahg_info->tx_flags, |
850 | length, | 850 | length, |
851 | ahdr->ahgidx, | 851 | ahg_info->ahgidx, |
852 | ahdr->ahgcount, | 852 | ahg_info->ahgcount, |
853 | ahdr->ahgdesc, | 853 | ahg_info->ahgdesc, |
854 | hdrbytes, | 854 | hdrbytes, |
855 | verbs_sdma_complete); | 855 | verbs_sdma_complete); |
856 | if (ret) | 856 | if (ret) |
@@ -868,7 +868,7 @@ int hfi1_verbs_send_dma(struct rvt_qp *qp, struct hfi1_pkt_state *ps, | |||
868 | u64 pbc) | 868 | u64 pbc) |
869 | { | 869 | { |
870 | struct hfi1_qp_priv *priv = qp->priv; | 870 | struct hfi1_qp_priv *priv = qp->priv; |
871 | struct ahg_ib_header *ahdr = priv->s_hdr; | 871 | struct hfi1_ahg_info *ahg_info = priv->s_ahg; |
872 | u32 hdrwords = qp->s_hdrwords; | 872 | u32 hdrwords = qp->s_hdrwords; |
873 | struct rvt_sge_state *ss = qp->s_cur_sge; | 873 | struct rvt_sge_state *ss = qp->s_cur_sge; |
874 | u32 len = qp->s_cur_size; | 874 | u32 len = qp->s_cur_size; |
@@ -896,7 +896,7 @@ int hfi1_verbs_send_dma(struct rvt_qp *qp, struct hfi1_pkt_state *ps, | |||
896 | plen); | 896 | plen); |
897 | } | 897 | } |
898 | tx->wqe = qp->s_wqe; | 898 | tx->wqe = qp->s_wqe; |
899 | ret = build_verbs_tx_desc(tx->sde, ss, len, tx, ahdr, pbc); | 899 | ret = build_verbs_tx_desc(tx->sde, ss, len, tx, ahg_info, pbc); |
900 | if (unlikely(ret)) | 900 | if (unlikely(ret)) |
901 | goto bail_build; | 901 | goto bail_build; |
902 | } | 902 | } |
diff --git a/drivers/infiniband/hw/hfi1/verbs.h b/drivers/infiniband/hw/hfi1/verbs.h index 4bd1cd42e981..d44550fdd39f 100644 --- a/drivers/infiniband/hw/hfi1/verbs.h +++ b/drivers/infiniband/hw/hfi1/verbs.h | |||
@@ -178,7 +178,7 @@ struct hfi1_ib_header { | |||
178 | } u; | 178 | } u; |
179 | } __packed; | 179 | } __packed; |
180 | 180 | ||
181 | struct ahg_ib_header { | 181 | struct hfi1_ahg_info { |
182 | u32 ahgdesc[2]; | 182 | u32 ahgdesc[2]; |
183 | u16 tx_flags; | 183 | u16 tx_flags; |
184 | u8 ahgcount; | 184 | u8 ahgcount; |
@@ -195,7 +195,7 @@ struct hfi1_pio_header { | |||
195 | * pair is made common | 195 | * pair is made common |
196 | */ | 196 | */ |
197 | struct hfi1_qp_priv { | 197 | struct hfi1_qp_priv { |
198 | struct ahg_ib_header *s_hdr; /* next header to send */ | 198 | struct hfi1_ahg_info *s_ahg; /* ahg info for next header */ |
199 | struct sdma_engine *s_sde; /* current sde */ | 199 | struct sdma_engine *s_sde; /* current sde */ |
200 | struct send_context *s_sendcontext; /* current sendcontext */ | 200 | struct send_context *s_sendcontext; /* current sendcontext */ |
201 | u8 s_sc; /* SC[0..4] for next packet */ | 201 | u8 s_sc; /* SC[0..4] for next packet */ |