This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: Help needed to track down bug: linking Linux kernel with gold creates unbootable kernel
On Thu, Apr 22, 2010 at 6:58 PM, David Miller <davem@davemloft.net> wrote:
> From: "H.J. Lu" <hjl.tools@gmail.com>
> Date: Thu, 22 Apr 2010 18:46:14 -0700
>
>> The idea of 2MB maximum page size is we may use variable
>> page size one day without recompiling everything.
>
> Indeed.
>
> Because it's 64k on sparc (even 32-bit) I was at least able to
> experiment with such things.
It is very unfortunate that binaries created by gold can't take
advantage of variable page size.
> In fact doesn't the x86_64 specification explicitly state that the
> default maximum page size is to be 2MB in ELF objects?
I saw
--
3.3.3 Page Size
Systems are permitted to use any power-of-two page size between 4KB and 64KB,
inclusive
--
in x86-64 psABI.
> Finally, I really don't personally buy the argument that the 64-bit
> address space will be seriously taken close to exhaustion due to a 2MB
> maximum page size, even with hundreds of shared libraries. ?We have
> 2^32 times (or a similar order of magnitude) more address space
> available than on 32-bit.
>
Ian's issue is they want to limit the size of virtual memory:
cputime unlimited
filesize unlimited
datasize unlimited
stacksize 8MB
coredumpsize 0kB
memoryuse unlimited
maxproc 30985
descriptors 1024
memorylocked 64kB
addressspace unlimited
maxfilelocks unlimited
sigpending 30985
msgqueue 819200
nice 0
rt_priority 0
Personally I think they can set memory size limit on a per-process/login/binary
basis via other tools, like pam, without using 4K page size on x86-64.
Gold and ld should use the same maximum page size on x86-64.
--
H.J.