Re: [x86/modules] f2c65fb322: will-it-scale.per_process_ops -2.9% regression

From: Dave Hansen
Date: Fri Jul 19 2019 - 13:05:05 EST


On 7/18/19 10:59 AM, Nadav Amit wrote:
> I donât understand how this patch has any impact on this workload.
>
> I ran it and set a function tracer for any function that is impacted by this
> patch:
>
> # cd /sys/kernel/debug/tracing
> # echo text_poke_early > set_ftrace_filter
> # echo module_alloc >> set_ftrace_filter
> # echo bpf_int_jit_compile >> set_ftrace_filter
> # tail -f trace
>
> Nothing came up. Can you please check if you see any of them invoked on your
> setup? Perhaps you have some bpf filters being installed, although even then
> this is a one-time (small) overhead for each process invocation.

I think the direct map's structure changed. I noticed the following the
0day data:

> 7298e24f904224fa f2c65fb3221adc6b73b0549fc7b
> ---------------- ---------------------------
> fail:runs %reproduction fail:runs
> | | |
> :4 50% 2:4 dmesg.WARNING:at#for_ip_interrupt_entry/0x
> %stddev %change %stddev
> \ | \
> 10541056 Â 7% +12.1% 11820032 meminfo.DirectMap2> 2.909e+08 -12.0% 2.56e+08 Â 2% perf-stat.i.iTLB-load-misses
> 1876 +10.4% 2071 Â 2% perf-stat.i.instructions-per-iTLB-miss
> 1872 +10.4% 2068 Â 2% perf-stat.overall.instructions-per-iTLB-miss
> 2.899e+08 -12.0% 2.551e+08 Â 2% perf-stat.ps.iTLB-load-misses

So something with the direct map changed as did iTLB miss behavior.