[PATCH net-next v6 0/3] net/sched: sch_fq_pie: add per-flow class statistics

Hemendra M. Naik posted 3 patches 1 week ago
There is a newer version of this series
include/uapi/linux/pkt_sched.h                | 20 ++++-
net/sched/sch_fq_pie.c                        | 86 ++++++++++++++++++-
.../tc-testing/tc-tests/qdiscs/fq_pie.json    | 27 ++++++
3 files changed, 130 insertions(+), 3 deletions(-)
[PATCH net-next v6 0/3] net/sched: sch_fq_pie: add per-flow class statistics
Posted by Hemendra M. Naik 1 week ago
FQ-PIE runs an independent PIE controller per flow but exposes no
per-flow statistics. This series wires up fq_pie_class_ops to expose
per-flow AQM state (prob, delay, deficit, avg_dq_rate) via
'tc -s class show', following a similar pattern as FQ-CoDel.

This patch series is accompanied by a companion iproute2 patch series that
can be found at:
https://lore.kernel.org/netdev/20260902040221.83734-1-hemendranaik@gmail.com/

---
Changelog:

v6:
- Address Sashiko review comments:
  - Revert the fq_pie flows range to [1..65536]. 
  - Also drop the accompanying selftest 83be change.
  - Compute the per-flow delay with div_u64() on the full 64-bit
    nanosecond value.
  - Widen avg_dq_rate to u64 before scaling it by PSCHED_TICKS_PER_SEC.
  - Document the 36 to 64 byte xstats growth in the patch 1 commit message.
  - Fix selftest 83c0. The ping payload exceeded the TBF burst so no
    packet ever reached fq_pie, and the missing -W left the run waiting
    out ping's default timeout.

v5: https://lore.kernel.org/netdev/20260902035231.81866-1-hemendranaik@gmail.com/
- Addressed Sashiko review comments:
 - Omitted .tcf_block / .bind_tcf / .unbind_tcf from cl_ops (statistics
   only being exported; filter attach to fq_pie is now disabled).
 - Dropped empty tc_fq_pie_xqd_stats placeholder; class_stats is a direct
   struct member.
 - Limited flows to [1..65535] so per-flow class handles fit in a 16-bit
   TC minor.
 - Rewrote selftest 83c0 with TBF + fq_pie, ping traffic, and
   matchCount 1 on per-flow stats output.
 - Updated selftest 83be for the new flows limit.
 - Dropped the tools/include UAPI mirror changes from patch 3/3.

v4: https://lore.kernel.org/netdev/20260727164056.106203-1-hemendranaik@gmail.com/
- Fixed unaligned commit message; moved typo fixes to another patch.

v3: https://lore.kernel.org/netdev/20260630183702.170798-1-hemendranaik@gmail.com/
- No changes since v2.
- Resent after the previous submission was deferred due to the
  net-next tree closing during review.
- Updated corresponding iproute2 patch in response to review comments;
  kernel patches unchanged.

v2: https://lore.kernel.org/netdev/20260614125000.6058-1-hemendranaik@gmail.com/
- Addressed ABI backward compatibility issue for tc_fq_pie_xstats.

v1: https://lore.kernel.org/netdev/20260531125314.22492-1-hemendranaik@gmail.com/
- Initial submission

Hemendra M. Naik (3):
  net/sched: sch_fq_pie: add per-flow statistics via class ops
  selftests: tc-testing: add fq_pie per-flow class stats test
  net/sched: pie: correct tc_pie_xstats field documentation

 include/uapi/linux/pkt_sched.h                | 20 ++++-
 net/sched/sch_fq_pie.c                        | 86 ++++++++++++++++++-
 .../tc-testing/tc-tests/qdiscs/fq_pie.json    | 27 ++++++
 3 files changed, 130 insertions(+), 3 deletions(-)

-- 
2.34.1
Re: [PATCH net-next v6 0/3] net/sched: sch_fq_pie: add per-flow class statistics
Posted by Jakub Kicinski 6 days, 1 hour ago
On Fri, 18 Sep 2026 02:12:22 +0530 Hemendra M. Naik wrote:
> This patch series is accompanied by a companion iproute2 patch series that
> can be found at:
> https://lore.kernel.org/netdev/20260902040221.83734-1-hemendranaik@gmail.com/

Does not apply any more. Also can you put it on a branch on github to
make it easier to pull please ? 

Please rebase and repost both the kernel and the iproute2.
Re: [PATCH net-next v6 0/3] net/sched: sch_fq_pie: add per-flow class statistics
Posted by Hemendra M. Naik 5 days, 18 hours ago
Hi Jakub,

We've posted the new patches for kernel (v7) and iproute2 (v6) 
after rebasing.

