Eli Cohen wrote:
Add send with invalidate support to mlx4.
Signed-off-by: Eli Cohen <[EMAIL PROTECTED]>
Hi Eli,
Thinking about it a little, I don't see how this send-with-invalidate
support is applicable for ULPs such as SRP, iSER and RDS who use the
Mellanox FMRs.
This is because to invalidate an rkey they call fmr_unmap and what the
mlx4 (similarly for mthca) driver does at mlx4_ib_unmap_fmr() is call
mlx4_fmr_unmap() for each fmr and then issue SYNC_TPT command.
Even if doing send-with-inv would save the ULP the indirect call to
mlx4_fmr_unmap() (which does almost nothing by itself), if it doesn't
cause the HW/FW to issue SYNC_TPT, it can not replace the call to
ib_unmap_fmr in the side that generated this rkey. And if it does cause
SYNC_TPT, the effect of amortizing the cost of this heavy command
through un-mapping on many fmrs at once is lost, correct?
Or
mlx4_ib_unmap_fmr calls mlx4_fmr_unmap for each fmr and then issues SYNC_TPT
command
void mlx4_fmr_unmap(struct mlx4_dev *dev, struct mlx4_fmr *fmr,
u32 *lkey, u32 *rkey)
{
if (!fmr->maps)
return;
fmr->maps = 0;
*(u8 *) fmr->mpt = MLX4_MPT_STATUS_SW;
}
_______________________________________________
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