|
|
|
|
|
|
|
|
|
|
xen-ppc-devel
Re: [XenPPC] [RFC] GDB "O" packets
On Mon, Aug 28, 2006 at 09:38:08AM -0500, Hollis Blanchard wrote:
> You probably want to avoid serial_puts() if GDB is attached, no?
> Otherwise, you'll be sending "garbage" (i.e. non-packet data) down the
> serial line to GDB.
>
> Rather than including gdbstub.h here, you might do something like this:
> if (in_debugger())
> debug_puts(sercon_handle, str);
> else
> serial_puts(sercon_handle, str);
but in_debugger() and debug_puts() need to come from somewhere and
gdbstub.h makes sense or am I missing the point?
> In fact, it might be worth adding another flag to the serial handles
> (see e.g. SERHND_COOKED), and intercepting inside serial_puts(). The
> only problem there is that serial_putc() would bypass this, but as you
> can see practically speaking there aren't any callers.
so something like:
void serial_puts(int handle, const char *s)
{
struct serial_port *port = &com[handle & SERHND_IDX];
unsigned long flags;
char c;
if ( (handle == -1) || !port->driver || !port->driver->putc )
return;
if ( (handle & SERHND_DEBUGGER) && in_debugger() ) {
gdb_puts(s);
return;
}
....
}
Actually that seems pretty nice as it means that the debug messages get
push to gdb when console==gdb.
I'll have a play. Thanks Hollis.
Yours Tony
linux.conf.au http://linux.conf.au/ || http://lca2007.linux.org.au/
Jan 15-20 2007 The Australian Linux Technical Conference!
_______________________________________________
Xen-ppc-devel mailing list
Xen-ppc-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ppc-devel
|
|
|
|
|