[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAM0EoMn=bx-AMR0RbFmSj8MjWTxLtB_xo5419AW18paZ9r1wDQ@mail.gmail.com>
Date: Sun, 18 Jan 2026 10:07:37 -0500
From: Jamal Hadi Salim <jhs@...atatu.com>
To: Cong Wang <xiyou.wangcong@...il.com>, Jakub Kicinski <kuba@...nel.org>,
Paolo Abeni <pabeni@...hat.com>, Jiri Pirko <jiri@...nulli.us>, David Miller <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>, Victor Nogueira <victor@...atatu.com>,
Simon Horman <horms@...nel.org>, Andrew Lunn <andrew+netdev@...n.ch>,
William Liu <will@...lsroot.io>, Savy <savy@...t3mfailure.io>
Cc: netdev@...r.kernel.org
Subject: Re: [Patch net v8 0/9] netem: Fix skb duplication logic and prevent
infinite loops
On Sun, Jan 18, 2026 at 1:16 AM Cong Wang <xiyou.wangcong@...il.com> wrote:
>
> This patchset fixes the infinite loops due to duplication in netem, the
> real root cause of this problem is enqueuing to the root qdisc, which is
> now changed to enqueuing to the same qdisc. This is more reasonable,
> more intuitive from users' perspective, less error-prone and more elegant
> from kernel developers' perspective.
>
> Please see more details in patch 4/9 which contains two pages of detailed
> explanation including why it is safe and better.
>
> This reverts the offending commits from William which clearly broke
> mq+netem use cases, as reported by two users.
>
> All the TC test cases pass with this patchset.
>
These patches should not be considered for any review because they are
not following the rules that are set for the community. The rules,
which are well documented, state that you must cc all stakeholders.
When someone does this _on purpose_ such as Cong, some accountability
needs to be imposed. I would say totally ignoring these patches is one
option. Otherwise anyone can just throw a tantrum and decide those
rules dont apply to them. Either that or we modify the rules to state
it is ok to do this..
cheers,
jamal
> ---
> v8: Fixed test 7c3b
>
> v7: Fixed a typo in subject
> Fixed a missing qdisc_tree_reduce_backlog()
> Added a new selftest for backlog validation
>
> v6: Dropped the init_user_ns check patch
> Reordered the qfq patch
> Rebased to the latest -net branch
>
> v5: Reverted the offending commits
> Added a init_user_ns check (4/9)
> Rebased to the latest -net branch
>
> v4: Added a fix for qfq qdisc (2/6)
> Updated 1/6 patch description
> Added a patch to update the enqueue reentrant behaviour tests
>
> v3: Fixed the root cause of enqueuing to root
> Switched back to netem_skb_cb safely
> Added two more test cases
>
> v2: Fixed a typo
> Improved tdc selftest to check sent bytes
>
> Cong Wang (9):
> net_sched: Check the return value of qfq_choose_next_agg()
> Revert "net/sched: Restrict conditions for adding duplicating netems
> to qdisc tree"
> Revert "selftests/tc-testing: Add tests for restrictions on netem
> duplication"
> net_sched: Implement the right netem duplication behavior
> selftests/tc-testing: Add a nested netem duplicate test
> selftests/tc-testing: Add a test case for prio with netem duplicate
> selftests/tc-testing: Add a test case for mq with netem duplicate
> selftests/tc-testing: Update test cases with netem duplicate
> selftests/tc-testing: Add a test case for HTB with netem
>
> net/sched/sch_netem.c | 67 +++-----
> net/sched/sch_qfq.c | 2 +
> .../tc-testing/tc-tests/infra/qdiscs.json | 144 ++++++++++++++----
> .../tc-testing/tc-tests/qdiscs/netem.json | 90 +++--------
> 4 files changed, 153 insertions(+), 150 deletions(-)
>
> --
> 2.34.1
>
>
Powered by blists - more mailing lists