[PATCH net] iavf: Implement settime64 with -EOPNOTSUPP

Michal Schmidt posted 1 patch 5 days, 13 hours ago
drivers/net/ethernet/intel/iavf/iavf_ptp.c | 7 +++++++
1 file changed, 7 insertions(+)
[PATCH net] iavf: Implement settime64 with -EOPNOTSUPP
Posted by Michal Schmidt 5 days, 13 hours ago
ptp_clock_settime() assumes every ptp_clock has implemented settime64().
Stub it with -EOPNOTSUPP to prevent a NULL dereference.

The fix is similar to commit 329d050bbe63 ("gve: Implement settime64
with -EOPNOTSUPP").

Fixes: d734223b2f0d ("iavf: add initial framework for registering PTP clock")
Signed-off-by: Michal Schmidt <mschmidt@redhat.com>
---
 drivers/net/ethernet/intel/iavf/iavf_ptp.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/drivers/net/ethernet/intel/iavf/iavf_ptp.c b/drivers/net/ethernet/intel/iavf/iavf_ptp.c
index b4d5eda2e84f..9cbd8c154031 100644
--- a/drivers/net/ethernet/intel/iavf/iavf_ptp.c
+++ b/drivers/net/ethernet/intel/iavf/iavf_ptp.c
@@ -252,6 +252,12 @@ static int iavf_ptp_gettimex64(struct ptp_clock_info *info,
 	return iavf_read_phc_indirect(adapter, ts, sts);
 }
 
+static int iavf_ptp_settime64(struct ptp_clock_info *info,
+			      const struct timespec64 *ts)
+{
+	return -EOPNOTSUPP;
+}
+
 /**
  * iavf_ptp_cache_phc_time - Cache PHC time for performing timestamp extension
  * @adapter: private adapter structure
@@ -320,6 +326,7 @@ static int iavf_ptp_register_clock(struct iavf_adapter *adapter)
 		 KBUILD_MODNAME, dev_name(dev));
 	ptp_info->owner = THIS_MODULE;
 	ptp_info->gettimex64 = iavf_ptp_gettimex64;
+	ptp_info->settime64 = iavf_ptp_settime64;
 	ptp_info->do_aux_work = iavf_ptp_do_aux_work;
 
 	clock = ptp_clock_register(ptp_info, dev);
-- 
2.51.1
Re: [PATCH net] iavf: Implement settime64 with -EOPNOTSUPP
Posted by Tim Hostetler 5 days, 5 hours ago
On Wed, Nov 26, 2025 at 1:49 AM Michal Schmidt <mschmidt@redhat.com> wrote:
>
> ptp_clock_settime() assumes every ptp_clock has implemented settime64().
> Stub it with -EOPNOTSUPP to prevent a NULL dereference.
>
> The fix is similar to commit 329d050bbe63 ("gve: Implement settime64
> with -EOPNOTSUPP").
>
> Fixes: d734223b2f0d ("iavf: add initial framework for registering PTP clock")
> Signed-off-by: Michal Schmidt <mschmidt@redhat.com>

Reviewed-by: Tim Hostetler <thostet@google.com>
RE: [Intel-wired-lan] [PATCH net] iavf: Implement settime64 with -EOPNOTSUPP
Posted by Loktionov, Aleksandr 5 days, 13 hours ago

> -----Original Message-----
> From: Intel-wired-lan <intel-wired-lan-bounces@osuosl.org> On Behalf Of
> Michal Schmidt
> Sent: Wednesday, November 26, 2025 10:49 AM
> To: Nguyen, Anthony L <anthony.l.nguyen@intel.com>; Kitszel, Przemyslaw
> <przemyslaw.kitszel@intel.com>; Andrew Lunn <andrew+netdev@lunn.ch>; David
> S. Miller <davem@davemloft.net>; Eric Dumazet <edumazet@google.com>; Jakub
> Kicinski <kuba@kernel.org>; Paolo Abeni <pabeni@redhat.com>; Richard Cochran
> <richardcochran@gmail.com>; Mateusz Polchlopek
> <mateusz.polchlopek@intel.com>; Sai Krishna <saikrishnag@marvell.com>; Simon
> Horman <horms@kernel.org>; Keller, Jacob E <jacob.e.keller@intel.com>
> Cc: Tim Hostetler <thostet@google.com>; Ahmed Zaki <ahmed.zaki@intel.com>;
> intel-wired-lan@lists.osuosl.org; netdev@vger.kernel.org; linux-
> kernel@vger.kernel.org
> Subject: [Intel-wired-lan] [PATCH net] iavf: Implement settime64 with -
> EOPNOTSUPP
> 
> ptp_clock_settime() assumes every ptp_clock has implemented settime64().
> Stub it with -EOPNOTSUPP to prevent a NULL dereference.
> 
> The fix is similar to commit 329d050bbe63 ("gve: Implement settime64 with -
> EOPNOTSUPP").
> 
> Fixes: d734223b2f0d ("iavf: add initial framework for registering PTP
> clock")
> Signed-off-by: Michal Schmidt <mschmidt@redhat.com>
> ---
>  drivers/net/ethernet/intel/iavf/iavf_ptp.c | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/drivers/net/ethernet/intel/iavf/iavf_ptp.c
> b/drivers/net/ethernet/intel/iavf/iavf_ptp.c
> index b4d5eda2e84f..9cbd8c154031 100644
> --- a/drivers/net/ethernet/intel/iavf/iavf_ptp.c
> +++ b/drivers/net/ethernet/intel/iavf/iavf_ptp.c
> @@ -252,6 +252,12 @@ static int iavf_ptp_gettimex64(struct ptp_clock_info
> *info,
>  	return iavf_read_phc_indirect(adapter, ts, sts);  }
> 
> +static int iavf_ptp_settime64(struct ptp_clock_info *info,
> +			      const struct timespec64 *ts)
> +{
> +	return -EOPNOTSUPP;
> +}
> +
>  /**
>   * iavf_ptp_cache_phc_time - Cache PHC time for performing timestamp
> extension
>   * @adapter: private adapter structure
> @@ -320,6 +326,7 @@ static int iavf_ptp_register_clock(struct iavf_adapter
> *adapter)
>  		 KBUILD_MODNAME, dev_name(dev));
>  	ptp_info->owner = THIS_MODULE;
>  	ptp_info->gettimex64 = iavf_ptp_gettimex64;
> +	ptp_info->settime64 = iavf_ptp_settime64;
>  	ptp_info->do_aux_work = iavf_ptp_do_aux_work;
> 
>  	clock = ptp_clock_register(ptp_info, dev);
> --
> 2.51.1

Reviewed-by: Aleksandr Loktionov <aleksandr.loktionov@intel.com>