JDK-4956521 : JVMTI should work when class data sharing is enabled
  • Type: Bug
  • Component: hotspot
  • Sub-Component: jvmti
  • Affected Version: 5.0
  • Priority: P4
  • Status: Closed
  • Resolution: Duplicate
  • OS: generic
  • CPU: generic
  • Submitted: 2003-11-19
  • Updated: 2006-06-14
  • Resolved: 2006-06-14
Related Reports
Duplicate :  
Relates :  
Relates :  
Relates :  
Description
This bug is submitted to track the need to investigate if there are
any issues running JVMTI when class data sharing is enabled. 
Currently sharing is disabled if hotswapping or bytecode setting are
enabled by the JVMTI agent.  They may be further issues - for example
the heap walking functions (IterateOverReachableObjects et. al.) 
iterate over references starting with a set of roots. With class
data sharing some objects are pre-marked so they won't be visited
by the JVMTI iteration functions. In addition the JVMTI iteration
functions restore mark bits on completion - this potentially breaks
if it attempts to restore mark bits the read-only space.

###@###.### 2003-11-19

Comments
EVALUATION Alan and Robert both concur that this bug can be closed. I'm closing this bug as a duplicate of the last fix (6431456).
14-06-2006

EVALUATION The RedefineClasses() and sharing work was done via the following: 5002268 4/3 Allow class sharing use with RedefineClasses The heap iteration and sharing work was done via the following: 6431456 2/3 Agents should always be able to get can_tag_objects capability in live phase I believe the above two fixes resolve the issues from this placeholder bug with respect to JVM/TI and sharing. I will verify this with Robert.
12-06-2006

EVALUATION Now that the spec allows for late-binding agents we should look into supporting heap iteration when sharing is enabled. It can wait until dolphin.
11-06-2004