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

Assertion failure in new field layout code when ContendedPaddingWidth == 0.

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P3
    • 15
    • 15
    • hotspot
    • None
    • b11

    Description

      If ContendedPaddingWidth is zero, method fill_holes() triggers an assertion failure when trying to insert the padding blocks.

      #
      # Internal Error ( /openjdk/nb/rs6000_64/nightly/jdk/src/hotspot/share/classfile/fieldLayoutBuilder.cpp:48), pid=16449912, tid=258
      # assert(size > 0) failed: Sanity check
      #

      from

      if (super_klass->has_contended_annotations()) {
          LayoutRawBlock* p = new LayoutRawBlock(LayoutRawBlock::PADDING, ContendedPaddingWidth);

      Method fill_holes() should not try to insert a padding block itself, but should call FieldLayoutBuilder::insert_contended_padding() which is designed to handle the case where ContendedPaddingWidth is zero.

      Attachments

        Issue Links

          Activity

            People

              fparain Frederic Parain
              fparain Frederic Parain
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: