>> Does OneConnect not support UC? (I thought UC was required for
>> compliance.)
> As of now UC is unsupported. I need to check with other teams. I'll add the
> support in follow on checkin after this initial version, if its supported.
> Is it o.k. if UC is unsupported in this initial release?
Inline.
> -Original Message-
> From: Hefty, Sean [mailto:sean.he...@intel.com]
> Sent: Thursday, March 22, 2012 5:50 AM
> To: Pandit, Parav; linux-rdma@vger.kernel.org
> Subject: RE: [PATCH 4/9] ocrdma: Driver for Emulex OneConnect RDMA
> adapter
>
> > +static
> +static inline void *ocrdma_get_eqe(struct ocrdma_eq *eq)
> +{
> + return (u8 *)eq->q.va + (eq->q.tail * sizeof(struct ocrdma_eqe));
> +}
casts from (void *) to (u8 *) are not needed. This occurs in multiple places.
> +enum ib_qp_state get_ibqp_state(enum ocrdma_qp_state qps)
> +{
> +
> -Original Message-
> From: Roland Dreier [mailto:rol...@purestorage.com]
> Sent: Thursday, March 22, 2012 1:02 AM
> To: Pandit, Parav
> Cc: linux-rdma@vger.kernel.org; net...@vger.kernel.org
> Subject: Re: [PATCH 4/9] ocrdma: Driver for Emulex OneConnect RDMA
> ada
On Wed, Mar 21, 2012 at 12:09 PM, wrote:
> Yes. Driver needs to put QP to flush state. So that appropriate CQEs can be
> returned during poll_cq() phase.
> So state machine is implemented above.
Couldn't you just write
if (ib_modify_qp_is_ok(...)) {
if (new_state == OCRDMA_QPS_ERR)
> -Original Message-
> From: Roland Dreier [mailto:rol...@purestorage.com]
> Sent: Wednesday, March 21, 2012 10:04 PM
> To: Pandit, Parav
> Cc: linux-rdma@vger.kernel.org; net...@vger.kernel.org
> Subject: Re: [PATCH 4/9] ocrdma: Driver for Emulex OneConnect RDMA
>
On 03/20/2012 05:39 PM, parav.pan...@emulex.com wrote:
> From: Parav Pandit
> +
> +int ocrdma_mbx_dealloc_lkey(struct ocrdma_dev *dev, int fr_mr, u32 lkey)
> +{
> + int status = -ENOMEM;
> + struct ocrdma_dealloc_lkey *cmd;
> +
> + cmd = ocrdma_init_emb_mqe(OCRDMA_CMD_DEALLOC_LKEY, si
> +int ocrdma_qp_state_machine(struct ocrdma_qp *qp, enum ib_qp_state
> new_ib_state,
> + enum ib_qp_state *old_ib_state)
> +{
> + unsigned long flags;
> + int status = 0;
> + enum ocrdma_qp_state new_state;
> + new_state = get_ocrdma_qp_state(new_