[ofa-general] post_recv question

Hoang-Nam Nguyen HNGUYEN at de.ibm.com
Wed Feb 27 06:35:27 PST 2008


Hi,
> I have a question regarding exactly _when_ a posted recv buffer is
> available for the HW to use:

> Consider that the post_recv methods usually just program a hw-specific
> WR in the RQ, then ring a doorbell, then return.  There is a delta
> period between when the app returns from the post_recv call and when the
> HW actually DMA's the WR and programs up the HW to enable that buffer.
> (I'm assumming a specific HW design here, but I _think_ most HW behaves
> this way?).

> If this is all true, then from the apps point of view, the buffer isn't
> really available when it returns from post_recv.  This can lead to
> conditions where the app advertises that recv buffer to the peer via
> some out of band channel, and the peer posts a SEND which arrives
> _before_ the HW has actually setup the RECV buffer.

> Granted, this hole is small, but does it exist for nes, mthca, ehca, and
> ipath libs/drivers?  Or do they _not_ have this issue?
This is true for ehca hw.

Regards
Nam




More information about the general mailing list