public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "Amit S. Kale" <amitkale@emsyssoft.com>
To: Tom Rini <trini@kernel.crashing.org>,
	George Anzinger <george@mvista.com>
Cc: Powerpc Linux <linuxppc-dev@lists.linuxppc.org>,
	Linux Kernel <linux-kernel@vger.kernel.org>,
	KGDB bugreports <kgdb-bugreport@lists.sourceforge.net>
Subject: Re: PPC KGDB changes and some help?
Date: Tue, 27 Jan 2004 14:35:19 +0530	[thread overview]
Message-ID: <200401271435.19773.amitkale@emsyssoft.com> (raw)
In-Reply-To: <20040126220651.GE32525@stop.crashing.org>

On Tuesday 27 Jan 2004 3:36 am, Tom Rini wrote:
> On Mon, Jan 26, 2004 at 01:45:44PM -0800, George Anzinger wrote:
> > Tom Rini wrote:
> > >>There is a real danger of passing signal info back to gdb as it will
> > >> want to try to deliver the signal which is a non-compute in most kgdbs
> > >> in the field.  I did put code in the mm-kgdb to do just this, but
> > >> usually the arrival of such a signal (other than SIGTRAP) is the end
> > >> of the kernel. All that is left is to read the tea leaves.
> > >
> > >The gdb I've been testing this with knows better than to try and send a
> > >singal back, so that's not a worry.  The motivation behind doing this
> > >however is along the lines of "if it ain't broke, don't remove it".  The
> > >original stub was getting all of this information correctly, so why stop
> > >doing it?
> >
> > You sure.  If so what gdb?  And how does it know?  I suppose you could
> > tell it with a script, but then what if one forgets?
>
> GNU gdb 6.0 (MontaVista 6.0-8.0.4.0300532 2003-12-24)
> Copyright 2003 Free Software Foundation, Inc.
> [snip]
>
> [New Thread 289]
>
> Program received signal SIGSEGV, Segmentation fault.
> [Switching to Thread 289]
> 0x00000000 in ?? ()
> (gdb) c
> Continuing.
> Can't send signals to this remote system.  SIGSEGV not sent.

This is because gdb tries packet "C" first. If that fails, which is the case 
with kgdb, it falls back to packet "c". It doesn't need packet "C" for 
SIGTRAP as it's used for breakpoints and single stepping and shouldn't be 
delivered to a debuggee.

SIGSEGV has to be actually delivered to an application for it to die. A user 
has a choice of correcting a bug on the fly and let the application continue 
without segfaulting. It can tell gdb to continue the debugee without a 
signal. It doesn't apply in case of kernel, so it's not a bug. Kernel anyway 
"delivers" the signal, that is, continues with a panic once kgdb returns. We 
don't offer a user the choice of correcting a segfault on the fly.

>
> Noting that 0x0 is correct as the code that triggered this was:
> static void (*dummy)(struct pt_regs *regs);
> int drop_kgdb(void) {
>         struct pt_regs regs;
>         memset(&regs, 0, sizeof(regs));
>         dummy(&regs);
>
>         return 0;
> }
> module_init(drop_kgdb);
>
> --
> Tom Rini
> http://gate.crashing.org/~trini/
>
> ** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

-- 
Amit Kale
EmSysSoft (http://www.emsyssoft.com)
KGDB: Linux Kernel Source Level Debugger (http://kgdb.sourceforge.net)


  reply	other threads:[~2004-01-27  9:05 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20040120172708.GN13454@stop.crashing.org>
     [not found] ` <200401211946.17969.amitkale@emsyssoft.com>
     [not found]   ` <20040121153019.GR13454@stop.crashing.org>
2004-01-21 16:53     ` PPC KGDB changes and some help? Amit S. Kale
2004-01-21 18:42       ` Tom Rini
2004-01-21 19:21         ` Tom Rini
2004-01-21 19:22           ` Tom Rini
2004-01-22 17:44             ` Tom Rini
2004-01-22 18:05               ` Tom Rini
2004-01-23 22:46                 ` Tom Rini
2004-01-23 23:38                   ` George Anzinger
2004-01-26 20:46                     ` Tom Rini
2004-01-26 21:27                       ` George Anzinger
2004-01-26 21:42                         ` Tom Rini
2004-01-26 22:35                           ` George Anzinger
2004-01-26 21:45                       ` George Anzinger
2004-01-26 22:06                         ` Tom Rini
2004-01-27  9:05                           ` Amit S. Kale [this message]
2004-01-24  0:48                   ` George Anzinger
2004-01-24  3:47                   ` [PATCH] Kgdb dwarf2 for asm George Anzinger
2004-01-27 18:22                   ` PPC KGDB changes and some help? Tom Rini
2004-01-21 22:03           ` Tom Rini
2004-01-21 23:12           ` George Anzinger
2004-01-22 15:07             ` Tom Rini
2004-01-22 15:25               ` Hollis Blanchard
2004-01-22 15:45                 ` Tom Rini
2004-01-22 16:06                   ` Amit S. Kale
2004-01-22 16:45                     ` Tom Rini
2004-01-22 22:46                       ` George Anzinger
2004-01-22 22:52                         ` Tom Rini
2004-01-22 23:09                           ` George Anzinger
2004-01-22 22:35                     ` George Anzinger
2004-01-23 17:08                     ` Tom Rini
2004-01-22 21:54                   ` George Anzinger
2004-01-26 21:32           ` Tom Rini
2004-01-27  8:59             ` Amit S. Kale
2004-01-21 23:05         ` George Anzinger
2004-01-22 15:03           ` Tom Rini

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=200401271435.19773.amitkale@emsyssoft.com \
    --to=amitkale@emsyssoft.com \
    --cc=george@mvista.com \
    --cc=kgdb-bugreport@lists.sourceforge.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@lists.linuxppc.org \
    --cc=trini@kernel.crashing.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox