> > + if (ib_wr->send_flags & IB_SEND_SOLICITED
> > + && ib_wr->send_flags & IB_SEND_INVALIDATE) {
>
> How about
> if (ib_wr->send_flags & (IB_SEND_SOLICITED | IB_SEND_INVALIDATE))
These two aren't equivalent -- the first has an &&, yours works like ||.
Which is correct?