linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Michael Ellerman <mpe@ellerman.id.au>
To: Hari Bathini <hbathini@linux.ibm.com>,
	akpm@linux-foundation.org, david@redhat.com, linux-mm@kvack.org,
	linuxppc-dev@lists.ozlabs.org
Cc: osalvador@suse.de, mike.kravetz@oracle.com, mahesh@linux.ibm.com,
	sourabhjain@linux.ibm.com
Subject: Re: [PATCH v3 2/2] powerpc/fadump: opt out from freeing pages on cma activation failure
Date: Mon, 24 Jan 2022 11:45:05 +1100	[thread overview]
Message-ID: <874k5ut10u.fsf@mpe.ellerman.id.au> (raw)
In-Reply-To: <20220117075246.36072-3-hbathini@linux.ibm.com>

Hari Bathini <hbathini@linux.ibm.com> writes:
> With commit a4e92ce8e4c8 ("powerpc/fadump: Reservationless firmware
> assisted dump"), Linux kernel's Contiguous Memory Allocator (CMA)
> based reservation was introduced in fadump. That change was aimed at
> using CMA to let applications utilize the memory reserved for fadump
> while blocking it from being used for kernel pages. The assumption
> was, even if CMA activation fails for whatever reason, the memory
> still remains reserved to avoid it from being used for kernel pages.
> But commit 072355c1cf2d ("mm/cma: expose all pages to the buddy if
> activation of an area fails") breaks this assumption as it started
> exposing all pages to buddy allocator on CMA activation failure.
> It led to warning messages like below while running crash-utility
> on vmcore of a kernel having above two commits:
>
>   crash: seek error: kernel virtual address: <from reserved region>
>
> To fix this problem, opt out from exposing pages to buddy allocator
> on CMA activation failure for fadump reserved memory.
>
> Signed-off-by: Hari Bathini <hbathini@linux.ibm.com>
> Acked-by: David Hildenbrand <david@redhat.com>
> ---
>
> Changes in v3:
> * Added Acked-by tag from David.
>
>
>  arch/powerpc/kernel/fadump.c | 6 ++++++
>  1 file changed, 6 insertions(+)

Acked-by: Michael Ellerman <mpe@ellerman.id.au>

cheers

> diff --git a/arch/powerpc/kernel/fadump.c b/arch/powerpc/kernel/fadump.c
> index d03e488cfe9c..d0ad86b67e66 100644
> --- a/arch/powerpc/kernel/fadump.c
> +++ b/arch/powerpc/kernel/fadump.c
> @@ -112,6 +112,12 @@ static int __init fadump_cma_init(void)
>  		return 1;
>  	}
>  
> +	/*
> +	 *  If CMA activation fails, keep the pages reserved, instead of
> +	 *  exposing them to buddy allocator. Same as 'fadump=nocma' case.
> +	 */
> +	cma_reserve_pages_on_error(fadump_cma);
> +
>  	/*
>  	 * So we now have successfully initialized cma area for fadump.
>  	 */
> -- 
> 2.34.1


      reply	other threads:[~2022-01-24  0:45 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-17  7:52 [PATCH v3 0/2] powerpc/fadump: handle CMA activation failure appropriately Hari Bathini
2022-01-17  7:52 ` [PATCH v3 1/2] mm/cma: provide option to opt out from exposing pages on activation failure Hari Bathini
2022-01-24  5:21   ` Hari Bathini
2022-01-17  7:52 ` [PATCH v3 2/2] powerpc/fadump: opt out from freeing pages on cma " Hari Bathini
2022-01-24  0:45   ` Michael Ellerman [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=874k5ut10u.fsf@mpe.ellerman.id.au \
    --to=mpe@ellerman.id.au \
    --cc=akpm@linux-foundation.org \
    --cc=david@redhat.com \
    --cc=hbathini@linux.ibm.com \
    --cc=linux-mm@kvack.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=mahesh@linux.ibm.com \
    --cc=mike.kravetz@oracle.com \
    --cc=osalvador@suse.de \
    --cc=sourabhjain@linux.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox