All of lore.kernel.org
 help / color / mirror / Atom feed
From: Will Deacon <will.deacon@arm.com>
To: AKASHI Takahiro <takahiro.akashi@linaro.org>
Cc: mark.rutland@arm.com, geoff@infradead.org,
	catalin.marinas@arm.com, kexec@lists.infradead.org,
	james.morse@arm.com, bauerman@linux.vnet.ibm.com,
	dyoung@redhat.com, linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v29 4/9] arm64: kdump: implement machine_crash_shutdown()
Date: Tue, 10 Jan 2017 11:32:48 +0000	[thread overview]
Message-ID: <20170110113248.GC21598@arm.com> (raw)
In-Reply-To: <20161228043605.27470-3-takahiro.akashi@linaro.org>

On Wed, Dec 28, 2016 at 01:36:01PM +0900, AKASHI Takahiro wrote:
> Primary kernel calls machine_crash_shutdown() to shut down non-boot cpus
> and save registers' status in per-cpu ELF notes before starting crash
> dump kernel. See kernel_kexec().
> Even if not all secondary cpus have shut down, we do kdump anyway.
> 
> As we don't have to make non-boot(crashed) cpus offline (to preserve
> correct status of cpus at crash dump) before shutting down, this patch
> also adds a variant of smp_send_stop().
> 
> Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
> Reviewed-by: James Morse <james.morse@arm.com>
> Acked-by: Catalin Marinas <catalin.marinas@arm.com>
> ---
>  arch/arm64/include/asm/hardirq.h  |  2 +-
>  arch/arm64/include/asm/kexec.h    | 42 +++++++++++++++++++++++++-
>  arch/arm64/include/asm/smp.h      |  2 ++
>  arch/arm64/kernel/machine_kexec.c | 56 ++++++++++++++++++++++++++++++++--
>  arch/arm64/kernel/smp.c           | 63 +++++++++++++++++++++++++++++++++++++++
>  5 files changed, 160 insertions(+), 5 deletions(-)

[...]

> diff --git a/arch/arm64/include/asm/smp.h b/arch/arm64/include/asm/smp.h
> index d050d720a1b4..cea009f2657d 100644
> --- a/arch/arm64/include/asm/smp.h
> +++ b/arch/arm64/include/asm/smp.h
> @@ -148,6 +148,8 @@ static inline void cpu_panic_kernel(void)
>   */
>  bool cpus_are_stuck_in_kernel(void);
>  
> +extern void smp_send_crash_stop(void);
> +
>  #endif /* ifndef __ASSEMBLY__ */
>  
>  #endif /* ifndef __ASM_SMP_H */
> diff --git a/arch/arm64/kernel/machine_kexec.c b/arch/arm64/kernel/machine_kexec.c
> index bc96c8a7fc79..c60346d33bb1 100644
> --- a/arch/arm64/kernel/machine_kexec.c
> +++ b/arch/arm64/kernel/machine_kexec.c
> @@ -9,6 +9,9 @@
>   * published by the Free Software Foundation.
>   */
>  
> +#include <linux/interrupt.h>
> +#include <linux/irq.h>
> +#include <linux/kernel.h>
>  #include <linux/kexec.h>
>  #include <linux/smp.h>
>  
> @@ -22,6 +25,7 @@
>  extern const unsigned char arm64_relocate_new_kernel[];
>  extern const unsigned long arm64_relocate_new_kernel_size;
>  
> +static bool in_crash_kexec;

Do you actually need this bool? Why not call kexec_crash_loaded() instead?

Will

_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

WARNING: multiple messages have this Message-ID (diff)
From: will.deacon@arm.com (Will Deacon)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v29 4/9] arm64: kdump: implement machine_crash_shutdown()
Date: Tue, 10 Jan 2017 11:32:48 +0000	[thread overview]
Message-ID: <20170110113248.GC21598@arm.com> (raw)
In-Reply-To: <20161228043605.27470-3-takahiro.akashi@linaro.org>

