• David S. Miller's avatar
    [SPARC64]: Remove most limitations to kernel image size. · 64658743
    David S. Miller authored
    Currently kernel images are limited to 8MB in size, and this causes
    problems especially when enabling features that take up a lot of
    kernel image space such as lockdep.
    
    The code now will align the kernel image size up to 4MB and map that
    many locked TLB entries.  So, the only practical limitation is the
    number of available locked TLB entries which is 16 on Cheetah and 64
    on pre-Cheetah sparc64 cpus.  Niagara cpus don't actually have hw
    locked TLB entry support.  Rather, the hypervisor transparently
    provides support for "locked" TLB entries since it runs with physical
    addressing and does the initial TLB miss processing.
    
    Fully utilizing this change requires some help from SILO, a patch for
    which will be submitted to the maintainer.  Essentially, SILO will
    only currently map up to 8MB for the kernel image and that needs to be
    increased.
    
    Note that neither this patch nor the SILO bits will help with network
    booting.  The openfirmware code will only map up to a certain amount
    of kernel image during a network boot and there isn't much we can to
    about that other than to implemented a layered network booting
    facility.  Solaris has this, and calls it "wanboot" and we may
    implement something similar at some point.
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    64658743
init.c 50.1 KB