From: Greg Kroah-Hartman Date: Tue, 27 Aug 2024 13:45:10 +0000 (+0200) Subject: drop the igc patch, again... X-Git-Tag: v6.1.107~14 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=f1ac5cf65e2dae537d9b0428c282b4660c75333f;p=thirdparty%2Fkernel%2Fstable-queue.git drop the igc patch, again... --- diff --git a/queue-5.15/igc-fix-qbv-tx-latency-by-setting-gtxoffset.patch b/queue-5.15/igc-fix-qbv-tx-latency-by-setting-gtxoffset.patch deleted file mode 100644 index 256fb7f5bcc..00000000000 --- a/queue-5.15/igc-fix-qbv-tx-latency-by-setting-gtxoffset.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 6c3fc0b1c3d073bd6fc3bf43dbd0e64240537464 Mon Sep 17 00:00:00 2001 -From: Faizal Rahim -Date: Sun, 7 Jul 2024 08:53:18 -0400 -Subject: igc: Fix qbv tx latency by setting gtxoffset - -From: Faizal Rahim - -commit 6c3fc0b1c3d073bd6fc3bf43dbd0e64240537464 upstream. - -A large tx latency issue was discovered during testing when only QBV was -enabled. The issue occurs because gtxoffset was not set when QBV is -active, it was only set when launch time is active. - -The patch "igc: Correct the launchtime offset" only sets gtxoffset when -the launchtime_enable field is set by the user. Enabling launchtime_enable -ultimately sets the register IGC_TXQCTL_QUEUE_MODE_LAUNCHT (referred to as -LaunchT in the SW user manual). - -Section 7.5.2.6 of the IGC i225/6 SW User Manual Rev 1.2.4 states: -"The latency between transmission scheduling (launch time) and the -time the packet is transmitted to the network is listed in Table 7-61." - -However, the patch misinterprets the phrase "launch time" in that section -by assuming it specifically refers to the LaunchT register, whereas it -actually denotes the generic term for when a packet is released from the -internal buffer to the MAC transmit logic. - -This launch time, as per that section, also implicitly refers to the QBV -gate open time, where a packet waits in the buffer for the QBV gate to -open. Therefore, latency applies whenever QBV is in use. TSN features such -as QBU and QAV reuse QBV, making the latency universal to TSN features. - -Discussed with i226 HW owner (Shalev, Avi) and we were in agreement that -the term "launch time" used in Section 7.5.2.6 is not clear and can be -easily misinterpreted. Avi will update this section to: -"When TQAVCTRL.TRANSMIT_MODE = TSN, the latency between transmission -scheduling and the time the packet is transmitted to the network is listed -in Table 7-61." - -Fix this issue by using igc_tsn_is_tx_mode_in_tsn() as a condition to -write to gtxoffset, aligning with the newly updated SW User Manual. - -Tested: -1. Enrol taprio on talker board - base-time 0 - cycle-time 1000000 - flags 0x2 - index 0 cmd S gatemask 0x1 interval1 - index 0 cmd S gatemask 0x1 interval2 - - Note: - interval1 = interval for a 64 bytes packet to go through - interval2 = cycle-time - interval1 - -2. Take tcpdump on listener board - -3. Use udp tai app on talker to send packets to listener - -4. Check the timestamp on listener via wireshark - -Test Result: -100 Mbps: 113 ~193 ns -1000 Mbps: 52 ~ 84 ns -2500 Mbps: 95 ~ 223 ns - -Note that the test result is similar to the patch "igc: Correct the -launchtime offset". - -Fixes: 790835fcc0cb ("igc: Correct the launchtime offset") -Signed-off-by: Faizal Rahim -Reviewed-by: Simon Horman -Acked-by: Vinicius Costa Gomes -Tested-by: Mor Bar-Gabay -Signed-off-by: Tony Nguyen -Signed-off-by: Greg Kroah-Hartman ---- - drivers/net/ethernet/intel/igc/igc_tsn.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/drivers/net/ethernet/intel/igc/igc_tsn.c -+++ b/drivers/net/ethernet/intel/igc/igc_tsn.c -@@ -54,7 +54,7 @@ void igc_tsn_adjust_txtime_offset(struct - struct igc_hw *hw = &adapter->hw; - u16 txoffset; - -- if (!is_any_launchtime(adapter)) -+ if (!igc_tsn_is_tx_mode_in_tsn(adapter)) - return; - - switch (adapter->link_speed) { diff --git a/queue-5.15/series b/queue-5.15/series index ee2b5c06973..7bb15edd844 100644 --- a/queue-5.15/series +++ b/queue-5.15/series @@ -170,4 +170,3 @@ alsa-timer-relax-start-tick-time-check-for-slave-timer-elements.patch mm-numa-no-task_numa_fault-call-if-pmd-is-changed.patch mm-numa-no-task_numa_fault-call-if-pte-is-changed.patch bluetooth-hci_ldisc-check-hci_uart_proto_ready-flag-in-hciuartgetproto.patch -igc-fix-qbv-tx-latency-by-setting-gtxoffset.patch diff --git a/queue-6.1/igc-fix-qbv-tx-latency-by-setting-gtxoffset.patch b/queue-6.1/igc-fix-qbv-tx-latency-by-setting-gtxoffset.patch deleted file mode 100644 index 256fb7f5bcc..00000000000 --- a/queue-6.1/igc-fix-qbv-tx-latency-by-setting-gtxoffset.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 6c3fc0b1c3d073bd6fc3bf43dbd0e64240537464 Mon Sep 17 00:00:00 2001 -From: Faizal Rahim -Date: Sun, 7 Jul 2024 08:53:18 -0400 -Subject: igc: Fix qbv tx latency by setting gtxoffset - -From: Faizal Rahim - -commit 6c3fc0b1c3d073bd6fc3bf43dbd0e64240537464 upstream. - -A large tx latency issue was discovered during testing when only QBV was -enabled. The issue occurs because gtxoffset was not set when QBV is -active, it was only set when launch time is active. - -The patch "igc: Correct the launchtime offset" only sets gtxoffset when -the launchtime_enable field is set by the user. Enabling launchtime_enable -ultimately sets the register IGC_TXQCTL_QUEUE_MODE_LAUNCHT (referred to as -LaunchT in the SW user manual). - -Section 7.5.2.6 of the IGC i225/6 SW User Manual Rev 1.2.4 states: -"The latency between transmission scheduling (launch time) and the -time the packet is transmitted to the network is listed in Table 7-61." - -However, the patch misinterprets the phrase "launch time" in that section -by assuming it specifically refers to the LaunchT register, whereas it -actually denotes the generic term for when a packet is released from the -internal buffer to the MAC transmit logic. - -This launch time, as per that section, also implicitly refers to the QBV -gate open time, where a packet waits in the buffer for the QBV gate to -open. Therefore, latency applies whenever QBV is in use. TSN features such -as QBU and QAV reuse QBV, making the latency universal to TSN features. - -Discussed with i226 HW owner (Shalev, Avi) and we were in agreement that -the term "launch time" used in Section 7.5.2.6 is not clear and can be -easily misinterpreted. Avi will update this section to: -"When TQAVCTRL.TRANSMIT_MODE = TSN, the latency between transmission -scheduling and the time the packet is transmitted to the network is listed -in Table 7-61." - -Fix this issue by using igc_tsn_is_tx_mode_in_tsn() as a condition to -write to gtxoffset, aligning with the newly updated SW User Manual. - -Tested: -1. Enrol taprio on talker board - base-time 0 - cycle-time 1000000 - flags 0x2 - index 0 cmd S gatemask 0x1 interval1 - index 0 cmd S gatemask 0x1 interval2 - - Note: - interval1 = interval for a 64 bytes packet to go through - interval2 = cycle-time - interval1 - -2. Take tcpdump on listener board - -3. Use udp tai app on talker to send packets to listener - -4. Check the timestamp on listener via wireshark - -Test Result: -100 Mbps: 113 ~193 ns -1000 Mbps: 52 ~ 84 ns -2500 Mbps: 95 ~ 223 ns - -Note that the test result is similar to the patch "igc: Correct the -launchtime offset". - -Fixes: 790835fcc0cb ("igc: Correct the launchtime offset") -Signed-off-by: Faizal Rahim -Reviewed-by: Simon Horman -Acked-by: Vinicius Costa Gomes -Tested-by: Mor Bar-Gabay -Signed-off-by: Tony Nguyen -Signed-off-by: Greg Kroah-Hartman ---- - drivers/net/ethernet/intel/igc/igc_tsn.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/drivers/net/ethernet/intel/igc/igc_tsn.c -+++ b/drivers/net/ethernet/intel/igc/igc_tsn.c -@@ -54,7 +54,7 @@ void igc_tsn_adjust_txtime_offset(struct - struct igc_hw *hw = &adapter->hw; - u16 txoffset; - -- if (!is_any_launchtime(adapter)) -+ if (!igc_tsn_is_tx_mode_in_tsn(adapter)) - return; - - switch (adapter->link_speed) { diff --git a/queue-6.1/series b/queue-6.1/series index 9456ea44f29..f4b1204833d 100644 --- a/queue-6.1/series +++ b/queue-6.1/series @@ -313,7 +313,6 @@ gfs2-fix-another-freeze-thaw-hang.patch gfs2-don-t-withdraw-if-init_threads-got-interrupted.patch gfs2-remove-lm_flag_priority-flag.patch gfs2-remove-freeze_go_demote_ok.patch -igc-fix-qbv-tx-latency-by-setting-gtxoffset.patch udp-fix-receiving-fraglist-gso-packets.patch ice-fix-w-1-headers-mismatch.patch revert-jfs-fix-shift-out-of-bounds-in-dbjoin.patch