mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-21 16:29:59 +00:00
IB/hfi1: Use global defines for upper bits in opcode
The awkward coding for setting the allowed_ops field was tripping an smatch warning. This patch uses the more appropriate defines from include/rdma to avoid the issue. As part of the patch remove a mask that was duplicated in rdmavt include files and use that mask as appropriate. Fixes: 8bea6b1cfe6f ("IB/rdmavt: Add create queue pair functionality") Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Reviewed-by: Dennis Dalessandro <dennis.dalessandro@intel.com> Signed-off-by: Mike Marciniszyn <mike.marciniszyn@intel.com> Signed-off-by: Doug Ledford <dledford@redhat.com>
This commit is contained in:
parent
87717f0a75
commit
b218f786ad
3 changed files with 4 additions and 7 deletions
|
@ -829,13 +829,13 @@ struct ib_qp *rvt_create_qp(struct ib_pd *ibpd,
|
|||
case IB_QPT_SMI:
|
||||
case IB_QPT_GSI:
|
||||
case IB_QPT_UD:
|
||||
qp->allowed_ops = IB_OPCODE_UD_SEND_ONLY & RVT_OPCODE_QP_MASK;
|
||||
qp->allowed_ops = IB_OPCODE_UD;
|
||||
break;
|
||||
case IB_QPT_RC:
|
||||
qp->allowed_ops = IB_OPCODE_RC_SEND_ONLY & RVT_OPCODE_QP_MASK;
|
||||
qp->allowed_ops = IB_OPCODE_RC;
|
||||
break;
|
||||
case IB_QPT_UC:
|
||||
qp->allowed_ops = IB_OPCODE_UC_SEND_ONLY & RVT_OPCODE_QP_MASK;
|
||||
qp->allowed_ops = IB_OPCODE_UC;
|
||||
break;
|
||||
default:
|
||||
ret = ERR_PTR(-EINVAL);
|
||||
|
|
|
@ -545,7 +545,7 @@ static inline int qp_ok(int opcode, struct hfi1_packet *packet)
|
|||
|
||||
if (!(ib_rvt_state_ops[packet->qp->state] & RVT_PROCESS_RECV_OK))
|
||||
goto dropit;
|
||||
if (((opcode & OPCODE_QP_MASK) == packet->qp->allowed_ops) ||
|
||||
if (((opcode & RVT_OPCODE_QP_MASK) == packet->qp->allowed_ops) ||
|
||||
(opcode == IB_OPCODE_CNP))
|
||||
return 1;
|
||||
dropit:
|
||||
|
|
|
@ -335,9 +335,6 @@ int hfi1_process_mad(struct ib_device *ibdev, int mad_flags, u8 port,
|
|||
#endif
|
||||
#define PSN_MODIFY_MASK 0xFFFFFF
|
||||
|
||||
/* Number of bits to pay attention to in the opcode for checking qp type */
|
||||
#define OPCODE_QP_MASK 0xE0
|
||||
|
||||
/*
|
||||
* Compare the lower 24 bits of the msn values.
|
||||
* Returns an integer <, ==, or > than zero.
|
||||
|
|
Loading…
Reference in a new issue