From commits-return-30650-apmail-harmony-commits-archive=harmony.apache.org@harmony.apache.org Thu Mar 15 10:59:31 2007 Return-Path: Delivered-To: apmail-harmony-commits-archive@www.apache.org Received: (qmail 55764 invoked from network); 15 Mar 2007 10:59:31 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 15 Mar 2007 10:59:31 -0000 Received: (qmail 34515 invoked by uid 500); 15 Mar 2007 10:59:39 -0000 Delivered-To: apmail-harmony-commits-archive@harmony.apache.org Received: (qmail 34484 invoked by uid 500); 15 Mar 2007 10:59:38 -0000 Mailing-List: contact commits-help@harmony.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@harmony.apache.org Delivered-To: mailing list commits@harmony.apache.org Received: (qmail 34391 invoked by uid 99); 15 Mar 2007 10:59:38 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 15 Mar 2007 03:59:38 -0700 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO brutus.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 15 Mar 2007 03:59:29 -0700 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 8F6D1714072 for ; Thu, 15 Mar 2007 03:59:09 -0700 (PDT) Message-ID: <4442495.1173956349585.JavaMail.jira@brutus> Date: Thu, 15 Mar 2007 03:59:09 -0700 (PDT) From: "Aleksey Ignatenko (JIRA)" To: commits@harmony.apache.org Subject: [jira] Updated: (HARMONY-3402) [drlvm] j.l.Classloaders for active frames on stack are to be enumerated as strong references In-Reply-To: <11211223.1173956349402.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/HARMONY-3402?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Aleksey Ignatenko updated HARMONY-3402: --------------------------------------- Attachment: active_frames_force_strong_enum.patch > [drlvm] j.l.Classloaders for active frames on stack are to be enumerated as strong references > --------------------------------------------------------------------------------------------- > > Key: HARMONY-3402 > URL: https://issues.apache.org/jira/browse/HARMONY-3402 > Project: Harmony > Issue Type: Bug > Components: DRLVM > Reporter: Aleksey Ignatenko > Priority: Minor > Attachments: active_frames_force_strong_enum.patch > > > j.l.Classloaders for active frames on stack are to be enumerated as strong references. > The current model is: > all j.l.Classloaders and j.l.Classes are enumerated as strong references. According to class unloading discussion in dev list one can see that when there is some function on stack their j.l.Classes and thus j.l.Classloaders are to be reachable. It is true for interpreter as there is enumerated this at every frame, but it is not true for JIT mode because in JIT mode this is not specified to be on frame and thus not enumerated (and as a result not reachable). > Therefore the idea of this bug is to enumerate all j.l.Classloaders of functions on stack. > The patch attached adds running through functions on stack and forcing j.l.Classloaders (commented for a while) to be enumerated as strong references. The such forcing could be done via boolean flag in class Classloader in drlvm, if some function of class loaded by j.l.Classloader CL1 is on stack then mark it as force to strong enumeration. After that force this CL1 strong enumeration in void ClassLoader::gc_enumerate() function. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.