On Wed, Aug 15, 2018 at 03:02:28PM -0600, Jason Gunthorpe wrote: > On Tue, Aug 14, 2018 at 10:36:14AM +0300, Leon Romanovsky wrote: > > From: Leon Romanovsky <leonro@xxxxxxxxxxxx> > > > > Changelog v0->v1: > > * Don't rely on explicit pointer casting from void to required by > > functions where it is supplied - Patch 3 and 5. > > > > >From Parav, > > > > Currently RoCE LAG/Bonding has following issues. > > > > 1. When NETDEV_CHANGEUPPER occurs, netdevice_event_changeupper() attempts to > > delete default GID entries of the upper device, but they are actually > > added based on lower netdev, so bonding_default_del_cmd() fails to > > delete such entries. > > > > 2. Due to that when master bond device is fully setup, its default GID > > entries cannot be added because old entries exist. This is incorrect and > > confusing; when using bonding/lag mode, always add the default GID entries > > for the master bond device. So implement a filter, callback function to detect > > the master-slave relationship in bonding mode and delete the lower netdev's > > default GIDs and add master bond device's default GIDs. > > > > 3. When FAILOVER event occurs, it cannot delete the master bond device's > > default GIDs they are of lower netdevice during NETDEV_UP event handling. > > So always add default GIDs of master bond netdevice if bonding is used > > for rdma device's netdevice. > > > > 4. When MAC address is changed, it only updates the default GID entries. > > IP based GIDs are untouched, but it is incorrect. Some HCAs such as mlx5 > > GIDs contains the MAC address as well at HCA hardware level. Therefore > > update (delete/add) IP based GIDs as well. > > Applied to for-next, I fixed these compile warnings: Strange, I didn't see those warnings. Thanks for fixing it.
Attachment:
signature.asc
Description: PGP signature