All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bagas Sanjaya <bagasdotme@gmail.com>
To: Oleksij Rempel <o.rempel@pengutronix.de>,
	Andrew Lunn <andrew@lunn.ch>,
	Heiner Kallweit <hkallweit1@gmail.com>,
	"David S. Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
	Rob Herring <robh@kernel.org>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Florian Fainelli <f.fainelli@gmail.com>,
	Maxime Chevallier <maxime.chevallier@bootlin.com>,
	Kory Maincent <kory.maincent@bootlin.com>,
	Lukasz Majewski <lukma@denx.de>, Jonathan Corbet <corbet@lwn.net>,
	Donald Hunter <donald.hunter@gmail.com>,
	Vadim Fedorenko <vadim.fedorenko@linux.dev>,
	Jiri Pirko <jiri@resnulli.us>,
	Vladimir Oltean <vladimir.oltean@nxp.com>,
	Alexei Starovoitov <ast@kernel.org>,
	Daniel Borkmann <daniel@iogearbox.net>,
	Jesper Dangaard Brouer <hawk@kernel.org>,
	John Fastabend <john.fastabend@gmail.com>
Cc: kernel@pengutronix.de, linux-kernel@vger.kernel.org,
	netdev@vger.kernel.org, Russell King <linux@armlinux.org.uk>,
	Divya.Koppera@microchip.com, Sabrina Dubroca <sd@queasysnail.net>,
	Stanislav Fomichev <sdf@fomichev.me>
Subject: Re: [PATCH net-next v5 1/1] Documentation: net: add flow control guide and document ethtool API
Date: Thu, 18 Sep 2025 15:42:27 +0700	[thread overview]
Message-ID: <aMvF8yNJbPSqqypY@archie.me> (raw)
In-Reply-To: <20250918051538.3651265-1-o.rempel@pengutronix.de>

[-- Attachment #1: Type: text/plain, Size: 2908 bytes --]

On Thu, Sep 18, 2025 at 07:15:38AM +0200, Oleksij Rempel wrote:
> +* **How it works**: To inhibit incoming data, a receiving device can force a
> +    collision on the line. When the sending station detects this collision, it
> +    terminates its transmission, sends a "jam" signal, and then executes the
> +    "Collision backoff and retransmission" procedure as defined in IEEE 802.3,
> +    Section 4.2.3.2.5. This algorithm makes the sender wait for a random
> +    period before attempting to retransmit. By repeatedly forcing collisions,
> +    the receiver can effectively throttle the sender's transmission rate.

Please align the bullet list text. I see hanging indent instead there in
htmldocs output.

> +* **What it is**: A standard Ethernet frame with a globally reserved
> +    destination MAC address (``01-80-C2-00-00-01``). This address is in a range
> +    that standard IEEE 802.1D-compliant bridges do not forward. However, some
> +    unmanaged or misconfigured bridges have been reported to forward these
> +    frames, which can disrupt flow control across a network.
> +
> +* **How it works**: The frame contains a MAC Control opcode for PAUSE
> +    (``0x0001``) and a ``pause_time`` value, telling the sender how long to
> +    wait before sending more data frames. This time is specified in units of
> +    "pause quantum", where one quantum is the time it takes to transmit 512 bits.
> +    For example, one pause quantum is 51.2 microseconds on a 10 Mbit/s link,
> +    and 512 nanoseconds on a 1 Gbit/s link. A ``pause_time`` of zero indicates
> +    that the transmitter can resume transmission, even if a previous non-zero
> +    pause time has not yet elapsed.

Same here.

> +* **What it is**: PFC allows a receiver to pause traffic for one or more of the
> +    8 standard priority levels without stopping traffic for other priorities.
> +    This is critical in data center environments for protocols that cannot
> +    tolerate packet loss due to congestion (e.g., Fibre Channel over Ethernet
> +    or RoCE).
> +
> +* **How it works**: PFC uses a specific PAUSE frame format. It shares the same
> +    globally reserved destination MAC address (``01-80-C2-00-00-01``) as legacy
> +    PAUSE frames but uses a unique opcode (``0x0101``). The frame payload
> +    contains two key fields:
> +
> +    - **``priority_enable_vector``**: An 8-bit mask where each bit corresponds to
> +      one of the 8 priorities. If a bit is set to 1, it means the pause time
> +      for that priority is active.
> +    - **``time_vector``**: A list of eight 2-octet fields, one for each priority.
> +      Each field specifies the ``pause_time`` for its corresponding priority,
> +      measured in units of ``pause_quanta`` (the time to transmit 512 bits).

Ditto.

Thanks.

-- 
An old man doll... just what I always wanted! - Clara

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

      reply	other threads:[~2025-09-18  8:42 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-09-18  5:15 [PATCH net-next v5 1/1] Documentation: net: add flow control guide and document ethtool API Oleksij Rempel
2025-09-18  8:42 ` Bagas Sanjaya [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=aMvF8yNJbPSqqypY@archie.me \
    --to=bagasdotme@gmail.com \
    --cc=Divya.Koppera@microchip.com \
    --cc=andrew@lunn.ch \
    --cc=ast@kernel.org \
    --cc=corbet@lwn.net \
    --cc=daniel@iogearbox.net \
    --cc=davem@davemloft.net \
    --cc=donald.hunter@gmail.com \
    --cc=edumazet@google.com \
    --cc=f.fainelli@gmail.com \
    --cc=hawk@kernel.org \
    --cc=hkallweit1@gmail.com \
    --cc=jiri@resnulli.us \
    --cc=john.fastabend@gmail.com \
    --cc=kernel@pengutronix.de \
    --cc=kory.maincent@bootlin.com \
    --cc=krzk+dt@kernel.org \
    --cc=kuba@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=lukma@denx.de \
    --cc=maxime.chevallier@bootlin.com \
    --cc=netdev@vger.kernel.org \
    --cc=o.rempel@pengutronix.de \
    --cc=pabeni@redhat.com \
    --cc=robh@kernel.org \
    --cc=sd@queasysnail.net \
    --cc=sdf@fomichev.me \
    --cc=vadim.fedorenko@linux.dev \
    --cc=vladimir.oltean@nxp.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.