Hi, On Fri, Apr 15, 2016 at 05:30:12PM -0700, Josh Stone wrote: > Hi folks, > > Just wanted to give an update on this project, running strace over the > gdbserver protocol. I've quoted my original message below, in case you > missed it the first time, and source is here: > https://github.com/cuviper/strace/ > > The code has been rebased onto a much newer development branch, as of a > couple weeks ago. I'll push new rebases occasionally to keep up. > There's still plenty of hacky/prototype hooks in place, so this isn't > ready for integration yet. I need to address testing too. > > Feature-wise, I've added file and piped-command support for gdbserver > communication, so you can connect in three ways: > > - tcp: strace -G host:port > - file: strace -G /dev/ttyS0 > - piped-command: strace -G '|vgdb' > > That last is how you can connect to a valgrind process. Support for > QCatchSyscalls is now in valgrind trunk. With this, you can strace a > process under valgrind without seeing the activity of valgrind itself! > > GDB 7.11 was release in February, with support for QCatchSyscalls, so > new gdbserver builds will now have everything "strace -G" needs. > > Stan Cox has started to get this working in gdbserver's non-stop mode. > Right now it runs all-stop, which means a multithreaded target will stop > every thread when any event is reported. That's usually what you want > for an interactive debugger, but in strace it may cause a lot of > interrupted syscalls -- full of EINTR/EAGAIN/ERESTARTSYS. So non-stop > will let other threads keep running freely while we process any event. > > Dmitry pointed out -P and -y path-based options before, which I haven't > found a solution for. Technically /proc/pid/fd access will work just > fine if the gdbserver is local anyway, but that's cheating, and can't be > assumed in general. It may just be that some strace features won't be > able to mix with this -G gdbserver mode.
Fair enough. > Anyway, work continues, and I hope people find this interesting. Josh, thanks for keeping us posted. -- ldv
pgpQWNgaX1zjf.pgp
Description: PGP signature
------------------------------------------------------------------------------ Find and fix application performance issues faster with Applications Manager Applications Manager provides deep performance insights into multiple tiers of your business applications. It resolves application problems quickly and reduces your MTTR. Get your free trial! https://ad.doubleclick.net/ddm/clk/302982198;130105516;z
_______________________________________________ Strace-devel mailing list Strace-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/strace-devel