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

javaw hangs hard in awt!AwtToolkit::Dispose()

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P2
    • Resolution: Not an Issue
    • Affects Version/s: 6u6
    • Fix Version/s: 6-pool
    • Component/s: client-libs
    • Labels:
    • Subcomponent:
    • CPU:
      x86
    • OS:
      windows_xp

      Backports

        Description

        Java Web Start application running on JRE 1.6.0_06 hangs hard after
        trying to shutdown the app.
        The GUI is completely disposed.
        The process however hangs hard in the background on Windows XP
        and needs to be manually killed.
        Windows OS shutdown does not work due to the hanging process.
        The issue can be observed intermittently.

        The suspected thread that causes the hang looks like:

        before shutdown attempt
        -----------------------
        11 Id: 134.fcc Suspend: 1 Teb: 7ffae000 Unfrozen
        ChildEBP RetAddr 02fff920 7e369418 ntdll!KiFastSystemCallRet
        02fff924 6d09ed40 user32!NtUserWaitMessage+0xc
        02fff928 6d0a06c4 awt!AwtToolkit::PrimaryIdleFunc+0x10 [c:\build_area\jdk6_06\j2se\src\windows\native\sun\windows\awt_toolkit.cpp @ 1138]
        02fff93c 6d0a09ee awt!AwtToolkit::MessageLoop+0x24 [c:\build_area\jdk6_06\j2se\src\windows\native\sun\windows\awt_toolkit.cpp @ 1014]
        02fff968 008e9c91 awt!Java_sun_awt_windows_WToolkit_eventLoop+0x4e [c:\build_area\jdk6_06\j2se\src\windows\native\sun\windows\awt_toolkit.cpp @ 1858]
        WARNING: Frame IP not in any known module. Following frames may be wrong.
        02fffa20 6d88bb1c 0x8e9c91
        02fffa38 6d88bead jvm!JavaCallWrapper::JavaCallWrapper+0x7c [c:\build_area\jdk6_06\hotspot\src\share\vm\runtime\javacalls.cpp @ 59]
        02fffab0 6d913601 jvm!JavaCalls::call_helper+0x15d [c:\build_area\jdk6_06\hotspot\src\share\vm\runtime\javacalls.cpp @ 391]
        02fffaf4 6d88c0b4 jvm!os::os_exception_wrapper+0x61 [c:\build_area\jdk6_06\hotspot\src\os_cpu\win32_i486\vm\os_win32_i486.cpp @ 72]
        02fffb30 6d88c13e jvm!JavaCalls::call_virtual+0xa4 [c:\build_area\jdk6_06\hotspot\src\share\vm\runtime\javacalls.cpp @ 198]
        02fffbd8 6d8bb846 jvm!JavaCalls::call_virtual+0x7e [c:\build_area\jdk6_06\hotspot\src\share\vm\runtime\javacalls.cpp @ 205]
        02fffc28 6d966a12 jvm!thread_entry+0x96 [c:\build_area\jdk6_06\hotspot\src\share\vm\prims\jvm.cpp @ 2472]
        02fffc50 6d91326c jvm!JavaThread::thread_main_inner+0x32 [c:\build_area\jdk6_06\hotspot\src\share\vm\runtime\thread.cpp @ 1369]
        02ffff80 7c349565 jvm!java_start+0x8c [c:\build_area\jdk6_06\hotspot\src\os\win32\vm\os_win32.cpp @ 360]
        02ffffb4 7c80b683 msvcr71!_endthreadex+0xa0
        02ffffec 00000000 kernel32!BaseThreadStart+0x37

        after shutdown attempt
        ----------------------
         11 Id: 134.fcc Suspend: 1 Teb: 7ffae000 Unfrozen
        ChildEBP RetAddr 02fff828 7c91d85c ntdll!KiFastSystemCallRet
        02fff82c 7c8023ed ntdll!NtDelayExecution+0xc
        02fff884 7c802451 kernel32!SleepEx+0x61
        02fff894 77e858b6 kernel32!Sleep+0xf
        02fff8b0 7751bc78 rpcrt4!RPC_SERVER::UnregisterIf+0x9e
        02fff8d0 7751b8cd ole32!CRIFTable::UnRegisterInterface+0x2a
        02fff8e8 7751bc06 ole32!CHashTable::Cleanup+0x23
        02fff8f4 775cf77d ole32!CRIFTable::Cleanup+0x1e
        02fff904 7752312f ole32!ChannelProcessUninitialize+0x51
        02fff908 775232bd ole32!ProcessUninitialize+0x23
        02fff91c 774c4212 ole32!wCoUninitialize+0x11b
        02fff938 6d0a05e0 ole32!CoUninitialize+0x5b
        02fff944 6d0a09f8 awt!AwtToolkit::Dispose+0x30 [c:\build_area\jdk6_06\j2se\src\windows\native\sun\windows\awt_toolkit.cpp @ 442]
        02fff968 008e9c91 awt!Java_sun_awt_windows_WToolkit_eventLoop+0x58 [c:\build_area\jdk6_06\j2se\src\windows\native\sun\windows\awt_toolkit.cpp @ 1860]
        WARNING: Frame IP not in any known module. Following frames may be wrong.
        02fffa20 6d88bb1c 0x8e9c91
        02fffa38 6d88bead jvm!JavaCallWrapper::JavaCallWrapper+0x7c [c:\build_area\jdk6_06\hotspot\src\share\vm\runtime\javacalls.cpp @ 59]
        02fffab0 6d913601 jvm!JavaCalls::call_helper+0x15d [c:\build_area\jdk6_06\hotspot\src\share\vm\runtime\javacalls.cpp @ 391]
        02fffaf4 6d88c0b4 jvm!os::os_exception_wrapper+0x61 [c:\build_area\jdk6_06\hotspot\src\os_cpu\win32_i486\vm\os_win32_i486.cpp @ 72]
        02fffb30 6d88c13e jvm!JavaCalls::call_virtual+0xa4 [c:\build_area\jdk6_06\hotspot\src\share\vm\runtime\javacalls.cpp @ 198]
        02fffbd8 6d8bb846 jvm!JavaCalls::call_virtual+0x7e [c:\build_area\jdk6_06\hotspot\src\share\vm\runtime\javacalls.cpp

        No deadlock was found
        ---------------------
         Thread #11 holds two locks after the hang became manifest.
         No threads were waiting for these locks however.

        0:000> !locks
        CritSec ole32!g_mxsSingleThreadOle+8 at 775d58c8
        LockCount 0
        RecursionCount 1
        OwningThread fcc
        EntryCount 0
        ContentionCount 0
        *** Locked

        CritSec ole32!gChannelInitLock+8 at 775d5784
        LockCount 0
        RecursionCount 1
        OwningThread fcc
        EntryCount 0
        ContentionCount 0
        *** Locked

        CritSec +ec52920 at 0ec52920
        LockCount -2
        RecursionCount -1
        OwningThread 0
        EntryCount 0
        ContentionCount 0
        *** Locked

        Scanned 1113 critical sections
        0:0000>

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  nikgor Nikolay Gorshkov
                  Reporter:
                  thlenz Thomas Lenz (Inactive)
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  0 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved:
                    Imported:
                    Indexed: