From: Greg Kroah-Hartman Date: Fri, 11 Oct 2024 04:27:11 +0000 (+0200) Subject: 6.11-stable patches X-Git-Tag: v5.10.227~86 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a67617556d8b90a8c9e3663fb2f1298b743af209;p=thirdparty%2Fkernel%2Fstable-queue.git 6.11-stable patches added patches: net-fec-don-t-save-ptp-state-if-ptp-is-unsupported.patch --- diff --git a/queue-6.11/net-fec-don-t-save-ptp-state-if-ptp-is-unsupported.patch b/queue-6.11/net-fec-don-t-save-ptp-state-if-ptp-is-unsupported.patch new file mode 100644 index 00000000000..3186a5cbb08 --- /dev/null +++ b/queue-6.11/net-fec-don-t-save-ptp-state-if-ptp-is-unsupported.patch @@ -0,0 +1,55 @@ +From 6be063071a457767ee229db13f019c2ec03bfe44 Mon Sep 17 00:00:00 2001 +From: Wei Fang +Date: Tue, 8 Oct 2024 14:11:53 +0800 +Subject: net: fec: don't save PTP state if PTP is unsupported +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +From: Wei Fang + +commit 6be063071a457767ee229db13f019c2ec03bfe44 upstream. + +Some platforms (such as i.MX25 and i.MX27) do not support PTP, so on +these platforms fec_ptp_init() is not called and the related members +in fep are not initialized. However, fec_ptp_save_state() is called +unconditionally, which causes the kernel to panic. Therefore, add a +condition so that fec_ptp_save_state() is not called if PTP is not +supported. + +Fixes: a1477dc87dc4 ("net: fec: Restart PPS after link state change") +Reported-by: Guenter Roeck +Closes: https://lore.kernel.org/lkml/353e41fe-6bb4-4ee9-9980-2da2a9c1c508@roeck-us.net/ +Signed-off-by: Wei Fang +Reviewed-by: Csókás, Bence +Reviewed-by: Simon Horman +Tested-by: Guenter Roeck +Link: https://patch.msgid.link/20241008061153.1977930-1-wei.fang@nxp.com +Signed-off-by: Jakub Kicinski +Signed-off-by: Greg Kroah-Hartman +--- + drivers/net/ethernet/freescale/fec_main.c | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +--- a/drivers/net/ethernet/freescale/fec_main.c ++++ b/drivers/net/ethernet/freescale/fec_main.c +@@ -1077,7 +1077,8 @@ fec_restart(struct net_device *ndev) + u32 rcntl = OPT_FRAME_SIZE | 0x04; + u32 ecntl = FEC_ECR_ETHEREN; + +- fec_ptp_save_state(fep); ++ if (fep->bufdesc_ex) ++ fec_ptp_save_state(fep); + + /* Whack a reset. We should wait for this. + * For i.MX6SX SOC, enet use AXI bus, we use disable MAC +@@ -1340,7 +1341,8 @@ fec_stop(struct net_device *ndev) + netdev_err(ndev, "Graceful transmit stop did not complete!\n"); + } + +- fec_ptp_save_state(fep); ++ if (fep->bufdesc_ex) ++ fec_ptp_save_state(fep); + + /* Whack a reset. We should wait for this. + * For i.MX6SX SOC, enet use AXI bus, we use disable MAC diff --git a/queue-6.11/series b/queue-6.11/series index e19cb43c875..865236b891d 100644 --- a/queue-6.11/series +++ b/queue-6.11/series @@ -1 +1,2 @@ unicode-don-t-special-case-ignorable-code-points.patch +net-fec-don-t-save-ptp-state-if-ptp-is-unsupported.patch