Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1666637
| From | Steven Rostedt <rostedt@goodmis.org> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH] oom, trace: Remove ENUM evaluation of COMPACTION_FEEDBACK |
| Date | 2017-06-15 12:50 +0200 |
| Message-ID | <tSAvE-1ng-9@gated-at.bofh.it> (permalink) |
| Organization | linux.* mail to news gateway |
From: Steven Rostedt (VMware) <rostedt@goodmis.org>
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.
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
---
diff --git a/include/trace/events/mmflags.h
b/include/trace/events/mmflags.h index 304ff94..10e3663 100644
--- a/include/trace/events/mmflags.h
+++ b/include/trace/events/mmflags.h
@@ -257,7 +257,7 @@
IF_HAVE_VM_SOFTDIRTY(VM_SOFTDIRTY, "softdirty"
) \ COMPACTION_STATUS
COMPACTION_PRIORITY
-COMPACTION_FEEDBACK
+/* COMPACTION_FEEDBACK are defines not enums. Not needed here. */
ZONE_TYPE
LRU_NAMES
Back to linux.kernel | Previous | Next — Next in thread | Find similar | Unroll thread
[PATCH] oom, trace: Remove ENUM evaluation of COMPACTION_FEEDBACK Steven Rostedt <rostedt@goodmis.org> - 2017-06-15 12:50 +0200
Re: [PATCH] oom, trace: Remove ENUM evaluation of COMPACTION_FEEDBACK Michal Hocko <mhocko@kernel.org> - 2017-06-15 13:00 +0200
Re: [PATCH] oom, trace: Remove ENUM evaluation of COMPACTION_FEEDBACK Steven Rostedt <rostedt@goodmis.org> - 2017-06-15 14:00 +0200
csiph-web