Roland Dreier wrote:
I'm still a little confused as to where the data buffer actually is. Is it pointed to by the struct ib_mad *mad member? If so, it seems a little odd to make the pointer have type struct ib_mad *, since struct ib_mad is exactly 256 bytes long.
Yes - it's pointed to by struct ib_mad. This is how ib_mad_send_buf worked before. I can change the pointer to void*, but then it requires casting to ib_mad or ib_mad_hdr where ever it is used. I've also considered changing it to a pointer to a union of the different MAD types.
Also, how will it work to post a send for a very large RMPP message? The next member seems to be used to chain separate transactions together -- I don't see a way to have multiple buffers that all contain data for the same message.
I've given this some thought, but don't have a decent answer yet. The next member is intended for separate transactions, but isn't used by any clients at this point.
I guess that we could either add an sg_list or a next_buffer pointer for this purpose, where next_buffer points to a structure that resembles a SGE.
- Sean _______________________________________________ openib-general mailing list [email protected] http://openib.org/mailman/listinfo/openib-general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
