diff options
author | Kaike Wan <kaike.wan@intel.com> | 2019-03-18 09:58:50 -0700 |
---|---|---|
committer | Jason Gunthorpe <jgg@mellanox.com> | 2019-04-03 15:27:30 -0300 |
commit | b885d5be9ca10dff6110a8738c45eb4b3fb5a40a (patch) | |
tree | 0e8de092f24ba3b4b61a76dcfcbf57e4a902afcc /drivers/infiniband/hw/hfi1/tid_rdma.h | |
parent | 6a40693a884dacae68c1771d369ad3be0594ba1c (diff) | |
download | linux-stable-b885d5be9ca10dff6110a8738c45eb4b3fb5a40a.tar.gz linux-stable-b885d5be9ca10dff6110a8738c45eb4b3fb5a40a.tar.bz2 linux-stable-b885d5be9ca10dff6110a8738c45eb4b3fb5a40a.zip |
IB/hfi1: Unify the software PSN check for TID RDMA READ/WRITE
For expected packet receiving, the hfi1 hardware checks the KDETH PSN
automatically. However, when sequence error occurs, the hfi1 driver can
check the sequence instead until the hardware flow generation is reloaded.
TID RDMA READ and WRITE protocols implement similar software checking
mechanisms, but with different flags and different local variables to
store next expected PSN.
Unify the handling by using only one set of flag and local variable for
both TID RDMA READ and WRITE protocols.
Reviewed-by: Mike Marciniszyn <mike.marciniszyn@intel.com>
Reviewed-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Reviewed-by: Michael J. Ruhl <michael.j.ruhl@intel.com>
Signed-off-by: Kaike Wan <kaike.wan@intel.com>
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Diffstat (limited to 'drivers/infiniband/hw/hfi1/tid_rdma.h')
-rw-r--r-- | drivers/infiniband/hw/hfi1/tid_rdma.h | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/drivers/infiniband/hw/hfi1/tid_rdma.h b/drivers/infiniband/hw/hfi1/tid_rdma.h index 53ab24ef4f02..1c536185261e 100644 --- a/drivers/infiniband/hw/hfi1/tid_rdma.h +++ b/drivers/infiniband/hw/hfi1/tid_rdma.h @@ -76,10 +76,8 @@ struct tid_rdma_qp_params { struct tid_flow_state { u32 generation; u32 psn; - u32 r_next_psn; /* next PSN to be received (in TID space) */ u8 index; u8 last_index; - u8 flags; }; enum tid_rdma_req_state { |