On Fri, Feb 21, 2020 at 02:40:28PM -0500, Dennis Dalessandro wrote: > On 2/18/2020 7:42 PM, Jason Gunthorpe wrote: > > On Mon, Feb 10, 2020 at 08:19:44AM -0500, Dennis Dalessandro wrote: > > > From: Gary Leshner <Gary.S.Leshner@xxxxxxxxx> > > > > > > When in connected mode ipoib sent broadcast pings which exceeded the mtu > > > size for broadcast addresses. > > > > > > Add an mtu attribute to the rdma_netdev structure which ipoib sets to its > > > mcast mtu size. > > > > > > The RDMA netdev uses this value to determine if the skb length is too long > > > for the mtu specified and if it is, drops the packet and logs an error > > > about the errant packet. > > > > I'm confused by this comment, connected mode is not able to use > > rdma_netdev, for various technical reason, I thought? > > > > Is this somehow running a rdma_netdev concurrently with connected > > mode? How? > > No, not concurrently. When ipoib is in connected mode, a broadcast request, > something like: > > ping -s 2017 -i 0.001 -c 10 -M do -I ib0 -b 192.168.0.255 > > will be sent down from user space to ipoib. At an mcast_mtu of 2048, the max > payload size is 2016 (2048 - 28 - 4). If AIP is not being used then the > datagram send function (ipoib_send()) does a check and drops the packet. > > However when AIP is enabled ipoib_send is of course not used and we land in > rn->send function. Which needs to do the same check. You just contradicted yourself: the first sentence was 'not concurrently' and here you say we have connected mode turned on and yet a packet is delivered to AIP, so what do you mean? What I mean is if you can do connected mode you don't have a rdma_netdev and you can't do AIP. How are things in connected mode and a rdma_netdev is available? Jason