The mailing list threads can be tracked here:
- Kernel v7: https://lore.kernel.org/netdev/20260919060125.38063-1-hemendranaik@gmail.com/
- iproute2 v6: https://lore.kernel.org/netdev/20260919061254.39678-1-hemendranaik@gmail.com/

As requested, we have also posted the latest 
patches on GitHub which can be found here:

- https://github.com/H-N41K/linux-net-next/tree/fq_pie_class_stats/
- https://github.com/H-N41K/iproute2-next/tree/fq_pie_class_stats/

Thanks,
Hemendra
Re: [PATCH net-next v6 0/3] net/sched: sch_fq_pie: add per-flow class statistics
Posted by Jakub Kicinski 1 day, 23 hours ago
On Sat, 19 Sep 2026 11:56:13 +0530 Hemendra M. Naik wrote:
> - https://github.com/H-N41K/iproute2-next/tree/fq_pie_class_stats/

Thanks, please vendor in the headers on this branch so we can add 
it in the CI and it will just build as is. LMK when ready.
Re: [PATCH net-next v6 0/3] net/sched: sch_fq_pie: add per-flow class statistics
Posted by Hemendra M. Naik 1 day, 20 hours ago
Hi Jakub,

We have vendored the temporary UAPI header changes into the GitHub 
development branch (https://github.com/H-N41K/iproute2-next/tree/fq_pie_class_stats/)
as requested, so it should now build standalone in your CI pipeline. 

Please note that this header sync commit is not present in the official 
iproute2 patch submitted to the mailing list 
(https://lore.kernel.org/netdev/20260922211139.38570-1-hemendranaik@gmail.com/). 
It was added to the GitHub branch strictly for validation and testing purposes.

Regards,
Hemendra
Re: [PATCH net-next v6 0/3] net/sched: sch_fq_pie: add per-flow class statistics
Posted by Jakub Kicinski 21 hours ago
On Wed, 23 Sep 2026 09:31:36 +0530 Hemendra M. Naik wrote:
> Hi Jakub,
> 
> We have vendored the temporary UAPI header changes into the GitHub 
> development branch (https://github.com/H-N41K/iproute2-next/tree/fq_pie_class_stats/)
> as requested, so it should now build standalone in your CI pipeline. 
> 
> Please note that this header sync commit is not present in the official 
> iproute2 patch submitted to the mailing list 
> (https://lore.kernel.org/netdev/20260922211139.38570-1-hemendranaik@gmail.com/). 
> It was added to the GitHub branch strictly for validation and testing purposes.

Thanks!

Victor, could you pull this into tdc as well?
Re: [PATCH net-next v6 0/3] net/sched: sch_fq_pie: add per-flow class statistics
Posted by Victor Nogueira 13 hours ago
On Wed, Sep 23, 2026 at 11:53 PM Jakub Kicinski <kuba@kernel.org> wrote:
>
> On Wed, 23 Sep 2026 09:31:36 +0530 Hemendra M. Naik wrote:
> > Hi Jakub,
> >
> > We have vendored the temporary UAPI header changes into the GitHub
> > development branch (https://github.com/H-N41K/iproute2-next/tree/fq_pie_class_stats/)
> > as requested, so it should now build standalone in your CI pipeline.
> >
> > Please note that this header sync commit is not present in the official
> > iproute2 patch submitted to the mailing list
> > (https://lore.kernel.org/netdev/20260922211139.38570-1-hemendranaik@gmail.com/).
> > It was added to the GitHub branch strictly for validation and testing purposes.
>
> Thanks!
>
> Victor, could you pull this into tdc as well?

Done, it's in tdc.

cheers,
Victor
Re: [PATCH net-next v6 0/3] net/sched: sch_fq_pie: add per-flow class statistics
Posted by Jakub Kicinski 9 hours ago
On Thu, 24 Sep 2026 08:35:34 -0300 Victor Nogueira wrote:
> On Wed, Sep 23, 2026 at 11:53 PM Jakub Kicinski <kuba@kernel.org> wrote:
> >
> > On Wed, 23 Sep 2026 09:31:36 +0530 Hemendra M. Naik wrote:  
> > > Hi Jakub,
> > >
> > > We have vendored the temporary UAPI header changes into the GitHub
> > > development branch (https://github.com/H-N41K/iproute2-next/tree/fq_pie_class_stats/)
> > > as requested, so it should now build standalone in your CI pipeline.
> > >
> > > Please note that this header sync commit is not present in the official
> > > iproute2 patch submitted to the mailing list
> > > (https://lore.kernel.org/netdev/20260922211139.38570-1-hemendranaik@gmail.com/).
> > > It was added to the GitHub branch strictly for validation and testing purposes.  
> >
> > Thanks!
> >
> > Victor, could you pull this into tdc as well?  
> 
> Done, it's in tdc.

Thanks!

https://lore.kernel.org/all/20260922205924.32173-3-hemendranaik@gmail.com/

will return in net-next-2026-09-24--18-00