All of lore.kernel.org
 help / color / mirror / Atom feed
From: Simon Horman <horms@kernel.org>
To: "Russell King (Oracle)" <rmk+kernel@armlinux.org.uk>
Cc: Andrew Lunn <andrew@lunn.ch>,
	Heiner Kallweit <hkallweit1@gmail.com>,
	Alexandre Torgue <alexandre.torgue@foss.st.com>,
	Andrew Lunn <andrew+netdev@lunn.ch>,
	"David S. Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Jakub Kicinski <kuba@kernel.org>,
	Jose Abreu <joabreu@synopsys.com>,
	linux-arm-kernel@lists.infradead.org,
	linux-stm32@st-md-mailman.stormreply.com,
	Maxime Coquelin <mcoquelin.stm32@gmail.com>,
	netdev@vger.kernel.org, Paolo Abeni <pabeni@redhat.com>
Subject: Re: [PATCH net-next v2 03/17] net: stmmac: use correct type for tx_lpi_timer
Date: Tue, 7 Jan 2025 11:28:51 +0000	[thread overview]
Message-ID: <20250107112851.GE33144@kernel.org> (raw)
In-Reply-To: <E1tUmAE-007VWv-UW@rmk-PC.armlinux.org.uk>

On Mon, Jan 06, 2025 at 12:24:58PM +0000, Russell King (Oracle) wrote:
> The ethtool interface uses u32 for tx_lpi_timer, and so does phylib.
> Use u32 to store this internally within stmmac rather than "int"
> which could misinterpret large values.
> 
> Since eee_timer is used to initialise priv->tx_lpi_timer, this also
> should be unsigned to avoid a negative number being interpreted as a
> very large positive number.
> 
> Also correct "value" in dwmac4_set_eee_lpi_entry_timer() to use u32
> rather than int, which is derived from tx_lpi_timer, even though
> masking with STMMAC_ET_MAX will truncate the sign bits. u32 is the
> value argument type for writel().
> 
> Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>

...

> diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
> index 9a9169ca7cd2..b0ef439b715b 100644
> --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
> +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
> @@ -111,8 +111,8 @@ static const u32 default_msg_level = (NETIF_MSG_DRV | NETIF_MSG_PROBE |
>  				      NETIF_MSG_IFDOWN | NETIF_MSG_TIMER);
>  
>  #define STMMAC_DEFAULT_LPI_TIMER	1000
> -static int eee_timer = STMMAC_DEFAULT_LPI_TIMER;
> -module_param(eee_timer, int, 0644);
> +static unsigned int eee_timer = STMMAC_DEFAULT_LPI_TIMER;
> +module_param(eee_timer, uint, 0644);
>  MODULE_PARM_DESC(eee_timer, "LPI tx expiration time in msec");
>  #define STMMAC_LPI_T(x) (jiffies + usecs_to_jiffies(x))
>  

Hi Russell,

now that eee_timer is unsigned the following check in stmmac_verify_args()
can never be true. I guess it should be removed.

        if (eee_timer < 0)
                eee_timer = STMMAC_DEFAULT_LPI_TIMER;

Flagged by Smatch.

