mirror of
https://github.com/torvalds/linux.git
synced 2026-05-26 16:12:59 +02:00
Merge branch 'mlx5-cleanups-2025-03-19'
Tariq Toukan says: ==================== mlx5 cleanups 2025-03-19 This series contains small cleanups to the mlx5 core and Eth drivers. ==================== Link: https://patch.msgid.link/1742412199-159596-1-git-send-email-tariqt@nvidia.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
commit
8112d5f61d
|
|
@ -31,6 +31,7 @@ config MLX5_CORE_EN
|
|||
bool "Mellanox 5th generation network adapters (ConnectX series) Ethernet support"
|
||||
depends on NETDEVICES && ETHERNET && INET && PCI && MLX5_CORE
|
||||
select PAGE_POOL
|
||||
select PAGE_POOL_STATS
|
||||
select DIMLIB
|
||||
help
|
||||
Ethernet support in Mellanox Technologies ConnectX-4 NIC.
|
||||
|
|
|
|||
|
|
@ -31,8 +31,7 @@ static void mlx5e_tc_tun_route_attr_cleanup(struct mlx5e_tc_tun_route_attr *attr
|
|||
{
|
||||
if (attr->n)
|
||||
neigh_release(attr->n);
|
||||
if (attr->route_dev)
|
||||
dev_put(attr->route_dev);
|
||||
dev_put(attr->route_dev);
|
||||
}
|
||||
|
||||
struct mlx5e_tc_tunnel *mlx5e_get_tc_tun(struct net_device *tunnel_dev)
|
||||
|
|
@ -68,16 +67,14 @@ static int get_route_and_out_devs(struct mlx5e_priv *priv,
|
|||
* while holding rcu read lock. Take the net_device for correctness
|
||||
* sake.
|
||||
*/
|
||||
if (uplink_upper)
|
||||
dev_hold(uplink_upper);
|
||||
dev_hold(uplink_upper);
|
||||
rcu_read_unlock();
|
||||
|
||||
dst_is_lag_dev = (uplink_upper &&
|
||||
netif_is_lag_master(uplink_upper) &&
|
||||
real_dev == uplink_upper &&
|
||||
mlx5_lag_is_sriov(priv->mdev));
|
||||
if (uplink_upper)
|
||||
dev_put(uplink_upper);
|
||||
dev_put(uplink_upper);
|
||||
|
||||
/* if the egress device isn't on the same HW e-switch or
|
||||
* it's a LAG device, use the uplink
|
||||
|
|
|
|||
|
|
@ -42,8 +42,7 @@ static int mlx5e_set_int_port_tunnel(struct mlx5e_priv *priv,
|
|||
&attr->action, out_index);
|
||||
|
||||
out:
|
||||
if (route_dev)
|
||||
dev_put(route_dev);
|
||||
dev_put(route_dev);
|
||||
|
||||
return err;
|
||||
}
|
||||
|
|
@ -753,8 +752,7 @@ static int mlx5e_set_vf_tunnel(struct mlx5_eswitch *esw,
|
|||
}
|
||||
|
||||
out:
|
||||
if (route_dev)
|
||||
dev_put(route_dev);
|
||||
dev_put(route_dev);
|
||||
return err;
|
||||
}
|
||||
|
||||
|
|
@ -788,8 +786,7 @@ static int mlx5e_update_vf_tunnel(struct mlx5_eswitch *esw,
|
|||
mlx5e_tc_match_to_reg_mod_hdr_change(esw->dev, mod_hdr_acts, VPORT_TO_REG, act_id, data);
|
||||
|
||||
out:
|
||||
if (route_dev)
|
||||
dev_put(route_dev);
|
||||
dev_put(route_dev);
|
||||
return err;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -359,7 +359,7 @@ static int mlx5e_rq_shampo_hd_info_alloc(struct mlx5e_rq *rq, int node)
|
|||
return 0;
|
||||
|
||||
err_nomem:
|
||||
kvfree(shampo->bitmap);
|
||||
bitmap_free(shampo->bitmap);
|
||||
kvfree(shampo->pages);
|
||||
|
||||
return -ENOMEM;
|
||||
|
|
@ -367,7 +367,7 @@ static int mlx5e_rq_shampo_hd_info_alloc(struct mlx5e_rq *rq, int node)
|
|||
|
||||
static void mlx5e_rq_shampo_hd_info_free(struct mlx5e_rq *rq)
|
||||
{
|
||||
kvfree(rq->mpwqe.shampo->bitmap);
|
||||
bitmap_free(rq->mpwqe.shampo->bitmap);
|
||||
kvfree(rq->mpwqe.shampo->pages);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -37,9 +37,7 @@
|
|||
#include "en/ptp.h"
|
||||
#include "en/port.h"
|
||||
|
||||
#ifdef CONFIG_PAGE_POOL_STATS
|
||||
#include <net/page_pool/helpers.h>
|
||||
#endif
|
||||
|
||||
void mlx5e_ethtool_put_stat(u64 **data, u64 val)
|
||||
{
|
||||
|
|
@ -196,7 +194,6 @@ static const struct counter_desc sw_stats_desc[] = {
|
|||
{ MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_arfs_err) },
|
||||
#endif
|
||||
{ MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_recover) },
|
||||
#ifdef CONFIG_PAGE_POOL_STATS
|
||||
{ MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_pp_alloc_fast) },
|
||||
{ MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_pp_alloc_slow) },
|
||||
{ MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_pp_alloc_slow_high_order) },
|
||||
|
|
@ -208,7 +205,6 @@ static const struct counter_desc sw_stats_desc[] = {
|
|||
{ MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_pp_recycle_ring) },
|
||||
{ MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_pp_recycle_ring_full) },
|
||||
{ MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_pp_recycle_released_ref) },
|
||||
#endif
|
||||
#ifdef CONFIG_MLX5_EN_TLS
|
||||
{ MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_tls_decrypted_packets) },
|
||||
{ MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_tls_decrypted_bytes) },
|
||||
|
|
@ -377,7 +373,6 @@ static void mlx5e_stats_grp_sw_update_stats_rq_stats(struct mlx5e_sw_stats *s,
|
|||
s->rx_arfs_err += rq_stats->arfs_err;
|
||||
#endif
|
||||
s->rx_recover += rq_stats->recover;
|
||||
#ifdef CONFIG_PAGE_POOL_STATS
|
||||
s->rx_pp_alloc_fast += rq_stats->pp_alloc_fast;
|
||||
s->rx_pp_alloc_slow += rq_stats->pp_alloc_slow;
|
||||
s->rx_pp_alloc_empty += rq_stats->pp_alloc_empty;
|
||||
|
|
@ -389,7 +384,6 @@ static void mlx5e_stats_grp_sw_update_stats_rq_stats(struct mlx5e_sw_stats *s,
|
|||
s->rx_pp_recycle_ring += rq_stats->pp_recycle_ring;
|
||||
s->rx_pp_recycle_ring_full += rq_stats->pp_recycle_ring_full;
|
||||
s->rx_pp_recycle_released_ref += rq_stats->pp_recycle_released_ref;
|
||||
#endif
|
||||
#ifdef CONFIG_MLX5_EN_TLS
|
||||
s->rx_tls_decrypted_packets += rq_stats->tls_decrypted_packets;
|
||||
s->rx_tls_decrypted_bytes += rq_stats->tls_decrypted_bytes;
|
||||
|
|
@ -496,7 +490,6 @@ static void mlx5e_stats_grp_sw_update_stats_qos(struct mlx5e_priv *priv,
|
|||
}
|
||||
}
|
||||
|
||||
#ifdef CONFIG_PAGE_POOL_STATS
|
||||
static void mlx5e_stats_update_stats_rq_page_pool(struct mlx5e_channel *c)
|
||||
{
|
||||
struct mlx5e_rq_stats *rq_stats = c->rq.stats;
|
||||
|
|
@ -519,11 +512,6 @@ static void mlx5e_stats_update_stats_rq_page_pool(struct mlx5e_channel *c)
|
|||
rq_stats->pp_recycle_ring_full = stats.recycle_stats.ring_full;
|
||||
rq_stats->pp_recycle_released_ref = stats.recycle_stats.released_refcnt;
|
||||
}
|
||||
#else
|
||||
static void mlx5e_stats_update_stats_rq_page_pool(struct mlx5e_channel *c)
|
||||
{
|
||||
}
|
||||
#endif
|
||||
|
||||
static MLX5E_DECLARE_STATS_GRP_OP_UPDATE_STATS(sw)
|
||||
{
|
||||
|
|
@ -2131,7 +2119,6 @@ static const struct counter_desc rq_stats_desc[] = {
|
|||
{ MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, arfs_err) },
|
||||
#endif
|
||||
{ MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, recover) },
|
||||
#ifdef CONFIG_PAGE_POOL_STATS
|
||||
{ MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, pp_alloc_fast) },
|
||||
{ MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, pp_alloc_slow) },
|
||||
{ MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, pp_alloc_slow_high_order) },
|
||||
|
|
@ -2143,7 +2130,6 @@ static const struct counter_desc rq_stats_desc[] = {
|
|||
{ MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, pp_recycle_ring) },
|
||||
{ MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, pp_recycle_ring_full) },
|
||||
{ MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, pp_recycle_released_ref) },
|
||||
#endif
|
||||
#ifdef CONFIG_MLX5_EN_TLS
|
||||
{ MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, tls_decrypted_packets) },
|
||||
{ MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, tls_decrypted_bytes) },
|
||||
|
|
|
|||
|
|
@ -215,7 +215,6 @@ struct mlx5e_sw_stats {
|
|||
u64 ch_aff_change;
|
||||
u64 ch_force_irq;
|
||||
u64 ch_eq_rearm;
|
||||
#ifdef CONFIG_PAGE_POOL_STATS
|
||||
u64 rx_pp_alloc_fast;
|
||||
u64 rx_pp_alloc_slow;
|
||||
u64 rx_pp_alloc_slow_high_order;
|
||||
|
|
@ -227,7 +226,6 @@ struct mlx5e_sw_stats {
|
|||
u64 rx_pp_recycle_ring;
|
||||
u64 rx_pp_recycle_ring_full;
|
||||
u64 rx_pp_recycle_released_ref;
|
||||
#endif
|
||||
#ifdef CONFIG_MLX5_EN_TLS
|
||||
u64 tx_tls_encrypted_packets;
|
||||
u64 tx_tls_encrypted_bytes;
|
||||
|
|
@ -385,7 +383,6 @@ struct mlx5e_rq_stats {
|
|||
u64 arfs_err;
|
||||
#endif
|
||||
u64 recover;
|
||||
#ifdef CONFIG_PAGE_POOL_STATS
|
||||
u64 pp_alloc_fast;
|
||||
u64 pp_alloc_slow;
|
||||
u64 pp_alloc_slow_high_order;
|
||||
|
|
@ -397,7 +394,6 @@ struct mlx5e_rq_stats {
|
|||
u64 pp_recycle_ring;
|
||||
u64 pp_recycle_ring_full;
|
||||
u64 pp_recycle_released_ref;
|
||||
#endif
|
||||
#ifdef CONFIG_MLX5_EN_TLS
|
||||
u64 tls_decrypted_packets;
|
||||
u64 tls_decrypted_bytes;
|
||||
|
|
|
|||
|
|
@ -523,8 +523,7 @@ static struct net_device *mlx5_lag_active_backup_get_netdev(struct mlx5_core_dev
|
|||
ndev = ldev->pf[last_idx].netdev;
|
||||
}
|
||||
|
||||
if (ndev)
|
||||
dev_hold(ndev);
|
||||
dev_hold(ndev);
|
||||
|
||||
unlock:
|
||||
spin_unlock_irqrestore(&lag_lock, flags);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user