Hi everyone!
I'm currently trying to run callgrind not on the whole program (mysqld in
my case) but just on a section of it/part of its execution. I therefore
start mysqld with the following command:
sudo valgrind --tool=callgrind --instr-atstart=no
/usr/local/mysql/bin/mysqld --user=mysql
Unfortunately, when I then run the following to enable instrumentation
(after mysqld is up and running)
sudo callgrind_control -i on
it justs prints out a message like this and that's it:
"PID 19680: bin/mysqld --user=mysql"
Apparently callgrind_control hangs on a read system call waiting for some
output from vgdb. If I shudown callgrind_control it outputs the following:
"syscall failed: Interrupted system call
error opening /tmp/vgdb-pipe-to-vgdb-from-19680-by-root-on-??? read cmd
result from pid"
The specified file does exist under /tmp. mysqld does not respond to MySQL
clients trying to connect to it while callgrind_control is in that hanging
state and once I shutdown callgrind_control mysqld shuts down as well. Does
anyone have an idea about what is going on exactly or what to do to resolve
this? Running callgrind on mysqld with instrumentation enabled from the
beginning works perfectly fine for me. The valgrind and callgrind version
used is 3.10.1.
Thanks in advance,
Christian
------------------------------------------------------------------------------
Dive into the World of Parallel Programming. The Go Parallel Website,
sponsored by Intel and developed in partnership with Slashdot Media, is your
hub for all things parallel software development, from weekly thought
leadership blogs to news, videos, case studies, tutorials and more. Take a
look and join the conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Valgrind-users mailing list
Valgrind-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/valgrind-users