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, 25 Jan 2016 14:51:16 -0800
From:	Andrew Morton <akpm@...ux-foundation.org>
To:	Michael Holzheu <holzheu@...ux.vnet.ibm.com>
Cc:	Martin Schwidefsky <schwidefsky@...ibm.com>,
	Heiko Carstens <heiko.carstens@...ibm.com>,
	Gerald Schaefer <gerald.schaefer@...ibm.com>,
	linux-mm@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] numa: fix /proc/<pid>/numa_maps for hugetlbfs on s390

On Mon, 25 Jan 2016 17:30:42 +0100 Michael Holzheu <holzheu@...ux.vnet.ibm.com> wrote:

> When working with hugetlbfs ptes (which are actually pmds) is not
> valid to directly use pte functions like pte_present() because the
> hardware bit layout of pmds and ptes can be different. This is the
> case on s390. Therefore we have to convert the hugetlbfs ptes first
> into a valid pte encoding with huge_ptep_get().
> 
> Currently the /proc/<pid>/numa_maps code uses hugetlbfs ptes without
> huge_ptep_get(). On s390 this leads to the following two problems:
> 
> 1) The pte_present() function returns false (instead of true) for
>    PROT_NONE hugetlb ptes. Therefore PROT_NONE vmas are missing
>    completely in the "numa_maps" output.
> 
> 2) The pte_dirty() function always returns false for all hugetlb ptes.
>    Therefore these pages are reported as "mapped=xxx" instead of
>    "dirty=xxx".
> 
> Therefore use huge_ptep_get() to correctly convert the hugetlb ptes.

I'm aiming this at 4.5 only.  Please let me know if you think that a
-stable backport is warranted.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