RE: [Intel-wired-lan] [PATCH net] iavf: Implement settime64 with -EOPNOTSUPP
From: Loktionov, Aleksandr
Date: Wed Nov 26 2025 - 05:03:41 EST
> -----Original Message-----
> From: Intel-wired-lan <intel-wired-lan-bounces@xxxxxxxxxx> On Behalf Of
> Michal Schmidt
> Sent: Wednesday, November 26, 2025 10:49 AM
> To: Nguyen, Anthony L <anthony.l.nguyen@xxxxxxxxx>; Kitszel, Przemyslaw
> <przemyslaw.kitszel@xxxxxxxxx>; Andrew Lunn <andrew+netdev@xxxxxxx>; David
> S. Miller <davem@xxxxxxxxxxxxx>; Eric Dumazet <edumazet@xxxxxxxxxx>; Jakub
> Kicinski <kuba@xxxxxxxxxx>; Paolo Abeni <pabeni@xxxxxxxxxx>; Richard Cochran
> <richardcochran@xxxxxxxxx>; Mateusz Polchlopek
> <mateusz.polchlopek@xxxxxxxxx>; Sai Krishna <saikrishnag@xxxxxxxxxxx>; Simon
> Horman <horms@xxxxxxxxxx>; Keller, Jacob E <jacob.e.keller@xxxxxxxxx>
> Cc: Tim Hostetler <thostet@xxxxxxxxxx>; Ahmed Zaki <ahmed.zaki@xxxxxxxxx>;
> intel-wired-lan@xxxxxxxxxxxxxxxx; netdev@xxxxxxxxxxxxxxx; linux-
> kernel@xxxxxxxxxxxxxxx
> 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@xxxxxxxxxx>
> ---
> 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@xxxxxxxxx>