On Wed, Dec 28, 2016 at 01:36:01PM +0900, AKASHI Takahiro wrote:
> Primary kernel calls machine_crash_shutdown() to shut down non-boot cpus
> and save registers' status in per-cpu ELF notes before starting crash
> dump kernel. See kernel_kexec().
> Even if not all secondary cpus have shut down, we do kdump anyway.
> 
> As we don't have to make non-boot(crashed) cpus offline (to preserve
> correct status of cpus at crash dump) before shutting down, this patch
> also adds a variant of smp_send_stop().
> 
> Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
> Reviewed-by: James Morse <james.morse@arm.com>
> Acked-by: Catalin Marinas <catalin.marinas@arm.com>
> ---
>  arch/arm64/include/asm/hardirq.h  |  2 +-
>  arch/arm64/include/asm/kexec.h    | 42 +++++++++++++++++++++++++-
>  arch/arm64/include/asm/smp.h      |  2 ++
>  arch/arm64/kernel/machine_kexec.c | 56 ++++++++++++++++++++++++++++++++--
>  arch/arm64/kernel/smp.c           | 63 +++++++++++++++++++++++++++++++++++++++
>  5 files changed, 160 insertions(+), 5 deletions(-)

[...]

> diff --git a/arch/arm64/include/asm/smp.h b/arch/arm64/include/asm/smp.h
> index d050d720a1b4..cea009f2657d 100644
> --- a/arch/arm64/include/asm/smp.h
> +++ b/arch/arm64/include/asm/smp.h
> @@ -148,6 +148,8 @@ static inline void cpu_panic_kernel(void)
>   */
>  bool cpus_are_stuck_in_kernel(void);
>  
> +extern void smp_send_crash_stop(void);
> +
>  #endif /* ifndef __ASSEMBLY__ */
>  
>  #endif /* ifndef __ASM_SMP_H */
> diff --git a/arch/arm64/kernel/machine_kexec.c b/arch/arm64/kernel/machine_kexec.c
> index bc96c8a7fc79..c60346d33bb1 100644
> --- a/arch/arm64/kernel/machine_kexec.c
> +++ b/arch/arm64/kernel/machine_kexec.c
> @@ -9,6 +9,9 @@
>   * published by the Free Software Foundation.
>   */
>  
> +#include <linux/interrupt.h>
> +#include <linux/irq.h>
> +#include <linux/kernel.h>
>  #include <linux/kexec.h>
>  #include <linux/smp.h>
>  
> @@ -22,6 +25,7 @@
>  extern const unsigned char arm64_relocate_new_kernel[];
>  extern const unsigned long arm64_relocate_new_kernel_size;
>  
> +static bool in_crash_kexec;

Do you actually need this bool? Why not call kexec_crash_loaded() instead?

Will

  reply	other threads:[~2017-01-10 11:32 UTC|newest]

