From: Vinicius Costa Gomes <vinicius.gomes@intel.com>
To: intel-wired-lan@osuosl.org
Subject: [Intel-wired-lan] [next-queue RFC 0/4] ethtool: Add support for frame preemption
Date: Tue, 19 May 2020 09:43:27 -0700 [thread overview]
Message-ID: <87lflnooy8.fsf@intel.com> (raw)
In-Reply-To: <VE1PR04MB6496D0B1507969D8474F78FC92B90@VE1PR04MB6496.eurprd04.prod.outlook.com>
Po Liu <po.liu@nxp.com> writes:
> Hi Vinicius,
>
>> -----Original Message-----
>> From: Vinicius Costa Gomes <vinicius.gomes@intel.com>
>> Sent: 2020?5?19? 3:34
>> To: Michal Kubecek <mkubecek@suse.cz>; netdev at vger.kernel.org
>> Cc: intel-wired-lan at lists.osuosl.org; jeffrey.t.kirsher at intel.com; Vladimir
>> Oltean <vladimir.oltean@nxp.com>; Po Liu <po.liu@nxp.com>; m-
>> karicheri2 at ti.com; Jose.Abreu at synopsys.com
>> Subject: Re: [next-queue RFC 0/4] ethtool: Add support for frame
>> preemption
>>
>> Hi,
>>
>> Michal Kubecek <mkubecek@suse.cz> writes:
>>
>> > On Fri, May 15, 2020 at 06:29:44PM -0700, Vinicius Costa Gomes wrote:
>> >> Hi,
>> >>
>> >> This series adds support for configuring frame preemption, as defined
>> >> by IEEE 802.1Q-2018 (previously IEEE 802.1Qbu) and IEEE 802.3br.
>> >>
>> >> Frame preemption allows a packet from a higher priority queue marked
>> >> as "express" to preempt a packet from lower priority queue marked as
>> >> "preemptible". The idea is that this can help reduce the latency for
>> >> higher priority traffic.
>> >>
>> >> Previously, the proposed interface for configuring these features was
>> >> using the qdisc layer. But as this is very hardware dependent and all
>> >> that qdisc did was pass the information to the driver, it makes sense
>> >> to have this in ethtool.
>> >>
>> >> One example, for retrieving and setting the configuration:
>> >>
>> >> $ ethtool $ sudo ./ethtool --show-frame-preemption enp3s0 Frame
>> >> preemption settings for enp3s0:
>> >> support: supported
>> >
>> > IMHO we don't need a special bool for this. IIUC this is not a state
>> > flag that would change value for a particular device; either the
>> > device supports the feature or it does not. If it does not, the
>> > ethtool_ops callbacks would return -EOPNOTSUPP (or would not even
>> > exist if the driver has no support) and ethtool would say so.
>>
>> (I know that the comments below only apply if "ethtool-way" is what's
>> decided)
>>
>> Cool. Will remove the supported bit.
>
> Shall it move to the link_ksettings fixed supported list? So can be
> checked by the ethtool -k command. I understand that the hw features
> are encouraged listing in the ksettings.
Having it in link_ksettings might make sense, using something like
"frame-preemption: off [fixed]" to mean "not supported" sounds nice.
> The two MACs should all be initialized at driver size. And all frame queues should assigned to the express MAC by default. That looks as normal mode called preemption disable.
> Any frame queues assigned pass preemptable MAC could be called
> preemption enable.
If you mean to have frame-preemption enabled by default, I think it
should be a per-driver decision, and probably disabled by default, at
least in the begining: frame preemption might interact badly with other
features, jumbo frames and EEE come to mind.
Cheers,
--
Vinicius
WARNING: multiple messages have this Message-ID (diff)
From: Vinicius Costa Gomes <vinicius.gomes@intel.com>
To: Po Liu <po.liu@nxp.com>, Michal Kubecek <mkubecek@suse.cz>,
"netdev\@vger.kernel.org" <netdev@vger.kernel.org>
Cc: "intel-wired-lan\@lists.osuosl.org"
<intel-wired-lan@lists.osuosl.org>,
"jeffrey.t.kirsher\@intel.com" <jeffrey.t.kirsher@intel.com>,
Vladimir Oltean <vladimir.oltean@nxp.com>,
"m-karicheri2\@ti.com" <m-karicheri2@ti.com>,
"Jose.Abreu\@synopsys.com" <Jose.Abreu@synopsys.com>
Subject: RE: Re: [next-queue RFC 0/4] ethtool: Add support for frame preemption
Date: Tue, 19 May 2020 09:43:27 -0700 [thread overview]
Message-ID: <87lflnooy8.fsf@intel.com> (raw)
In-Reply-To: <VE1PR04MB6496D0B1507969D8474F78FC92B90@VE1PR04MB6496.eurprd04.prod.outlook.com>
Po Liu <po.liu@nxp.com> writes:
> Hi Vinicius,
>
>> -----Original Message-----
>> From: Vinicius Costa Gomes <vinicius.gomes@intel.com>
>> Sent: 2020年5月19日 3:34
>> To: Michal Kubecek <mkubecek@suse.cz>; netdev@vger.kernel.org
>> Cc: intel-wired-lan@lists.osuosl.org; jeffrey.t.kirsher@intel.com; Vladimir
>> Oltean <vladimir.oltean@nxp.com>; Po Liu <po.liu@nxp.com>; m-
>> karicheri2@ti.com; Jose.Abreu@synopsys.com
>> Subject: Re: [next-queue RFC 0/4] ethtool: Add support for frame
>> preemption
>>
>> Hi,
>>
>> Michal Kubecek <mkubecek@suse.cz> writes:
>>
>> > On Fri, May 15, 2020 at 06:29:44PM -0700, Vinicius Costa Gomes wrote:
>> >> Hi,
>> >>
>> >> This series adds support for configuring frame preemption, as defined
>> >> by IEEE 802.1Q-2018 (previously IEEE 802.1Qbu) and IEEE 802.3br.
>> >>
>> >> Frame preemption allows a packet from a higher priority queue marked
>> >> as "express" to preempt a packet from lower priority queue marked as
>> >> "preemptible". The idea is that this can help reduce the latency for
>> >> higher priority traffic.
>> >>
>> >> Previously, the proposed interface for configuring these features was
>> >> using the qdisc layer. But as this is very hardware dependent and all
>> >> that qdisc did was pass the information to the driver, it makes sense
>> >> to have this in ethtool.
>> >>
>> >> One example, for retrieving and setting the configuration:
>> >>
>> >> $ ethtool $ sudo ./ethtool --show-frame-preemption enp3s0 Frame
>> >> preemption settings for enp3s0:
>> >> support: supported
>> >
>> > IMHO we don't need a special bool for this. IIUC this is not a state
>> > flag that would change value for a particular device; either the
>> > device supports the feature or it does not. If it does not, the
>> > ethtool_ops callbacks would return -EOPNOTSUPP (or would not even
>> > exist if the driver has no support) and ethtool would say so.
>>
>> (I know that the comments below only apply if "ethtool-way" is what's
>> decided)
>>
>> Cool. Will remove the supported bit.
>
> Shall it move to the link_ksettings fixed supported list? So can be
> checked by the ethtool -k command. I understand that the hw features
> are encouraged listing in the ksettings.
Having it in link_ksettings might make sense, using something like
"frame-preemption: off [fixed]" to mean "not supported" sounds nice.
> The two MACs should all be initialized at driver size. And all frame queues should assigned to the express MAC by default. That looks as normal mode called preemption disable.
> Any frame queues assigned pass preemptable MAC could be called
> preemption enable.
If you mean to have frame-preemption enabled by default, I think it
should be a per-driver decision, and probably disabled by default, at
least in the begining: frame preemption might interact badly with other
features, jumbo frames and EEE come to mind.
Cheers,
--
Vinicius
next prev parent reply other threads:[~2020-05-19 16:43 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-19 9:10 [Intel-wired-lan] [next-queue RFC 0/4] ethtool: Add support for frame preemption Po Liu
2020-05-19 9:10 ` Po Liu
2020-05-19 16:43 ` Vinicius Costa Gomes [this message]
2020-05-19 16:43 ` Vinicius Costa Gomes
-- strict thread matches above, loose matches on Subject: below --
2020-05-16 1:29 [Intel-wired-lan] " Vinicius Costa Gomes
2020-05-16 9:33 ` Michal Kubecek
2020-05-18 19:34 ` Vinicius Costa Gomes
2020-05-19 22:40 ` Andre Guedes
2020-05-19 22:53 ` Vinicius Costa Gomes
2020-05-16 20:37 ` David Miller
2020-05-16 21:03 ` Vladimir Oltean
2020-05-16 22:19 ` David Miller
2020-05-17 10:51 ` Vladimir Oltean
2020-05-17 18:45 ` Andrew Lunn
2020-05-17 19:04 ` Vladimir Oltean
2020-05-18 19:05 ` Vinicius Costa Gomes
2020-05-18 20:56 ` Jakub Kicinski
2020-05-18 22:06 ` Vinicius Costa Gomes
2020-05-18 22:22 ` Jakub Kicinski
2020-05-18 23:05 ` Vinicius Costa Gomes
2020-05-18 23:09 ` Jakub Kicinski
2020-05-20 21:42 ` Andre Guedes
2020-05-20 21:42 ` Andre Guedes
2020-05-20 22:35 ` Vinicius Costa Gomes
2020-05-20 22:35 ` Vinicius Costa Gomes
2020-05-19 16:34 ` Murali Karicheri
2020-05-19 17:49 ` Vinicius Costa Gomes
2020-05-19 14:53 ` Murali Karicheri
2020-05-19 15:32 ` Vinicius Costa Gomes
2020-05-19 16:11 ` Murali Karicheri
2020-05-19 22:39 ` Andre Guedes
2020-05-19 23:37 ` Vinicius Costa Gomes
2020-05-20 12:47 ` Murali Karicheri
2020-05-20 12:52 ` Joergen Andreasen
2020-05-20 21:32 ` Vinicius Costa Gomes
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=87lflnooy8.fsf@intel.com \
--to=vinicius.gomes@intel.com \
--cc=intel-wired-lan@osuosl.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 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.