From: "Abdul Rahim, Faizal" <faizal.abdul.rahim@linux.intel.com>
To: Vladimir Oltean <vladimir.oltean@nxp.com>
Cc: Kurt Kanzenbach <kurt@linutronix.de>,
Tony Nguyen <anthony.l.nguyen@intel.com>,
Przemek Kitszel <przemyslaw.kitszel@intel.com>,
Andrew Lunn <andrew+netdev@lunn.ch>,
"David S . Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
Maxime Coquelin <mcoquelin.stm32@gmail.com>,
Alexandre Torgue <alexandre.torgue@foss.st.com>,
Simon Horman <horms@kernel.org>,
Russell King <linux@armlinux.org.uk>,
Alexei Starovoitov <ast@kernel.org>,
Daniel Borkmann <daniel@iogearbox.net>,
Jesper Dangaard Brouer <hawk@kernel.org>,
John Fastabend <john.fastabend@gmail.com>,
Furong Xu <0x1207@gmail.com>,
Russell King <rmk+kernel@armlinux.org.uk>,
Serge Semin <fancer.lancer@gmail.com>,
Xiaolei Wang <xiaolei.wang@windriver.com>,
Suraj Jaiswal <quic_jsuraj@quicinc.com>,
Kory Maincent <kory.maincent@bootlin.com>,
Gal Pressman <gal@nvidia.com>,
Jesper Nilsson <jesper.nilsson@axis.com>,
Choong Yong Liang <yong.liang.choong@linux.intel.com>,
Kunihiko Hayashi <hayashi.kunihiko@socionext.com>,
Vinicius Costa Gomes <vinicius.gomes@intel.com>,
intel-wired-lan@lists.osuosl.org, netdev@vger.kernel.org,
linux-kernel@vger.kernel.org,
linux-stm32@st-md-mailman.stormreply.com,
linux-arm-kernel@lists.infradead.org, bpf@vger.kernel.org
Subject: Re: [PATCH iwl-next v4 0/9] igc: Add support for Frame Preemption feature in IGC
Date: Fri, 14 Feb 2025 19:20:08 +0800 [thread overview]
Message-ID: <afa50e3a-914b-46b6-8401-0589b6099f68@linux.intel.com> (raw)
In-Reply-To: <20250214102206.25dqgut5tbak2rkz@skbuf>
On 14/2/2025 6:22 pm, Vladimir Oltean wrote:
> Faizal,
>
> On Fri, Feb 14, 2025 at 05:43:19PM +0800, Abdul Rahim, Faizal wrote:
>>>> Hi Kurt & Vladimir,
>>>>
>>>> After reading Vladimir's reply on tc, hw queue, and socket priority mapping
>>>> for both taprio and mqprio, I agree they should follow the same priority
>>>> scheme for consistency—both in code and command usage (i.e., taprio,
>>>> mqprio, and fpe in both configurations). Since igc_tsn_tx_arb() ensures a
>>>> standard mapping of tc, socket priority, and hardware queue priority, I'll
>>>> enable taprio to use igc_tsn_tx_arb() in a separate patch submission.
>>>
>>> There's one point to consider here: igc_tsn_tx_arb() changes the mapping
>>> between priorities and Tx queues. I have no idea how many people rely on
>>> the fact that queue 0 has always the highest priority. For example, it
>>> will change the Tx behavior for schedules which open multiple traffic
>>> classes at the same time. Users may notice.
>>
>> Yeah, I was considering the impact on existing users too. I hadn’t given it
>> much thought initially and figured they’d just need to adapt to the changes,
>> but now that I think about it, properly communicating this would be tough.
>> taprio on igc (i225, i226) has been around for a while, so a lot of users
>> would be affected.
>>
>>> OTOH changing mqprio to the broken_mqprio model is easy, because AFAIK
>>> there's only one customer using this.
>>>
>>
>> Hmmmm, now I’m leaning toward keeping taprio as is (hw queue 0 highest
>> priority) and having mqprio follow the default priority scheme (aka
>> broken_mqprio). Even though it’s not the norm, the impact doesn’t seem worth
>> the gain. Open to hearing others' thoughts.
>
> Kurt is right, you need to think about your users, but it isn't only that.
> Intel puts out a lot of user-facing TSN technical documentation for Linux,
> and currently, they have a hard time adapting it to other vendors, because
> of Intel specific peculiarities such as this one. I would argue that for
> being one of the most visible vendors from the Linux TSN space, you also
> have a duty to the rest of the community of not pushing users away from
> established conventions.
>
> It's unfair that a past design mistake would stifle further evolution of
> the driver in the correct direction, so I don't think we should let that
> happen. I was thinking the igc driver should have a driver-specific
> opt-in flag which users explicitly have to set in order to get the
> conventional TX scheduling behavior in taprio (the one from mqprio).
> Public Intel documentation would be updated to present the differences
> between the old and the new mode, and to recommend opting into the new
> mode. By default, the current behavior is maintained, thus not breaking
> any user. Something like an ethtool priv flag seems adequate for this.
>
> Understandably, many network maintainers will initially dislike this,
> but you will have to be persistent and explain the ways in which having
> this priv flag is better than not having it. Normally they will respect
> those reasons more than they dislike driver-specific priv flags, which,
> let's be honest, are way too often abused for adding custom behavior.
> Here the situation is different, the custom behavior already exists, it
> just doesn't have a name and there's no way of turning it off.
Okay. I can look into this in a separate patch submission, but just an
FYI—this adds another dependency to the second part of the igc fpe
submission (preemptible tc on taprio + mqprio). This new patch
(driver-specific priv flag to control 2 different priority scheme) would
need to be accepted first before the second part of igc fpe can be submitted.
next prev parent reply other threads:[~2025-02-14 11:39 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-10 7:01 [PATCH iwl-next v4 0/9] igc: Add support for Frame Preemption feature in IGC Faizal Rahim
2025-02-10 7:01 ` [PATCH iwl-next v4 1/9] net: ethtool: mm: extract stmmac verification logic into common library Faizal Rahim
2025-02-12 23:09 ` Vladimir Oltean
2025-02-10 7:02 ` [PATCH iwl-next v4 2/9] igc: Rename xdp_get_tx_ring() for non-xdp usage Faizal Rahim
2025-02-10 7:02 ` [PATCH iwl-next v4 3/9] igc: Optimize the TX packet buffer utilization Faizal Rahim
2025-02-10 7:02 ` [PATCH iwl-next v4 4/9] igc: Set the RX packet buffer size for TSN mode Faizal Rahim
2025-02-10 7:02 ` [PATCH iwl-next v4 5/9] igc: Add support for frame preemption verification Faizal Rahim
2025-02-17 11:31 ` Simon Horman
2025-02-19 1:48 ` Abdul Rahim, Faizal
2025-02-10 7:02 ` [PATCH iwl-next v4 6/9] igc: Add support to set tx-min-frag-size Faizal Rahim
2025-02-10 7:02 ` [PATCH iwl-next v4 7/9] igc: Add support for preemptible traffic class in taprio Faizal Rahim
2025-02-10 7:02 ` [PATCH iwl-next v4 8/9] igc: Add support to get MAC Merge data via ethtool Faizal Rahim
2025-02-10 7:02 ` [PATCH iwl-next v4 9/9] igc: Add support to get frame preemption statistics " Faizal Rahim
2025-02-12 21:54 ` Vladimir Oltean
2025-02-13 5:42 ` Abdul Rahim, Faizal
2025-02-12 22:01 ` [PATCH iwl-next v4 0/9] igc: Add support for Frame Preemption feature in IGC Vladimir Oltean
2025-02-13 6:12 ` Abdul Rahim, Faizal
2025-02-13 9:00 ` Vladimir Oltean
2025-02-13 11:06 ` Vladimir Oltean
2025-02-13 12:01 ` Kurt Kanzenbach
2025-02-13 12:54 ` Abdul Rahim, Faizal
2025-02-13 13:00 ` Vladimir Oltean
2025-02-13 13:54 ` Abdul Rahim, Faizal
2025-02-13 14:12 ` Kurt Kanzenbach
2025-02-13 18:46 ` Vladimir Oltean
2025-02-13 19:12 ` Kurt Kanzenbach
2025-02-14 4:20 ` Abdul Rahim, Faizal
2025-02-14 4:50 ` Abdul Rahim, Faizal
2025-02-14 8:56 ` Kurt Kanzenbach
2025-02-14 9:43 ` Abdul Rahim, Faizal
2025-02-14 10:22 ` Vladimir Oltean
2025-02-14 11:20 ` Abdul Rahim, Faizal [this message]
2025-02-14 11:38 ` Vladimir Oltean
2025-02-13 8:59 ` [Intel-wired-lan] " Loktionov, Aleksandr
2025-02-20 3:08 ` Abdul Rahim, Faizal
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=afa50e3a-914b-46b6-8401-0589b6099f68@linux.intel.com \
--to=faizal.abdul.rahim@linux.intel.com \
--cc=0x1207@gmail.com \
--cc=alexandre.torgue@foss.st.com \
--cc=andrew+netdev@lunn.ch \
--cc=anthony.l.nguyen@intel.com \
--cc=ast@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=daniel@iogearbox.net \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=fancer.lancer@gmail.com \
--cc=gal@nvidia.com \
--cc=hawk@kernel.org \
--cc=hayashi.kunihiko@socionext.com \
--cc=horms@kernel.org \
--cc=intel-wired-lan@lists.osuosl.org \
--cc=jesper.nilsson@axis.com \
--cc=john.fastabend@gmail.com \
--cc=kory.maincent@bootlin.com \
--cc=kuba@kernel.org \
--cc=kurt@linutronix.de \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-stm32@st-md-mailman.stormreply.com \
--cc=linux@armlinux.org.uk \
--cc=mcoquelin.stm32@gmail.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=przemyslaw.kitszel@intel.com \
--cc=quic_jsuraj@quicinc.com \
--cc=rmk+kernel@armlinux.org.uk \
--cc=vinicius.gomes@intel.com \
--cc=vladimir.oltean@nxp.com \
--cc=xiaolei.wang@windriver.com \
--cc=yong.liang.choong@linux.intel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).