Subject: [PATCH 03/11] kdb: Implement disable_nmi command

From: [email-masked] (Anton Vorontsov)
Date: Wed, 1 Aug 2012 14:02:31 -0700

On Mon, Jul 30, 2012 at 10:33:34AM -0700, Colin Cross wrote:
> On Mon, Jul 30, 2012 at 4:58 AM, Anton Vorontsov
> <[email-masked]> 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