Message ID | 4B88014E.5040806@codesourcery.com |
---|---|
State | New |
Headers | show |
Hi Daniel, Am 26.02.2010 18:13, schrieb Daniel Gutson: > Hello Kevin, > please let me know if this works. > If so, please remember that I'd need somebody to commit this for me, since I don't have write-access. > > Undoing line wrap and tabs. I'm not a committer either. The patch format looks fine this time and it applies cleanly, so I expect it to be picked up by one of the committers. (If it's not in a week or two, re-post it as a top-level mail instead of an answer to another mail, so that it's more visible) Kevin
On Fri, Feb 26, 2010 at 02:13:50PM -0300, Daniel Gutson wrote: > Hello Kevin, > please let me know if this works. > If so, please remember that I'd need somebody to commit this for me, since I don't have write-access. > > Undoing line wrap and tabs. Thanks applied. > Thanks! > Daniel. > > [old same text.] > With this patch, 'gdb detach' correctly resumes the inferior execution > after detaching the debugger. > The bug was caused by qemu asking gdb to execute a syscall (isatty) > after the detach, and then waiting (forever) for the reply. I fixed this > by properly setting gdb_syscall_mode appropriately in the 'detach' > packet handling, so subsequent syscalls are solved by qemu rather than gdb. > > Signed-off-by: Daniel Gutson <dgutson@codesourcery.com> > --- > gdbstub.c | 1 + > 1 files changed, 1 insertions(+), 0 deletions(-) > > diff --git a/gdbstub.c b/gdbstub.c > index 91c5f68..92bb36d 100644 > --- a/gdbstub.c > +++ b/gdbstub.c > @@ -1848,6 +1848,7 @@ static int gdb_handle_packet(GDBState *s, const char *line_buf) > case 'D': > /* Detach packet */ > gdb_breakpoint_remove_all(); > + gdb_syscall_mode = GDB_SYS_DISABLED; > gdb_continue(s); > put_packet(s, "OK"); > break; > -- > 1.6.2.4 > > > > >
diff --git a/gdbstub.c b/gdbstub.c index 91c5f68..92bb36d 100644 --- a/gdbstub.c +++ b/gdbstub.c @@ -1848,6 +1848,7 @@ static int gdb_handle_packet(GDBState *s, const char *line_buf) case 'D': /* Detach packet */ gdb_breakpoint_remove_all(); + gdb_syscall_mode = GDB_SYS_DISABLED; gdb_continue(s); put_packet(s, "OK"); break;
Hello Kevin, please let me know if this works. If so, please remember that I'd need somebody to commit this for me, since I don't have write-access. Undoing line wrap and tabs. Thanks! Daniel. [old same text.] With this patch, 'gdb detach' correctly resumes the inferior execution after detaching the debugger. The bug was caused by qemu asking gdb to execute a syscall (isatty) after the detach, and then waiting (forever) for the reply. I fixed this by properly setting gdb_syscall_mode appropriately in the 'detach' packet handling, so subsequent syscalls are solved by qemu rather than gdb. Signed-off-by: Daniel Gutson <dgutson@codesourcery.com> --- gdbstub.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-)