From: "Morten Brørup" <mb@smartsharesystems.com>
To: "Bruce Richardson" <bruce.richardson@intel.com>, <dev@dpdk.org>
Cc: <stable@dpdk.org>, "Chas Williams" <3chas3@gmail.com>,
"Min Hu (Connor)" <humin29@huawei.com>,
"Chaoyong He" <chaoyong.he@corigine.com>,
"Long Wu" <long.wu@corigine.com>
Subject: RE: [PATCH] net/bonding: clamp Rx free threshold for small rings
Date: Tue, 24 Feb 2026 13:48:24 +0100 [thread overview]
Message-ID: <98CBD80474FA8B44BF855DF32C47DC35F6574B@smartserver.smartshare.dk> (raw)
In-Reply-To: <20260224121358.3102740-1-bruce.richardson@intel.com>
> From: Bruce Richardson [mailto:bruce.richardson@intel.com]
> Sent: Tuesday, 24 February 2026 13.14
>
> The bonding driver creates a minimal-sized Rx ring as part of the
> setup,
> using the driver default parameters as it does so. However, for some
> cases the default values need adjustment for absolute minimal sized
> rings which can cause failures - for example, having an free threshold
> of 32 is too large for a ring of size 64.
>
> Unfortunately, the drivers themselves cannot properly handle this by
> adjusting their defaults because:
> a) the defaults are returned from info_get which gets called before the
> desired ring-size is known
> b) the replacement of the NULL rxconf value, which indicates use of
> defaults, happens at the ethdev level, so the driver is unaware of the
> source of the requested parameters - whether they are explicitly set by
> the user or substituted by ethdev layer.
>
> Therefore, we modify the bonding PMD to clamp the free thresh value to
> ring_size / 4 which should work in all cases.
I have complained about the inability to rely on drivers' capability reporting in edge cases before.
Here's another reason for complaining about it.
It's not easy pleasing everyone. ;-)
From an application perspective, this is black magic, and should be documented.
E.g. like:
https://elixir.bootlin.com/dpdk/v25.11/source/lib/ethdev/rte_ethdev.h#L6322
Anyway, this patch is better than being broken, so:
Acked-by: Morten Brørup <mb@smartsharesystems.com>
next prev parent reply other threads:[~2026-02-24 12:48 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-24 12:13 [PATCH] net/bonding: clamp Rx free threshold for small rings Bruce Richardson
2026-02-24 12:48 ` Morten Brørup [this message]
2026-02-24 13:53 ` Bruce Richardson
2026-02-25 17:01 ` Stephen Hemminger
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=98CBD80474FA8B44BF855DF32C47DC35F6574B@smartserver.smartshare.dk \
--to=mb@smartsharesystems.com \
--cc=3chas3@gmail.com \
--cc=bruce.richardson@intel.com \
--cc=chaoyong.he@corigine.com \
--cc=dev@dpdk.org \
--cc=humin29@huawei.com \
--cc=long.wu@corigine.com \
--cc=stable@dpdk.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox