* MinTTY requires gdiplus.dll ? (2) @ 2018-11-29 18:42 Houder 2018-11-29 19:58 ` Corinna Vinschen 0 siblings, 1 reply; 11+ messages in thread From: Houder @ 2018-11-29 18:42 UTC (permalink / raw) To: cygwin Hi, As I wrote in the preceding post ... Using Corinna's latest snapshot in a "Dos box" results in a prompt from bash. Once in bash, I can launch MinTTY ( 64-@@ /usr/bin/mintty ) Placing strace in front of this call, results in: 64-@@ strace /usr/bin/mintty --- Process 3112 created --- Process 3112 loaded C:\Windows\System32\ntdll.dll at 00000000777b0000 --- Process 3112 loaded C:\Windows\System32\kernel32.dll at 0000000077690000 --- Process 3112 loaded C:\Windows\System32\KernelBase.dll at 000007fefd490000 --- Process 3112 loaded E:\Cygwin64\bin\cygwin1.dll at 0000000180040000 --- Process 3112 loaded C:\Windows\System32\advapi32.dll at 000007fefd750000 --- Process 3112 loaded C:\Windows\System32\msvcrt.dll at 000007feff0a0000 --- Process 3112 loaded C:\Windows\System32\sechost.dll at 000007feff910000 --- Process 3112 loaded C:\Windows\System32\rpcrt4.dll at 000007feff630000 --- Process 3112 loaded C:\Windows\winsxs\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.7601.18837_none_fa3b1e3d17594757\comc tl32.dll at 000007fefb9c0000 --- Process 3112 loaded C:\Windows\System32\gdi32.dll at 000007fefdc10000 --- Process 3112 loaded C:\Windows\System32\user32.dll at 0000000077590000 --- Process 3112 loaded C:\Windows\System32\lpk.dll at 000007feff3a0000 --- Process 3112 loaded C:\Windows\System32\usp10.dll at 000007feff9d0000 --- Process 3112 loaded C:\Windows\System32\shlwapi.dll at 000007feff140000 --- Process 3112 loaded C:\Windows\System32\comdlg32.dll at 000007fefefa0000 --- Process 3112 loaded C:\Windows\System32\shell32.dll at 000007fefe130000 --- Process 3112 loaded C:\Windows\winsxs\amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.24280_none_145e10148b8de48e\GdiPlus.dll at 000007fefb440000 --- Process 3112 loaded C:\Windows\System32\ole32.dll at 000007feff3b0000 --- Process 3112 loaded C:\Windows\System32\imm32.dll at 000007fefd720000 --- Process 3112 loaded C:\Windows\System32\msctf.dll at 000007fefdb00000 --- Process 3112 loaded C:\Windows\System32\winmm.dll at 000007fefa040000 --- Process 3112 loaded C:\Windows\System32\winspool.drv at 000007fef9f10000 --- Process 3112, exception c0000005 at 0000000180044bb3 --- Process 3112 exited with status 0xc0000005 Segmentation fault 64-@@ uname -a CYGWIN_NT-6.1 Seven 2.12.0(0.330/5/3) x86_64 Cygwin 64-@@ For the expert among us ... ===== -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: MinTTY requires gdiplus.dll ? (2) 2018-11-29 18:42 MinTTY requires gdiplus.dll ? (2) Houder @ 2018-11-29 19:58 ` Corinna Vinschen 2018-11-29 22:11 ` Thomas Wolff 2018-11-30 12:42 ` Houder 0 siblings, 2 replies; 11+ messages in thread From: Corinna Vinschen @ 2018-11-29 19:58 UTC (permalink / raw) To: cygwin [-- Attachment #1: Type: text/plain, Size: 2792 bytes --] On Nov 29 19:41, Houder wrote: > Hi, > > As I wrote in the preceding post ... > > Using Corinna's latest snapshot in a "Dos box" results in a > prompt from bash. > > Once in bash, I can launch MinTTY ( 64-@@ /usr/bin/mintty ) > > Placing strace in front of this call, results in: > > 64-@@ strace /usr/bin/mintty > --- Process 3112 created > --- Process 3112 loaded C:\Windows\System32\ntdll.dll at 00000000777b0000 > --- Process 3112 loaded C:\Windows\System32\kernel32.dll at 0000000077690000 > --- Process 3112 loaded C:\Windows\System32\KernelBase.dll at > 000007fefd490000 > --- Process 3112 loaded E:\Cygwin64\bin\cygwin1.dll at 0000000180040000 > --- Process 3112 loaded C:\Windows\System32\advapi32.dll at 000007fefd750000 > --- Process 3112 loaded C:\Windows\System32\msvcrt.dll at 000007feff0a0000 > --- Process 3112 loaded C:\Windows\System32\sechost.dll at 000007feff910000 > --- Process 3112 loaded C:\Windows\System32\rpcrt4.dll at 000007feff630000 > --- Process 3112 loaded C:\Windows\winsxs\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.7601.18837_none_fa3b1e3d17594757\comc > tl32.dll at 000007fefb9c0000 > --- Process 3112 loaded C:\Windows\System32\gdi32.dll at 000007fefdc10000 > --- Process 3112 loaded C:\Windows\System32\user32.dll at 0000000077590000 > --- Process 3112 loaded C:\Windows\System32\lpk.dll at 000007feff3a0000 > --- Process 3112 loaded C:\Windows\System32\usp10.dll at 000007feff9d0000 > --- Process 3112 loaded C:\Windows\System32\shlwapi.dll at 000007feff140000 > --- Process 3112 loaded C:\Windows\System32\comdlg32.dll at 000007fefefa0000 > --- Process 3112 loaded C:\Windows\System32\shell32.dll at 000007fefe130000 > --- Process 3112 loaded C:\Windows\winsxs\amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.24280_none_145e10148b8de48e\GdiPlus.dll > at 000007fefb440000 > --- Process 3112 loaded C:\Windows\System32\ole32.dll at 000007feff3b0000 > --- Process 3112 loaded C:\Windows\System32\imm32.dll at 000007fefd720000 > --- Process 3112 loaded C:\Windows\System32\msctf.dll at 000007fefdb00000 > --- Process 3112 loaded C:\Windows\System32\winmm.dll at 000007fefa040000 > --- Process 3112 loaded C:\Windows\System32\winspool.drv at 000007fef9f10000 > --- Process 3112, exception c0000005 at 0000000180044bb3 > --- Process 3112 exited with status 0xc0000005 > Segmentation fault I can reproduce this but while it's clear *where* it happens, it's unclear *when* and *why* it happens. It only occurs if mintty is the first process in a process tree. I.e., when starting mintty from a shell running in a DOS window, the problem disappears. Worse, the problem also disappears when running mintty under gdb. Corinna -- Corinna Vinschen Cygwin Maintainer [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: MinTTY requires gdiplus.dll ? (2) 2018-11-29 19:58 ` Corinna Vinschen @ 2018-11-29 22:11 ` Thomas Wolff 2018-11-29 22:40 ` Houder ` (2 more replies) 2018-11-30 12:42 ` Houder 1 sibling, 3 replies; 11+ messages in thread From: Thomas Wolff @ 2018-11-29 22:11 UTC (permalink / raw) To: cygwin Am 29.11.2018 um 20:58 schrieb Corinna Vinschen: > On Nov 29 19:41, Houder wrote: >> Hi, >> >> As I wrote in the preceding post ... >> >> Using Corinna's latest snapshot in a "Dos box" results in a >> prompt from bash. >> >> Once in bash, I can launch MinTTY ( 64-@@ /usr/bin/mintty ) >> >> Placing strace in front of this call, results in: >> >> 64-@@ strace /usr/bin/mintty >> --- Process 3112 created >> --- Process 3112 loaded C:\Windows\System32\ntdll.dll at 00000000777b0000 >> ... >> --- Process 3112 loaded C:\Windows\winsxs\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.7601.18837_none_fa3b1e3d17594757\comc >> tl32.dll at 000007fefb9c0000 >> --- Process 3112 loaded C:\Windows\System32\gdi32.dll at 000007fefdc10000 >> ... >> --- Process 3112 loaded C:\Windows\winsxs\amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.24280_none_145e10148b8de48e\GdiPlus.dll >> at 000007fefb440000 >> ... >> --- Process 3112, exception c0000005 at 0000000180044bb3 >> --- Process 3112 exited with status 0xc0000005 >> Segmentation fault There's also another dll reported from winsxs rather than System32 in your log. Maybe some files got corrupted on your system? > I can reproduce this but while it's clear *where* it happens, it's > unclear *when* and *why* it happens. Unclear to me what exactly can be reproduced. With today's snapshot cygwin1.dll, I can start mintty any way, also from Explorer, via shortcut, or directly from cmd.exe (skipping cygwin shell). Thomas > It only occurs if mintty is the first process in a process tree. I.e., > when starting mintty from a shell running in a DOS window, the problem > disappears. > > Worse, the problem also disappears when running mintty under gdb. > > > Corinna -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: MinTTY requires gdiplus.dll ? (2) 2018-11-29 22:11 ` Thomas Wolff @ 2018-11-29 22:40 ` Houder 2018-11-29 23:35 ` Houder 2018-11-30 12:17 ` Corinna Vinschen 2 siblings, 0 replies; 11+ messages in thread From: Houder @ 2018-11-29 22:40 UTC (permalink / raw) To: cygwin; +Cc: Thomas Wolff On 2018-11-29 23:11, Thomas Wolff wrote: >> On Nov 29 19:41, Houder wrote: [snip] >>> Placing strace in front of this call, results in: >>> >>> 64-@@ strace /usr/bin/mintty >>> --- Process 3112 created >>> --- Process 3112 loaded C:\Windows\System32\ntdll.dll at >>> 00000000777b0000 >>> ... >>> --- Process 3112 loaded >>> C:\Windows\winsxs\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.7601.18837_none_fa3b1e3d17594757\comc >>> tl32.dll at 000007fefb9c0000 >>> --- Process 3112 loaded C:\Windows\System32\gdi32.dll at >>> 000007fefdc10000 >>> ... >>> --- Process 3112 loaded >>> C:\Windows\winsxs\amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.24280_none_145e10148b8de48e\GdiPlus.dll >>> at 000007fefb440000 >>> ... >>> --- Process 3112, exception c0000005 at 0000000180044bb3 >>> --- Process 3112 exited with status 0xc0000005 >>> Segmentation fault > There's also another dll reported from winsxs rather than System32 in > your log. Maybe some files got corrupted on your system? Files corrupted on Windows? Very likely. That is why I stay as much as is possible way from my C:\ drive (in any form or manner) ... And you are right (GdiPlus.dll) ... I missed that. Now that I know how the name must be spelled: 64-@@# find /drv/c/Windows -type f -name GdiPlus.dll /drv/c/Windows/winsxs/amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.0.7601.17514_none_3bd2e487d8e769d3/GdiPlus.dll /drv/c/Windows/winsxs/amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.17514_none_2b24536c71ed437a/GdiPlus.dll /drv/c/Windows/winsxs/x86_microsoft.windows.gdiplus_6595b64144ccf1df_1.0.7601.17514_none_83801b5eed6392d9/GdiPlus.dll /drv/c/Windows/winsxs/x86_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.17514_none_72d18a4386696c80/GdiPlus.dll /drv/c/Windows/winsxs/x86_microsoft.windows.gdiplus_6595b64144ccf1df_1.0.7601.18946_none_8382f002ed61108b/GdiPlus.dll /drv/c/Windows/winsxs/amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.0.7601.24234_none_2507449df28cf2b8/GdiPlus.dll /drv/c/Windows/winsxs/amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.0.7601.23407_none_2503fd39f28ff711/GdiPlus.dll /drv/c/Windows/winsxs/amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.0.7601.18946_none_3bd5b92bd8e4e785/GdiPlus.dll /drv/c/Windows/winsxs/x86_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.23149_none_5c0676f9a00e9169/GdiPlus.dll /drv/c/Windows/winsxs/x86_microsoft.windows.gdiplus_6595b64144ccf1df_1.0.7601.24280_none_6cb9d807070433ed/GdiPlus.dll /drv/c/Windows/winsxs/amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.18946_none_2b27281071eac12c/GdiPlus.dll /drv/c/Windows/winsxs/amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.0.7601.24280_none_250ca12ff2880ae7/GdiPlus.dll /drv/c/Windows/winsxs/amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.0.7601.23149_none_2507d13df28c8ebc/GdiPlus.dll /drv/c/Windows/winsxs/x86_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.24280_none_5c0b46eba00a0d94/GdiPlus.dll /drv/c/Windows/winsxs/amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.23407_none_14556c1e8b95d0b8/GdiPlus.dll /drv/c/Windows/winsxs/x86_microsoft.windows.gdiplus_6595b64144ccf1df_1.0.7601.23407_none_6cb13411070c2017/GdiPlus.dll /drv/c/Windows/winsxs/x86_microsoft.windows.gdiplus_6595b64144ccf1df_1.0.7601.23149_none_6cb508150708b7c2/GdiPlus.dll /drv/c/Windows/winsxs/x86_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.18946_none_72d45ee78666ea32/GdiPlus.dll /drv/c/Windows/winsxs/x86_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.23407_none_5c02a2f5a011f9be/GdiPlus.dll /drv/c/Windows/winsxs/amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.23149_none_145940228b926863/GdiPlus.dll /drv/c/Windows/winsxs/x86_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.24234_none_5c05ea59a00ef565/GdiPlus.dll /drv/c/Windows/winsxs/amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.24234_none_1458b3828b92cc5f/GdiPlus.dll /drv/c/Windows/winsxs/amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.24280_none_145e10148b8de48e/GdiPlus.dll /drv/c/Windows/winsxs/x86_microsoft.windows.gdiplus_6595b64144ccf1df_1.0.7601.24234_none_6cb47b7507091bbe/GdiPlus.dll Lot of them! Now I have to find out ... how to select the proper one and put it back in its proper place. ... and I do not even want to know why it got lost :-( Regards, Henri -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: MinTTY requires gdiplus.dll ? (2) 2018-11-29 22:11 ` Thomas Wolff 2018-11-29 22:40 ` Houder @ 2018-11-29 23:35 ` Houder 2018-11-30 12:17 ` Corinna Vinschen 2 siblings, 0 replies; 11+ messages in thread From: Houder @ 2018-11-29 23:35 UTC (permalink / raw) To: cygwin; +Cc: Thomas Wolff On 2018-11-29 23:11, Thomas Wolff wrote: >> On Nov 29 19:41, Houder wrote: [snip] >>> Placing strace in front of this call, results in: >>> >>> 64-@@ strace /usr/bin/mintty >>> --- Process 3112 created >>> --- Process 3112 loaded C:\Windows\System32\ntdll.dll at >>> 00000000777b0000 >>> ... >>> --- Process 3112 loaded >>> C:\Windows\winsxs\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.7601.18837_none_fa3b1e3d17594757\comc >>> tl32.dll at 000007fefb9c0000 >>> --- Process 3112 loaded C:\Windows\System32\gdi32.dll at >>> 000007fefdc10000 >>> ... >>> --- Process 3112 loaded >>> C:\Windows\winsxs\amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.24280_none_145e10148b8de48e\GdiPlus.dll >>> at 000007fefb440000 >>> ... >>> --- Process 3112, exception c0000005 at 0000000180044bb3 >>> --- Process 3112 exited with status 0xc0000005 >>> Segmentation fault > There's also another dll reported from winsxs rather than System32 in > your log. Maybe some files got corrupted on your system? Right. copied this one: c:/Windows/winsxs/amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.24280_none_145e10148b8de48e/GdiPlus.dll ( 2177536 Oct 6 17:58 ) to c:/Windows/system32, on the 64-bits instance of Cygwin, and copied this one: c:/Windows/winsxs/x86_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.24280_none_5c0b46eba00a0d94/GdiPlus.dll ( 1633280 Oct 6 17:43 ) to c:/Windows/system32, on the 32-bits instance of Cygwin. (and No, normally I do not do these kinds of things. I think Windows should take care of itself -- it does not) Now, "cygcheck mintty" (both on 64-bits and 32-bits) is "happy": all DLL's can be found ... Good Heavens. Henri -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: MinTTY requires gdiplus.dll ? (2) 2018-11-29 22:11 ` Thomas Wolff 2018-11-29 22:40 ` Houder 2018-11-29 23:35 ` Houder @ 2018-11-30 12:17 ` Corinna Vinschen 2 siblings, 0 replies; 11+ messages in thread From: Corinna Vinschen @ 2018-11-30 12:17 UTC (permalink / raw) To: cygwin [-- Attachment #1: Type: text/plain, Size: 2020 bytes --] On Nov 29 23:11, Thomas Wolff wrote: > Am 29.11.2018 um 20:58 schrieb Corinna Vinschen: > > On Nov 29 19:41, Houder wrote: > > > Hi, > > > > > > As I wrote in the preceding post ... > > > > > > Using Corinna's latest snapshot in a "Dos box" results in a > > > prompt from bash. > > > > > > Once in bash, I can launch MinTTY ( 64-@@ /usr/bin/mintty ) > > > > > > Placing strace in front of this call, results in: > > > > > > 64-@@ strace /usr/bin/mintty > > > --- Process 3112 created > > > --- Process 3112 loaded C:\Windows\System32\ntdll.dll at 00000000777b0000 > > > ... > > > --- Process 3112 loaded C:\Windows\winsxs\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.7601.18837_none_fa3b1e3d17594757\comc > > > tl32.dll at 000007fefb9c0000 > > > --- Process 3112 loaded C:\Windows\System32\gdi32.dll at 000007fefdc10000 > > > ... > > > --- Process 3112 loaded C:\Windows\winsxs\amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.24280_none_145e10148b8de48e\GdiPlus.dll > > > at 000007fefb440000 > > > ... > > > --- Process 3112, exception c0000005 at 0000000180044bb3 > > > --- Process 3112 exited with status 0xc0000005 > > > Segmentation fault > There's also another dll reported from winsxs rather than System32 in your > log. Maybe some files got corrupted on your system? > > > I can reproduce this but while it's clear *where* it happens, it's > > unclear *when* and *why* it happens. > Unclear to me what exactly can be reproduced. With today's snapshot > cygwin1.dll, I can start mintty any way, also from Explorer, via shortcut, > or directly from cmd.exe (skipping cygwin shell). > Thomas Are you running Windows 10? If so, you won't see this problem. It only occurs on pre-W10 systems. I have a local workaround but I want to debug this a bit more since I still don't understand *why* this occurs in the first place. Btw., a mintty-debuginfo package would be most helpful... Corinna -- Corinna Vinschen Cygwin Maintainer [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: MinTTY requires gdiplus.dll ? (2) 2018-11-29 19:58 ` Corinna Vinschen 2018-11-29 22:11 ` Thomas Wolff @ 2018-11-30 12:42 ` Houder 2018-11-30 13:19 ` Corinna Vinschen 1 sibling, 1 reply; 11+ messages in thread From: Houder @ 2018-11-30 12:42 UTC (permalink / raw) To: cygwin On 2018-11-29 20:58, Corinna Vinschen wrote: > On Nov 29 19:41, Houder wrote: [snip] >> --- Process 3112 loaded C:\Windows\System32\winmm.dll at >> 000007fefa040000 >> --- Process 3112 loaded C:\Windows\System32\winspool.drv at >> 000007fef9f10000 >> --- Process 3112, exception c0000005 at 0000000180044bb3 >> --- Process 3112 exited with status 0xc0000005 >> Segmentation fault > > I can reproduce this but while it's clear *where* it happens, it's > unclear *when* and *why* it happens. > > It only occurs if mintty is the first process in a process tree. I.e., > when starting mintty from a shell running in a DOS window, the problem > disappears. > > Worse, the problem also disappears when running mintty under gdb. (I do not understand _exactly_ what you say here) Uhm, if I invoke "gdb /usr/bin/mintty" (so, from the "Dos box") the problem does NOT disappear. That is: 2 threads are created ... and that is it; no MinTTY window showing up! (hint: my system is a bit more peculiar than yours) Henri -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: MinTTY requires gdiplus.dll ? (2) 2018-11-30 12:42 ` Houder @ 2018-11-30 13:19 ` Corinna Vinschen 2018-11-30 14:06 ` Houder 2018-12-01 8:57 ` Houder 0 siblings, 2 replies; 11+ messages in thread From: Corinna Vinschen @ 2018-11-30 13:19 UTC (permalink / raw) To: cygwin [-- Attachment #1: Type: text/plain, Size: 1438 bytes --] On Nov 30 13:42, Houder wrote: > On 2018-11-29 20:58, Corinna Vinschen wrote: > > On Nov 29 19:41, Houder wrote: > [snip] > > > > --- Process 3112 loaded C:\Windows\System32\winmm.dll at > > > 000007fefa040000 > > > --- Process 3112 loaded C:\Windows\System32\winspool.drv at > > > 000007fef9f10000 > > > --- Process 3112, exception c0000005 at 0000000180044bb3 > > > --- Process 3112 exited with status 0xc0000005 > > > Segmentation fault > > > > I can reproduce this but while it's clear *where* it happens, it's > > unclear *when* and *why* it happens. > > > > It only occurs if mintty is the first process in a process tree. I.e., > > when starting mintty from a shell running in a DOS window, the problem > > disappears. > > > > Worse, the problem also disappears when running mintty under gdb. > > (I do not understand _exactly_ what you say here) > > Uhm, if I invoke "gdb /usr/bin/mintty" (so, from the "Dos box") the problem > does NOT disappear. > > That is: > > 2 threads are created ... and that is it; no MinTTY window showing up! I'm trying to avoid remote debugging so I rather try to reproduce this @work. However, if you're interested in debugging this, set a breakpoint to clk_monotonic_t::now() and observe how the call to the virtual init() method hangs or crashes. If you find out why, I'd be most grateful. Corinna -- Corinna Vinschen Cygwin Maintainer [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: MinTTY requires gdiplus.dll ? (2) 2018-11-30 13:19 ` Corinna Vinschen @ 2018-11-30 14:06 ` Houder 2018-12-01 8:57 ` Houder 1 sibling, 0 replies; 11+ messages in thread From: Houder @ 2018-11-30 14:06 UTC (permalink / raw) To: cygwin On 2018-11-30 14:19, Corinna Vinschen wrote: > On Nov 30 13:42, Houder wrote: >> On 2018-11-29 20:58, Corinna Vinschen wrote: >> > On Nov 29 19:41, Houder wrote: >> [snip] >> >> > > --- Process 3112 loaded C:\Windows\System32\winmm.dll at >> > > 000007fefa040000 >> > > --- Process 3112 loaded C:\Windows\System32\winspool.drv at >> > > 000007fef9f10000 >> > > --- Process 3112, exception c0000005 at 0000000180044bb3 >> > > --- Process 3112 exited with status 0xc0000005 >> > > Segmentation fault >> > >> > I can reproduce this but while it's clear *where* it happens, it's >> > unclear *when* and *why* it happens. >> > >> > It only occurs if mintty is the first process in a process tree. I.e., >> > when starting mintty from a shell running in a DOS window, the problem >> > disappears. >> > >> > Worse, the problem also disappears when running mintty under gdb. >> >> (I do not understand _exactly_ what you say here) >> >> Uhm, if I invoke "gdb /usr/bin/mintty" (so, from the "Dos box") the >> problem >> does NOT disappear. >> >> That is: >> >> 2 threads are created ... and that is it; no MinTTY window showing >> up! > > I'm trying to avoid remote debugging so I rather try to reproduce this > @work. However, if you're interested in debugging this, set a > breakpoint to clk_monotonic_t::now() and observe how the call to the > virtual init() method hangs or crashes. If you find out why, I'd be > most grateful. Sorry Corinna, your request is way over my head. I can only confirm, that gdb does not return in clock.c I set a breakpoint as you instructed. Subsequently I entered "run": Thread 1 hit Breakpoint 1, clk_monotonic_t::now ( this=this@entry=0x1802f91b0 <strace::microseconds()::clock_monotonic>, clockid=clockid@entry=0, ts=ts@entry=0xffffc7c0) at /ext/build/mknetrel/src/cygwin-snapshot-20181129-1/winsup/cygwin/clock.cc Then I "stepped" through winsup/cygwin/clock.cc 169 in /ext/build/mknetrel/src/cygwin-snapshot-20181129-1/winsup/cygwin/cloc k.cc (gdb) Here "I lost control" ... Using https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git, I can see that it is "close" to the call of init() in clk_monotonic_t::now(). That is it for the moment. Still curious what Thomas W. has to report about his system. Regards, Henri -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: MinTTY requires gdiplus.dll ? (2) 2018-11-30 13:19 ` Corinna Vinschen 2018-11-30 14:06 ` Houder @ 2018-12-01 8:57 ` Houder 2018-12-01 9:49 ` Corinna Vinschen 1 sibling, 1 reply; 11+ messages in thread From: Houder @ 2018-12-01 8:57 UTC (permalink / raw) To: cygwin On 2018-11-30 14:19, Corinna Vinschen wrote: [snip] > I'm trying to avoid remote debugging so I rather try to reproduce this > @work. However, if you're interested in debugging this, set a > breakpoint to clk_monotonic_t::now() and observe how the call to the > virtual init() method hangs or crashes. If you find out why, I'd be > most grateful. Below I included parts of the diff between 1126 and 1129. You have been refactoring the code related to "timing". Above you state that the call to init() (clk_monotonic_t::init(), is my understanding) from clk_monotonic_t::now() makes the cygwin1.dll end up in "some mysterious loop" (my wording). At least on pre-W10 ... Looking at the code (trying to understand it), it appears to me that it is NOT "Windows version" dependent ... My question: why do you claim in https://cygwin.com/ml/cygwin/2018-11/msg00261.html that Windows 10 is NOT affected? Does W10 run a different "thread" in the Cygwin codebase? Regards, Henri ====== https://cygwin.com/snapshots/x86/cygwin-diffs-20181126-20181129 FILE: winsup/cygwin/clock.h: +class clk_t +{ + protected: + LONG inited; + LONGLONG ticks_per_sec; + virtual void init (); + virtual int now (clockid_t, struct timespec *) = 0 ... +class clk_monotonic_t : public clk_t +{ + protected: + virtual void init (); + private: + virtual int now (clockid_t, struct timespec *); +}; ... FILE: winsup/cygwin/clock.cc: +void +clk_t::init () +{ + spinlock spin (inited, 1); + if (!spin) + ticks_per_sec = system_tickcount_resolution (); +} + ... +void +clk_monotonic_t::init () +{ + spinlock spin (inited, 1); + if (!spin) + ticks_per_sec = system_qpc_resolution (); +} ... +int +clk_monotonic_t::now (clockid_t clockid, struct timespec *ts) +{ + if (wincap.has_precise_interrupt_time ()) + { + /* Suspend time not taken into account, as on Linux */ + ULONGLONG now; + + QueryUnbiasedInterruptTimePrecise (&now); + ts->tv_sec = now / NS100PERSEC; + now %= NS100PERSEC; + ts->tv_nsec = now * (NSPERSEC/NS100PERSEC); + } + else + { + /* https://stackoverflow.com/questions/24330496. Skip rounding since + its almost always wrong when working with timestamps */ + UINT64 bias; + LARGE_INTEGER now; + struct timespec bts; + + if (inited <= 0) + init (); // Henri: invocation of clk_monotonic_t::init() + do + { + bias = SharedUserData.InterruptTimeBias; + QueryPerformanceCounter(&now); + } + while (bias != SharedUserData.InterruptTimeBias); + /* Convert perf counter to timespec */ + ts->tv_sec = now.QuadPart / ticks_per_sec; + now.QuadPart %= ticks_per_sec; + ts->tv_nsec = (now.QuadPart * NSPERSEC) / ticks_per_sec; + /* Convert bias to timespec */ + bts.tv_sec = bias / NS100PERSEC; + bias %= NS100PERSEC; + bts.tv_nsec = bias * (NSPERSEC/NS100PERSEC); + /* Subtract bias from perf */ + ts_diff (bts, *ts); + } + return 0; +} ===== -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: MinTTY requires gdiplus.dll ? (2) 2018-12-01 8:57 ` Houder @ 2018-12-01 9:49 ` Corinna Vinschen 0 siblings, 0 replies; 11+ messages in thread From: Corinna Vinschen @ 2018-12-01 9:49 UTC (permalink / raw) To: cygwin [-- Attachment #1: Type: text/plain, Size: 1189 bytes --] On Dec 1 09:57, Houder wrote: > On 2018-11-30 14:19, Corinna Vinschen wrote: > [snip] > > > I'm trying to avoid remote debugging so I rather try to reproduce this > > @work. However, if you're interested in debugging this, set a > > breakpoint to clk_monotonic_t::now() and observe how the call to the > > virtual init() method hangs or crashes. If you find out why, I'd be > > most grateful. > > Below I included parts of the diff between 1126 and 1129. You have been > refactoring the code related to "timing". > > Above you state that the call to init() (clk_monotonic_t::init(), is my > understanding) from clk_monotonic_t::now() makes the cygwin1.dll end up > in "some mysterious loop" (my wording). At least on pre-W10 ... > > Looking at the code (trying to understand it), it appears to me that it > is NOT "Windows version" dependent ... > > My question: why do you claim in > > https://cygwin.com/ml/cygwin/2018-11/msg00261.html > > that Windows 10 is NOT affected? Does W10 run a different "thread" in > the Cygwin codebase? On W10, wincap.has_precise_interrupt_time () is true. Corinna -- Corinna Vinschen Cygwin Maintainer [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2018-12-01 9:49 UTC | newest] Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2018-11-29 18:42 MinTTY requires gdiplus.dll ? (2) Houder 2018-11-29 19:58 ` Corinna Vinschen 2018-11-29 22:11 ` Thomas Wolff 2018-11-29 22:40 ` Houder 2018-11-29 23:35 ` Houder 2018-11-30 12:17 ` Corinna Vinschen 2018-11-30 12:42 ` Houder 2018-11-30 13:19 ` Corinna Vinschen 2018-11-30 14:06 ` Houder 2018-12-01 8:57 ` Houder 2018-12-01 9:49 ` Corinna Vinschen
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).