Re: [RFC PATCH 03/10] mm/compaction: always update cached pfn

Vlastimil Babka
2015-06-25T09:08:45Z

I can has commit log? :)

On 06/25/2015 02:45 AM, Joonsoo Kim wrote:
> Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
> ---
> mm/compaction.c | 11 +++++++++++
> 1 file changed, 11 insertions(+)
>
> diff --git a/mm/compaction.c b/mm/compaction.c
> index 9c5d43c..2d8e211 100644
> --- a/mm/compaction.c
> +++ b/mm/compaction.c
> @@ -510,6 +510,10 @@ isolate_fail:
> if (locked)
> spin_unlock_irqrestore(&cc->zone->lock, flags);
>
> + if (blockpfn == end_pfn &&
> + blockpfn > cc->zone->compact_cached_free_pfn)
> + cc->zone->compact_cached_free_pfn = blockpfn;
> +
> update_pageblock_skip(cc, valid_page, total_isolated,
> *start_pfn, end_pfn, blockpfn, false);
>
> @@ -811,6 +815,13 @@ isolate_success:
> if (locked)
> spin_unlock_irqrestore(&zone->lru_lock, flags);
>
> + if (low_pfn == end_pfn && cc->mode != MIGRATE_ASYNC) {
> + int sync = cc->mode != MIGRATE_ASYNC;
> +
> + if (low_pfn > zone->compact_cached_migrate_pfn[sync])
> + zone->compact_cached_migrate_pfn[sync] = low_pfn;
> + }
> +
> update_pageblock_skip(cc, valid_page, nr_isolated,
> start_pfn, end_pfn, low_pfn, true);
>
>