Web lists-archives.com

Re: cygwin stopped working




Found the workaround (read: not really a solution as it leaves the system vulnerable, but it unblocks cygwin)
- Go to Windows Defender Security Center - Exploit protection settings
- Disable System Settings - Force randomization for images (Mandatory ASLR) and Randomize memory allocations (Bottom-up ASLR) from "On by default" to "Off by default"

Now setup.exe works and can rebase everything; after that Cygwin Terminal starts as a working shell without problems.

@cygwin dev's - It seems one of the windows updates (system is on 1709 build 16299.214) might have changed my ASLR settings to "system wide mandatory" (i.e. see https://blogs.technet.microsoft.com/srd/2017/11/21/clarifying-the-behavior-of-mandatory-aslr/ for info) so that the cygwin DLLs don't work correctly anymore (i.e. see old thread about this topic here https://www.cygwin.com/ml/cygwin/2013-06/msg00092.html). This change might have made it into the system as part of the security update for Meltdown+Spectre (I am speculating), but that could explain why my cygwin installation that worked fine before (i.e. mid-2017) stopped working suddenly (beginning 2018). It would be good to device a test for the setup.exe that checks the registry (likely [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel]) for this state and alerts the user.
@jostein - rebase as part of setup.exe had failed as well (see above).
@Achim - that didn't work or do anything (see above).

On 2/12/2018 8:49 AM, Jostein Berntsen wrote:
On 11.02.18,17:16, Andreas Schiffler wrote:
Thanks for the tip, but that didn't seem to have helped.

The registry setting CYGWIN_NOWINPATH=1 did not seem to affect the
environment as seen in bash.

The variable seems to be set:

bash-4.4$ set
...snip...
COMSPEC='C:\WINDOWS\system32\cmd.exe'
CYGWIN_NOWINPATH=1
...snip

but the path variable contains still all the common system locations:

bash-4.4$ echo $PATH
/cygdrive/c/ProgramData/Oracle/Java/javapath:/cygdrive/c/Program Files
(x86)/iis express/PHP/v5.3:/cygdrive/c/Program Files/Common Files/Mic
rosoft Shared/Windows Live:/cygdrive/c/Program Files (x86)/Common
Files/Microsoft Shared/Windows Live:/cygdrive/c/Program Files (x86)/Intel/
iCLS Client:/cygdrive/c/Program Files/Intel/iCLS
Client:/cygdrive/c/Windows/system32:/cygdrive/c/Windows:...snip...

Manually overriding the PATH variable in bash did not help (presumably
because the offending DLL is already loaded):

bash-4.4$ export PATH=/usr/local/bin:/usr/bin:/bin
bash-4.4$ echo $PATH
/usr/local/bin:/usr/bin:/bin
bash-4.4$
bash-4.4$
bash-4.4$ ls
       0 [main] bash (11276) C:\Cygwin\bin\bash.exe: *** fatal error -
cygheap base mismatch detected - 0x3C52410/0x36F2410.
This problem is probably due to using incompatible versions of the cygwin
DLL.
Search for cygwin1.dll using the Windows Start->Find/Search facility
and delete all but the most recent version.  The most recent version
*should*
reside in x:\cygwin\bin, where 'x' is the drive on which you have
installed the cygwin distribution.  Rebooting is also suggested if you
are unable to find another cygwin DLL.


On 2/11/2018 2:42 AM, Doug Henderson wrote:
On 11 February 2018 at 01:18, Andreas Schiffler  wrote:
Terminal (bash) fails with:

Error: Could not fork child process: Resource temporarily unavailable (-1).
DLL rebasing may be required; see 'rebaseall / rebase --help'.

{snip}
bash-4.4$ ls
        1 [main] bash (6316) C:\Cygwin\bin\bash.exe: *** fatal error - cygheap
base mismatch detected - 0x3922410/0x3962410.
This problem is probably due to using incompatible versions of the cygwin
DLL.
{snip}
I do have another version of the cygwin dll file on the system (Plex
installation) but that never caused any issues in the past.
{snip}

Run setup.exe for Cugwin once again and let it rebase. Then reboot and
see if that works.

Jostein



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




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