-
Notifications
You must be signed in to change notification settings - Fork 570
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
r820 - r823 causes "make test" to hang #492
Comments
From qin.zhao@gmail.com on June 08, 2011 07:30:08 I saw hangs before on my Linux, which was because of recursively SIGSEGV happens in signal handling on access tls field. I also see the different behavior with ctest and make test. Can you file another issue on it? |
From bruen...@google.com on June 08, 2011 07:35:49 "make test" basically just runs "ctest". look in the Makefile: test: can you try w/ and w/o the "--force-new-ctest-process". xref http://www.cmake.org/pipermail/cmake/2007-June/014632.html |
From peterfeiner on June 08, 2011 08:49:55 (sorry, I originally replied to the email thread. I'm copying here for posterity) Removing --force-new-ctest-process does not fix the problem. The simplest Makefile hangs too: test: Qin, what other issue do you want me to file? Also, how do I disable |
From qin.zhao@gmail.com on June 08, 2011 09:08:04 I think we should file an issue about the different behavior of using make test and ctest. There are two ways to disable the private loader:
|
From bruen...@google.com on June 08, 2011 09:12:27 You said:
But now you say that this fails:
This doesn't make sense. When you "run ctest instead of make test" were you running some other ctest on your path, or passing some args? |
From peterfeiner on June 08, 2011 11:47:49 Changing private_loader to false fixes the problem. Derek, Although we can't make sense of it, it's happening: ~/dynamorio/build$ make -j20 |
From rnk@google.com on October 25, 2011 18:56:15 Does this still reproduce for you? There have been a handful of private loader fixes that Qin has put in over the last few months. |
From peterfeiner on October 28, 2011 18:08:13 Yes, this still happens. broadfun hangs with this stack trace: (gdb) where after it times out, ctest continues with the other programs. Here's a stack trace from getretaddr: (gdb) where In both cases, there appears to be a deadlock waiting for the proc maps futex. Interestingly, the test programs no longer peg the CPU. I suspect that when I originally reported this bug DR was still using spinlocks and the CPU pegging was caused by the same deadlock. |
From zhao...@google.com on October 29, 2011 07:45:31 It is something wrong earlier, i.e. the code causing the SIGSEGV or even earlier. Is it possible you can figure out which instruction cause the SIGSEGV and the corresponding application instruction by going up to master_signal_handler_C and get the signal context? |
From peterfeiner on June 08, 2011 10:21:36
What steps will reproduce the problem? 1. Checkout the source code
2. Update to revision 822 or 823 (820 and 821 do not compile).
3. Build and run the tests:
mkdir build
cd build
cmake -DBUILD_TESTS=ON ../
make -j20 && make test What is the expected output? What do you see instead? I expect to see all of the tests run. Instead, I just see
Running tests...
Test project /home/peter/dynamorio/build
Start 1: code_api|common.broadfun
and it hangs. top shows that common.broadfun is pegging a CPU. Please use labels and text to provide additional information. If I run ctest instead of make test, broadfun does not hang. r819 does not have this problem.
I'm running Ubuntu Linux 10.04 on an intel core i7.
Original issue: http://code.google.com/p/dynamorio/issues/detail?id=492
The text was updated successfully, but these errors were encountered: