- if (qp_init_attr->rwq_ind_tbl &&
- (qp_init_attr->recv_cq ||
- qp_init_attr->srq || qp_init_attr->cap.max_recv_wr ||
- qp_init_attr->cap.max_recv_sge))
+ if ((qp_init_attr->rwq_ind_tbl &&
+ (qp_init_attr->recv_cq ||
+ qp_init_attr->srq || qp_init_attr->cap.max_recv_wr ||
+ qp_init_attr->cap.max_recv_sge)) ||
+ ((qp_init_attr->create_flags & IB_QP_CREATE_SIGNATURE_EN) &&
+ !(device->attrs.device_cap_flags &
IB_DEVICE_SIGNATURE_HANDOVER)))
Wouldn't it make sense to also change the qp create flag and the device
cap to be PI_EN/PI_HANDOVER while we're at it?
Or INTEGRITY_EN/INTEGRITY_HANDOVER?