On Tue, Mar 28, 2017 at 02:40:21PM +0300, Erez Shitrit wrote: > > Does mlx5 even need a 'AH'? Maybe allowing the driver to provide some > > bytes in the pseudo header that match the HW SQE is an overall more > > efficient direction. > > For mlx5/mlx4, the details from the ah are required, (in order to > build the datagram segment in the wqe(, I mean you can extract the details from the AH and store them in the pseudo header specifically for mlx5. This avoids the need to store a pointer. > but the ref count is seamless since the ah is not a hw resource, I > can put that instead of the pseudo header in the driver start_xmit You can't just stuff a pointer into a skb, it needs to be kref'd properly, which means when the skb is finally done someone kref_put's that pointer. That is the hard part, IMHO. The best option might be to store some kind of lookup hint that allows the AH pointer to be found O(1) in normal cases, and does not require kref trickery. But optimizing this for GSO is not really related to this netdev rework.. > > Eh? Having ndo->ipoib->driver or ndo->driver->ipoib as a call chain > > doesn't really matter one bit. > > I meant that the extra call is time consuming, if we need one more > function (to extract the ah) that needs to be exported. It isn't really extra and there isn't an issue exporting functions, IHMO. Jason -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html