Re: Patch "mm, vmstat: make quiet_vmstat lighter" has been added to the 4.4-stable tree

From: Daniel Wagner
Date: Wed Dec 11 2019 - 10:54:08 EST


Hi,

On 2019-12-11 15:46, Greg KH wrote:
On Wed, Dec 11, 2019 at 10:32:49PM +0800, zhangyi (F) wrote:
We find a performance degradation under lmbench af_unix[1] test case after
mergeing this patch on my x86 qemu 4.4 machine. The test result is basically
stable for each teses.

Host machine: CPU: Intel(R) Xeon(R) CPU E5-2690 v3
CPU(s): 48
MEM: 193047 MB

Guest machine: CPU: QEMU Virtual CPU version 2.5+
CPU(s): 8
MEM: 26065 MB

Before this patch:
[root@localhost ~]# lmbench-3.0-a9/bin/x86_64-linux-gnu/lat_unix -P 1
AF_UNIX sock stream latency: 133.7073 microseconds

After this patch:
[root@localhost ~]# lmbench-3.0-a9/bin/x86_64-linux-gnu/lat_unix -P 1
AF_UNIX sock stream latency: 156.4722 microseconds

If we set task to a constant cpu, the degradation does not appear.

Before this patch:
[root@localhost ~]# lmbench-3.0-a9/bin/x86_64-linux-gnu/lat_unix -P 1
AF_UNIX sock stream latency: 17.9296 microseconds

After this patch:
[root@localhost ~]# lmbench-3.0-a9/bin/x86_64-linux-gnu/lat_unix -P 1
AF_UNIX sock stream latency: 17.7500 microseconds

We also test it on the aarch64 hi1215 machine with 8 cpu cores.

Before this patch:
[root@localhost ~]# ./lat_unix -P 1
AF_UNIX sock stream latency: 30.7 microseconds

After this patch:
[root@localhost ~]# ./lat_unix -P 1
AF_UNIX sock stream latency: 37.5 microseconds

Accessories included my reproduce config for x86 qemu. Any thoughts?

This fixes a bug, as reported by Daniel Wagner. So it's probably better
to have a stable system instead of a broken one, right? :)

Daniel can provide more information if needed.

IIRC, this patch got necessary because bdf3c006b9a2 ("vmstat: make vmstat_updater deferrable again and shut down on idle") was added to stable. Without it v4.4-rt is not working at all.

> What about when you run your tests on a 4.9 or newer kernel that
> already has this integrated?

That said, I was going through all changes in vmstat.c upstream and we backported almost all changes to v4.4 at that point. So if this is a really giving you a performance hit, I suspect you would see it upstream as well.

Thanks,
Daniel