[PATCH 0/1] pgo: Fix allocate_node() handling of non-vmlinux nodes

From: Jarmo Tiitto
Date: Tue Jun 01 2021 - 21:02:22 EST


Currently allocate_node() will reserve nodes even if *p
doesn't point into __llvm_prf_data_start - __llvm_prf_data_end
range.

This is wrong:

Any instrumented modules that are not part of vmlinux
(built-in) will "steal" available nodes away from vmlinux.
This can result in exhaustion of nodes for vmlinux
and less accurate profile data.

Either way, any profiling data generated by loaded modules,
if any, is unusable from vmlinux.profraw.
So just filtter them out.

Jarmo Tiitto (1):
pgo: Fix allocate_node() handling of non-vmlinux nodes.

kernel/pgo/instrument.c | 4 ++++
1 file changed, 4 insertions(+)

--
2.31.1