lkml.org 
[lkml]   [2022]   [Sep]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.19 105/207] net: bonding: Share lacpdu_mcast_addr definition
    Date
    From: Benjamin Poirier <bpoirier@nvidia.com>

    [ Upstream commit 1d9a143ee3408349700f44a9197b7ae0e4faae5d ]

    There are already a few definitions of arrays containing
    MULTICAST_LACPDU_ADDR and the next patch will add one more use. These all
    contain the same constant data so define one common instance for all
    bonding code.

    Signed-off-by: Benjamin Poirier <bpoirier@nvidia.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Stable-dep-of: 86247aba599e ("net: bonding: Unsync device addresses on ndo_stop")
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/net/bonding/bond_3ad.c | 5 +++--
    drivers/net/bonding/bond_main.c | 16 ++++------------
    include/net/bond_3ad.h | 2 --
    include/net/bonding.h | 3 +++
    4 files changed, 10 insertions(+), 16 deletions(-)

    diff --git a/drivers/net/bonding/bond_3ad.c b/drivers/net/bonding/bond_3ad.c
    index 1f0120cbe9e8..8ad095c19f27 100644
    --- a/drivers/net/bonding/bond_3ad.c
    +++ b/drivers/net/bonding/bond_3ad.c
    @@ -87,8 +87,9 @@ static const u8 null_mac_addr[ETH_ALEN + 2] __long_aligned = {
    static u16 ad_ticks_per_sec;
    static const int ad_delta_in_ticks = (AD_TIMER_INTERVAL * HZ) / 1000;

    -static const u8 lacpdu_mcast_addr[ETH_ALEN + 2] __long_aligned =
    - MULTICAST_LACPDU_ADDR;
    +const u8 lacpdu_mcast_addr[ETH_ALEN + 2] __long_aligned = {
    + 0x01, 0x80, 0xC2, 0x00, 0x00, 0x02
    +};

    /* ================= main 802.3ad protocol functions ================== */
    static int ad_lacpdu_send(struct port *port);
    diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c
    index bff0bfd10e23..b159b73f2969 100644
    --- a/drivers/net/bonding/bond_main.c
    +++ b/drivers/net/bonding/bond_main.c
    @@ -865,12 +865,8 @@ static void bond_hw_addr_flush(struct net_device *bond_dev,
    dev_uc_unsync(slave_dev, bond_dev);
    dev_mc_unsync(slave_dev, bond_dev);

    - if (BOND_MODE(bond) == BOND_MODE_8023AD) {
    - /* del lacpdu mc addr from mc list */
    - u8 lacpdu_multicast[ETH_ALEN] = MULTICAST_LACPDU_ADDR;
    -
    - dev_mc_del(slave_dev, lacpdu_multicast);
    - }
    + if (BOND_MODE(bond) == BOND_MODE_8023AD)
    + dev_mc_del(slave_dev, lacpdu_mcast_addr);
    }

    /*--------------------------- Active slave change ---------------------------*/
    @@ -2144,12 +2140,8 @@ int bond_enslave(struct net_device *bond_dev, struct net_device *slave_dev,
    dev_uc_sync_multiple(slave_dev, bond_dev);
    netif_addr_unlock_bh(bond_dev);

    - if (BOND_MODE(bond) == BOND_MODE_8023AD) {
    - /* add lacpdu mc addr to mc list */
    - u8 lacpdu_multicast[ETH_ALEN] = MULTICAST_LACPDU_ADDR;
    -
    - dev_mc_add(slave_dev, lacpdu_multicast);
    - }
    + if (BOND_MODE(bond) == BOND_MODE_8023AD)
    + dev_mc_add(slave_dev, lacpdu_mcast_addr);
    }

    bond->slave_cnt++;
    diff --git a/include/net/bond_3ad.h b/include/net/bond_3ad.h
    index 184105d68294..f2273bd5a4c5 100644
    --- a/include/net/bond_3ad.h
    +++ b/include/net/bond_3ad.h
    @@ -15,8 +15,6 @@
    #define PKT_TYPE_LACPDU cpu_to_be16(ETH_P_SLOW)
    #define AD_TIMER_INTERVAL 100 /*msec*/

    -#define MULTICAST_LACPDU_ADDR {0x01, 0x80, 0xC2, 0x00, 0x00, 0x02}
    -
    #define AD_LACP_SLOW 0
    #define AD_LACP_FAST 1

    diff --git a/include/net/bonding.h b/include/net/bonding.h
    index 3b816ae8b1f3..7ac1773b9922 100644
    --- a/include/net/bonding.h
    +++ b/include/net/bonding.h
    @@ -785,6 +785,9 @@ extern struct rtnl_link_ops bond_link_ops;
    /* exported from bond_sysfs_slave.c */
    extern const struct sysfs_ops slave_sysfs_ops;

    +/* exported from bond_3ad.c */
    +extern const u8 lacpdu_mcast_addr[];
    +
    static inline netdev_tx_t bond_tx_drop(struct net_device *dev, struct sk_buff *skb)
    {
    dev_core_stats_tx_dropped_inc(dev);
    --
    2.35.1


    \
     
     \ /
      Last update: 2022-09-26 13:58    [W:4.075 / U:0.116 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site