Generational ZGC: NMT assert when the heap fails to expand

XMLWordPrintable

    • gc
    • 21
    • b09

        The following assert is hit when the JVM fails to commit more memory for the heap:

        assert(size > 0) failed: Invalid size
        ...
        V [libjvm.so+0x185d157] VirtualMemoryTracker::add_committed_region(unsigned char*, unsigned long, NativeCallStack const&)+0x4d7 (virtualMemoryTracker.cpp:428)
        V [libjvm.so+0x19c1f33] ZNMT::process_fake_mapping(zoffset, unsigned long, bool)+0xa3 (memTracker.hpp:168)
        V [libjvm.so+0x19db817] ZPhysicalMemoryManager::commit(ZPhysicalMemory&)+0x47 (zPhysicalMemory.cpp:312)
        V [libjvm.so+0x19d1e4b] ZPageAllocator::alloc_page_finalize(ZPageAllocation*)+0x6b (zPageAllocator.cpp:427)

        The failure to commit memory is reported by returning that the committed size is zero. We then pass that information to the NMT subsystem, which asserts.

              Assignee:
              Stefan Karlsson
              Reporter:
              Stefan Karlsson
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: