I believe the observed mmap behavior is correct: By looking at the mappings already configured for the running process, I see that (cat /proc/<pid>/maps): ... 40084000-4009b000 r-xp 00000000 b3:02 91605 /lib/ld-2.12.1.so 4009b000-4009d000 rw-p 00000000 00:00 0 400a3000-400a4000 r--p 00017000 b3:02 91605 /lib/ld-2.12.1.so 400a4000-400a5000 rw-p 00018000 b3:02 91605 /lib/ld-2.12.1.so ...
=> some libraries are already mapped from address 0x40084000, so mmap cannot use this virtual address, and instead provides another one (test output): 0x40080000: 0x401df000 0 0x40090000: 0x4040a000 0 ... On my x86, there were no libraries mapped at this virtual address, so the full test is passing. But I get similar outputs on my x86 if I change the memory range of the test and try to mmap from an already used virtual address. -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/697004 Title: mmap for fixed address fails for higher addresses -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs