On Mon, Apr 27, 2015 at 09:08:50AM +0100, Mel Gorman wrote:
On Mon, Apr 27, 2015 at 04:23:39PM +0900, Joonsoo Kim wrote:
When we steal whole pageblock, we don't need to break highest order
freepage. Perhaps, there is small order freepage so we can use it.
The reason why the largest block is taken is to reduce the probability
there will be another fallback event in the near future. Early on, there
were a lot of tests conducted to measure the number of external fragmenting
events and take steps to reduce them. Stealing the largest highest order
freepage was one of those steps.
Hello, Mel.
Purpose of this patch is not "stop steal highest order freepage".
Currently, in case of that we steal all freepage including highest
order freepage in certain pageblock, we break highest order freepage and
return it even if we have low order freepage that we immediately steal.
For example,
Pageblock A has 5 freepage (4 * order 0, 1 * order 3) and
we try to steal all freepage on pageblock A.
Withouth this patch, we move all freepage to requested migratetype
buddy list and break order 3 freepage. Leftover is like as following.
(5 * order 0, 1 * order 1, 1* order 2)
With this patch, (3 * order 0, 1 * order 3) remains.
I think that this is better than before because we still have high order
page. Isn't it?
Thanks.
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxxx For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>