> > @@ -1373,7 +1374,7 @@ int ib_peek_cq(struct ib_cq *cq, int wc_
> > static inline int ib_req_notify_cq(struct ib_cq *cq,
> > enum ib_cq_notify cq_notify)
> > {
> > - return cq->device->req_notify_cq(cq, cq_notify);
> > + return cq->device->req_notify_cq(cq, cq_notify, NULL);
> > }
> >
> > /**
>
> Can't say I like this adding overhead in data path operations (and note this
> can't be optimized out). And kernel consumers work without passing it in, so
> it
> hurts kernel code even for Chelsio. Granted, the cost is small here, but these
> things do tend to add up.
>
> It seems all Chelsio needs is to pass in a consumer index - so, how about a
> new
> entry point? Something like void set_cq_udata(struct ib_cq *cq, struct
> ib_udata *udata)?
>
Adding a new entry point would hurt chelsio's user mode performance if
if then requires 2 kernel transitions to rearm the cq.
Passing in user data is sort of SOP for these sorts of verbs.
How much does passing one more param cost for kernel users?
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html