On Wed, Dec 12, 2018 at 12:31:05PM -0500, Doug Ledford wrote: > On Fri, 2018-12-07 at 02:37 +0000, Parav Pandit wrote: > > > > > > Does this only happen on dual port devices when in mixed ib/eth mode? > > > > > It discovered when we had both dual port with bonding configured. > > But I think this can happen with mlx5 ports in ethernet mode too which returns get_netdev NULL when netdev is registered. > > So it is desired to have this check. I missed out this check when reworked the 6 patch bonding series in this particular filter function. > > How's this: > > commit 37fbd834b4e492dc41743830cbe435f35120abd8 (HEAD -> wip/dl-for-rc) > Author: Mark Zhang <markz@xxxxxxxxxxxx> > Date: Wed Dec 5 15:50:49 2018 +0200 > > IB/core: Fix oops in netdev_next_upper_dev_rcu() > > When support for bonding of RoCE devices was added, there was > necessarily a link between the RoCE device and the paired netdevice > that > was part of the bond. If you remove the mlx4_en module, that paired > association is broken (the RoCE device is still present but the > paired > netdevice has been released). We need to account for this in > is_upper_ndev_bond_master_filter() and filter out those links with a > broken pairing or else we later oops in netdev_next_upper_dev_rcu(). > > Fixes: 408f1242d940 ("IB/core: Delete lower netdevice default GID > entries in bonding scenario") > Signed-off-by: Mark Zhang <markz@xxxxxxxxxxxx> > Reviewed-by: Parav Pandit <parav@xxxxxxxxxxxx> > Signed-off-by: Leon Romanovsky <leonro@xxxxxxxxxxxx> > Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx> I liked it, it is much better than we had before. Thanks > > > -- > Doug Ledford <dledford@xxxxxxxxxx> > GPG KeyID: B826A3330E572FDD > Key fingerprint = AE6B 1BDA 122B 23B4 265B 1274 B826 A333 0E57 2FDD
Attachment:
signature.asc
Description: PGP signature