[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CANxWus9qVhpAr+XJbqmgprkCKFQYkAFHbduPQhU=824YVrq+uw@mail.gmail.com>
Date: Sat, 28 Mar 2020 14:04:19 +0100
From: Václav Zindulka <vaclav.zindulka@...pnet.cz>
To: Cong Wang <xiyou.wangcong@...il.com>
Cc: Linux Kernel Network Developers <netdev@...r.kernel.org>
Subject: Re: iproute2: tc deletion freezes whole server
On Fri, Mar 27, 2020 at 11:35 AM Václav Zindulka
<vaclav.zindulka@...pnet.cz> wrote:
>
> Your assumption is not totally wrong. I have added some printks into
> fq_codel_reset() function. Final passes during deletion are processed
> in the if condition you added in the patch - 13706. Yet the rest and
> most of them go through regular routine - 1768074. 1024 is value of i
> in for loop.
Ok, so I went through the kernel source a little bit. I've found out
that dev_deactivate is called only for interfaces that are up. My bad
I forgot that after deactivation of my daemon ifb interfaces are set
to down. Nevertheless after setting it up and doing perf record on
ifb0 numbers are much lower anyway. 13706 exits through your condition
added in patch. 41118 regular exits. I've uploaded perf report here
https://github.com/zvalcav/tc-kernel/tree/master/20200328
I've also tried this on metallic interface on different server which
has a link on it. There were 39651 patch exits. And 286412 regular
exits. It is more than ifb interface, yet it is way less than sfp+
interface and behaves correctly.
BTW sorry for previous missformated mail. I was trying to put it
inside perf report for better visibility.
Powered by blists - more mailing lists