| delorie.com/archives/browse.cgi | search |
| X-Recipient: | archive-cygwin AT delorie DOT com |
| X-Original-To: | cygwin AT cygwin DOT com |
| Delivered-To: | cygwin AT cygwin DOT com |
| DMARC-Filter: | OpenDMARC Filter v1.4.1 sourceware.org 28F613858C2C |
| Authentication-Results: | sourceware.org; |
| dmarc=pass (p=none dis=none) header.from=ispras.ru | |
| Authentication-Results: | sourceware.org; spf=pass smtp.mailfrom=ispras.ru |
| MIME-Version: | 1.0 |
| Date: | Fri, 15 Apr 2022 21:09:05 +0300 |
| From: | Alexey Izbyshev <izbyshev AT ispras DOT ru> |
| To: | cygwin AT cygwin DOT com |
| Subject: | Deadlock when pressing Ctrl-C at startup of a native console |
| application | |
| User-Agent: | Roundcube Webmail/1.4.4 |
| Message-ID: | <355a1f23bf39b0670110a840075224a2@ispras.ru> |
| X-Sender: | izbyshev AT ispras DOT ru |
| X-Spam-Status: | No, score=0.0 required=5.0 tests=BAYES_00, DOS_RCVD_IP_TWICE_B, |
| KAM_DMARC_STATUS, SPF_HELO_NONE, SPF_PASS, TXREP, | |
| T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.4 | |
| X-Spam-Checker-Version: | SpamAssassin 3.4.4 (2020-01-24) on |
| server2.sourceware.org | |
| X-BeenThere: | cygwin AT cygwin DOT com |
| X-Mailman-Version: | 2.1.29 |
| List-Id: | General Cygwin discussions and problem reports <cygwin.cygwin.com> |
| List-Archive: | <https://cygwin.com/pipermail/cygwin/> |
| List-Post: | <mailto:cygwin AT cygwin DOT com> |
| List-Help: | <mailto:cygwin-request AT cygwin DOT com?subject=help> |
| List-Subscribe: | <https://cygwin.com/mailman/listinfo/cygwin>, |
| <mailto:cygwin-request AT cygwin DOT com?subject=subscribe> | |
| Sender: | "Cygwin" <cygwin-bounces+archive-cygwin=delorie DOT com AT cygwin DOT com> |
Hi,
I've discovered that pressing Ctrl-C in a Cygwin ssh session running the
following command can cause a deadlock:
$ while python -c ''; do :; done
The exact native application doesn't matter here, e.g. "ping -n 1
localhost >/dev/null" instead of "python -c ''" also "works".
The deadlock is most easily triggered when CPU is fully loaded. It takes
no more than 20 tries on my machine to hit it (and when I first saw it,
it was on the first try).
When the deadlock is triggered, there are conhost.exe and
cygwin-console-helper.exe processes, but there is no python.
The exact process tree varies depending on Cygwin version. With the
vanilla 3.3.4 (the root is bash spawned by sshd):
bash---bash-+-conhost.exe
`-cygwin-console-helper.exe
With 20220301 snapshot
(https://cygwin.com/snapshots/x86/cygwin1-20220301.dll.xz), I get one of
the two following trees with an extra conhost.exe process:
bash---bash-+-conhost.exe
|-conhost.exe
`-cygwin-console-helper.exe
or
bash---bash-+-conhost.exe
| `-cygwin-console-helper.exe
`-conhost.exe
I was testing with 32-bit Cygwin on x64 Windows 10 21H2.
Thanks,
Alexey
--
Problem reports: https://cygwin.com/problems.html
FAQ: https://cygwin.com/faq/
Documentation: https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple
| webmaster | delorie software privacy |
| Copyright © 2019 by DJ Delorie | Updated Jul 2019 |