> Actually thinking about it, another possibility would be to wrap up the

 > newrkey = (mr->rkey & 0xffffff00) | newkey;

 > operation in a little inline helper function so people don't screw it
 > up.  Maybe that's the cleanest way to do it.

If we add a "key" field to the work request, then it seems too easy for
a consumer to forget to set it and end up passing uninitialized garbage.
If the consumer has to explicitly update the key when posting the work
request then that failure is avoided.

HOWEVER -- if we have the consumer update the key when posting the
operation, then there is the problem of what happens when the consumer
posts multiple fastreg work requests at once (ie fastreg, local inval,
new fastreg, etc. in a pipelined way).  Does the low-level driver just
take the the key value given when the WR is posted, even if there's a
new value there by the time the WR is executed?

 - R.
_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to