...


  parent reply	other threads:[~2025-01-07 11:31 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-01-06 12:24 [PATCH net-next 00/17] net: stmmac: clean up and fix EEE implementation Russell King (Oracle)
2025-01-06 12:24 ` [PATCH net-next v2 01/17] net: phy: add configuration of rx clock stop mode Russell King (Oracle)
2025-01-06 12:24 ` [PATCH net-next v2 02/17] net: stmmac: move tx_lpi_timer tracking to phylib Russell King (Oracle)
2025-01-06 16:44   ` Andrew Lunn
2025-01-06 12:24 ` [PATCH net-next v2 03/17] net: stmmac: use correct type for tx_lpi_timer Russell King (Oracle)
2025-01-06 16:45   ` Andrew Lunn
2025-01-07 16:34     ` Russell King (Oracle)
2025-01-07 11:28   ` Simon Horman [this message]
2025-01-07 11:57     ` Russell King (Oracle)
2025-01-07 14:41       ` Simon Horman
2025-01-07 15:26         ` Russell King (Oracle)
2025-01-08  9:42           ` Simon Horman
2025-01-06 12:25 ` [PATCH net-next v2 04/17] net: stmmac: make EEE depend on phy->enable_tx_lpi Russell King (Oracle)
2025-01-06 16:48   ` Andrew Lunn
2025-01-06 12:25 ` [PATCH net-next v2 05/17] net: stmmac: remove redundant code from ethtool EEE ops Russell King (Oracle)
2025-01-06 16:49   ` Andrew Lunn
2025-01-06 12:25 ` [PATCH net-next v2 06/17] net: stmmac: clean up stmmac_disable_eee_mode() Russell King (Oracle)
2025-01-06 16:50   ` Andrew Lunn
2025-01-06 12:25 ` [PATCH net-next v2 07/17] net: stmmac: remove priv->tx_lpi_enabled Russell King (Oracle)
2025-01-06 16:50   ` Andrew Lunn
2025-01-06 12:25 ` [PATCH net-next v2 08/17] net: stmmac: report EEE error statistics if EEE is supported Russell King (Oracle)
2025-01-06 16:51   ` Andrew Lunn
2025-01-06 12:25 ` [PATCH net-next v2 09/17] net: stmmac: convert to use phy_eee_rx_clock_stop() Russell King (Oracle)
2025-01-06 17:02   ` Andrew Lunn
2025-01-06 12:25 ` [PATCH net-next v2 10/17] net: stmmac: remove priv->eee_tw_timer Russell King (Oracle)
2025-01-06 17:02   ` Andrew Lunn
2025-01-06 12:25 ` [PATCH net-next v2 11/17] net: stmmac: move priv->eee_enabled into stmmac_eee_init() Russell King (Oracle)
2025-01-06 17:04   ` Andrew Lunn
2025-01-06 12:25 ` [PATCH net-next v2 12/17] net: stmmac: move priv->eee_active " Russell King (Oracle)
2025-01-06 17:05   ` Andrew Lunn
2025-01-07  7:28   ` kernel test robot
2025-01-06 12:25 ` [PATCH net-next v2 13/17] net: stmmac: use boolean for eee_enabled and eee_active Russell King (Oracle)
2025-01-06 17:05   ` Andrew Lunn
2025-01-06 12:25 ` [PATCH net-next v2 14/17] net: stmmac: move setup of eee_ctrl_timer to stmmac_dvr_probe() Russell King (Oracle)
2025-01-06 17:05   ` Andrew Lunn
2025-01-06 12:26 ` [PATCH net-next v2 15/17] net: stmmac: remove unnecessary EEE handling in stmmac_release() Russell King (Oracle)
2025-01-06 17:06   ` Andrew Lunn
2025-01-06 12:26 ` [PATCH net-next v2 16/17] net: stmmac: split hardware LPI timer control Russell King (Oracle)
2025-01-06 17:07   ` Andrew Lunn
2025-01-06 12:26 ` [PATCH net-next v2 17/17] net: stmmac: remove stmmac_lpi_entry_timer_config() Russell King (Oracle)
2025-01-06 17:08   ` Andrew Lunn

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250107112851.GE33144@kernel.org \
    --to=horms@kernel.org \
    --cc=alexandre.torgue@foss.st.com \
    --cc=andrew+netdev@lunn.ch \
    --cc=andrew@lunn.ch \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=hkallweit1@gmail.com \
    --cc=joabreu@synopsys.com \
    --cc=kuba@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-stm32@st-md-mailman.stormreply.com \
    --cc=mcoquelin.stm32@gmail.com \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=rmk+kernel@armlinux.org.uk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.