Review Request (S) 8025841: JVMTI: "vtable stub" dynamic code notification is misplaced

Vladimir Kozlov vladimir.kozlov at
Tue Feb 4 15:45:29 PST 2014

Changes look reasonable.


On 2/3/14 2:17 PM, serguei.spitsyn at wrote:
> Please, review the fix for:
> Open webrev:
> Summary:
>    The fix contributed by Oleg Mazurov to improve profiling data quality.
>    It moves the "vtable stub" dynamic code notification to the right place.
>    I've already reviewed the fix, and it looks good to me.
>    Bug report description:
>     "JVMTI_EVENT_DYNAMIC_CODE_GENERATED for "vtable stub" gets scheduled
> when
>      a new chunk of memory for subsequent vtable and itable stubs is
> allocated.
>      That chunk is uninitialized (contains zeros or garbage) although
> due to the fact
>      that the actual event delivery is deferred, at least one vtable
> comes out right.
>      This event should describe an individual vtable/itable stub (base
> address and size)
>      and only after it's been created (memory is actually populated with
> code).
>      Where VM diagnostic messages about vtable/itable stubs are issued upon
>      -XX:+PrintAdapterHandlers appears exactly the right place for JVMTI
> events as well.
>      Getting vtables/itables right is important in the context of
> performance analysis as
>      that dynamically generated code may accumulate quite noticeable CPU
> time
>      (especially itabes), sometimes larger than the actual Java methods
> called."
> Testing:
>    Oleg tested it in the Oracle Studio Performance Analyzer environment.
>    nsk.jvmti, nsk.jdi, nsk.jdwp,
>    In progress: Jtreg com/sun/jdi, java/lang/instrument
> Thanks,
> Serguei

More information about the hotspot-dev mailing list