Re: [PATCH rdma-rc] IB/core: Don't match bond master filter for closed slaves

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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>


-- 
Doug Ledford <dledford@xxxxxxxxxx>
    GPG KeyID: B826A3330E572FDD
    Key fingerprint = AE6B 1BDA 122B 23B4 265B  1274 B826 A333 0E57 2FDD

Attachment: signature.asc
Description: This is a digitally signed message part


[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux