mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-01-23 20:19:57 +07:00
7ab0e50ad0
After enabling CONFIG_TRACE_ENUM_MAP_FILE (which will soon be renamed to CONFIG_TRACE_EVAL_MAP_FILE), I am able to examine the enums that have been evaluated: # cat /sys/kernel/debug/tracing/enum_map (which will soon be renamed to eval_map) And it showed some interesting results: [..] ZONE_MOVABLE 3 (oom) ZONE_NORMAL 2 (oom) ZONE_DMA32 1 (oom) ZONE_DMA 0 (oom) 3 3 (oom) 2 2 (oom) 1 1 (oom) COMPACT_PRIO_ASYNC 2 (oom) COMPACT_PRIO_SYNC_LIGHT 1 (oom) COMPACT_PRIO_SYNC_FULL 0 (oom) [..] ZONE_DMA 0 (vmscan) 3 3 (vmscan) 2 2 (vmscan) 1 1 (vmscan) COMPACT_PRIO_ASYNC 2 (vmscan) [..] ZONE_DMA 0 (kmem) 3 3 (kmem) 2 2 (kmem) 1 1 (kmem) COMPACT_PRIO_ASYNC 2 (kmem) [..] ZONE_DMA 0 (compaction) 3 3 (compaction) 2 2 (compaction) 1 1 (compaction) COMPACT_PRIO_ASYNC 2 (compaction) [..] The name within the parenthesis are the trace systems that the enum/eval maps are associated with. When there's a number evaluated to another number, that tells me that the TRACE_DEFINE_ENUM() was used on a #define and not an enum. As #defines get converted normally, they are not needed to be evaluated. Each of the above trace systems with the number to number evaluation included the file include/trace/events/mmflags.h which has: /* High-level compaction status feedback */ #define COMPACTION_FAILED 1 #define COMPACTION_WITHDRAWN 2 #define COMPACTION_PROGRESS 3 [..] #define COMPACTION_FEEDBACK \ EM(COMPACTION_FAILED, "failed") \ EM(COMPACTION_WITHDRAWN, "withdrawn") \ EMe(COMPACTION_PROGRESS, "progress") Which is still needed for the __print_symbolic() usage in the trace_event. But it is not needed to be evaluated. Removing the evaluation part removes the unnecessary evaluations of numbers to numbers. Link: http://lkml.kernel.org/r/20170615074944.7be9a647@gandalf.local.home Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org> Cc: Michal Hocko <mhocko@kernel.org> Cc: Vlastimil Babka <vbabka@suse.cz> Cc: David Rientjes <rientjes@google.com> Cc: Johannes Weiner <hannes@cmpxchg.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> |
||
---|---|---|
.. | ||
9p.h | ||
afs.h | ||
alarmtimer.h | ||
asoc.h | ||
bcache.h | ||
block.h | ||
bpf.h | ||
btrfs.h | ||
cgroup.h | ||
clk.h | ||
cma.h | ||
compaction.h | ||
context_tracking.h | ||
cpuhp.h | ||
devlink.h | ||
dma_fence.h | ||
ext4.h | ||
f2fs.h | ||
fib6.h | ||
fib.h | ||
filelock.h | ||
filemap.h | ||
fs_dax.h | ||
fsi_master_gpio.h | ||
fsi.h | ||
gpio.h | ||
host1x.h | ||
hswadsp.h | ||
huge_memory.h | ||
i2c.h | ||
intel_ish.h | ||
intel-sst.h | ||
iommu.h | ||
ipi.h | ||
irq.h | ||
jbd2.h | ||
kmem.h | ||
kvm.h | ||
libata.h | ||
lock.h | ||
mce.h | ||
mdio.h | ||
migrate.h | ||
mmc.h | ||
mmflags.h | ||
module.h | ||
napi.h | ||
net.h | ||
nilfs2.h | ||
nmi.h | ||
oom.h | ||
page_isolation.h | ||
page_ref.h | ||
pagemap.h | ||
percpu.h | ||
power_cpu_migrate.h | ||
power.h | ||
printk.h | ||
random.h | ||
rcu.h | ||
regulator.h | ||
rpm.h | ||
rxrpc.h | ||
sched.h | ||
scsi.h | ||
signal.h | ||
skb.h | ||
sock.h | ||
spi.h | ||
spmi.h | ||
sunrpc.h | ||
sunvnet.h | ||
swiotlb.h | ||
syscalls.h | ||
target.h | ||
task.h | ||
thermal_power_allocator.h | ||
thermal.h | ||
thp.h | ||
timer.h | ||
tlb.h | ||
udp.h | ||
ufs.h | ||
v4l2.h | ||
vb2.h | ||
vmscan.h | ||
vsock_virtio_transport_common.h | ||
wbt.h | ||
workqueue.h | ||
writeback.h | ||
xdp.h | ||
xen.h |