diff options
| -rw-r--r-- | include/linux/compaction.h | 26 |
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 */ |
| 6 | enum compact_result { | 6 | enum 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 */ |
