RFR: 8325095: C2: bailout message broken: ResourceArea allocated string used after free [v2]

Vladimir Kozlov kvn at openjdk.org
Sat Feb 17 01:39:58 UTC 2024


On Fri, 16 Feb 2024 12:34:24 GMT, Thomas Stuefe <stuefe at openjdk.org> wrote:

>> Emanuel Peter has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   remove OrderAccess::storestore() bc single threaded only
>
> src/hotspot/share/utilities/cHeapStringHolder.hpp line 41:
> 
>> 39:     _memflags(memflags), _string(nullptr) {}
>> 40:   ~CHeapStringHolder() { clear(); };
>> 41:   NONCOPYABLE(CHeapStringHolder);
> 
> I'd opt for a use-case-specific class inside compiler. It would allow you to hard-code mtCompiler, simplifying the code, and to log with UL into the compiler log when the failure reason is changed.
> 
> A new generic string class opens a whole can of bikeshedding worms, e.g. whether to make it mutable, how best to specify MEMFLAGS etc... I would avoid that, especially since the added value fo this helper class is slim.

I agree this should be in `compiler/`

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/17710#discussion_r1493109676


More information about the hotspot-dev mailing list