On 21/05/2013 12:50 PM, Coleen Phillimore wrote:
On 5/20/2013 8:42 PM, Dean Long wrote:
It seems like you could take this opportunity to make these declared
fields of java.lang.Class,
allowing, for example, getProtectionDomain0() to be a simple Java
method instead of a native method.

We actually use the protection domain and init_lock from within the vm,
so we want to be able to see it.   Signers can be moved out eventually
though.

But you can access those fields from the VM regardless - just as we access a bunch of fields in the Java level objects.

That said having these as injected fields hides them in the VM, so no issue with reflective access etc.

David


Thanks,
Coleen


dl

On 05/20/2013 03:39 PM, Coleen Phillimore wrote:
Summary: Inject protection_domain, signers, init_lock into
java_lang_Class

Net footprint change is zero except that these fields are in Java
heap rather than metaspace.  This helps a little with InstanceKlass
size which is in fixed size space with UseCompressedKlassPointers.
Included serviceability because there were SA changes to code that I
don't know is used.

Future work is to remove the signers field and the unused
SetProtectionDomain function.

open webrev at http://cr.openjdk.java.net/~coleenp/8003421/
bug link at http://bugs.sun.com/view_bug.do?bug_id=8003421

Tested with vm.quick.testlist, JPRT, jtreg java/security tests and
jck8 tests.

Thanks,
Coleen


Reply via email to