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