On Thu, Nov 02, 2017 at 02:09:57AM +0000, zhouxianrong wrote: > <zhouxianr...@huawei.com> writes: > > > From: zhouxianrong <zhouxianr...@huawei.com> > > > > origanlly reuse_swap_page requires that the sum of page's mapcount and > > swapcount less than or equal to one. > > in this case we can reuse this page and avoid COW currently. > > > > now reuse_swap_page requires only that page's mapcount less than or > > equal to one and the page is not dirty in swap cache. in this case we > > do not care its swap count. > > > > the page without dirty in swap cache means that it has been written to > > swap device successfully for reclaim before and then read again on a > > swap fault. in this case the page can be reused even though its swap > > count is greater than one and postpone the COW on other successive > > accesses to the swap cache page later rather than now. > > > > i did this patch test in kernel 4.4.23 with arm64 and none huge > > memory. it work fine. > > Why do you need this? You saved copying one page from memory to memory > (COW) now, at the cost of reading a page from disk to memory later? > > yes, accessing later does not always happen, there is probability for it, so > postpone COW now.
So, it's trade-off. It means we need some number with some scenarios to prove it's better than as-is. It would help to drive reviewers/maintainer. Thanks.