Messages in this thread | | | Date | Tue, 7 Mar 2023 19:53:13 +0100 | From | Claudio Imbrenda <> | Subject | Re: [PATCH v6 6/6] selftest: add testing unsharing and counting ksm zero page |
| |
On Fri, 10 Feb 2023 09:21:57 +0800 (CST) <yang.yang29@zte.com.cn> wrote:
> From: xu xin <xu.xin16@zte.com.cn> > > Add a function test_unmerge_zero_page() to test the functionality on > unsharing and counting ksm-placed zero pages and counting of this patch > series. > > test_unmerge_zero_page() actually contains three subjct test objects: > 1) whether the count of ksm zero page can react correctly to cow > (copy on write); > 2) whether the count of ksm zero page can react correctly to unmerge; > 3) whether ksm zero pages are really unmerged. > > Signed-off-by: xu xin <xu.xin16@zte.com.cn> > Cc: Claudio Imbrenda <imbrenda@linux.ibm.com> > Cc: David Hildenbrand <david@redhat.com> > Cc: Xuexin Jiang <jiang.xuexin@zte.com.cn> > Reviewed-by: Xiaokai Ran <ran.xiaokai@zte.com.cn> > Reviewed-by: Yang Yang <yang.yang29@zte.com.cn>
[...]
> +static int unmerge_zero_page(char *start, unsigned long size) > +{ > + int ret; > + > + ret = madvise(start, size, MADV_UNMERGEABLE); > + if (ret) { > + ksft_test_result_fail("MADV_UNMERGEABLE failed\n"); > + return ret; > + } > + > + /* > + * Wait for two full scans such that any possible unmerging of zero > + * pages happened. Why? Because the unmerge action of zero pages is not
please remove "Why? Because"
> + * done in the context of madvise(), but in the context of > + * unshare_zero_pages() of the ksmd thread. > + */ > + return wait_two_full_scans(); > +} > + > static char *mmap_and_merge_range(char val, unsigned long size) > { > char *map;
[...]
| |