RFR: 8263775: C2: igv_print() crash unexpectedly when called from debugger
Yi Yang
yyang at openjdk.java.net
Thu Mar 18 06:17:58 UTC 2021
When investigating another c2 crash, I found igv_print crashed unexpectedly when called from the debugger. The problem is no matter whether we have created an igv printer in `Compile::igv_print_method_to_file`:
https://github.com/openjdk/jdk/blob/444a80b920f7cb61b4607d9d245d410bf872b27f/src/hotspot/share/opto/compile.cpp#L4792-L4800
`Compile:: should_print` would create a new one, and entering into unexpected network_stream initialization(See hs_err on JBS):
https://github.com/openjdk/jdk/blob/444a80b920f7cb61b4607d9d245d410bf872b27f/src/hotspot/share/opto/compile.hpp#L628-L638
Checking if debugger igv printer already exists could fix this crash. (But even if applying this patch, igv_print can not work well since it produces an ill-formed ideal graph whose tags are not enclosed, thus can not be recognized by idealgraphvisualizer, this looks like a related by different fix, so I might create another PR to address this?)
Thanks!
Yang
-------------
Commit messages:
- fix igv_print crash
Changes: https://git.openjdk.java.net/jdk/pull/3065/files
Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=3065&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8263775
Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
Patch: https://git.openjdk.java.net/jdk/pull/3065.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/3065/head:pull/3065
PR: https://git.openjdk.java.net/jdk/pull/3065
More information about the hotspot-compiler-dev
mailing list