RFR: JDK-8215196: [Graal] vmTestbase/nsk/jvmti/PopFrame/popframe003/TestDescription.java fails with "changes for the arguments of the popped frame's method, did not remain current argument values"
serguei.spitsyn at oracle.com
serguei.spitsyn at oracle.com
Fri Dec 6 23:39:26 UTC 2019
The PopFrame together with RedefineClasses is a part of the JVM TI
HotSwap feature.
The use case is to hot patch the methods.
If after class redefinition there are still some method frames then the
PopFrame is an option to "refresh" such frames.
I agree, this is unreliable and dangerous.
But the whole class redefinition feature is somewhat dangerous. :)
It is because the responsibility is on the agents.
And there are many ways for the agents to break the methods execution
semantics with redefinition.
Thanks,
Serguei
On 12/6/19 14:59, Dean Long wrote:
> This might be a dumb question, but how is PopFrame used in practice?
> Re-invoking the method, especially with modified argument values seems
> dangerous.
>
> dl
More information about the serviceability-dev
mailing list