2018-10-15 06:39:36

by Christophe Leroy

[permalink] [raw]
Subject: [PATCH] powerpc/book3s64: fix dump_linuxpagetables "present" flag

Since commit bd0dbb73e013 ("powerpc/mm/books3s: Add new pte bit to
mark pte temporarily invalid."), _PAGE_PRESENT doesn't mean exactly
that a page is present. A page is also considered preset when
_PAGE_INVALID is set.

This patch changes the meaning of "present" and adds a status "valid"
associated to the _PAGE_PRESENT flag.

Fixes: bd0dbb73e013 ("powerpc/mm/books3s: Add new pte bit to mark pte temporarily invalid.")
Signed-off-by: Christophe Leroy <[email protected]>
---
arch/powerpc/mm/dump_linuxpagetables-book3s64.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/arch/powerpc/mm/dump_linuxpagetables-book3s64.c b/arch/powerpc/mm/dump_linuxpagetables-book3s64.c
index a637e612b205..ed6fcf78256e 100644
--- a/arch/powerpc/mm/dump_linuxpagetables-book3s64.c
+++ b/arch/powerpc/mm/dump_linuxpagetables-book3s64.c
@@ -38,8 +38,13 @@ static const struct flag_info flag_array[] = {
}, {
.mask = _PAGE_PRESENT,
.val = _PAGE_PRESENT,
- .set = "present",
- .clear = " ",
+ .set = "valid",
+ .clear = " ",
+ }, {
+ .mask = _PAGE_PRESENT | _PAGE_INVALID,
+ .val = 0,
+ .set = " ",
+ .clear = "present",
}, {
.mask = H_PAGE_HASHPTE,
.val = H_PAGE_HASHPTE,
--
2.13.3



2018-10-15 12:56:12

by Aneesh Kumar K.V

[permalink] [raw]
Subject: Re: [PATCH] powerpc/book3s64: fix dump_linuxpagetables "present" flag

On 10/15/18 12:07 PM, Christophe Leroy wrote:
> Since commit bd0dbb73e013 ("powerpc/mm/books3s: Add new pte bit to
> mark pte temporarily invalid."), _PAGE_PRESENT doesn't mean exactly
> that a page is present. A page is also considered preset when
> _PAGE_INVALID is set.
>
> This patch changes the meaning of "present" and adds a status "valid"
> associated to the _PAGE_PRESENT flag.
>

Reviewed-by: Aneesh Kumar K.V <[email protected]>

> Fixes: bd0dbb73e013 ("powerpc/mm/books3s: Add new pte bit to mark pte temporarily invalid.")
> Signed-off-by: Christophe Leroy <[email protected]>
> ---
> arch/powerpc/mm/dump_linuxpagetables-book3s64.c | 9 +++++++--
> 1 file changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/arch/powerpc/mm/dump_linuxpagetables-book3s64.c b/arch/powerpc/mm/dump_linuxpagetables-book3s64.c
> index a637e612b205..ed6fcf78256e 100644
> --- a/arch/powerpc/mm/dump_linuxpagetables-book3s64.c
> +++ b/arch/powerpc/mm/dump_linuxpagetables-book3s64.c
> @@ -38,8 +38,13 @@ static const struct flag_info flag_array[] = {
> }, {
> .mask = _PAGE_PRESENT,
> .val = _PAGE_PRESENT,
> - .set = "present",
> - .clear = " ",
> + .set = "valid",
> + .clear = " ",
> + }, {
> + .mask = _PAGE_PRESENT | _PAGE_INVALID,
> + .val = 0,
> + .set = " ",
> + .clear = "present",
> }, {
> .mask = H_PAGE_HASHPTE,
> .val = H_PAGE_HASHPTE,
>


2018-10-22 09:40:14

by Michael Ellerman

[permalink] [raw]
Subject: Re: powerpc/book3s64: fix dump_linuxpagetables "present" flag

On Mon, 2018-10-15 at 06:37:41 UTC, Christophe Leroy wrote:
> Since commit bd0dbb73e013 ("powerpc/mm/books3s: Add new pte bit to
> mark pte temporarily invalid."), _PAGE_PRESENT doesn't mean exactly
> that a page is present. A page is also considered preset when
> _PAGE_INVALID is set.
>
> This patch changes the meaning of "present" and adds a status "valid"
> associated to the _PAGE_PRESENT flag.
>
> Fixes: bd0dbb73e013 ("powerpc/mm/books3s: Add new pte bit to mark pte temporarily invalid.")
> Signed-off-by: Christophe Leroy <[email protected]>
> Reviewed-by: Aneesh Kumar K.V <[email protected]>

Applied to powerpc next, thanks.

https://git.kernel.org/powerpc/c/3ff38e1874863827374b02b4f31c73

cheers