Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-6650373

Assert in methodOopDesc::make_adapters().

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P4
    • hs12
    • 7
    • hotspot
    • None
    • b02
    • sparc
    • solaris_9
    • Not verified

    Backports

      Description

        I hit this assert when running my EA VM with CTW

        # Internal Error (src/share/vm/utilities/growableArray.hpp:173), pid=8075, tid=2
        # Error: assert(0 <= i && i < _len,"illegal index")

        CodeCache is full (without EA it is full few methods further) as result
        the index to growable array is -2:

        address methodOopDesc::make_adapters(methodHandle mh, TRAPS) {
        ...
          AdapterHandlerEntry* adapter = AdapterHandlerLibrary::get_adapter(mh);
          if (adapter == NULL ) {
            THROW_0(vmSymbols::java_lang_OutOfMemoryError());
          }


        class AdapterHandlerLibrary: public AllStatic {
          static GrowableArray<AdapterHandlerEntry*> * _handlers; // the corresponding handlers
        ...
          static AdapterHandlerEntry* get_entry( int index ) { return _handlers->at(index); }
          static AdapterHandlerEntry* get_adapter(methodHandle method) { return get_entry(get_create_adapter_index(method)); }


        int AdapterHandlerLibrary::get_create_adapter_index(methodHandle method) {
        ...
            B = BufferBlob::create(AdapterHandlerEntry::name, &buffer);
            if (B == NULL) return -2; // Out of CodeCache space

        Attachments

          Issue Links

            Activity

              People

                kvn Vladimir Kozlov
                kvn Vladimir Kozlov
                Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved:
                  Imported:
                  Indexed: