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

LogManager unecessarily calls JavaAWTAccess from within a critical section

    XMLWordPrintable

Details

    Backports

      Description

        A deadlock involving AppContext, EventQueue, and LogManager.getUserContext() has been reported by JDK-8065709.
        The traces show that LogManager.getUserContext() calls JavaAWTAccess - and henceforth AppContext.getAppContex() from within a synchronized block - when in fact it could be called before entering the critical section.

        Note: This change is not sufficient to completely remove the deadlock: if the LogManager has not been initialized yet, then ensureLogManagerInitialized will end up calling LogManager.getUserContext() from within another critical section, with potentially the same effect. In this second case removing this second critical section is not an option.

        Attachments

          Issue Links

            Activity

              People

                dfuchs Daniel Fuchs
                dfuchs Daniel Fuchs
                Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved: