When reading the code of:
void TITags::enumerate() {
tag_pair_list::iterator i;
for (i = tags.begin(); i != tags.end(); i++) {
// (2) false = not pinned,
// (3) true = "long" weak root = reset after finalization
gc_add_weak_root_set_entry(&i->obj, false, true);
}
}
I see the comment of "true = "long" weak root = reset after finalization"
but actually "true" would mean "short" weak root for GC.
On 7/23/07, Alexei Fedotov <[EMAIL PROTECTED]> wrote:
Folks,
> These object references are enumerated as weak
There might be a coincidence with the message Harmony VM continues to
print:
> The GC did not provide gc_add_weak_root_set_entry()
When we just got GC v4 before Salikh implemented weak roots they
counted as strong ones and were not collectable. Xiaofeng, does it
make sense?
On 7/23/07, Gregory Shimansky <[EMAIL PROTECTED]> wrote:
> Xiao-Feng Li wrote:
> > Eugene, what are tagged objects? are they non-reachable objects?
>
> Tags are JVMTI attributes that may be assigned to an object using
> SetTag() JVMTI function. These attributes may be used by heap profiler
> to analyze it. Tagged objects may be reachable or not, those that aren't
> reachable should be collected by GC. Take a look at JVMTI spec section
> that describes heap iteration API [2].
>
> In JVMTI code tags to objects are implemented as a pair of jlong and
> object reference. These object references are enumerated as weak (see
> file jvmti_tags.cpp) using gc_add_weak_root_set_entry() so GC should not
> have a problem removing unreachable objects.
>
> [1] http://java.sun.com/j2se/1.5.0/docs/guide/jvmti/jvmti.html#SetTag
> [2] http://java.sun.com/j2se/1.5.0/docs/guide/jvmti/jvmti.html#Heap
>
> > On 7/21/07, Eugene S. Ostrovsky (JIRA) <[EMAIL PROTECTED]> wrote:
> >> [drlvm][jvmti][gc] GC_gen doesn't collect tagged objects
> >> --------------------------------------------------------
> >>
> >> Key: HARMONY-4511
> >> URL:
https://issues.apache.org/jira/browse/HARMONY-4511
> >> Project: Harmony
> >> Issue Type: Bug
> >> Components: DRLVM
> >> Environment: Windows x86
> >> Reporter: Eugene S. Ostrovsky
> >>
> >>
> >> Objects tagged with SetTag() jvmti function are not collected by GC
v5.
> >> I'm not sure whether the bug is in GC or in jvmti heap iteration
> >> implementaion.
> >>
> >>
> >> --
> >> This message is automatically generated by JIRA.
> >> -
> >> You can reply to this email to add a comment to the issue online.
> >>
> >>
> >
> >
>
>
> --
> Gregory
>
>
--
With best regards,
Alexei,
ESSD, Intel