On Jul 9 13:37, Marco Atzeri wrote: > Am 7/9/2018 um 11:03 AM schrieb Corinna Vinschen: > > On Jul 8 18:03, Marco Atzeri wrote: > > > Am 30.06.2018 um 22:47 schrieb Ken Brown: > > > > On 6/30/2018 11:52 AM, Marco Atzeri wrote: > > > > > > > > I've never had this problem with my own 32bit installation on W10, but I > > > > just reproduced it by doing a new installation with your list of > > > > packages.  Have you tried just installing a minimal list of packages > > > > that you need for building the packages you maintain? > > > > > > > > > > On a fresh minimal installation the problem can arise again > > > > > > $ cygcheck -cd |wc -l > > > 245 > > > > > > as the first system shared libs are lower than the rebase > > > DefaultBaseAddress=0x070000000 > > > > > > 6F810000-6F811000 r--p /cygdrive/c/Windows/System32/wow64.dll > > > 6F811000-6F844000 r-xp /cygdrive/c/Windows/System32/wow64.dll > > > > > > I think that rebase should consider different rebase > > > base address for W10. > > > > > > Using DefaultBaseAddress=0x06F000000 seems fine > > > for the time being > > > > I can do that in the rebaseall script (I have a matching patch locally), > > but it looks like a race we can't win in the long run. 240 Megs less > > space is a lot given the number of DLLs in the distro. > > I know, but until we try to support the 32bit version, we need a > way to handle it. > > > To make matters worse, I just checked my local 32 bit W10 and it turns > > out that various Windows DLLs loaded by default (even in a simple tcsh) > > are at even lower addresses, e.g. > > > > 6B690000-6B6A3000 /mnt/c/Windows/System32/netapi32.dll > > I suspect it is due the their 64bit base address netapi32.dll is 32 bit. And it's a 32 bit OS, not WOW64... > $ objdump -x /cygdrive/c/Windows/System32/wow64.dll|grep ImageBase > ImageBase 000000006b000000 > > $ objdump -x /cygdrive/c/Windows/System32/wow64win.dll |grep ImageBase > ImageBase 000000006b180000 > > It is like they put the 64bit System 32 over 0x6b000000 (maybe) 0x6b000000? In your previous mail you wrote 0x6f000000. > and the WoW64 over 0x70000000 I don't think there's a rule. On my 64 bit W10 system: 76E60000-76ED8000 /mnt/c/Windows/System32/wow64win.dll 76EE0000-76EEA000 /mnt/c/Windows/System32/wow64cpu.dll 76EF0000-76F42000 /mnt/c/Windows/System32/wow64.dll Of course you can rebase the wow64 DLLs, it's just unclear if that helps, given Windows uses different DLL addresses for their system DLLs after each reboot. > But I guess that ALSR can play around that numbers. > There is still a way to disable ALSR? ASLR is disabled by default on Cygwin executables. Unless it can't be disabled anymore for certain (system?) DLLs. Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Maintainer cygwin AT cygwin DOT com Red Hat