* Re: [PATCH] MIPS: check return value of pgtable_pmd_page_ctor
2021-07-21 9:30 ` [PATCH] " Huang Pei
@ 2021-07-24 23:05 ` Joshua Kinard
2021-08-05 9:46 ` Thomas Bogendoerfer
1 sibling, 0 replies; 4+ messages in thread
From: Joshua Kinard @ 2021-07-24 23:05 UTC (permalink / raw)
To: Huang Pei, Thomas Bogendoerfer, ambrosehua
Cc: Bibo Mao, linux-mips, Jiaxun Yang, Paul Burton, Li Xuefeng,
Yang Tiezhu, Gao Juxin, Huacai Chen, Jinyang He
On 7/21/2021 05:30, Huang Pei wrote:
> +. According to Documentation/vm/split_page_table_lock, handle failure
> of pgtable_pmd_page_ctor
>
> +. Use GFP_KERNEL_ACCOUNT instead of GFP_KERNEL|__GFP_ACCOUNT
>
> +. Adjust coding style
>
> Fixes: ed914d48b6a1 ("MIPS: add PMD table accounting into MIPS')
> Reported-by: Joshua Kinard <kumba@gentoo.org>
> Signed-off-by: Huang Pei <huangpei@loongson.cn>
> ---
> arch/mips/include/asm/pgalloc.h | 17 +++++++++++------
> 1 file changed, 11 insertions(+), 6 deletions(-)
>
> diff --git a/arch/mips/include/asm/pgalloc.h b/arch/mips/include/asm/pgalloc.h
> index d0cf997b4ba8..139b4050259f 100644
> --- a/arch/mips/include/asm/pgalloc.h
> +++ b/arch/mips/include/asm/pgalloc.h
> @@ -59,15 +59,20 @@ do { \
>
> static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address)
> {
> - pmd_t *pmd = NULL;
> + pmd_t *pmd;
> struct page *pg;
>
> - pg = alloc_pages(GFP_KERNEL | __GFP_ACCOUNT, PMD_ORDER);
> - if (pg) {
> - pgtable_pmd_page_ctor(pg);
> - pmd = (pmd_t *)page_address(pg);
> - pmd_init((unsigned long)pmd, (unsigned long)invalid_pte_table);
> + pg = alloc_pages(GFP_KERNEL_ACCOUNT, PMD_ORDER);
> + if (!pg)
> + return NULL;
> +
> + if (!pgtable_pmd_page_ctor(pg)) {
> + __free_pages(pg, PMD_ORDER);
> + return NULL;
> }
> +
> + pmd = (pmd_t *)page_address(pg);
> + pmd_init((unsigned long)pmd, (unsigned long)invalid_pte_table);
> return pmd;
> }
>
>
Reviewed-by: Joshua Kinard <kumba@gentoo.org>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] MIPS: check return value of pgtable_pmd_page_ctor
2021-07-21 9:30 ` [PATCH] " Huang Pei
2021-07-24 23:05 ` Joshua Kinard
@ 2021-08-05 9:46 ` Thomas Bogendoerfer
1 sibling, 0 replies; 4+ messages in thread
From: Thomas Bogendoerfer @ 2021-08-05 9:46 UTC (permalink / raw)
To: Huang Pei
Cc: ambrosehua, Bibo Mao, linux-mips, Jiaxun Yang, Paul Burton,
Li Xuefeng, Yang Tiezhu, Gao Juxin, Huacai Chen, Jinyang He,
Joshua Kinard
On Wed, Jul 21, 2021 at 05:30:45PM +0800, Huang Pei wrote:
> +. According to Documentation/vm/split_page_table_lock, handle failure
> of pgtable_pmd_page_ctor
>
> +. Use GFP_KERNEL_ACCOUNT instead of GFP_KERNEL|__GFP_ACCOUNT
>
> +. Adjust coding style
>
> Fixes: ed914d48b6a1 ("MIPS: add PMD table accounting into MIPS')
> Reported-by: Joshua Kinard <kumba@gentoo.org>
> Signed-off-by: Huang Pei <huangpei@loongson.cn>
> ---
> arch/mips/include/asm/pgalloc.h | 17 +++++++++++------
> 1 file changed, 11 insertions(+), 6 deletions(-)
applied to mips-fixes.
Thomas.
--
Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
good idea. [ RFC1925, 2.3 ]
^ permalink raw reply [flat|nested] 4+ messages in thread