delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2009/03/04/09:59:57

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=-3.0 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW,SPF_PASS
X-Spam-Check-By: sourceware.org
Message-ID: <49AE9742.4070108@cwilson.fastmail.fm>
Date: Wed, 04 Mar 2009 09:59:14 -0500
From: Charles Wilson <cygwin AT cwilson DOT fastmail DOT fm>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.8.1.19) Gecko/20081209 Thunderbird/2.0.0.19 Mnenhy/0.7.6.666
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: [1.7] rebaseall doesn't solve the problem
References: <20090224100616 DOT GC6035 AT calimero DOT vinschen DOT de> <49A85971 DOT 6070300 AT cwilson DOT fastmail DOT fm> <20090228104337 DOT GG19887 AT calimero DOT vinschen DOT de> <49A986B4 DOT 2080501 AT cwilson DOT fastmail DOT fm> <20090228201625 DOT GA8503 AT calimero DOT vinschen DOT de> <49A9AA0C DOT 9020904 AT cwilson DOT fastmail DOT fm> <20090301102035 DOT GB10046 AT calimero DOT vinschen DOT de> <49AE18D8 DOT 3010009 AT cwilson DOT fastmail DOT fm> <49AE191D DOT 2000307 AT cwilson DOT fastmail DOT fm> <20090304084923 DOT GA10046 AT calimero DOT vinschen DOT de> <20090304111849 DOT GB10046 AT calimero DOT vinschen DOT de>
In-Reply-To: <20090304111849.GB10046@calimero.vinschen.de>
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

Corinna Vinschen wrote:
> Success!
> 
> - I removed all Cygwin traces from my TS test machine.
> - I disabled DEP for all applications and rebooted (necessary so that the
>   next step succeeds).
> - I installed a 1.7 distro from scratch.
> - I re-enabled DEP for all apps and rebooted.
> - I disabled the TS hack in the Cygwin DLL, rebuilt it and installed it
>   on the TS machine.
> - I started bash and it crashed.
> - I started ash (always works for some reason).
> - I called "./peflags -t 1 /bin/bash"

But it seems that the rebase package itself, when built, must be sure to
mark peflags.exe as tsaware before packaging it for distribution,
regardless of which ld.exe is used.  Just in case -- otherwise the poor
TS user won't be able to run peflags to fix everything else?

That leads to a small chicken-and-egg problem if somebody tries to build
the rebase package on a TS system, before the new ld is available.  But
we can live with that.

> - I started bash and... it worked!
> - I started GDB and it crashed.
> - I called "./peflags -t 1 /bin/gdb"
> - I started GDB and it worked.
> - I started grep and...
> - I called ... /bin/grep
> - ... worked.
> - ... and ssh ...
> - ... and mkpasswd ...
> - ... and mkgroup ...

Glad to hear it.

> So it seems that setting the TS-aware flag for all applications by
> default is the way to go, same as in Visual C++.

Makes sense.

> Unfortunately that doesn't help us with existing packages in the distro,
> only for new ones, but at least we now have the peflags tool for these
> cases.

Well, we will soon.  There's still a few things to deal with.
  1) code audit. I'd appreciate a thorough review of the code before
recommending that people use this tool on every app in their
installation.  I know, no warranty express or implied, We're Just Mean,
and You Get To Keep The Pieces, but still...
  2) peflagsall
  3) I'd like to make sure that the interface to peflags and the new
option(s) to ld are the same or very similar.  Once Dave posts his patch
for ld to the binutils list, I'm sure there will be much bike-shedding
about the name of the options, and perhaps discussion about the
implementation. I'd like to wait for ld CVS to be updated with Dave's
eventual contribution after those issues are resolved, and then make
whatever changes to peflags seem appropriate before releasing the tool
"officially".
  4) testing, testing, testing.  Naturally.

Until then, keep the URL to my previous message in this thread handy:
"Download peflags.c from ... and ..." <g>

> Nevertheless, I will disable the TS hack in Cygwin 1.7 now.  We have a
> much better solution now and the hack was a real PITA performance-wise.

I guess, as long as that URL "solution/FAQ answer" is sufficient in the
interim.

> Thank you very much for doing that!  I think this deserves a gold star.
> Igor?  Are you still with us?  I didn't see a mail from you since October.

I'm glad you're pleased with the tsaware facilities, but frankly I'm
happier that the dynbase feature SEEMS to reduce the incidence of fork
problems under Vista!  My previously-working 1.7 installation became
downright unusable last week before I wrote this tool.

--
Chuck

--
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/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019