oopDesc::print_value_on breaks if klass is garbage

XMLWordPrintable

    • Type: Bug
    • Resolution: Unresolved
    • Priority: P4
    • 26
    • Affects Version/s: None
    • Component/s: hotspot

      The oopDesc::print_value_on function checks if an oop is a string, and if so just prints the raw string. To do this, it needs to read the klass(). If the klass() reads garbage, one of many assertion errors is likely triggered.

      This is problematic when debugging GC issues. For example, if G1's verification finds problematic oops, it will attempt to print them. If these oops have garbage (incorrect or racey) klasses, this will cause an assertion error and VM crash. G1 never finishes printing, which may make debugging more difficult.

            Assignee:
            Paul Hübner
            Reporter:
            Paul Hübner
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: