On Fri, Jun 08, 2018 at 08:48:45PM +0000, Ruhl, Michael J wrote: > Looking into this, I found that the netdev device has a list of HW > addresses (the links), and it appears that when a PKEY change occurs, > that this list is not cleaned up. This seems really obscure, I'm not surprised it doesn't work. > So I had a couple of questions: > > 1) should this list be cleaned up? > (the check in ipoib_mcast_restart_task() where the mc_addr list is walked might > be a good place, when an address fails the ipoib_mcast_addr_is_valid() check) > 2) should this list be populated on the pkey change (i.e. during the HEAVY_FLUSH), > whitout needing to do an ifdow/ifup sequence? An interface should not randomly change it's LLADDR, especially when up and operational. That just breaks things. So, if the interface starts with a given pkey I would think it should stay with that pkey or enter a link downed state until the pkey becomes available. Which is what is already sort of happening with the IPOIB_PKEY_ASSIGNED stuff. The tricky bit is what to do until the SM initializes the port for the very first time.. I suppose that is why we have this broken code in the first place? 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