Thread overview: 90+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-12-28  4:33 [PATCH v29 0/9] arm64: add kdump support AKASHI Takahiro
2016-12-28  4:33 ` AKASHI Takahiro
2016-12-28  4:35 ` [PATCH v29 1/9] memblock: add memblock_cap_memory_range() AKASHI Takahiro
2016-12-28  4:35   ` AKASHI Takahiro
2016-12-28  4:35   ` AKASHI Takahiro
2017-01-10 11:16   ` Will Deacon
2017-01-10 11:16     ` Will Deacon
2017-01-10 11:16     ` Will Deacon
2017-01-11  1:57     ` Dennis Chen
2017-01-11  1:57       ` Dennis Chen
2017-01-11  1:57       ` Dennis Chen
2016-12-28  4:35 ` [PATCH v29 2/9] arm64: limit memory regions based on DT property, usable-memory-range AKASHI Takahiro
2016-12-28  4:35   ` AKASHI Takahiro
2016-12-28  4:36 ` [PATCH v29 3/9] arm64: kdump: reserve memory for crash dump kernel AKASHI Takahiro
2016-12-28  4:36   ` AKASHI Takahiro
2017-01-12 15:09   ` Mark Rutland
2017-01-12 15:09     ` Mark Rutland
2017-01-13  8:16     ` AKASHI Takahiro
2017-01-13  8:16       ` AKASHI Takahiro
2017-01-13 11:39       ` Mark Rutland
2017-01-13 11:39         ` Mark Rutland
2017-01-17  8:20         ` AKASHI Takahiro
2017-01-17  8:20           ` AKASHI Takahiro
2017-01-17 11:54           ` Mark Rutland
2017-01-17 11:54             ` Mark Rutland
2017-01-19  9:49             ` AKASHI Takahiro
2017-01-19  9:49               ` AKASHI Takahiro
2017-01-19 11:28               ` Mark Rutland
2017-01-19 11:28                 ` Mark Rutland
2017-01-23  9:51                 ` AKASHI Takahiro
2017-01-23  9:51                   ` AKASHI Takahiro
2017-01-23 10:23                   ` Mark Rutland
2017-01-23 10:23                     ` Mark Rutland
2017-01-24  7:55                     ` AKASHI Takahiro
2017-01-24  7:55                       ` AKASHI Takahiro
2016-12-28  4:36 ` [PATCH v29 4/9] arm64: kdump: implement machine_crash_shutdown() AKASHI Takahiro
2016-12-28  4:36   ` AKASHI Takahiro
2017-01-10 11:32   ` Will Deacon [this message]
2017-01-10 11:32     ` Will Deacon
2017-01-11  6:36     ` AKASHI Takahiro
2017-01-11  6:36       ` AKASHI Takahiro
2017-01-11 10:54       ` Will Deacon
2017-01-11 10:54         ` Will Deacon
2017-01-12  4:21         ` AKASHI Takahiro
2017-01-12  4:21           ` AKASHI Takahiro
2017-01-12 12:01           ` Will Deacon
2017-01-12 12:01             ` Will Deacon
2017-01-23 17:46             ` Will Deacon
2017-01-23 17:46               ` Will Deacon
2017-01-24  7:52               ` AKASHI Takahiro
2017-01-24  7:52                 ` AKASHI Takahiro
2016-12-28  4:36 ` [PATCH v29 5/9] arm64: kdump: add VMCOREINFO's for user-space tools AKASHI Takahiro
2016-12-28  4:36   ` AKASHI Takahiro
2016-12-28  4:36 ` [PATCH v29 6/9] arm64: kdump: provide /proc/vmcore file AKASHI Takahiro
2016-12-28  4:36   ` AKASHI Takahiro
2016-12-28  4:36 ` [PATCH v29 7/9] arm64: kdump: enable kdump in defconfig AKASHI Takahiro
2016-12-28  4:36   ` AKASHI Takahiro
2016-12-28  4:36 ` [PATCH v29 8/9] Documentation: kdump: describe arm64 port AKASHI Takahiro
2016-12-28  4:36   ` AKASHI Takahiro
2016-12-28  4:37 ` [PATCH v29 9/9] Documentation: dt: chosen properties for arm64 kdump AKASHI Takahiro
2016-12-28  4:37   ` AKASHI Takahiro
2016-12-28  4:37   ` AKASHI Takahiro
2017-01-10 11:10   ` Will Deacon
2017-01-10 11:10     ` Will Deacon
2017-01-10 11:10     ` Will Deacon
2017-01-12 15:39   ` Mark Rutland
2017-01-12 15:39     ` Mark Rutland
2017-01-12 15:39     ` Mark Rutland
2017-01-13  9:13     ` AKASHI Takahiro
2017-01-13  9:13       ` AKASHI Takahiro
2017-01-13  9:13       ` AKASHI Takahiro
2017-01-13 11:17       ` Mark Rutland
2017-01-13 11:17         ` Mark Rutland
2017-01-13 11:17         ` Mark Rutland
2017-01-16  8:25         ` AKASHI Takahiro
2017-01-16  8:25           ` AKASHI Takahiro
2017-01-16  8:25           ` AKASHI Takahiro
2017-01-17  8:26           ` Dave Young
2017-01-17  8:26             ` Dave Young
2017-01-17  8:26             ` Dave Young
2017-01-19  9:01             ` AKASHI Takahiro
2017-01-19  9:01               ` AKASHI Takahiro
2017-01-19  9:01               ` AKASHI Takahiro
2017-01-17 11:13           ` Mark Rutland
2017-01-17 11:13             ` Mark Rutland
2017-01-17 11:13             ` Mark Rutland
2017-01-06  3:26 ` [PATCH v29 0/9] arm64: add kdump support Pratyush Anand
2017-01-06  3:26   ` Pratyush Anand
2017-01-06  4:34   ` AKASHI Takahiro
2017-01-06  4:34     ` AKASHI Takahiro

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=20170110113248.GC21598@arm.com \
    --to=will.deacon@arm.com \
    --cc=bauerman@linux.vnet.ibm.com \
    --cc=catalin.marinas@arm.com \
    --cc=dyoung@redhat.com \
    --cc=geoff@infradead.org \
    --cc=james.morse@arm.com \
    --cc=kexec@lists.infradead.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=mark.rutland@arm.com \
    --cc=takahiro.akashi@linaro.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.