All of lore.kernel.org
 help / color / mirror / Atom feed
From: anton.vorontsov@linaro.org (Anton Vorontsov)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 03/11] kdb: Implement disable_nmi command
Date: Wed, 1 Aug 2012 14:02:31 -0700	[thread overview]
Message-ID: <20120801210231.GC20714@lizard> (raw)
In-Reply-To: <CAMbhsRS1cOf1T8k7K6CFmRA7M52AGPZ2TqmEnpZqDGYnbyetbw@mail.gmail.com>

On Mon, Jul 30, 2012 at 10:33:34AM -0700, Colin Cross wrote:
> On Mon, Jul 30, 2012 at 4:58 AM, Anton Vorontsov
> <anton.vorontsov@linaro.org> wrote:
> > This command disables NMI-entry. If NMI source was previously shared with
> > a serial console ("debug port"), this effectively releases the port from
> > KDB exclusive use, and makes the console available for normal use.
> >
> > Of course, NMI can be reenabled, enable_nmi modparam is used for that:
> >
> >         echo 1 > /sys/module/kdb/parameters/enable_nmi
> 
> This is very different behavior from the FIQ debugger "console"
> command you are trying to replace.  In the FIQ debugger, everything
> goes through the FIQ/NMI, even when in console mode.  That means that
> the user can always get back to FIQ debugger/KDB mode using a special
> sequence (we use a break character).  With your implementation, if you
> switch from KDB to console to see if the console is working, and find
> that it is not working, you can never get back into KDB.

Ah, I see. But with disable_nmi, in addition to kernel console,
applications can use /dev/ttyXX as normal, and with 'console' command
that is not possible (at least w/o modifying applications to escape
magic sequence). So, I think we should have both commands, each would
handle its own use case.

(Initially I just tried to avoid adding another console driver, but
it seems there is no other way, heh.)

Thanks!

-- 
Anton Vorontsov
Email: cbouatmailru at gmail.com

WARNING: multiple messages have this Message-ID (diff)
From: Anton Vorontsov <anton.vorontsov@linaro.org>
To: Colin Cross <ccross@android.com>
Cc: "Russell King" <linux@arm.linux.org.uk>,
	"Jason Wessel" <jason.wessel@windriver.com>,
	"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
	"Alan Cox" <alan@linux.intel.com>,
	"Arve Hjønnevåg" <arve@android.com>,
	"John Stultz" <john.stultz@linaro.org>,
	linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linaro-kernel@lists.linaro.org, patches@linaro.org,
	kernel-team@android.com, kgdb-bugreport@lists.sourceforge.net
Subject: Re: [PATCH 03/11] kdb: Implement disable_nmi command
Date: Wed, 1 Aug 2012 14:02:31 -0700	[thread overview]
Message-ID: <20120801210231.GC20714@lizard> (raw)
In-Reply-To: <CAMbhsRS1cOf1T8k7K6CFmRA7M52AGPZ2TqmEnpZqDGYnbyetbw@mail.gmail.com>

On Mon, Jul 30, 2012 at 10:33:34AM -0700, Colin Cross wrote:
> On Mon, Jul 30, 2012 at 4:58 AM, Anton Vorontsov
> <anton.vorontsov@linaro.org> wrote:
> > This command disables NMI-entry. If NMI source was previously shared with
> > a serial console ("debug port"), this effectively releases the port from
> > KDB exclusive use, and makes the console available for normal use.
> >
> > Of course, NMI can be reenabled, enable_nmi modparam is used for that:
> >
> >         echo 1 > /sys/module/kdb/parameters/enable_nmi
> 
> This is very different behavior from the FIQ debugger "console"
> command you are trying to replace.  In the FIQ debugger, everything
> goes through the FIQ/NMI, even when in console mode.  That means that
> the user can always get back to FIQ debugger/KDB mode using a special
> sequence (we use a break character).  With your implementation, if you
> switch from KDB to console to see if the console is working, and find
> that it is not working, you can never get back into KDB.

