X-Recipient: archive-cygwin AT delorie DOT com X-Spam-Check-By: sourceware.org Date: Thu, 23 Oct 2008 15:54:51 +0200 From: Corinna Vinschen To: cygwin AT cygwin DOT com Subject: Re: cygwin bash crashes on Win Serv 2008 Message-ID: <20081023135451.GB21067@calimero.vinschen.de> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: <081020144229 DOT ZM1710 AT adobe DOT com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <081020144229.ZM1710@adobe.com> User-Agent: Mutt/1.5.16 (2007-06-09) Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com On Oct 20 14:42, Freddy Jensen wrote: > > Apparently the cygwin bash crash on Win Serv 2008 is related to the > "Terminal Services" on Windows. It looks like the problem is not > there if the Terminal Services has not been installed/started. I can confirm this observation. It doesn't matter if the TS services are started or not. Just by having TS installed, certain Cygwin processes crash. In my case I can observe crashes in bash, grep, and GDB, as soon as TS is installed. However, other applications run fine, tcsh, vim, all from coreutils as far as I can see... The crashes don't occur in Cygwin, but in the application code. As I said, one of the crashing apps is bash. I created a full debug bash version and a special debug version of GDB which, for some reason, runs fine, in contrast to the net release version of GDB. What happens is that some arbitrary application function is called from main() and the first instruction in this function is the opcode for storing the frame pointer on the stack, `push %ebp'. This is, in theory, an entirely harmless operation. The stack and register content before and after the crash are looking absolutely normal. The push does neither operate on an invalid address nor on a page boundary, nor is it misaligned. It's just a push to some arbitrary address within an existing stack page. Another strange effect is that even teeny little changes to the application code (adding a `puts("hello");' or something) result in entirely different function calls to crash. The only constant factor is that it's always the first assembler instruction in some application function. For testing I tried to disabled SEH and the Ctrl-C handler in Cygwin, but the crashes persist. This puzzles me no end. Here's the only way I found so far to get rid of the crashes: Remove Terminal Services and reboot the machine. Reinstall TS and you're back to square one. Any hints or help to debug this weird phenomenon are gratefully appreciated. Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/