All of lore.kernel.org
 help / color / mirror / Atom feed
From: Wanpeng Li <liwanp@linux.vnet.ibm.com>
To: Andrea Arcangeli <aarcange@redhat.com>
Cc: linux-mm@kvack.org, Mel Gorman <mgorman@suse.de>,
	Rik van Riel <riel@redhat.com>, Hugh Dickins <hughd@google.com>,
	Richard Davies <richard@arachsys.com>,
	Shaohua Li <shli@kernel.org>, Rafael Aquini <aquini@redhat.com>,
	Hush Bensen <hush.bensen@gmail.com>
Subject: Re: [PATCH 04/10] mm: zone_reclaim: compaction: reset before initializing the scan cursors
Date: Wed, 17 Jul 2013 07:31:01 +0800	[thread overview]
Message-ID: <20130716233101.GB30164@hacker.(null)> (raw)
In-Reply-To: <1373982114-19774-5-git-send-email-aarcange@redhat.com>

On Tue, Jul 16, 2013 at 03:41:48PM +0200, Andrea Arcangeli wrote:
>Correct the location where we reset the scan cursors, otherwise the
>first iteration of compaction (after restarting it) will only do a
>partial scan.
>
>Signed-off-by: Andrea Arcangeli <aarcange@redhat.com>
>Reviewed-by: Rik van Riel <riel@redhat.com>
>Acked-by: Mel Gorman <mgorman@suse.de>
>Acked-by: Rafael Aquini <aquini@redhat.com>

Reviewed-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>

>---
> mm/compaction.c | 19 +++++++++++--------
> 1 file changed, 11 insertions(+), 8 deletions(-)
>
>diff --git a/mm/compaction.c b/mm/compaction.c
>index 525baaa..afaf692 100644
>--- a/mm/compaction.c
>+++ b/mm/compaction.c
>@@ -934,6 +934,17 @@ static int compact_zone(struct zone *zone, struct compact_control *cc)
> 	}
>
> 	/*
>+	 * Clear pageblock skip if there were failures recently and
>+	 * compaction is about to be retried after being
>+	 * deferred. kswapd does not do this reset and it will wait
>+	 * direct compaction to do so either when the cursor meets
>+	 * after one compaction pass is complete or if compaction is
>+	 * restarted after being deferred for a while.
>+	 */
>+	if ((compaction_restarting(zone, cc->order)) && !current_is_kswapd())
>+		__reset_isolation_suitable(zone);
>+
>+	/*
> 	 * Setup to move all movable pages to the end of the zone. Used cached
> 	 * information on where the scanners should start but check that it
> 	 * is initialised by ensuring the values are within zone boundaries.
>@@ -949,14 +960,6 @@ static int compact_zone(struct zone *zone, struct compact_control *cc)
> 		zone->compact_cached_migrate_pfn = cc->migrate_pfn;
> 	}
>
>-	/*
>-	 * Clear pageblock skip if there were failures recently and compaction
>-	 * is about to be retried after being deferred. kswapd does not do
>-	 * this reset as it'll reset the cached information when going to sleep.
>-	 */
>-	if (compaction_restarting(zone, cc->order) && !current_is_kswapd())
>-		__reset_isolation_suitable(zone);
>-
> 	migrate_prep_local();
>
> 	while ((ret = compact_finished(zone, cc)) == COMPACT_CONTINUE) {
>
>--
>To unsubscribe, send a message with 'unsubscribe linux-mm' in
>the body to majordomo@kvack.org.  For more info on Linux MM,
>see: http://www.linux-mm.org/ .
>Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  parent reply	other threads:[~2013-07-16 23:31 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-16 13:41 [PATCH 00/10] adding compaction to zone_reclaim_mode > 0 #2 Andrea Arcangeli
2013-07-16 13:41 ` [PATCH 01/10] mm: zone_reclaim: remove ZONE_RECLAIM_LOCKED Andrea Arcangeli
2013-07-16 23:45   ` Wanpeng Li
2013-07-16 23:45   ` Wanpeng Li
2013-07-16 13:41 ` [PATCH 02/10] mm: zone_reclaim: compaction: scan all memory with /proc/sys/vm/compact_memory Andrea Arcangeli
2013-07-16 23:29   ` Wanpeng Li
2013-07-16 23:29   ` Wanpeng Li
2013-07-16 13:41 ` [PATCH 03/10] mm: zone_reclaim: compaction: don't depend on kswapd to invoke reset_isolation_suitable Andrea Arcangeli
2013-07-16 23:32   ` Wanpeng Li
2013-07-16 23:32   ` Wanpeng Li
2013-07-16 13:41 ` [PATCH 04/10] mm: zone_reclaim: compaction: reset before initializing the scan cursors Andrea Arcangeli
2013-07-16 23:31   ` Wanpeng Li
2013-07-16 23:31   ` Wanpeng Li [this message]
2013-07-16 13:41 ` [PATCH 05/10] mm: compaction: don't require high order pages below min wmark Andrea Arcangeli
2013-07-17  8:13   ` Hush Bensen
2013-07-17 17:15     ` Andrea Arcangeli
2013-07-16 13:41 ` [PATCH 06/10] mm: zone_reclaim: compaction: increase the high order pages in the watermarks Andrea Arcangeli
2013-07-16 13:41 ` [PATCH 07/10] mm: zone_reclaim: compaction: export compact_zone_order() Andrea Arcangeli
2013-07-16 13:41 ` [PATCH 08/10] mm: zone_reclaim: only run zone_reclaim in the fast path Andrea Arcangeli
2013-07-16 13:41 ` [PATCH 09/10] mm: zone_reclaim: after a successful zone_reclaim check the min watermark Andrea Arcangeli
2013-07-16 13:41 ` [PATCH 10/10] mm: zone_reclaim: compaction: add compaction to zone_reclaim_mode Andrea Arcangeli
2013-07-17  8:20   ` Hush Bensen
2013-07-17 17:20     ` Andrea Arcangeli

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='20130716233101.GB30164@hacker.(null)' \
    --to=liwanp@linux.vnet.ibm.com \
    --cc=aarcange@redhat.com \
    --cc=aquini@redhat.com \
    --cc=hughd@google.com \
    --cc=hush.bensen@gmail.com \
    --cc=linux-mm@kvack.org \
    --cc=mgorman@suse.de \
    --cc=richard@arachsys.com \
    --cc=riel@redhat.com \
    --cc=shli@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.