Ah, I see. But with disable_nmi, in addition to kernel console,
applications can use /dev/ttyXX as normal, and with 'console' command
that is not possible (at least w/o modifying applications to escape
magic sequence). So, I think we should have both commands, each would
handle its own use case.

(Initially I just tried to avoid adding another console driver, but
it seems there is no other way, heh.)

Thanks!

-- 
Anton Vorontsov
Email: cbouatmailru@gmail.com

  reply	other threads:[~2012-08-01 21:02 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-07-30 11:57 [PATCH v3 0/11] KGDB/KDB FIQ (NMI) debugger Anton Vorontsov
2012-07-30 11:57 ` Anton Vorontsov
2012-07-30 11:58 ` [PATCH 01/11] kernel/debug: Make use of KGDB_REASON_NMI Anton Vorontsov
2012-07-30 11:58   ` Anton Vorontsov
2012-07-31  3:53   ` Jason Wessel
2012-07-31  3:53     ` Jason Wessel
2012-07-30 11:58 ` [PATCH 02/11] kernel/debug: Mask KGDB NMI upon entry Anton Vorontsov
2012-07-30 11:58   ` Anton Vorontsov
2012-07-30 11:58 ` [PATCH 03/11] kdb: Implement disable_nmi command Anton Vorontsov
2012-07-30 11:58   ` Anton Vorontsov
2012-07-30 17:33   ` Colin Cross
2012-07-30 17:33     ` Colin Cross
2012-08-01 21:02     ` Anton Vorontsov [this message]
2012-08-01 21:02       ` Anton Vorontsov
2012-07-30 11:58 ` [PATCH 04/11] tty/serial/kgdboc: Add and wire up clear_irqs callback Anton Vorontsov
2012-07-30 11:58   ` Anton Vorontsov
2012-07-30 11:58 ` [PATCH 05/11] tty/serial/amba-pl011: Implement " Anton Vorontsov
2012-07-30 11:58   ` Anton Vorontsov
2012-07-30 11:58 ` [PATCH 06/11] ARM: Move some macros from entry-armv to entry-header Anton Vorontsov
2012-07-30 11:58   ` Anton Vorontsov
2012-07-30 11:58 ` [PATCH 07/11] ARM: Add KGDB/KDB FIQ debugger generic code Anton Vorontsov
2012-07-30 11:58   ` Anton Vorontsov
2012-07-30 14:07   ` Russell King - ARM Linux
2012-07-30 14:07     ` Russell King - ARM Linux
2012-08-01 20:52     ` Anton Vorontsov
2012-08-01 20:52       ` Anton Vorontsov
2012-07-30 11:58 ` [PATCH 08/11] ARM: kgdb_fiq: Implement knocking into KDB via escape command Anton Vorontsov
2012-07-30 11:58   ` Anton Vorontsov
2012-07-30 11:58 ` [PATCH 09/11] ARM: VIC: Add a couple of low-level FIQ management helpers Anton Vorontsov
2012-07-30 11:58   ` Anton Vorontsov
2012-07-30 11:58 ` [PATCH 10/11] ARM: versatile: Make able to use UART ports for KGDB FIQ debugger Anton Vorontsov
2012-07-30 11:58   ` Anton Vorontsov
2012-07-30 14:16   ` Russell King - ARM Linux
2012-07-30 14:16     ` Russell King - ARM Linux
2012-07-30 11:58 ` [PATCH 11/11] ARM: Get rid of .LCcralign local label usage in alignment_trap macro Anton Vorontsov
2012-07-30 11:58   ` Anton Vorontsov
2012-07-30 14:15   ` Russell King - ARM Linux
2012-07-30 14:15     ` Russell King - ARM Linux
2012-08-01 20:53     ` Anton Vorontsov
2012-08-01 20:53       ` Anton Vorontsov

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=20120801210231.GC20714@lizard \
    --to=anton.vorontsov@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.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.