This seems reasonable to me -- I like getting rid of the overloading
of struct ib_wr with MAD-only fields.

A few specific questions/comments about ib_mad_send_buf:

      >  struct ib_mad_send_buf {
      > +       struct ib_mad_send_buf  *next;
      >         struct ib_mad           *mad;
      > -       DECLARE_PCI_UNMAP_ADDR(mapping)

Do we want to get rid of this field?  It seems like we'll need to keep
track of the DMA mapping somewhere, and this is as good a place as any.

      >         struct ib_mad_agent     *mad_agent;
      > +       struct ib_ah            *ah;
      >         void                    *context[2];

I know this isn't being changed, but what was the original reason for
needing two context slots?

      > -       struct ib_send_wr       send_wr;
      > -       struct ib_sge           sge;
      > +       int                     timeout_ms;
      > +       int                     retries;
      >  };

Finally, I don't see anywhere that the length of the data buffer is
storred in the structure, so how does ib_post_send_mad() know how much
to send when it gets called?

 - R.
_______________________________________________
openib-general mailing list
[email protected]
http://openib.org/mailman/listinfo/openib-general

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

Reply via email to