All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Thompson <daniel.thompson@linaro.org>
To: Kiran Raparthy <kiran.kumar@linaro.org>, linux-kernel@vger.kernel.org
Cc: Colin Cross <ccross@android.com>,
	Jason Wessel <jason.wessel@windriver.com>,
	kgdb-bugreport@lists.sourceforge.net,
	Android Kernel Team <kernel-team@android.com>,
	John Stultz <john.stultz@linaro.org>,
	Sumit Semwal <sumit.semwal@linaro.org>
Subject: Re: [RFC v3] debug: prevent entering debug mode on errors
Date: Wed, 26 Nov 2014 09:26:14 +0000	[thread overview]
Message-ID: <54759CB6.9020704@linaro.org> (raw)
In-Reply-To: <1416993266-16514-1-git-send-email-kiran.kumar@linaro.org>

On 26/11/14 09:14, Kiran Raparthy wrote:
> From: Colin Cross <ccross@android.com>
> 
> debug: prevent entering debug mode on errors
> 
> On non-developer devices kgdb prevents CONFIG_PANIC_TIMEOUT from rebooting the
> device after a panic.
> 
> In case of panics and exceptions, to honor CONFIG_PANIC_TIMEOUT, prevent
> entering debug mode to avoid getting stuck waiting for the user to interact
> with debugger.
> 
> Cc: Jason Wessel <jason.wessel@windriver.com>
> Cc: kgdb-bugreport@lists.sourceforge.net
> Cc: linux-kernel@vger.kernel.org
> Cc: Android Kernel Team <kernel-team@android.com>
> Cc: John Stultz <john.stultz@linaro.org>
> Cc: Sumit Semwal <sumit.semwal@linaro.org>
> Signed-off-by: Colin Cross <ccross@android.com>
> [Kiran: Added context to commit message.
> panic_timeout is used instead of break_on_panic and
> break_on_exception to honor CONFIG_PANIC_TIMEOUT]
> Signed-off-by: Kiran Raparthy <kiran.kumar@linaro.org>

When this gets upgrade from RFC to PATCH then feel free to add:
Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org>

> ---
>  kernel/debug/debug_core.c | 17 +++++++++++++++++
>  1 file changed, 17 insertions(+)
> 
> diff --git a/kernel/debug/debug_core.c b/kernel/debug/debug_core.c
> index 1adf62b..0012a1f 100644
> --- a/kernel/debug/debug_core.c
> +++ b/kernel/debug/debug_core.c
> @@ -689,6 +689,14 @@ kgdb_handle_exception(int evector, int signo, int ecode, struct pt_regs *regs)
>  
>  	if (arch_kgdb_ops.enable_nmi)
>  		arch_kgdb_ops.enable_nmi(0);
> +	/*
> +	 * Avoid entering the debugger if we were triggered due to an oops
> +	 * but panic_timeout indicates the system should automatically
> +	 * reboot on panic. We don't want to get stuck waiting for input
> +	 * on such systems, especially if its "just" an oops.
> +	 */
> +	if (signo != SIGTRAP && panic_timeout)
> +		return 1;
>  
>  	memset(ks, 0, sizeof(struct kgdb_state));
>  	ks->cpu			= raw_smp_processor_id();
> @@ -821,6 +829,15 @@ static int kgdb_panic_event(struct notifier_block *self,
>  			    unsigned long val,
>  			    void *data)
>  {
> +	/*
> +	 * Avoid entering the debugger if we were triggered due to a panic
> +	 * We don't want to get stuck waiting for input from user in such case.
> +	 * panic_timeout indicates the system should automatically
> +	 * reboot on panic.
> +	 */
> +	if (panic_timeout)
> +		return NOTIFY_DONE;
> +
>  	if (dbg_kdb_mode)
>  		kdb_printf("PANIC: %s\n", (char *)data);
>  	kgdb_breakpoint();
> 


  reply	other threads:[~2014-11-26  9:26 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-26  9:14 [RFC v3] debug: prevent entering debug mode on errors Kiran Raparthy
2014-11-26  9:26 ` Daniel Thompson [this message]
2014-11-26  9:30   ` Kiran Raparthy
2014-11-26 17:45 ` Colin Cross
2014-11-27  9:49   ` Daniel Thompson
2014-12-01  6:02     ` Kiran Raparthy
2014-12-08  5:17       ` Kiran Raparthy
2014-12-01 19:15     ` Colin Cross

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=54759CB6.9020704@linaro.org \
    --to=daniel.thompson@linaro.org \
    --cc=ccross@android.com \
    --cc=jason.wessel@windriver.com \
    --cc=john.stultz@linaro.org \
    --cc=kernel-team@android.com \
    --cc=kgdb-bugreport@lists.sourceforge.net \
    --cc=kiran.kumar@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sumit.semwal@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.