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

WIN64: VM should not use Vectored Exceptions

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P4
    • Resolution: Fixed
    • Affects Version/s: 5.0, 5.0u5
    • Fix Version/s: 6
    • Component/s: hotspot
    • Labels:
      None
    • Subcomponent:
    • Resolved In Build:
      b14
    • CPU:
      x86
    • OS:
      generic, windows_2003, windows_xp

      Backports

        Description

        Our 64 bit implementations of the JVM on Windows uses Vectored Exceptions.
        This causes a conflict if the Windows OS code or native libraries want to
        use Structured Exceptions.

        We recently worked around a bug that was caused by the fact that Windows
        uses SEH in it's implementation of malloc. They expected to get delivered
        an exception in certain rare cases but we'd instead get notified in our
        VEH and terminate the program with a fatal error.
        We worked around this bug 5040096 by passing control to Windows
        if an access violation is generated in NTDLL but this is not a
        perfect solution.

        The main reason we chose VEH was the fact that Windows could not handle
        dynamically generatred code during structured exception processing.
        We assumed that noone else would want to get control on access violations.

        The fix to this problem is to stop using Vectored Exceptions and register
        all dynamically generated code with Microsoft RtlInstallFunctionCallback
        or RtlAddFunctionTable APIs. This will allow us to register our
        exception handler for our code and allow Windows to dispatch exception
        to native code that used try/except blocks.
        ###@###.### 11/3/04 16:54 GMT

          Attachments

            Issue Links

              Activity

                People

                Assignee:
                bobv Bob Vandette (Inactive)
                Reporter:
                bobv Bob Vandette (Inactive)
                Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                  Dates

                  Created:
                  Updated:
                  Resolved:
                  Imported:
                  Indexed: