Re: [Intel-wired-lan] [PATCH] [PATCH iwl-net] idpf: Acquire the lock before accessing the xn->salt

2024-08-06 Thread Przemek Kitszel
On 8/5/24 20:21, Manoj Vishwanathan wrote: The transaction salt was being accessed before acquiring the idpf_vc_xn_lock when idpf has to forward the virtchnl reply. Fixes: 34c21fa894a1a (“idpf: implement virtchnl transaction manager”) Signed-off-by: Manoj Vishwanathan Reviewed-by: Przemek Kit

[Intel-wired-lan] [tnguy-net-queue:dev-queue] BUILD SUCCESS dd729b8ab3ae4c5e775f66c1a45ddb9ab1ebbb3e

2024-08-06 Thread kernel test robot
nsimosci_hs_smp_defconfig gcc-13.2.0 arc randconfig-001-20240806 gcc-13.2.0 arc randconfig-002-20240806 gcc-13.2.0 arm allmodconfig gcc-13.2.0 arm allmodconfig gcc-14.1.0 arm allnoconfig

Re: [Intel-wired-lan] [PATCH net-next v12 04/14] mm: page_frag: add '_va' suffix to page_frag API

2024-08-06 Thread Yunsheng Lin
On 2024/8/6 8:52, Alexander Duyck wrote: > On Sun, Aug 4, 2024 at 10:00 AM Yunsheng Lin > wrote: >> >> On 8/3/2024 1:00 AM, Alexander Duyck wrote: >> > > As far as your API extension and naming maybe you should look like > something like bio_vec and borrow the naming from that si

[Intel-wired-lan] [PATCH iwl-next 0/9] idpf: XDP chapter II: convert Tx completion to libeth

2024-08-06 Thread Alexander Lobakin
XDP for idpf is currently 5 chapters: * convert Rx to libeth; * convert Tx completion and stats to libeth (this); * generic XDP and XSk code changes; * actual XDP for idpf via libeth_xdp; * XSk for idpf (^). Part II does the following: * introduces generic libeth per-queue stats infra; * adds gene

[Intel-wired-lan] [PATCH iwl-next 1/9] unroll: add generic loop unroll helpers

2024-08-06 Thread Alexander Lobakin
There are cases when we need to explicitly unroll loops. For example, cache operations, filling DMA descriptors on very high speeds etc. Add compiler-specific attribute macros to give the compiler a hint that we'd like to unroll a loop. Example usage: #define UNROLL_BATCH 8 unrolled_coun

[Intel-wired-lan] [PATCH iwl-next 3/9] libie: add Tx buffer completion helpers

2024-08-06 Thread Alexander Lobakin
Software-side Tx buffers for storing DMA, frame size, skb pointers etc. are pretty much generic and every driver defines them the same way. The same can be said for software Tx completions -- same napi_consume_skb()s and all that... Add a couple simple wrappers for doing that to stop repeating the

[Intel-wired-lan] [PATCH iwl-next 2/9] libeth: add common queue stats

2024-08-06 Thread Alexander Lobakin
Define common structures, inline helpers and Ethtool helpers to collect, update and export the statistics (RQ, SQ, XDPSQ). Use u64_stats_t right from the start, as well as the corresponding helpers to ensure tear-free operations. For the NAPI parts of both Rx and Tx, also define small onstack conta

[Intel-wired-lan] [PATCH iwl-next 5/9] netdevice: add netdev_tx_reset_subqueue() shorthand

2024-08-06 Thread Alexander Lobakin
Add a shorthand similar to other net*_subqueue() helpers for resetting the queue by its index w/o obtaining &netdev_tx_queue beforehand manually. Reviewed-by: Przemek Kitszel Signed-off-by: Alexander Lobakin --- include/linux/netdevice.h | 13 - 1 file changed, 12 insertions(+), 1 d

[Intel-wired-lan] [PATCH iwl-next 4/9] idpf: convert to libie Tx buffer completion

2024-08-06 Thread Alexander Lobakin
&idpf_tx_buffer is almost identical to the previous generations, as well as the way it's handled. Moreover, relying on dma_unmap_addr() and !!buf->skb instead of explicit defining of buffer's type was never good. Use the newly added libeth helpers to do it properly and reduce the copy-paste around

[Intel-wired-lan] [PATCH iwl-next 6/9] idpf: refactor Tx completion routines

2024-08-06 Thread Alexander Lobakin
From: Joshua Hay Add a mechanism to guard against stashing partial packets into the hash table to make the driver more robust, with more efficient decision making when cleaning. Don't stash partial packets. This can happen when an RE (Report Event) completion is received in flow scheduling mode,

[Intel-wired-lan] [PATCH iwl-next 7/9] idpf: fix netdev Tx queue stop/wake

2024-08-06 Thread Alexander Lobakin
From: Michal Kubiak netif_txq_maybe_stop() returns -1, 0, or 1, while idpf_tx_maybe_stop_common() says it returns 0 or -EBUSY. As a result, there sometimes are Tx queue timeout warnings despite that the queue is empty or there is at least enough space to restart it. Make idpf_tx_maybe_stop_common

[Intel-wired-lan] [PATCH iwl-next 8/9] idpf: enable WB_ON_ITR

2024-08-06 Thread Alexander Lobakin
From: Joshua Hay Tell hardware to write back completed descriptors even when interrupts are disabled. Otherwise, descriptors might not be written back until the hardware can flush a full cacheline of descriptors. This can cause unnecessary delays when traffic is light (or even trigger Tx queue ti

[Intel-wired-lan] [PATCH iwl-next 9/9] idpf: switch to libeth generic statistics

2024-08-06 Thread Alexander Lobakin
Fully reimplement idpf's per-queue stats using the libeth infra. Embed &libeth_netdev_priv to the beginning of &idpf_netdev_priv(), call the necessary init/deinit helpers and the corresponding Ethtool helpers. Update hotpath counters such as hsplit and tso/gso using the onstack containers instead o

[Intel-wired-lan] [PATCH iwl-net v1 1/1] e1000e: avoid failing the system during pm_suspend

2024-08-06 Thread Vitaly Lifshits
Occasionally when the system goes into pm_suspend, the suspend might fail due to a PHY access error on the network adapter. Previously, this would have caused the whole system to fail to go to a low power state. An example of this was reported in the following Bugzilla: https://bugzilla.kernel.org/

[Intel-wired-lan] [tnguy-next-queue:dev-queue] BUILD SUCCESS e5741d024b36ae7c31db835fc69dfecbe5681b76

2024-08-06 Thread kernel test robot
-20240806 gcc-13.2.0 arc randconfig-002-20240806 gcc-13.2.0 arm allmodconfig gcc-14.1.0 arm allnoconfig clang-20 arm allyesconfig gcc-14.1.0 arm defconfig

Re: [Intel-wired-lan] [PATCH iwl-next v2] ice: Implement ethtool reset support

2024-08-06 Thread Simon Horman
On Mon, Aug 05, 2024 at 02:46:51PM +0200, Wojciech Drewek wrote: > Enable ethtool reset support. Ethtool reset flags are mapped to the > E810 reset type: > PF reset: > $ ethtool --reset irq dma filter offload > CORE reset: > $ ethtool --reset irq-shared dma-shared filter-shared \ > offloa

Re: [Intel-wired-lan] [PATCH net v3] igb: cope with large MAX_SKB_FRAGS.

2024-08-06 Thread Pucha, HimasekharX Reddy
> -Original Message- > From: Intel-wired-lan On Behalf Of > Corinna Vinschen > Sent: Thursday, July 18, 2024 2:27 PM > To: net...@vger.kernel.org; intel-wired-...@lists.osuosl.org; Eric Dumazet > > Cc: Jason Xing ; Nikolay Aleksandrov > ; linux-ker...@vger.kernel.org; Nguyen, Anthony L

[Intel-wired-lan] [tnguy-next-queue:100GbE] BUILD SUCCESS 3ac83c2d0b5446704685c9662564b08a99ca63c5

2024-08-06 Thread kernel test robot
gcc-13.2.0 arc allyesconfig gcc-13.2.0 arc randconfig-001-20240806 gcc-13.2.0 arc randconfig-002-20240806 gcc-13.2.0 arm allmodconfig gcc-14.1.0 arm allnoconfig

[Intel-wired-lan] [PATCH iwl-next 0/7] ice: refactor and cleanup control queue logic

2024-08-06 Thread Jacob Keller
This series includes several minor improvements and refactors to the control queue logic. Jacob implements and uses rd32_poll_timeout to replace a jiffies loop for calling ice_sq_done. The rd32_poll_timeout() function is designed to allow simplifying other places in the driver where we need to rea

[Intel-wired-lan] [PATCH iwl-next 1/7] ice: implement and use rd32_poll_timeout for ice_sq_done timeout

2024-08-06 Thread Jacob Keller
The ice_sq_done function is used to check the control queue head register and determine whether or not the control queue processing is done. This function is called in a loop checking against jiffies for a specified timeout. The pattern of reading a register in a loop until a condition is true or

[Intel-wired-lan] [PATCH iwl-next 2/7] ice: improve debug print for control queue messages

2024-08-06 Thread Jacob Keller
The ice_debug_cq function is called to print debug data for a control queue descriptor in multiple places. This includes both before we send a message on a transmit queue, after the writeback completion of a message on the transmit queue, and when we receive a message on a receive queue. This func

[Intel-wired-lan] [PATCH iwl-next 7/7] ice: Report NVM version numbers on mismatch during load

2024-08-06 Thread Jacob Keller
From: Sergey Temerkhanov Report NVM version numbers (both detected and expected) when a mismatch b/w driver and firmware is detected. This provides more useful information about which NVM version the driver expects, rather than requiring manual code inspection. Signed-off-by: Sergey Temerkhanov

[Intel-wired-lan] [PATCH iwl-next 5/7] ice: reword comments referring to control queues

2024-08-06 Thread Jacob Keller
Many comments in ice_controlq.c use the term "Admin queue" despite the code being intended for arbitrary control queues, not just the Admin queue. Reword the comments to make it clear that this code is the generic control queue logic that is shared by all of the control queues, and is not specific

[Intel-wired-lan] [PATCH iwl-next 4/7] ice: stop intermixing AQ commands/responses debug dumps

2024-08-06 Thread Jacob Keller
From: Przemek Kitszel The ice_debug_cq() function is called to generate a debug log of control queue messages both sent and received. It currently does this over a potential total of 6 different printk invocations. The main logic prints over 4 calls to ice_debug(): 1. The metadata including op

[Intel-wired-lan] [PATCH iwl-next 6/7] ice: remove unnecessary control queue cmd_buf arrays

2024-08-06 Thread Jacob Keller
The driver allocates a cmd_buf array in addition to the desc_buf array. This array stores an ice_sq_cd command details structure for each entry in the control queue ring. The contents of the structure are copied from the value passed in via ice_sq_send_cmd, and include only a pointer to storage fo

[Intel-wired-lan] [PATCH iwl-next 3/7] ice: do not clutter debug logs with unused data

2024-08-06 Thread Jacob Keller
From: Bruce Allan Currently, debug logs are unnecessarily cluttered with the contents of command data buffers even if the receiver of that command (i.e. FW or MBX) are not told to read the buffer. Change to only log command data buffers when the RD flag (indicates receiver needs to read the buff

[Intel-wired-lan] [PATCH iwl-net v1 0/5] igc: PTM timeout fix

2024-08-06 Thread christopher . s . hall
From: Christopher S M Hall There have been sporadic reports of PTM timeouts using i225/i226 devices These timeouts have been root caused to: 1) Manipulating the PTM status register while PTM is enabled and triggered 2) The hardware retrying too quickly when an inappropriate response is recei

[Intel-wired-lan] [PATCH iwl-net v1 1/5] igc: Ensure the PTM cycle is reliably triggered

2024-08-06 Thread christopher . s . hall
From: Christopher S M Hall Writing to clear the PTM status 'valid' bit while the PTM cycle is triggered results in unreliable PTM operation. To fix this, clear the PTM 'trigger' and status after each PTM transaction. The issue can be reproduced with the following: $ sudo phc2sys -R 1000 -O 0 -i

[Intel-wired-lan] [PATCH iwl-net v1 2/5] igc: Lengthen the hardware retry time to prevent timeouts

2024-08-06 Thread christopher . s . hall
From: Christopher S M Hall Lengthen the hardware retry timer to four microseconds. The i225/i226 hardware retries if it receives an inappropriate response from the upstream device. If the device retries too quickly, the root port does not respond. The issue can be reproduced with the following:

[Intel-wired-lan] [PATCH iwl-net v1 3/5] igc: Move ktime snapshot into PTM retry loop

2024-08-06 Thread christopher . s . hall
From: Christopher S M Hall Move ktime_get_snapshot() into the loop. If a retry does occur, a more recent snapshot will result in a more accurate cross-timestamp. Fixes: a90ec8483732 ("igc: Add support for PTP getcrosststamp()") Signed-off-by: Christopher S M Hall --- drivers/net/ethernet/intel

[Intel-wired-lan] [PATCH iwl-net v1 4/5] igc: Reduce retry count to a more reasonable number

2024-08-06 Thread christopher . s . hall
From: Christopher S M Hall Setting the retry count to 8x is more than sufficient. 100x is unreasonable and would indicate broken hardware/firmware. Fixes: a90ec8483732 ("igc: Add support for PTP getcrosststamp()") Signed-off-by: Christopher S M Hall --- drivers/net/ethernet/intel/igc/igc_ptp.

[Intel-wired-lan] [PATCH iwl-net v1 5/5] igc: Add lock preventing multiple simultaneous PTM transactions

2024-08-06 Thread christopher . s . hall
From: Christopher S M Hall Add a mutex around the PTM transaction to prevent multiple transactors Multiple processes try to initiate a PTM transaction, one or all may fail. This can be reproduced by running two instances of the following: $ sudo phc2sys -O 0 -i tsn0 -m PHC2SYS exits with: "io

Re: [Intel-wired-lan] [PATCH iwl-net v1 1/5] igc: Ensure the PTM cycle is reliably triggered

2024-08-06 Thread Paul Menzel
Dear Christopher, Thank you for the patch. Am 07.08.24 um 02:30 schrieb christopher.s.h...@intel.com: From: Christopher S M Hall Writing to clear the PTM status 'valid' bit while the PTM cycle is triggered results in unreliable PTM operation. To fix this, clear the PTM 'trigger' and status a

Re: [Intel-wired-lan] [PATCH iwl-net v1 4/5] igc: Reduce retry count to a more reasonable number

2024-08-06 Thread Paul Menzel
Dear Christopher, Thank you for your patch. In the summary, I’d add specific values: igc: Reduce retry count to from 100 to reasonable 8 Am 07.08.24 um 02:30 schrieb christopher.s.h...@intel.com: From: Christopher S M Hall Setting the retry count to 8x is more than sufficient. 100x is unr