Hello, I want to use gcov to test coverage of parallel MPI programs that run with multiple processes. I came to this post https://gcc.gnu.org/ml/gcc-help/2005-11/msg00074.html, that said "gcov instrumentation is multi-process safe, .., The multi-processing safety relies on OS level file locking". That sounds very helpful to me. I browsed the current gcc gcov-io.c. It seems gcov locks the whole data file when opening it and releases the lock when closing it. I am curious when gcov opens/closes a .gcda file, and how gcov avoids deadlock. I appreciate if someone can shed some light on this. Thanks. --Junchao Zhang