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

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

XMLWordPrintable

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

      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.

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

              Created:
              Updated:
              Resolved: