On 04/05/2016 01:25 PM, Michal Hocko wrote:
From: Michal Hocko <[email protected]>
try_to_compact_pages can currently return COMPACT_SKIPPED even when the
compaction is defered for some zone just because zone DMA is skipped
in 99% of cases due to watermark checks. This makes COMPACT_DEFERRED
basically unusable for the page allocator as a feedback mechanism.
Make sure we distinguish those two states properly and switch their
ordering in the enum. This would mean that the COMPACT_SKIPPED will be
returned only when all eligible zones are skipped.
This shouldn't introduce any functional change.
Hmm, really? __alloc_pages_direct_compact() does distinguish
COMPACT_DEFERRED, and sets *deferred compaction, so ultimately this is
some change for THP allocations?
Also there's no mention of COMPACT_INACTIVE in the changelog (which
indeed isn't functional change, but might surprise somebody).
Signed-off-by: Michal Hocko <[email protected]>
Patch itself is OK.
Acked-by: Vlastimil Babka <[email protected]>