< prev index next >

src/hotspot/share/nmt/virtualMemoryTracker.cpp

Print this page
*** 387,19 ***
                        reserved_rgn->flag_name(), p2i(reserved_rgn->base()), reserved_rgn->size());
          assert(reserved_rgn->contain_region(base_addr, size), "Reserved CDS region should contain this mapping region");
          return true;
        }
  
!       // Mapped CDS string region.
-       // The string region(s) is part of the java heap.
        if (reserved_rgn->flag() == mtJavaHeap) {
          log_debug(nmt)("CDS reserved region \'%s\' as a whole (" INTPTR_FORMAT ", " SIZE_FORMAT ")",
                        reserved_rgn->flag_name(), p2i(reserved_rgn->base()), reserved_rgn->size());
          assert(reserved_rgn->contain_region(base_addr, size), "Reserved heap region should contain this mapping region");
          return true;
        }
  
        // Print some more details. Don't use UL here to avoid circularities.
        tty->print_cr("Error: existing region: [" INTPTR_FORMAT "-" INTPTR_FORMAT "), flag %u.\n"
                      "       new region: [" INTPTR_FORMAT "-" INTPTR_FORMAT "), flag %u.",
                      p2i(reserved_rgn->base()), p2i(reserved_rgn->end()), (unsigned)reserved_rgn->flag(),
                      p2i(base_addr), p2i(base_addr + size), (unsigned)flag);
--- 387,23 ---
                        reserved_rgn->flag_name(), p2i(reserved_rgn->base()), reserved_rgn->size());
          assert(reserved_rgn->contain_region(base_addr, size), "Reserved CDS region should contain this mapping region");
          return true;
        }
  
!       // Mapped CDS heap region.
        if (reserved_rgn->flag() == mtJavaHeap) {
          log_debug(nmt)("CDS reserved region \'%s\' as a whole (" INTPTR_FORMAT ", " SIZE_FORMAT ")",
                        reserved_rgn->flag_name(), p2i(reserved_rgn->base()), reserved_rgn->size());
          assert(reserved_rgn->contain_region(base_addr, size), "Reserved heap region should contain this mapping region");
          return true;
        }
  
+       if (reserved_rgn->flag() == mtCode) {
+         assert(reserved_rgn->contain_region(base_addr, size), "Reserved code region should contain this mapping region");
+         return true;
+       }
+ 
        // Print some more details. Don't use UL here to avoid circularities.
        tty->print_cr("Error: existing region: [" INTPTR_FORMAT "-" INTPTR_FORMAT "), flag %u.\n"
                      "       new region: [" INTPTR_FORMAT "-" INTPTR_FORMAT "), flag %u.",
                      p2i(reserved_rgn->base()), p2i(reserved_rgn->end()), (unsigned)reserved_rgn->flag(),
                      p2i(base_addr), p2i(base_addr + size), (unsigned)flag);
< prev index next >