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

CheckUnhandledOops has limited usefulness now

    Details

    • Type: Enhancement
    • Status: Closed
    • Priority: P3
    • Resolution: Fixed
    • Affects Version/s: 8
    • Fix Version/s: hs25
    • Component/s: hotspot
    • Labels:
      None
    • Subcomponent:
    • Resolved In Build:
      b53
    • CPU:
      generic
    • OS:
      generic

      Backports

        Description

        The CheckUnhandledOops code was useful for detecting naked oops when the oops were metadata. This was a frequent failure in our code (especially runtime). Since the metadata has been moved out of permgen and cannot move, this option only checks for Java objects which are the only real oops. Java objects are almost always handled in the JVM c++ code. Where they are not handled in compiled and interpreted code, -XX:+VerifyOops is a more useful option.

        The main problem though with CheckUnhandledOops is that the code redefines "oop" to be a class and has overloaded operators and conversion constructors so that the other jvm code didn't have to change. These overloaded operators never compiled on linux or windows, only solaris. Debugging on solaris with oop redefined as a class, was painful especially for the GC guys, so CheckUnhandledOops was further constrained to be only run for fastdebug.

        The solaris compilers are being updated so that they now don't accept the operator overloading. I believe we should remove this support and file another bug to add a better/different feature for catching metadata from being deallocated while it's being used. Metadata doesn't move but can be deallocated during class unloading and redefine classes.

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  lfoltan Lois Foltan
                  Reporter:
                  coleenp Coleen Phillimore
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  3 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved:
                    Imported:
                    Indexed: