GitHub PushEvent at 2014-10-11 21:54:06
Repository: llvm-project-submodule
Actor: chapuni
Payload: {"shas":[["280d659bfcdd0ce66cafb63361a3ba9fc3ad0d50","344bea3720080f4bdd9a4426f06e5ab01b96bbfb@gmail.com","llgs: fixes to PTY/gdb-remote inferior stdout/stderr handling, logging addtions.\n\nWith this change, both local-process llgs and remote-target llgs stdout/stderr\nhandling from inferior work correctly.\n\nSeveral log lines have been added around PTY and stdout/stderr redirection\nlogic on the lldb client side.\n\nRegarding remote llgs execution, see the following:\n\nWith these changes, remote llgs with $O now works properly:\n\n$ lldb\n(lldb) platform select remote-linux\n(lldb) target create ~/some/inferior/exe\n(lldb) gdb-remote {some-target}:{port}\n(lldb) run\n\nThe sequence above will correctly redirect stdout/stderr over gdb-remote $O,\nas is needed for remote debugging.  That sequence assumes there is a lldb-gdbserver\nexe running on the target with {some-host}:{port}.\n\nYou can replace the gdb-remote command with a '(lldb) platform connect\nconnect://{target-ip}:{target-port}'.  If you do this and have a\nlldb-platform running on the remote end, it will go ahead and launch\nllgs for lldb for each target instance that is run/attached.\n\nFor local debugging with llgs, the following sequence also works, and\nuses local PTYs instead to avoid $O and extra gdb-remote messages:\n\n$ lldb\n(lldb) settings set platform.plugin.linux.use-llgs true\n(lldb) target create ~/some/inferior/exe\n(lldb) run\n\nThe above will run the inferior using llgs on the local host, and\nwill use PTYs rather than $O redirection.\n\nThis change also removes the logging that happened after the fork but\nbefore the exec when llgs is launching a new inferior process.  Some\naspect of the file handling during that portion of code would not do\nthe right thing with log handling.  We might want to go back later\nand have that communicate over a pipe from the child to parent to pass\nalong any messages that previously were logged in that section of code.","Todd Fiala",true]],"size":1,"ref":"refs/heads/master","head":"280d659bfcdd0ce66cafb63361a3ba9fc3ad0d50"}