From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 18BFF45BFE; Mon, 28 Oct 2024 16:57:14 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 9FA1841133; Mon, 28 Oct 2024 16:57:13 +0100 (CET) Received: from mail-pj1-f49.google.com (mail-pj1-f49.google.com [209.85.216.49]) by mails.dpdk.org (Postfix) with ESMTP id 8593541132 for ; Mon, 28 Oct 2024 16:57:11 +0100 (CET) Received: by mail-pj1-f49.google.com with SMTP id 98e67ed59e1d1-2e30116efc9so3650598a91.2 for ; Mon, 28 Oct 2024 08:57:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20230601.gappssmtp.com; s=20230601; t=1730131030; x=1730735830; darn=dpdk.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:subject:cc:to:from:date:from:to:cc:subject:date :message-id:reply-to; bh=Qo17Cae4XSVsUXZAWZ/B4DYgJ2PDgRwU/r7MfLW4Mhk=; b=z1qwzSW68D7VNkm4/V1u5IA8KZice0768VnKu9xh1Ag8yv/bG9wTzH3oIZa4Hjj3Cm 8L6CC3AmB1eWihlInfHTQ4Cw2umm9Pba1UZiHll/F84su0DqQxkNa304DepDCNLycFp0 pVQCJu0m8ZHG1U9LHgMTgEv44h839ZIsDOU6Amb5sew4MI4C5Ka3sWDt5reZmeSTX3TR dWRSGi5H4Bkk0g3NeCZSF5ncamiDTdVpMMKQ1jVNqwbn2X1gx/4oB9S4oYpAQNYmAmYR oSgfI2DPRJRgHo1D1g+i2j09/WSrfn2keayeWrLIbB1/dHUUjEILWzl3uMxLk4Kufm2o gcrg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1730131030; x=1730735830; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:subject:cc:to:from:date:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Qo17Cae4XSVsUXZAWZ/B4DYgJ2PDgRwU/r7MfLW4Mhk=; b=Ii+3QBv1WVyuRQEu4se+uqhpsv3Z7CKkv6a6akcuGjaNGJBchEQHIvuAGNtnx7Xi9K 5ymKqTMnsnwRXBXVxGaOsNkVkq8Lypq5A9byW7DNtHk5zyWjoHEfxYw2Cte4840Rh5AL JryGqYVlhA3NvHJ8xgTwLQq/N0ibztVjhuJlQSAqZ4lApmqyK98Pgd2q4TwNdGJavJL3 BzY2iuBNR7jzOMTMGyf0YgSW7n0yW+mTZ8/g7bk5ONrEfnrxobyTOLxaOAwc6IdLaUzH B+YpS+BSPIBBniP6YMo0Y400vJ2duHqVWVbmuHklb97aDdmO/VUejI/8e8Whbt9jGS7K DYKw== X-Gm-Message-State: AOJu0Yx4lNhCcUgPYxBRTlsRHTKU34WyCeoa/ge2PVnB7Jx3RhC8mvZ+ IBpLnrVDr3RRAv6RT8r8Aq1Go/CfLfoOBQcGyXUIGS4Ma/CpyovN2vE9Vbtyz5Y= X-Google-Smtp-Source: AGHT+IFZlKOmWlfGXhFjR9h0ZZNW6DaYwWy53MAczOHLFEshMctBebMF16kwUZiLn1RYl247x0Tmeg== X-Received: by 2002:a17:90b:3848:b0:2e2:aef9:8f60 with SMTP id 98e67ed59e1d1-2e8f0d531ffmr10282737a91.0.1730131030623; Mon, 28 Oct 2024 08:57:10 -0700 (PDT) Received: from hermes.local (204-195-96-226.wavecable.com. [204.195.96.226]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2e77e4e631esm9421902a91.27.2024.10.28.08.57.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 28 Oct 2024 08:57:10 -0700 (PDT) Date: Mon, 28 Oct 2024 08:57:08 -0700 From: Stephen Hemminger To: Viacheslav Ovsiienko Cc: , , , Subject: Re: [PATCH 1/1] doc: add mlx5 xstats send scheduling counters description Message-ID: <20241028085708.0060bc6f@hermes.local> In-Reply-To: <20241028142741.1609088-1-viacheslavo@nvidia.com> References: <20241028142741.1609088-1-viacheslavo@nvidia.com> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org On Mon, 28 Oct 2024 16:27:41 +0200 Viacheslav Ovsiienko wrote: > The mlx5 provides the scheduling send on time capability. > The check the operating status of this feature the xstats > counters are provided. This patch adds the counter descriptions > and provides some meaningful information how to interpret > the counter values in runtime. > > Signed-off-by: Viacheslav Ovsiienko > --- > doc/guides/nics/mlx5.rst | 48 ++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 48 insertions(+) > > diff --git a/doc/guides/nics/mlx5.rst b/doc/guides/nics/mlx5.rst > index f82e2d75de..8d1a1311d4 100644 > --- a/doc/guides/nics/mlx5.rst > +++ b/doc/guides/nics/mlx5.rst > @@ -2655,3 +2655,51 @@ Destroy GENEVE TLV parser for specific port:: > > This command doesn't destroy the global list, > For releasing options, ``flush`` command should be used. > + > + > +Extended statistics counters > +~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > + > +Send scheduling related xstats counters > +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > + > +The mlx5 PMD provides the set of tx_pp feature related counters to provide debug and diagnostics > +on send packet scheduling. These counters are applicable only if port was probed with ``tx_pp`` > +devarg and reflect the status of PMD scheduling infrastructure based on Clock and Rearm Queues. > +This infrastructure provedies the Send Scheduling capability on CX6DX NICs as temporary workaround > +and should not be engaged on the newer hardware. > + > +- ``tx_pp_missed_interrupt_errors`` - the Rearm Queue interrupt was not serviced in time. EAL handles > + interrupts in dedicated thread and, possible, there were another time-consuming actions were taken. > + > +- ``tx_pp_rearm_queue_errors`` - hardware errors occurred on Rearm Queue, usually it is caused by not > + servicing interrupts in time > + > +- ``tx_pp_clock_queue_errors`` - hardware errors occurred on Clock Queue, usually it indicates some > + configuration or internal NIC hardware or firmware issues > + > +- ``tx_pp_timestamp_past_errors`` - application tried to send packet(s) with specifying timestamp in the past. > + This counter is useful to check and debug the application code, it does not indicate PMD malfunction. > + > +- ``tx_pp_timestamp_future_errors`` - application tried to send packet(s) with specifying timestamp > + in the too distant future, beyond the hardware capabilities to schedule the sending > + This counter is useful to check and debug the application code, it does not indicate PMD malfunction. > + > +- ``tx_pp_jitter`` - this counter exposes the internal NIC realtime clock jitter estimation between two > + neighbour Clock Queue completions in nanoseconds. Significant jitter might alert about clock > + synchronization issues (say, some system PTP agent might adjust NIC clock in inappropriate way) > + > +- ``tx_pp_wander`` - the counter exposes the longterm internal NUC realtime clock stability - tx_pp_wander > + for 2^24 completions, in nanoseconds. Significant wander might indicate clock synchronization issues. > + > +- ``tx_pp_sync_lost`` - the general operating indicator, the non-zero value says the driver lost > + the Clock Queue synchronization and scheduling does not operate correctly. The port must be restarted > + to restore the correct scheduling functioning. > + > +The following counters are extremely useful for application code check and debug, these ones do not > +indicate driver or hardware mulfunctions, and are also applicable for the newer hardware (with direct > +on time scheduling capabilities - ConnectX-7 and above): > + > +- ``tx_pp_timestamp_order_errors`` - application tried to send packet(s) with timestamps in not > + strictly ascending order. Because of PMD does not reorder packets in the hardware queues, scheduling > + timestamps order violation causes sending packets in wrong moments of time. Lots of grammar and spelling errors and overly wordy. Please spend some time cleaning up the wording, find a writer or AI tool to help.