| Summary: | memcheck terminates while computing leaks? | ||
|---|---|---|---|
| Product: | [Developer tools] valgrind | Reporter: | Dan Kegel <dank> |
| Component: | memcheck | Assignee: | Julian Seward <jseward> |
| Status: | REPORTED --- | ||
| Severity: | normal | CC: | njn |
| Priority: | NOR | ||
| Version First Reported In: | unspecified | ||
| Target Milestone: | wanted3.6.0 | ||
| Platform: | Compiled Sources | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed In: | ||
| Sentry Crash Report: | |||
|
Description
Dan Kegel
2009-07-29 21:15:16 UTC
On the Mac, this turns out to be almost a showstopper. If I try to run Chrome's ui test cases in batches of 30 or so as usual, valgrind *always* fails to output its list of memory leaks. If I run them in smaller batches (of size 1), valgrind usually successfully outputs a list of leaks. I may do that anyway, since that will let me associate tests with valgrind errors better, but it's kind of sad that I can't just do a single long valgrind run and expect useful output. This might be another manifestation of #192634. <theory>The leak checker asks the address space manager which pages are safe to visit. If the latter has an incorrect view of which pages are accessible, then the leak checker will segfault.</theory> Although the fault should be caught by scan_all_valid_memory_catcher, so that doesn't really make any sense. Dan, are there any more details in V's stderr output in this case, like crash messages or assertion failures? In mc_leakcheck.c, scan_all_valid_memory_catcher, if you change if (0) to if (1), do you see anything? I changed the if(0) to if (1), but haven't seen OUCH printed anywhere. I also tried the sync patch from the other bug, and it does get rid of the sync warnings but does not prevent the incomplete logs. The jury is still out on whether it prevents the assertion failures and other crashes. (I'm testing with the patch applied to the July 15th sources, since I ran into an unrelated problem with current sources.) |