From mboxrd@z Thu Jan 1 00:00:00 1970 From: Cong Wang Subject: Re: Problem with the kernel 4.15 - cutting the band (tc) Date: Fri, 6 Apr 2018 16:50:44 -0700 Message-ID: References: <42a29f8a-beb3-84da-9129-fbda7ef81be4@hostcenter.eu> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Cc: David Miller , Linux Kernel Network Developers To: Linus Torvalds Return-path: Received: from mail-pf0-f169.google.com ([209.85.192.169]:36809 "EHLO mail-pf0-f169.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751488AbeDFXvF (ORCPT ); Fri, 6 Apr 2018 19:51:05 -0400 Received: by mail-pf0-f169.google.com with SMTP id g14so1825082pfh.3 for ; Fri, 06 Apr 2018 16:51:05 -0700 (PDT) In-Reply-To: Sender: netdev-owner@vger.kernel.org List-ID: On Fri, Apr 6, 2018 at 2:56 PM, Linus Torvalds wrote: > Forwarding a report about what looks like a regression between 4.14 and 4.15. > > New ENOSPC issue? I don't even knew where to start guessing where to look. > > Help me, Davem-Wan Kenobi, you are my only hope. > > (But adding netdev just in case somebody else goes "That's obviously Xyz") > > Linus > > ---------- Forwarded message ---------- > From: Marcin Kabiesz > Date: Thu, Apr 5, 2018 at 10:38 AM > Subject: Problem with the kernel 4.15 - cutting the band (tc) > > > Hello, > I have a problem with bandwidth cutting on kernel 4.15. On the version > up to 4.15, i.e. 4.14, this problem does not occur. > > uname -a: Linux router 4.14.15 #1 SMP x86_64 Intel Xeon E3-1230 v6 > command to reproduce: > > tc qdisc add dev ifb0 root handle 1: htb r2q 2 > tc class add dev ifb0 parent 1: classid 1:1 htb rate 10gbit ceil > 10gbit quantum 16000 > tc filter add dev ifb0 parent 1: prio 5 handle 1: protocol all u32 divisor 256 > tc filter add dev ifb0 protocol all parent 1: prio 5 u32 ht 800:: > match ip dst 0.0.0.0/0 hashkey mask 0x000000ff at 16 link 1: > tc filter add dev ifb0 parent 1:0 handle ::1 protocol all prio 5 u32 > ht 1:2c: match ip dst 192.168.3.44/32 flowid 1:2 > tc filter del dev ifb0 parent 1:0 handle 1:2c:1 prio 5 u32 > tc filter add dev ifb0 parent 1:0 handle ::1 protocol all prio 5 u32 > ht 1:2c: match ip dst 192.168.3.44/32 flowid 1:2 > tc filter del dev ifb0 parent 1:0 handle 1:2c:1 prio 5 u32 > > This ok, no error/warnings and dmesg log. > > uname -a: Linux router 4.15.8 #1 SMP x86_64 Intel Xeon E3-1230 v6 (or > 4.15.14 this same effect) > command to reproduce: > > tc qdisc add dev ifb0 root handle 1: htb r2q 2 > tc class add dev ifb0 parent 1: classid 1:1 htb rate 10gbit ceil > 10gbit quantum 16000 > tc filter add dev ifb0 parent 1: prio 5 handle 1: protocol all u32 divisor 256 > tc filter add dev ifb0 protocol all parent 1: prio 5 u32 ht 800:: > match ip dst 0.0.0.0/0 hashkey mask 0x000000ff at 16 link 1: > tc filter add dev ifb0 parent 1:0 handle ::1 protocol all prio 5 u32 > ht 1:2c: match ip dst 192.168.3.44/32 flowid 1:2 > tc filter del dev ifb0 parent 1:0 handle 1:2c:1 prio 5 u32 > tc filter add dev ifb0 parent 1:0 handle ::1 protocol all prio 5 u32 > ht 1:2c: match ip dst 192.168.3.44/32 flowid 1:2 > RTNETLINK answers: No space left on device > We have an error talking to the kernel > > This not ok, on error/warnings and no dmesg log. We forgot to call idr_remove() when deleting u32 key... I am cooking a fix now. Thanks!