aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/linux/compaction.h26
1 files changed, 16 insertions, 10 deletions
diff --git a/include/linux/compaction.h b/include/linux/compaction.h
index 9b37f9d3f7a8..ff39fa0a1ede 100644
--- a/include/linux/compaction.h
+++ b/include/linux/compaction.h
@@ -4,6 +4,8 @@
4/* Return values for compact_zone() and try_to_compact_pages() */ 4/* Return values for compact_zone() and try_to_compact_pages() */
5/* When adding new states, please adjust include/trace/events/compaction.h */ 5/* When adding new states, please adjust include/trace/events/compaction.h */
6enum compact_result { 6enum compact_result {
7 /* For more detailed tracepoint output - internal to compaction */
8 COMPACT_NOT_SUITABLE_ZONE,
7 /* 9 /*
8 * compaction didn't start as it was not possible or direct reclaim 10 * compaction didn't start as it was not possible or direct reclaim
9 * was more suitable 11 * was more suitable
@@ -11,30 +13,34 @@ enum compact_result {
11 COMPACT_SKIPPED, 13 COMPACT_SKIPPED,
12 /* compaction didn't start as it was deferred due to past failures */ 14 /* compaction didn't start as it was deferred due to past failures */
13 COMPACT_DEFERRED, 15 COMPACT_DEFERRED,
16
14 /* compaction not active last round */ 17 /* compaction not active last round */
15 COMPACT_INACTIVE = COMPACT_DEFERRED, 18 COMPACT_INACTIVE = COMPACT_DEFERRED,
16 19
20 /* For more detailed tracepoint output - internal to compaction */
21 COMPACT_NO_SUITABLE_PAGE,
17 /* compaction should continue to another pageblock */ 22 /* compaction should continue to another pageblock */
18 COMPACT_CONTINUE, 23 COMPACT_CONTINUE,
24
19 /* 25 /*
20 * direct compaction partially compacted a zone and there are suitable 26 * The full zone was compacted scanned but wasn't successfull to compact
21 * pages 27 * suitable pages.
22 */ 28 */
23 COMPACT_PARTIAL, 29 COMPACT_COMPLETE,
24 /* 30 /*
25 * direct compaction has scanned part of the zone but wasn't successfull 31 * direct compaction has scanned part of the zone but wasn't successfull
26 * to compact suitable pages. 32 * to compact suitable pages.
27 */ 33 */
28 COMPACT_PARTIAL_SKIPPED, 34 COMPACT_PARTIAL_SKIPPED,
35
36 /* compaction terminated prematurely due to lock contentions */
37 COMPACT_CONTENDED,
38
29 /* 39 /*
30 * The full zone was compacted scanned but wasn't successfull to compact 40 * direct compaction partially compacted a zone and there might be
31 * suitable pages. 41 * suitable pages
32 */ 42 */
33 COMPACT_COMPLETE, 43 COMPACT_PARTIAL,
34 /* For more detailed tracepoint output */
35 COMPACT_NO_SUITABLE_PAGE,
36 COMPACT_NOT_SUITABLE_ZONE,
37 COMPACT_CONTENDED,
38}; 44};
39 45
40/* Used to signal whether compaction detected need_sched() or lock contention */ 46/* Used to signal whether compaction detected need_sched() or lock contention */