[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] 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
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |