RFR: 8228604: StackMapFrames are missing from redefined class bytes of retransformed classes
Alex Menkov
amenkov at openjdk.org
Tue Jan 31 23:08:50 UTC 2023
On Tue, 31 Jan 2023 04:48:45 GMT, David Holmes <dholmes at openjdk.org> wrote:
>> classFileParser drops stack map frames for JDK classes (when verification is not required).
>> As a result JvmtiClassFileReconstituter cannot restore the attribute for class redefinition.
>> Note that if the class is in CDS archive, the frames are restored from CDS, so this issue affects only JDK classes which are not in CDS.
>> This code is old (from "initial load") and I don't understand the reason it was implemented this way.
>>
>> Testing: tier1-tier6
>
> test/hotspot/jtreg/serviceability/jvmti/RedefineClasses/MissedStackMapFrames/libMissedStackMapFrames.cpp line 29:
>
>> 27: #include <string.h>
>> 28:
>> 29: static void _log(const char* format, ...) {
>
> Why do you need this instead of just calling printf?
It also flushes the output stream to avoid possible mix with output of java part of the test
-------------
PR: https://git.openjdk.org/jdk/pull/12155
More information about the serviceability-dev
mailing list