]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
net: ethtool: populate the default HDS params in the core
authorJakub Kicinski <kuba@kernel.org>
Sun, 19 Jan 2025 02:05:15 +0000 (18:05 -0800)
committerJakub Kicinski <kuba@kernel.org>
Mon, 20 Jan 2025 19:44:58 +0000 (11:44 -0800)
The core has the current HDS config, it can pre-populate the values
for the drivers. While at it, remove the zero-setting in netdevsim.
Zero are the default values since the config is zalloc'ed.

Reviewed-by: Michael Chan <michael.chan@broadcom.com>
Link: https://patch.msgid.link/20250119020518.1962249-6-kuba@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
drivers/net/netdevsim/ethtool.c
net/ethtool/rings.c

index 0a6d47d4d66b2d35b2d12e5c3b254b28010f937f..9c582083951448faa0691af038c21c9518bbe767 100644 (file)
@@ -835,7 +835,6 @@ static void bnxt_get_ringparam(struct net_device *dev,
        ering->rx_jumbo_pending = bp->rx_agg_ring_size;
        ering->tx_pending = bp->tx_ring_size;
 
-       kernel_ering->hds_thresh = dev->cfg->hds_thresh;
        kernel_ering->hds_thresh_max = BNXT_HDS_THRESHOLD_MAX;
 }
 
index 189793debdb7e5d00396612943588a74c63fc8c6..3b23f3d3ca2bd4ca97703734b7626ac335f7d648 100644 (file)
@@ -72,8 +72,6 @@ static void nsim_get_ringparam(struct net_device *dev,
        struct netdevsim *ns = netdev_priv(dev);
 
        memcpy(ring, &ns->ethtool.ring, sizeof(ns->ethtool.ring));
-       kernel_ring->tcp_data_split = dev->cfg->hds_config;
-       kernel_ring->hds_thresh = dev->cfg->hds_thresh;
        kernel_ring->hds_thresh_max = NSIM_HDS_THRESHOLD_MAX;
 
        if (kernel_ring->tcp_data_split == ETHTOOL_TCP_DATA_SPLIT_UNKNOWN)
@@ -190,9 +188,6 @@ static void nsim_ethtool_ring_init(struct netdevsim *ns)
        ns->ethtool.ring.rx_jumbo_max_pending = 4096;
        ns->ethtool.ring.rx_mini_max_pending = 4096;
        ns->ethtool.ring.tx_max_pending = 4096;
-
-       ns->netdev->cfg->hds_config = ETHTOOL_TCP_DATA_SPLIT_UNKNOWN;
-       ns->netdev->cfg->hds_thresh = 0;
 }
 
 void nsim_ethtool_init(struct netdevsim *ns)
index 5e8ba81fbb3e469275b740240b1ea9ddda7bb0c0..7839bfd1ac6a0f81e76b32f7b4819ef11033c8cf 100644 (file)
@@ -39,6 +39,10 @@ static int rings_prepare_data(const struct ethnl_req_info *req_base,
        ret = ethnl_ops_begin(dev);
        if (ret < 0)
                return ret;
+
+       data->kernel_ringparam.tcp_data_split = dev->cfg->hds_config;
+       data->kernel_ringparam.hds_thresh = dev->cfg->hds_thresh;
+
        dev->ethtool_ops->get_ringparam(dev, &data->ringparam,
                                        &data->kernel_ringparam, info->extack);
        ethnl_ops_complete(dev);