lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Mon, 10 Oct 2022 11:24:13 +0200
From:   Claudio Imbrenda <imbrenda@...ux.ibm.com>
To:     xu.xin.sc@...il.com
Cc:     akpm@...ux-foundation.org, ran.xiaokai@....com.cn,
        yang.yang29@....com.cn, jiang.xuexin@....com.cn, david@...hat.com,
        linux-mm@...ck.org, linux-kernel@...r.kernel.org,
        xu xin <xu.xin16@....com.cn>
Subject: Re: [PATCH v2 0/5] ksm: support tracking KSM-placed zero-pages

On Sun,  9 Oct 2022 02:18:16 +0000
xu.xin.sc@...il.com wrote:

> From: xu xin <xu.xin16@....com.cn>
> 
> Before enabling use_zero_pages by setting /sys/kernel/mm/ksm/
> use_zero_pages to 1, pages_sharing of KSM is basically accurate. But
> when enabling use_zero_pages, all empty pages that are merged with
> kernel zero page are not counted in pages_sharing or pages_shared.
> That is because these empty pages are merged with zero-pages then no
> longer managed by KSM, which leads to two issues at least:
> 
> 1) MADV_UNMERGEABLE and other ways to trigger unsharing will *not*
>    unshare the shared zeropage as placed by KSM (which is against the 
>    MADV_UNMERGEABLE documentation at least); see the link:
>    https://lore.kernel.org/lkml/4a3daba6-18f9-d252-697c-197f65578c44@redhat.com/
> 
> 2) we cannot know how many pages are zero pages placed by KSM when
>    enabling use_zero_pages, which leads to KSM not being transparent
>    with all actual merged pages by KSM.
> 
> With the patch series, we can unshare zero-pages(KSM-placed) accurately
> and count ksm zero pages.

why are you trying so hard to fix something that is not broken?

can't you just avoid using use_zero_pages?

why is it so important to know how many zero pages have been merged?
and why do you want to unmerge them?

the important thing is that the sysadmin knows how much memory would be
needed to do the unmerge, and that information is already there.

> 
> ---
> v1->v2:
> 
> [patch 4/5] fix build warning, mm/ksm.c:550, misleading indentation; statement 
> 'rmap_item->mm->ksm_zero_pages_sharing--;' is not part of the previous 'if'.
> 
> 
> 
> *** BLURB HERE ***
> 
> xu xin (5):
>   ksm: abstract the function try_to_get_old_rmap_item
>   ksm: support unsharing zero pages placed by KSM
>   ksm: count all zero pages placed by KSM
>   ksm: count zero pages for each process
>   ksm: add zero_pages_sharing documentation
> 
>  Documentation/admin-guide/mm/ksm.rst |  10 +-
>  fs/proc/base.c                       |   1 +
>  include/linux/mm_types.h             |   7 +-
>  mm/ksm.c                             | 177 +++++++++++++++++++++------
>  4 files changed, 157 insertions(+), 38 deletions(-)
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