diff mbox series

[net] net/sched: taprio: Fix init procedure

Message ID 20210730165321.1179952-1-yannick.vignon@oss.nxp.com (mailing list archive)
State Accepted
Commit ebca25ead0711729e0aeeec45062e7ac4df3e158
Delegated to: Netdev Maintainers
Headers show
Series [net] net/sched: taprio: Fix init procedure | expand

Checks

Context Check Description
netdev/cover_letter success Link
netdev/fixes_present success Link
netdev/patch_count success Link
netdev/tree_selection success Clearly marked for net
netdev/subject_prefix success Link
netdev/cc_maintainers success CCed 8 of 8 maintainers
netdev/source_inline success Was 0 now: 0
netdev/verify_signedoff success Link
netdev/module_param success Was 0 now: 0
netdev/build_32bit success Errors and warnings before: 2 this patch: 2
netdev/kdoc success Errors and warnings before: 0 this patch: 0
netdev/verify_fixes success Link
netdev/checkpatch success total: 0 errors, 0 warnings, 0 checks, 8 lines checked
netdev/build_allmodconfig_warn success Errors and warnings before: 2 this patch: 2
netdev/header_inline success Link

Commit Message

Yannick Vignon July 30, 2021, 4:53 p.m. UTC
From: Yannick Vignon <yannick.vignon@nxp.com>

Commit 13511704f8d759 ("net: taprio offload: enforce qdisc to netdev queue mapping")
resulted in duplicate entries in the qdisc hash.
While this did not impact the overall operation of the qdisc and taprio
code paths, it did result in an infinite loop when dumping the qdisc
properties, at least on one target (NXP LS1028 ARDB).
Removing the duplicate call to qdisc_hash_add() solves the problem.

Signed-off-by: Yannick Vignon <yannick.vignon@nxp.com>
Fixes: 13511704f8d759 ("net: taprio offload: enforce qdisc to netdev queue mapping")
---
 net/sched/sch_taprio.c | 2 --
 1 file changed, 2 deletions(-)

Comments

patchwork-bot+netdevbpf@kernel.org Aug. 2, 2021, 10:50 a.m. UTC | #1
Hello:

This patch was applied to netdev/net.git (refs/heads/master):

On Fri, 30 Jul 2021 18:53:21 +0200 you wrote:
> From: Yannick Vignon <yannick.vignon@nxp.com>
> 
> Commit 13511704f8d759 ("net: taprio offload: enforce qdisc to netdev queue mapping")
> resulted in duplicate entries in the qdisc hash.
> While this did not impact the overall operation of the qdisc and taprio
> code paths, it did result in an infinite loop when dumping the qdisc
> properties, at least on one target (NXP LS1028 ARDB).
> Removing the duplicate call to qdisc_hash_add() solves the problem.
> 
> [...]

Here is the summary with links:
  - [net] net/sched: taprio: Fix init procedure
    https://git.kernel.org/netdev/net/c/ebca25ead071

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
diff mbox series

Patch

diff --git a/net/sched/sch_taprio.c b/net/sched/sch_taprio.c
index 07b30d0601d7..9c79374457a0 100644
--- a/net/sched/sch_taprio.c
+++ b/net/sched/sch_taprio.c
@@ -1739,8 +1739,6 @@  static void taprio_attach(struct Qdisc *sch)
 		if (FULL_OFFLOAD_IS_ENABLED(q->flags)) {
 			qdisc->flags |= TCQ_F_ONETXQUEUE | TCQ_F_NOPARENT;
 			old = dev_graft_qdisc(qdisc->dev_queue, qdisc);
-			if (ntx < dev->real_num_tx_queues)
-				qdisc_hash_add(qdisc, false);
 		} else {
 			old = dev_graft_qdisc(qdisc->dev_queue, sch);
 			qdisc_refcount_inc(sch);