lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1516810271.2476.43.camel@redhat.com>
Date:   Wed, 24 Jan 2018 17:11:11 +0100
From:   Paolo Abeni <pabeni@...hat.com>
To:     David Miller <davem@...emloft.net>
Cc:     torvalds@...ux-foundation.org, frederic@...nel.org,
        linux-kernel@...r.kernel.org, alexander.levin@...izon.com,
        peterz@...radead.org, mchehab@...pensource.com,
        hannes@...essinduktion.org, paulmck@...ux.vnet.ibm.com,
        wanpeng.li@...mail.com, dima@...sta.com, tglx@...utronix.de,
        akpm@...ux-foundation.org, rrendec@...sta.com, mingo@...nel.org,
        sgruszka@...hat.com, riel@...hat.com, edumazet@...gle.com,
        nks.gnu@...il.com
Subject: Re: [RFC PATCH 0/4] softirq: Per vector threading v3

On Wed, 2018-01-24 at 10:05 -0500, David Miller wrote:
> From: Paolo Abeni <pabeni@...hat.com>
> Date: Wed, 24 Jan 2018 15:54:05 +0100
> 
> > Niklas suggested a possible relation with CONFIG_IRQ_TIME_ACCOUNTING=y
> > and indeed he was right.
> > 
> > The patched kernel under test had CONFIG_IRQ_TIME_ACCOUNTING set, and
> > very little CPU time was accounted to the kworker:
> > 
> > [2125 is the relevant kworker's pid]
> > grep sum_exec_runtime /proc/2125/sched; sleep 10; grep sum_exec_runtime /proc/2125/sched
> > se.sum_exec_runtime                          :         13408.239286
> > se.sum_exec_runtime                          :         13456.907197
> > 
> > despite such process was processing a lot of packets and basically
> > burning a CPU.
> 
> So IRQ_TIME_ACCOUNTING makes the scheduler think that the worker
> threads are using nearly no task time at all.

Yes, this is the behavior I observe in the test. But a quick look at
the scheduler code - I'm not very familiar with it - let me think this
is not the intended/expected behaviour for the ksoftirqd (and after
this series, for the kworker serving the softirq).

> The existing ksoftirqd code should hit the same problem, right?

I just tried the vanilla kernel with CONFIG_IRQ_TIME_ACCOUNTING=y, and
in the same test scenario, I observe the 'good' behavior: the user
space process and ksoftirqd share almost fairly the relevant CPU, and
the CPU time spend in softirq processing is accounted to ksoftirqd.

Cheers,

Paolo

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