This is the mail archive of the
cygwin
mailing list for the Cygwin project.
RE: 1.7.0 CVS mmap failure
- From: "Dave Korn" <dave dot korn at artimi dot com>
- To: <cygwin at cygwin dot com>
- Date: Fri, 5 Jan 2007 18:47:16 -0000
- Subject: RE: 1.7.0 CVS mmap failure
On 05 January 2007 18:42, Brian Ford wrote:
> On Fri, 5 Jan 2007, Corinna Vinschen wrote:
>
>> In the failing case this should still work, since 0x7fff7000 + 0x9000
>> (36864 dec) == 0x80000000, so the mapping should fit into the usual 2
>> Gig address space. Why Windows fails to do it, I have no idea. The
>> error code 487 means invalid address which might mean "already taken"
>> address, but that's not visible in the strace. To figure that out would
>> require to add a bit of VirtualQuery code to mmap and add appropriate
>> debug output.
>
> I'm not quite sure exactly what this means, but I stumbled onto it in gdb:
>
> (gdb) info w32 selector
> Selector $fs
> 0x03b: base=0x7fffe000 limit=0x00000fff 32-bit Data (Read/Write, Exp-up)
> Priviledge level = 3. Byte granular.
>
> So, it does indeed look taken.
Normally in windows you have the PEB and various TEBs living in that region.
I have no idea how this behaves on x64 or with /3gb, but it would seem that it
is still reserved.
cheers,
DaveK
--
Can't think of a witty .sigline today....
--
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/