mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Jacob Keller <jacob.e.keller@intel.com>
To: Linkui Xiao <xiaolinkui@126.com>, <anthony.l.nguyen@intel.com>,
	<przemyslaw.kitszel@intel.com>, <andrew+netdev@lunn.ch>,
	<davem@davemloft.net>, <edumazet@kernel.org>, <kuba@kernel.org>,
	<pabeni@redhat.com>
Cc: <intel-wired-lan@lists.osuosl.org>, <netdev@vger.kernel.org>,
	<linux-kernel@vger.kernel.org>,
	Linkui Xiao <xiaolinkui@kylinos.cn>, <stable@vger.kernel.org>
Subject: Re: [PATCH net 2/5] e1000e: do not cache the hwtstamp config before it is applied
Date: Mon, 2 Nov 2026 14:15:39 -0800	[thread overview]
Message-ID: <c4c4833b-b0e9-4d79-9e7b-7db9eee67535@intel.com> (raw)
In-Reply-To: <20261028090455.2291659-1-xiaolinkui@126.com>

On 10/28/2026 2:04 AM, Linkui Xiao wrote:
> From: Linkui Xiao <xiaolinkui@kylinos.cn>
> 
> e1000e_config_hwtstamp() stores the requested configuration in
> adapter->hwtstamp_config right after the rx filter has been
> translated, but the two register writes that follow are verified by
> reading the registers back and each of them can fail with -EAGAIN.
> 
> When one of them does, the driver is left holding a configuration the
> hardware never accepted:
> 
>  - e1000e_hwtstamp_get() hands it back to user space, so an
>    application that reads the configuration back is told that
>    hardware time stamping is in effect while it is not;
> 
>  - e1000e_systim_reset() re-applies it after every reset, including
>    the ones the watchdog triggers, and keeps failing;
> 
>  - e1000_watchdog() starts polling TSYNCRXCTL_VALID for the cached rx
>    filter, and e1000_xmit_frame() still parks skbs that ask for a Tx
>    time stamp because it only looks at FLAG_HAS_HW_TIMESTAMP, so they
>    are eventually dropped by e1000e_tx_hwtstamp_work() with a
>    "clearing Tx timestamp hang" warning.
> 
> Cache the configuration only once both registers have been verified,
> so that adapter->hwtstamp_config always describes what the hardware
> is programmed with.
> 

Any idea why this got marked as patch 2 out of 5? This doesn't appear on
either netdev or iwl with any other patches.

I'm going ahead and applying it to Intel Wired LAN regardless, since the
fix looks good.

Thanks,
Jake

> Fixes: 62d7e3a2d006 ("e1000e: Validate hwtstamp_config completely before applying it")
> Cc: stable@vger.kernel.org
> Signed-off-by: Linkui Xiao <xiaolinkui@kylinos.cn>
> ---
>  drivers/net/ethernet/intel/e1000e/netdev.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/net/ethernet/intel/e1000e/netdev.c b/drivers/net/ethernet/intel/e1000e/netdev.c
> index 35f5590228eb..7ae33273734f 100644
> --- a/drivers/net/ethernet/intel/e1000e/netdev.c
> +++ b/drivers/net/ethernet/intel/e1000e/netdev.c
> @@ -3715,8 +3715,6 @@ static int e1000e_config_hwtstamp(struct e1000_adapter *adapter,
>  		return -ERANGE;
>  	}
>  
> -	adapter->hwtstamp_config = *config;
> -
>  	/* enable/disable Tx h/w time stamping */
>  	regval = er32(TSYNCTXCTL);
>  	regval &= ~E1000_TSYNCTXCTL_ENABLED;
> @@ -3763,6 +3761,8 @@ static int e1000e_config_hwtstamp(struct e1000_adapter *adapter,
>  	er32(RXSTMPH);
>  	er32(TXSTMPH);
>  
> +	adapter->hwtstamp_config = *config;
> +
>  	return 0;
>  }
>  


  parent reply	other threads:[~2026-11-02 22:16 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-28  9:04 Linkui Xiao
2026-10-28 18:32 ` Loktionov, Aleksandr
2026-10-28 22:12 ` Vadim Fedorenko
2026-11-02 22:15 ` Jacob Keller [this message]
2026-11-03  1:04   ` Linkui Xiao
2026-11-03  7:17     ` Jacob Keller

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=c4c4833b-b0e9-4d79-9e7b-7db9eee67535@intel.com \
    --to=jacob.e.keller@intel.com \
    --cc=andrew+netdev@lunn.ch \
    --cc=anthony.l.nguyen@intel.com \
    --cc=davem@davemloft.net \
    --cc=edumazet@kernel.org \
    --cc=intel-wired-lan@lists.osuosl.org \
    --cc=kuba@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=przemyslaw.kitszel@intel.com \
    --cc=stable@vger.kernel.org \
    --cc=xiaolinkui@126.com \
    --cc=xiaolinkui@kylinos.cn \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®