From: Greg Kroah-Hartman Date: Fri, 11 Oct 2024 04:27:01 +0000 (+0200) Subject: drop some 5.10 patches X-Git-Tag: v5.10.227~88 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=2a508526922093803bfbecda850c3dcdc6b5a3f8;p=thirdparty%2Fkernel%2Fstable-queue.git drop some 5.10 patches --- diff --git a/queue-5.10/net-fec-avoid-allocating-rx-buffer-using-atomic-in-n.patch b/queue-5.10/net-fec-avoid-allocating-rx-buffer-using-atomic-in-n.patch deleted file mode 100644 index 302d0b73604..00000000000 --- a/queue-5.10/net-fec-avoid-allocating-rx-buffer-using-atomic-in-n.patch +++ /dev/null @@ -1,37 +0,0 @@ -From ab8133272d4f3c75ef3d9ac4664af29314be343d Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Wed, 18 May 2022 08:20:07 +0200 -Subject: net: fec: Avoid allocating rx buffer using ATOMIC in ndo_open - -From: Michael Trimarchi - -[ Upstream commit b885aab3d39d1c81709e957324c7fb9aeac02c38 ] - -Make ndo_open less sensitive to memory pressure. - -Signed-off-by: Michael Trimarchi -Reviewed-by: Jakub Kicinski -Link: https://lore.kernel.org/r/20220518062007.10056-1-michael@amarulasolutions.com -Signed-off-by: Paolo Abeni -Stable-dep-of: a1477dc87dc4 ("net: fec: Restart PPS after link state change") -Signed-off-by: Sasha Levin ---- - drivers/net/ethernet/freescale/fec_main.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/drivers/net/ethernet/freescale/fec_main.c b/drivers/net/ethernet/freescale/fec_main.c -index a591ca0b37787..c6d08395a289c 100644 ---- a/drivers/net/ethernet/freescale/fec_main.c -+++ b/drivers/net/ethernet/freescale/fec_main.c -@@ -2952,7 +2952,7 @@ fec_enet_alloc_rxq_buffers(struct net_device *ndev, unsigned int queue) - rxq = fep->rx_queue[queue]; - bdp = rxq->bd.base; - for (i = 0; i < rxq->bd.ring_size; i++) { -- skb = netdev_alloc_skb(ndev, FEC_ENET_RX_FRSIZE); -+ skb = __netdev_alloc_skb(ndev, FEC_ENET_RX_FRSIZE, GFP_KERNEL); - if (!skb) - goto err_alloc; - --- -2.43.0 - diff --git a/queue-5.10/net-fec-reload-ptp-registers-after-link-state-change.patch b/queue-5.10/net-fec-reload-ptp-registers-after-link-state-change.patch deleted file mode 100644 index f31f1f6f7a1..00000000000 --- a/queue-5.10/net-fec-reload-ptp-registers-after-link-state-change.patch +++ /dev/null @@ -1,95 +0,0 @@ -From c5939dea05ec63f123e8dcadd7a2ef7c404667ed Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Tue, 24 Sep 2024 11:37:06 +0200 -Subject: net: fec: Reload PTP registers after link-state change -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -From: Csókás, Bence - -[ Upstream commit d9335d0232d2da605585eea1518ac6733518f938 ] - -On link-state change, the controller gets reset, -which clears all PTP registers, including PHC time, -calibrated clock correction values etc. For correct -IEEE 1588 operation we need to restore these after -the reset. - -Fixes: 6605b730c061 ("FEC: Add time stamping code and a PTP hardware clock") -Signed-off-by: Csókás, Bence -Reviewed-by: Wei Fang -Link: https://patch.msgid.link/20240924093705.2897329-2-csokas.bence@prolan.hu -Signed-off-by: Paolo Abeni -Signed-off-by: Sasha Levin ---- - drivers/net/ethernet/freescale/fec.h | 3 +++ - drivers/net/ethernet/freescale/fec_ptp.c | 20 ++++++++++++++++++++ - 2 files changed, 23 insertions(+) - -diff --git a/drivers/net/ethernet/freescale/fec.h b/drivers/net/ethernet/freescale/fec.h -index 44fd2eaccb8fa..eb5c330752fb5 100644 ---- a/drivers/net/ethernet/freescale/fec.h -+++ b/drivers/net/ethernet/freescale/fec.h -@@ -595,6 +595,9 @@ struct fec_enet_private { - - struct { - int pps_enable; -+ u64 ns_sys, ns_phc; -+ u32 at_corr; -+ u8 at_inc_corr; - } ptp_saved_state; - - u64 ethtool_stats[]; -diff --git a/drivers/net/ethernet/freescale/fec_ptp.c b/drivers/net/ethernet/freescale/fec_ptp.c -index 0726291fbb4c0..7148f0086e329 100644 ---- a/drivers/net/ethernet/freescale/fec_ptp.c -+++ b/drivers/net/ethernet/freescale/fec_ptp.c -@@ -638,24 +638,44 @@ void fec_ptp_init(struct platform_device *pdev, int irq_idx) - void fec_ptp_save_state(struct fec_enet_private *fep) - { - unsigned long flags; -+ u32 atime_inc_corr; - - spin_lock_irqsave(&fep->tmreg_lock, flags); - - fep->ptp_saved_state.pps_enable = fep->pps_enable; - -+ fep->ptp_saved_state.ns_phc = timecounter_read(&fep->tc); -+ fep->ptp_saved_state.ns_sys = ktime_get_ns(); -+ -+ fep->ptp_saved_state.at_corr = readl(fep->hwp + FEC_ATIME_CORR); -+ atime_inc_corr = readl(fep->hwp + FEC_ATIME_INC) & FEC_T_INC_CORR_MASK; -+ fep->ptp_saved_state.at_inc_corr = (u8)(atime_inc_corr >> FEC_T_INC_CORR_OFFSET); -+ - spin_unlock_irqrestore(&fep->tmreg_lock, flags); - } - - /* Restore PTP functionality after a reset */ - void fec_ptp_restore_state(struct fec_enet_private *fep) - { -+ u32 atime_inc = readl(fep->hwp + FEC_ATIME_INC) & FEC_T_INC_MASK; - unsigned long flags; -+ u32 counter; -+ u64 ns; - - spin_lock_irqsave(&fep->tmreg_lock, flags); - - /* Reset turned it off, so adjust our status flag */ - fep->pps_enable = 0; - -+ writel(fep->ptp_saved_state.at_corr, fep->hwp + FEC_ATIME_CORR); -+ atime_inc |= ((u32)fep->ptp_saved_state.at_inc_corr) << FEC_T_INC_CORR_OFFSET; -+ writel(atime_inc, fep->hwp + FEC_ATIME_INC); -+ -+ ns = ktime_get_ns() - fep->ptp_saved_state.ns_sys + fep->ptp_saved_state.ns_phc; -+ counter = ns & fep->cc.mask; -+ writel(counter, fep->hwp + FEC_ATIME); -+ timecounter_init(&fep->tc, &fep->cc, ns); -+ - spin_unlock_irqrestore(&fep->tmreg_lock, flags); - - /* Restart PPS if needed */ --- -2.43.0 - diff --git a/queue-5.10/net-fec-restart-pps-after-link-state-change.patch b/queue-5.10/net-fec-restart-pps-after-link-state-change.patch deleted file mode 100644 index 6bf04502175..00000000000 --- a/queue-5.10/net-fec-restart-pps-after-link-state-change.patch +++ /dev/null @@ -1,136 +0,0 @@ -From ad298337babdfde4aeedc6eb66eb24fc1affd356 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Tue, 24 Sep 2024 11:37:04 +0200 -Subject: net: fec: Restart PPS after link state change -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -From: Csókás, Bence - -[ Upstream commit a1477dc87dc4996dcf65a4893d4e2c3a6b593002 ] - -On link state change, the controller gets reset, -causing PPS to drop out. Re-enable PPS if it was -enabled before the controller reset. - -Fixes: 6605b730c061 ("FEC: Add time stamping code and a PTP hardware clock") -Signed-off-by: Csókás, Bence -Link: https://patch.msgid.link/20240924093705.2897329-1-csokas.bence@prolan.hu -Signed-off-by: Paolo Abeni -Signed-off-by: Sasha Levin ---- - drivers/net/ethernet/freescale/fec.h | 6 +++++ - drivers/net/ethernet/freescale/fec_main.c | 11 ++++++++- - drivers/net/ethernet/freescale/fec_ptp.c | 30 +++++++++++++++++++++++ - 3 files changed, 46 insertions(+), 1 deletion(-) - -diff --git a/drivers/net/ethernet/freescale/fec.h b/drivers/net/ethernet/freescale/fec.h -index 6ea98af63b341..44fd2eaccb8fa 100644 ---- a/drivers/net/ethernet/freescale/fec.h -+++ b/drivers/net/ethernet/freescale/fec.h -@@ -593,10 +593,16 @@ struct fec_enet_private { - int pps_enable; - unsigned int next_counter; - -+ struct { -+ int pps_enable; -+ } ptp_saved_state; -+ - u64 ethtool_stats[]; - }; - - void fec_ptp_init(struct platform_device *pdev, int irq_idx); -+void fec_ptp_restore_state(struct fec_enet_private *fep); -+void fec_ptp_save_state(struct fec_enet_private *fep); - void fec_ptp_stop(struct platform_device *pdev); - void fec_ptp_start_cyclecounter(struct net_device *ndev); - void fec_ptp_disable_hwts(struct net_device *ndev); -diff --git a/drivers/net/ethernet/freescale/fec_main.c b/drivers/net/ethernet/freescale/fec_main.c -index c6d08395a289c..250b543e10ee8 100644 ---- a/drivers/net/ethernet/freescale/fec_main.c -+++ b/drivers/net/ethernet/freescale/fec_main.c -@@ -966,6 +966,8 @@ fec_restart(struct net_device *ndev) - u32 rcntl = OPT_FRAME_SIZE | 0x04; - u32 ecntl = FEC_ECR_ETHEREN; - -+ 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 - * instead of reset MAC itself. -@@ -1127,8 +1129,10 @@ fec_restart(struct net_device *ndev) - writel(ecntl, fep->hwp + FEC_ECNTRL); - fec_enet_active_rxring(ndev); - -- if (fep->bufdesc_ex) -+ if (fep->bufdesc_ex) { - fec_ptp_start_cyclecounter(ndev); -+ fec_ptp_restore_state(fep); -+ } - - /* Enable interrupts we wish to service */ - if (fep->link) -@@ -1174,6 +1178,8 @@ fec_stop(struct net_device *ndev) - netdev_err(ndev, "Graceful transmit stop did not complete!\n"); - } - -+ 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 - * instead of reset MAC itself. -@@ -1206,6 +1212,9 @@ fec_stop(struct net_device *ndev) - val = readl(fep->hwp + FEC_ECNTRL); - val |= FEC_ECR_EN1588; - writel(val, fep->hwp + FEC_ECNTRL); -+ -+ fec_ptp_start_cyclecounter(ndev); -+ fec_ptp_restore_state(fep); - } - } - -diff --git a/drivers/net/ethernet/freescale/fec_ptp.c b/drivers/net/ethernet/freescale/fec_ptp.c -index 84e0855069a84..0726291fbb4c0 100644 ---- a/drivers/net/ethernet/freescale/fec_ptp.c -+++ b/drivers/net/ethernet/freescale/fec_ptp.c -@@ -635,6 +635,36 @@ void fec_ptp_init(struct platform_device *pdev, int irq_idx) - schedule_delayed_work(&fep->time_keep, HZ); - } - -+void fec_ptp_save_state(struct fec_enet_private *fep) -+{ -+ unsigned long flags; -+ -+ spin_lock_irqsave(&fep->tmreg_lock, flags); -+ -+ fep->ptp_saved_state.pps_enable = fep->pps_enable; -+ -+ spin_unlock_irqrestore(&fep->tmreg_lock, flags); -+} -+ -+/* Restore PTP functionality after a reset */ -+void fec_ptp_restore_state(struct fec_enet_private *fep) -+{ -+ unsigned long flags; -+ -+ spin_lock_irqsave(&fep->tmreg_lock, flags); -+ -+ /* Reset turned it off, so adjust our status flag */ -+ fep->pps_enable = 0; -+ -+ spin_unlock_irqrestore(&fep->tmreg_lock, flags); -+ -+ /* Restart PPS if needed */ -+ if (fep->ptp_saved_state.pps_enable) { -+ /* Re-enable PPS */ -+ fec_ptp_enable_pps(fep, 1); -+ } -+} -+ - void fec_ptp_stop(struct platform_device *pdev) - { - struct net_device *ndev = platform_get_drvdata(pdev); --- -2.43.0 - diff --git a/queue-5.10/series b/queue-5.10/series index 439d7d957a9..ae5f260fa9d 100644 --- a/queue-5.10/series +++ b/queue-5.10/series @@ -274,9 +274,6 @@ net-ieee802154-mcr20a-use-irqf_no_autoen-flag-in-req.patch netfilter-nf_tables-prevent-nf_skb_duplicated-corrup.patch bluetooth-btmrvl-use-irqf_no_autoen-flag-in-request_.patch net-ethernet-lantiq_etop-fix-memory-disclosure.patch -net-fec-avoid-allocating-rx-buffer-using-atomic-in-n.patch -net-fec-restart-pps-after-link-state-change.patch -net-fec-reload-ptp-registers-after-link-state-change.patch net-avoid-potential-underflow-in-qdisc_pkt_len_init-.patch net-add-more-sanity-checks-to-qdisc_pkt_len_init.patch ipv4-ip_gre-fix-drops-of-small-packets-in-ipgre_xmit.patch