Bjorn Helgaas writes:
> On Mon, Mar 22, 2021 at 09:18:20AM -0700, Vinicius Costa Gomes wrote:
>> Make pci_enable_ptm() accessible from the drivers.
>>
>> Even if PTM still works on the platform I am using without calling
>> this function, it might be possible th
Bjorn Helgaas writes:
> On Mon, Mar 22, 2021 at 09:18:22AM -0700, Vinicius Costa Gomes wrote:
>> i225 has support for PCIe PTM, which allows us to implement support
>> for the PTP_SYS_OFFSET_PRECISE ioctl(), implemented in the driver via
>> the getcrosststamp() functi
Bjorn Helgaas writes:
> On Mon, Mar 22, 2021 at 09:18:21AM -0700, Vinicius Costa Gomes wrote:
>> In practice, enabling PTM also sets the enabled_ptm flag in the PCI
>> device, the flag will be used for detecting if PTM is enabled before
>> adding support for the SYSOFFSET_P
Christoph Hellwig writes:
> On Mon, Mar 22, 2021 at 09:18:20AM -0700, Vinicius Costa Gomes wrote:
>> Make pci_enable_ptm() accessible from the drivers.
>>
>> Even if PTM still works on the platform I am using without calling
>> this function, it might be possible th
others (see the variation the delay values).
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet/intel/igc/igc.h | 1 +
drivers/net/ethernet/intel/igc/igc_defines.h | 31
drivers/net/ethernet/intel/igc/igc_ptp.c | 173 +++
drivers/net/ethernet/intel/igc/i
In practice, enabling PTM also sets the enabled_ptm flag in the PCI
device, the flag will be used for detecting if PTM is enabled before
adding support for the SYSOFFSET_PRECISE ioctl() (which is added by
implementing the getcrosststamp() PTP function).
Signed-off-by: Vinicius Costa Gomes
ck be done?
Cheers,
Vinicius Costa Gomes (3):
Revert "PCI: Make pci_enable_ptm() private"
igc: Enable PCIe PTM
igc: Add support for PTP getcrosststamp()
drivers/net/ethernet/intel/igc/igc.h | 1 +
drivers/net/ethernet/intel/igc/igc_defines.h | 31
drivers/ne
' to check if PTM is enabled or not.
This reverts commit ac6c26da29c12fa511c877c273ed5c939dc9e96c.
Signed-off-by: Vinicius Costa Gomes
Acked-by: Bjorn Helgaas
---
drivers/pci/pci.h | 3 ---
include/linux/pci.h | 7 +++
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/dr
Miroslav Lichvar writes:
> On Mon, Nov 09, 2020 at 10:10:19PM -0800, Vinicius Costa Gomes wrote:
>> i225 has support for PCIe PTM, which allows us to implement support
>> for the PTP_SYS_OFFSET_PRECISE ioctl(), implemented in the driver via
>> the getcrosststamp() func
Hi,
Richard Cochran writes:
> On Tue, Nov 17, 2020 at 05:21:48PM -0800, Vinicius Costa Gomes wrote:
>> Agreed that would be easiest/simplest. But what I have in hand seems to
>> not like it, i.e. I have an earlier series implementing this "one shot" way
>>
Kurt Kanzenbach writes:
> When using short intervals e.g. below one millisecond, large packets won't be
> transmitted at all. The software implementations checks whether the packet can
> be fit into the remaining interval. Therefore, it takes the packet length and
> the transmission speed into ac
itpick: to my ears, it seems that you meant "call"/"use" instead of
"implement".
> would make it easier to assess during review whether they do the right
> thing in order to be compatible with hardware timestamping or not.
>
> Suggested-by: Vinicius Cos
f introducing a helper, something like:
skb_txtime_consumed()
to make it even clearer what's going on.
>
> Do what other drivers do (intel igb/igc) and write zero to skb->tstamp
> before taking the hardware timestamp. It's of no use to us now (we're
> already on the TX confirmation path).
>
> Fixes: 0d08c9ec7d6e ("enetc: add support time specific departure base on the
> qos etf")
> Cc: Vinicius Costa Gomes
> Signed-off-by: Vladimir Oltean
> ---
Anyway,
Acked-by: Vinicius Costa Gomes
Cheers,
--
Vinicius
Vladimir Oltean writes:
> On Tue, Mar 02, 2021 at 04:40:55PM -0800, Vinicius Costa Gomes wrote:
>> Hi Vladimir,
>>
>> Vladimir Oltean writes:
>>
>> > Hi Vinicius,
>> >
>> > On Fri, Jan 22, 2021 at 02:44:46PM -0800, Vinicius Costa Gomes wr
20200507
>> syz repro: https://syzkaller.appspot.com/x/repro.syz?x=14eeda2590
>> C reproducer: https://syzkaller.appspot.com/x/repro.c?x=161472f590
>>
>> The issue was bisected to:
>>
>> commit 5a781ccbd19e4664babcbe4b4ead7aa2b9283d22
>> Author: Vi
Hi Vladimir,
Vladimir Oltean writes:
> Hi Vinicius,
>
> On Fri, Jan 22, 2021 at 02:44:46PM -0800, Vinicius Costa Gomes wrote:
>> Frame preemption (described in IEEE 802.3br-2016) defines the concept
>> of preemptible and express queues. It allows traffic from express
&g
ot;net: stmmac: Add support for CBS QDISC")
> Suggested-by: Gomes, Vinicius
Just a nitpick/formality, I would prefer if you used:
Suggested-by: Vinicius Costa Gomes
> Signed-off-by: Mohammad Athari Bin Ismail
> Signed-off-by: Song, Yoong Siang
Patch looks good.
Acked-by: Vinicius Costa Gomes
Cheers,
--
Vinicius
Vladimir Oltean writes:
> On Fri, Jan 22, 2021 at 02:44:45PM -0800, Vinicius Costa Gomes wrote:
>> This is still an RFC because two main reasons, I want to confirm that
>> this approach (per-queue settings via qdiscs, device settings via
>> ethtool) looks good, even though t
Vladimir Oltean writes:
> On Fri, Jan 29, 2021 at 01:13:24PM -0800, Vinicius Costa Gomes wrote:
>> > Secondly, why should at least one queue be preemptible? What's wrong
>> > with frame preemption being triggered by a tc-taprio window smaller than
>> > the pack
Jakub Kicinski writes:
>> > First I'm interested in the means: why check for preempt == U32_MAX when
>> > you determine that all traffic classes are preemptible? What if less
>> > than 32 traffic classes are used by the netdev? The check will be
>> > bypassed, won't it?
>>
>> Good catch :-)
>>
Vladimir Oltean writes:
> On Fri, Jan 22, 2021 at 02:44:51PM -0800, Vinicius Costa Gomes wrote:
>> The tc subsystem sets which queues are marked as preemptible, it's the
>> role of ethtool to control more hardware specific parameters. These
>> parameters include:
&g
Vladimir Oltean writes:
> On Fri, Jan 22, 2021 at 02:44:47PM -0800, Vinicius Costa Gomes wrote:
>> +/* It's valid to enable frame preemption without any kind of
>> + * offloading being enabled, so keep it separated.
>> + */
>> +if
Hi,
Vladimir Oltean writes:
> On Fri, Jan 22, 2021 at 02:44:50PM -0800, Vinicius Costa Gomes wrote:
>> Avoid possible TX Hangs caused by using long Qbv cycles. In some
>> cases, using long cycles (more than 1 second) can cause transmissions
>> to be blocked for that time. A
tion there should be easier on the user.
Signed-off-by: Vinicius Costa Gomes
---
Documentation/networking/ethtool-netlink.rst | 38 +
include/linux/ethtool.h | 23 ++-
include/uapi/linux/ethtool_netlink.h | 17 +++
net/ethtool/Makefile |
1ms.
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet/intel/igc/igc_main.c | 4 ++--
drivers/net/ethernet/intel/igc/igc_tsn.c | 6 +++---
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/drivers/net/ethernet/intel/igc/igc_main.c
b/drivers/net/ethernet/intel/igc
it's
exposed via the ethtool API;
- mininum fragment size multiplier: expressed in usually in the form
of (1 + N)*64, this number indicates what's the size of the minimum
fragment that can be preempted.
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet/intel/igc/igc
To avoid polluting the users logs with register dumps, only dump the
adapter's registers if configured to do so.
If users want to enable HW status messages they can do:
$ ethtool -s IFACE msglvl hw on
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet/intel/igc/igc_dump.c | 3 +
dirty" state, and if necessary will request an adapter
reset, so "_reset" always run with a "clean" adapter.
The idea is to make the process easier to follow.
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet/intel/igc/igc_main.c | 21 ++--
drivers/net/ethernet/in
After the set of queues that are marked as preemptible are exposed to
the driver we can configure the hardware to enable the frame
preemption functionality.
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet/intel/igc/igc_main.c | 32 +++
1 file changed, 32
Signed-off-by: Vinicius Costa Gomes
---
include/linux/netdevice.h | 1 +
include/net/pkt_sched.h| 4
include/uapi/linux/pkt_sched.h | 1 +
net/sched/sch_taprio.c | 43 ++
4 files changed, 44 insertions(+), 5 deletions(-)
diff --git
do ./ethtool --set-frame-preemption $IFACE fp on min-frag-size 192
Cheers,
Vinicius Costa Gomes (8):
ethtool: Add support for configuring frame preemption
taprio: Add support for frame preemption offload
igc: Set the RX packet buffer size for TSN mode
igc: Only dump registers if configured t
In preparation for supporting frame preemption, when entering TSN mode
set the receive packet buffer to 16KB for the Express MAC, 16KB for
the Preemptible MAC and 2KB for the BMC, according to the datasheet
section 7.1.3.2.
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet/intel/igc
Jakub Kicinski writes:
> On Mon, 18 Jan 2021 16:40:26 -0800 Vinicius Costa Gomes wrote:
>> +NL_SET_ERR_MSG(extack, "Invalid value for add-frag-size");
>
> NL_SET_ERR_MSG_MOD
Will fix. Thanks.
Cheers,
--
Vinicius
Jakub Kicinski writes:
> On Mon, 18 Jan 2021 16:40:21 -0800 Vinicius Costa Gomes wrote:
>> + == ==
>> + ``ETHTOOL_A_CHANNELS_HEADER`` nested request header
>
> ETH
Jakub Kicinski writes:
> On Mon, 18 Jan 2021 16:40:22 -0800 Vinicius Costa Gomes wrote:
>> Adds a way to configure which traffic classes are marked as
>> preemptible and which are marked as express.
>>
>> Even if frame preemption is not a "real" offload, b
Hi Vladimir,
Vladimir Oltean writes:
> On Mon, Jan 18, 2021 at 04:40:21PM -0800, Vinicius Costa Gomes wrote:
>> +int ethnl_set_preempt(struct sk_buff *skb, struct genl_info *info)
>> +{
>> +struct ethnl_req_info req_info = {};
>> +struct nlattr **tb =
Signed-off-by: Vinicius Costa Gomes
---
include/linux/netdevice.h | 1 +
include/net/pkt_sched.h| 4
include/uapi/linux/pkt_sched.h | 1 +
net/sched/sch_taprio.c | 41 ++
4 files changed, 43 insertions(+), 4 deletions(-)
diff --git
After the set of queues that are marked as preemptible are exposed to
the driver we can configure the hardware to enable the frame
preemption functionality.
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet/intel/igc/igc_main.c | 32 +++
1 file changed, 32
dirty" state, and if necessary will request an adapter
reset, so "_reset" always run with a "clean" adapter.
The idea is to make the process easier to follow.
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet/intel/igc/igc_main.c | 21 ++--
drivers/net/ethernet/in
In preparation for supporting frame preemption, when entering TSN mode
set the receive packet buffer to 16KB for the Express MAC, 16KB for
the Preemptible MAC and 2KB for the BMC, according to the datasheet
section 7.1.3.2.
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet/intel/igc
it's
exposed via the ethtool API;
- mininum fragment size multiplier: expressed in usually in the form
of (1 + N)*64, this number indicates what's the size of the minimum
fragment that can be preempted.
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet/intel/igc/igc
To avoid polluting the users logs with register dumps, only dump the
adapter's registers if configured to do so.
If users want to enable HW status messages they can do:
$ ethtool -s IFACE msglvl hw on
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet/intel/igc/igc_dump.c | 3 +
1ms.
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet/intel/igc/igc_main.c | 4 ++--
drivers/net/ethernet/intel/igc/igc_tsn.c | 6 +++---
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/drivers/net/ethernet/intel/igc/igc_main.c
b/drivers/net/ethernet/intel/igc
tion there should be easier on the user.
Signed-off-by: Vinicius Costa Gomes
---
Documentation/networking/ethtool-netlink.rst | 38 +
include/linux/ethtool.h | 39 -
include/uapi/linux/ethtool_netlink.h | 17 +++
net/ethtool/Makefile |
be to enable frame preemption in
the device, via ethtool, and set the minimum fragment size to 2:
$ sudo ./ethtool --set-frame-preemption $IFACE fp on min-frag-size 2
Cheers,
Vinicius Costa Gomes (8):
ethtool: Add support for configuring frame preemption
taprio: Add support for frame preemption
nfiguring the taprio scheduler")
> Link:
> https://syzkaller.appspot.com/bug?id=f362872379bf8f0017fb667c1ab158f2d1e764ae
> Reported-by: syzbot+8971da381fb5a31f5...@syzkaller.appspotmail.com
> Signed-off-by: Davide Caratti
> ---
Acked-by: Vinicius Costa Gomes
Cheers,
--
Vinicius
Willem de Bruijn writes:
>> > If I understand correctly, you are trying to achieve a single delivery
>> > time.
>> > The need for two separate timestamps passed along is only because the
>> > kernel is unable to do the time base conversion.
>>
>> Yes, a correct point.
>>
>> >
>> > Else, ETF coul
Vladimir Oltean writes:
> On Mon, Dec 07, 2020 at 02:49:35PM -0800, Vinicius Costa Gomes wrote:
>> Jakub Kicinski writes:
>>
>> > On Tue, 1 Dec 2020 20:53:16 -0800 Vinicius Costa Gomes wrote:
>> >> $ tc qdisc replace dev $IFACE parent root hand
Jakub Kicinski writes:
> On Mon, 07 Dec 2020 14:11:48 -0800 Vinicius Costa Gomes wrote:
>> Jakub Kicinski writes:
>> >> + * @min_frag_size_mult: Minimum size for all non-final fragment size,
>> >> + * expressed in terms of X in '(1 + X)*64 + 4'
>&
Jakub Kicinski writes:
> On Tue, 1 Dec 2020 20:53:16 -0800 Vinicius Costa Gomes wrote:
>> $ tc qdisc replace dev $IFACE parent root handle 100 taprio \
>> num_tc 3 \
>> map 2 2 1 0 2 2 2 2 2 2 2 2 2 2 2 2 \
>> queues 1@0 1@1 2@2 \
>> base
Jakub Kicinski writes:
> On Tue, 1 Dec 2020 20:53:24 -0800 Vinicius Costa Gomes wrote:
>> Expose the Frame Preemption counters, so the number of
>> express/preemptible packets can be monitored by userspace.
>>
>> These registers are cleared when read, so the valu
Jakub Kicinski writes:
> On Tue, 1 Dec 2020 20:53:22 -0800 Vinicius Costa Gomes wrote:
>> The tc subsystem sets which queues are marked as preemptible, it's the
>> role of ethtool to control more hardware specific parameters. These
>> parameters include:
>>
>
Jakub Kicinski writes:
>> diff --git a/include/linux/ethtool.h b/include/linux/ethtool.h
>> index e3da25b51ae4..16d6ee29a6ac 100644
>> --- a/include/linux/ethtool.h
>> +++ b/include/linux/ethtool.h
>> @@ -263,6 +263,19 @@ struct ethtool_pause_stats {
>> u64 rx_pause_frames;
>> };
>>
>> +/
In preparation for supporting frame preemption, when entering TSN mode
set the receive packet buffer to 16KB for the Express MAC, 16KB for
the Preemptible MAC and 2KB for the BMC, according to the datasheet
section 7.1.3.2.
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet/intel/igc
it's
exposed via the ethtool API;
- mininum fragment size multiplier: expressed in usually in the form
of (1 + N)*64, this number indicates what's the size of the minimum
fragment that can be preempted.
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet/intel/igc/igc
dirty" state, and if necessary will request an adapter
reset, so "_reset" always run with a "clean" adapter.
The idea is to make the process easier to follow.
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet/intel/igc/igc_main.c | 21 ++--
drivers/net/ethernet/in
ully, easier to understand.
Signed-off-by: Vinicius Costa Gomes
---
include/linux/netdevice.h | 1 +
include/net/pkt_sched.h| 4
include/uapi/linux/pkt_sched.h | 1 +
net/sched/sch_taprio.c | 41 ++
4 files changed, 43 insertions(+), 4 del
1ms.
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet/intel/igc/igc_main.c | 4 ++--
drivers/net/ethernet/intel/igc/igc_tsn.c | 6 +++---
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/drivers/net/ethernet/intel/igc/igc_main.c
b/drivers/net/ethernet/intel/igc
Expose the Frame Preemption counters, so the number of
express/preemptible packets can be monitored by userspace.
These registers are cleared when read, so the value shown is the
number of events that happened since the last read.
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet
To avoid polluting the users logs with register dumps, only dump the
adapter's registers if configured to do so.
If users want to enable HW status messages they can do:
$ ethtool -s IFACE msglvl hw on
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet/intel/igc/igc_dump.c | 3 +
After the set of queues that are marked as preemptible are exposed to
the driver we can configure the hardware to enable the frame
preemption functionality.
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet/intel/igc/igc_main.c | 32 +++
1 file changed, 32
tion there should be easier on the user.
Signed-off-by: Vinicius Costa Gomes
---
include/linux/ethtool.h | 19
include/uapi/linux/ethtool_netlink.h | 17 +++
net/ethtool/Makefile | 2 +-
net/ethtool/netlink.c| 19
net/ethtool/netlink.h
uld be to enable frame preemption in
the device, via ethtool, and set the minimum fragment size to 2:
$ sudo ./ethtool --set-frame-preemption $IFACE fp on min-frag-size 2
Cheers,
Vinicius Costa Gomes (9):
ethtool: Add support for configuring frame preemption
taprio: Add support for frame pre
Hi Jakub,
Jakub Kicinski writes:
> On Tue, 17 Nov 2020 17:21:48 -0800 Vinicius Costa Gomes wrote:
>> > Also, what is the point of providing time measurements every 1
>> > millisecond?
>>
>> I sincerely have no idea. I had no power on how the hardware
Hi Richard,
Richard Cochran writes:
> On Wed, Nov 18, 2020 at 04:22:37PM -0800, Vinicius Costa Gomes wrote:
>
>> Talking with the hardware folks, they recommended using the periodic
>> method, the one shot method was implemented as a debug/evaluation aid.
>
> I
Hi Richard,
Richard Cochran writes:
> On Tue, Nov 17, 2020 at 05:21:48PM -0800, Vinicius Costa Gomes wrote:
>> Agreed that would be easiest/simplest. But what I have in hand seems to
>> not like it, i.e. I have an earlier series implementing this "one shot" way
>
Richard Cochran writes:
> On Mon, Nov 16, 2020 at 05:06:30PM -0800, Vinicius Costa Gomes wrote:
>> The PTM dialogs are a pair of messages: a Request from the endpoint (in
>> my case, the NIC) to the PCIe root (or switch), and a Response from the
>> other side (this messag
Hi Richard,
Richard Cochran writes:
> What is a PTM? Why does a PTM have dialogs? Can it talk?
>
> Forgive my total ignorance!
:-)
We are talking about PCIe PTM (Precise Time Measurement), basically it's
a PTP-like protocol running on the PCIe fabric.
The PTM dialogs are a pair of messages:
Hi Richard,
Richard Cochran writes:
> On Thu, Nov 12, 2020 at 03:46:12PM -0800, Vinicius Costa Gomes wrote:
>> I wanted it so using PCIe PTM was transparent to applications, so adding
>> another API wouldn't be my preference.
>>
>> That being said, having a
Miroslav Lichvar writes:
> Considering how the existing applications work, ideally the
> measurements would be performed on demand from the ioctl to minimize
> the delay. If that's not possible, maybe it would be better to provide
> the measurements on a descriptor at their own rate, which could
Jakub Kicinski writes:
>
> Pulled, thanks!
>
> Please double check the use of the spin lock in patch 3. Stats are
> updated in an atomic context when read from /proc, you probably need
> to convert that spin lock to _bh.
I just did some tests with lockdep enabled, reading from /proc/net/dev
in a
Hi,
Miroslav Lichvar writes:
> On Mon, Nov 09, 2020 at 10:10:19PM -0800, Vinicius Costa Gomes wrote:
>> i225 has support for PCIe PTM, which allows us to implement support
>> for the PTP_SYS_OFFSET_PRECISE ioctl(), implemented in the driver via
>> the getcrosststamp() func
Miroslav Lichvar writes:
> On Tue, Nov 10, 2020 at 11:06:07AM -0800, Vinicius Costa Gomes wrote:
>> Miroslav Lichvar writes:
>> > I suspect the estimate would be valid only when the NIC is connected
>> > directly to the PTM root (PCI root complex). Is it possible to
Miroslav Lichvar writes:
> On Mon, Nov 09, 2020 at 10:10:19PM -0800, Vinicius Costa Gomes wrote:
>> i225 has support for PCIe PTM, which allows us to implement support
>> for the PTP_SYS_OFFSET_PRECISE ioctl(), implemented in the driver via
>> the getcrosststamp() func
' to check if PTM is enabled or not.
This reverts commit ac6c26da29c12fa511c877c273ed5c939dc9e96c.
Acked-by: Bjorn Helgaas
Signed-off-by: Vinicius Costa Gomes
---
drivers/pci/pci.h | 3 ---
include/linux/pci.h | 7 +++
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/dr
WN_FREQ is true, but during tests it works even
when it returns false. Should that check be done?
Cheers,
Vinicius Costa Gomes (3):
Revert "PCI: Make pci_enable_ptm() private"
igc: Enable PCIe PTM
igc: Add support for PTP getcrosststamp()
drivers/net/ethernet/intel/igc/igc.h
In practice, enabling PTM also sets the enabled_ptm flag in the PCI
device, the flag will be used for detecting if PTM is enabled before
adding support for the SYSOFFSET_PRECISE ioctl() (which is added by
implementing the getcrosststamp() PTP function).
Signed-off-by: Vinicius Costa Gomes
rks even
when it returns false. Should that check be done?
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet/intel/igc/igc.h | 7 +
drivers/net/ethernet/intel/igc/igc_defines.h | 27 +++
drivers/net/ethernet/intel/igc/igc_main.c| 2 +
drivers/net/ethernet/intel/igc
Hi Murali,
Murali Karicheri writes:
> Hi Vinicius,
>
> On 8/17/20 6:30 PM, Vinicius Costa Gomes wrote:
>> Hi Murali,
>>
>> I was finally able to go back to working on this, and should have
>> something for review when net-next opens.
>>
> Do you ha
tion there should be easier on the user.
Signed-off-by: Vinicius Costa Gomes
---
include/linux/ethtool.h | 19
include/uapi/linux/ethtool_netlink.h | 17 +++
net/ethtool/Makefile | 2 +-
net/ethtool/netlink.c| 19
net/ethtool/netlink.h
he minimum fragment size to 2:
$ sudo ./ethtool --set-frame-preemption $IFACE fp on min-frag-size 2
Cheers,
Vinicius Costa Gomes (2):
ethtool: Add support for configuring frame preemption
taprio: Add support for frame preemption offload
include/linux/ethtool.h | 19
include/l
ully, easier to understand.
Signed-off-by: Vinicius Costa Gomes
---
include/linux/netdevice.h | 1 +
include/net/pkt_sched.h| 4
include/uapi/linux/pkt_sched.h | 1 +
net/sched/sch_taprio.c | 41 ++
4 files changed, 43 insertions(+), 4 del
Hi,
Eric Dumazet writes:
>
> Many factors in play here.
>
> 1) if you keep cpus busy enough, they tend to keep in their caches
> the data needed to serve your requests. In your case, time taken to
> process an ICMP packet can be very different depending on how hot
> cpu caches are.
>
> 2) Idle c
Hi Erez,
Erez Geva writes:
> Add support for using PTP clock with
> Traffic control Earliest TxTime First (ETF) Qdisc.
>
> Why do we need ETF to use PTP clock?
> Current ETF requires to synchronization the system clock
> to the PTP Hardware clock (PHC) we want to send through.
> But there are
Hi,
Bjorn Helgaas writes:
> On Fri, Sep 25, 2020 at 04:28:32PM -0700, Vinicius Costa Gomes wrote:
>> Make pci_enable_ptm() accessible from the drivers.
>>
>> Even if PTM still works on the platform I am using without calling
>> this this function, it might be possib
used when
X86_FEATURE_TSC_KNOWN_FREQ is true, but during tests it works even
when it returns false. Should that check be done?
Cheers,
Vinicius Costa Gomes (3):
Revert "PCI: Make pci_enable_ptm() private"
igc: Enable PCIe PTM
igc: Add support for PTP getcrosststamp()
drivers/ne
rks even
when it returns false. Should that check be done?
Signed-off-by: Vinicius Costa Gomes
---
drivers/net/ethernet/intel/igc/igc.h | 7 +
drivers/net/ethernet/intel/igc/igc_defines.h | 22 +++
drivers/net/ethernet/intel/igc/igc_main.c| 2 +
drivers/net/ethernet/intel/igc
In practice, enabling PTM also sets the enabled_ptm flag in the PCI
device, the flag will be used for detecting if PTM is enabled before
adding support for the SYSOFFSET_PRECISE ioctl() (which is added by
implementing the getcrosststamp() PTP function).
Signed-off-by: Vinicius Costa Gomes
dev' to check if PTM is enabled or not.
This reverts commit ac6c26da29c12fa511c877c273ed5c939dc9e96c.
Signed-off-by: Vinicius Costa Gomes
---
drivers/pci/pci.h | 3 ---
include/linux/pci.h | 7 +++
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/drivers/pci/pci.h
read_phy_reg(hw, 0x2F5B, &phy_saved_data);
> + e_dbg("Reading PHY register 0x2F5B failed: %d\n", ret_val);
>
Adding this debug statement seems unrelated.
> /* Disabled the PHY transmitter */
> e1000_write_phy_reg(hw, 0x2F5B, 0x0003);
Apart from this,
Reviewed-by: Vinicius Costa Gomes
--
Vinicius
rent
link speed wouldn't allow any packet to be transmitted.
Reported-by: syzbot+8267241609ae8c23b...@syzkaller.appspotmail.com
Fixes: 5a781ccbd19e ("tc: Add support for configuring the taprio scheduler")
Signed-off-by: Vinicius Costa Gomes
---
net/sched/sch_taprio.c | 28 ++
z 20200507
>> syz repro: https://syzkaller.appspot.com/x/repro.syz?x=157c7aa590
>> C reproducer: https://syzkaller.appspot.com/x/repro.c?x=13c92ef990
>>
>> The issue was bisected to:
>>
>> commit 5a781ccbd19e4664babcbe4b4ead7aa2b9283d22
>>
Hi Kurt,
Kurt Kanzenbach writes:
> I think so. As Vladimir pointed out, the driver should setup an identity
> mapping which I already did by default.
>
> Can you point me your patch?
Just sent it for consideration:
http://patchwork.ozlabs.org/project/netdev/patch/20200825174404.2727633-1-vinic
Hi Kurt,
Kurt Kanzenbach writes:
> On Mon Aug 24 2020, Vinicius Costa Gomes wrote:
>> Hi,
>>
>> Kurt Kanzenbach writes:
>>
> [snip]
>>> + /* Setup timer for schedule switch: The IP core only allows to set a
>>> +* cycle start timer 8
traffic classes to queues when applying the offload to the driver.
Fixes: 9c66d1564676 ("taprio: Add support for hardware offloading")
Signed-off-by: Vinicius Costa Gomes
---
net/sched/sch_taprio.c | 30 --
1 file changed, 24 insertions(+), 6 deletions(-)
diff --
Vladimir Oltean writes:
> Hi Vinicius,
>
> On Mon, Aug 24, 2020 at 04:45:50PM -0700, Vinicius Costa Gomes wrote:
>> Kurt Kanzenbach writes:
>> >
>> > With TAPRIO traffic classes and the mapping to queues can be
>> > configured. The switch can als
Hi,
Kurt Kanzenbach writes:
> The switch has support for the 802.1Qbv Time Aware Shaper (TAS). Traffic
> schedules may be configured individually on each front port. Each port has
> eight
> egress queues. The traffic is mapped to a traffic class respectively via the
> PCP
> field of a VLAN tag
Hi Kurt,
Kurt Kanzenbach writes:
>>> +static void hellcreek_setup_tc_mapping(struct hellcreek *hellcreek,
>>> + struct net_device *netdev)
>>> +{
>>> + int i, j;
>>> +
>>> + /* Setup mapping between traffic classes and port queues. */
>>> + for (i = 0; i <
Hi Murali,
I was finally able to go back to working on this, and should have
something for review when net-next opens.
Cheers,
Murali Karicheri writes:
> Hello Vinicius,
>
> Wondering what is your plan to add the support in ethtool to configure
> IET frame preemption? Waiting for the next re
Dmitry Vyukov writes:
>> >
>> > Also are we talking about CAP_NET_ADMIN in a user ns as well
>> > (effectively nobody)?
>>
>> Just checked, we are talking about CAP_NET_ADMIN in user namespace as
>> well.
>
> OK, so this is not root/admin, this is just any user.
Yeah, will fix this.
Thanks,
--
1 - 100 of 425 matches
Mail list logo