lkml.org 
[lkml]   [2009]   [Aug]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 2/6] include/linux/unaligned/{l,b}e_byteshift.h: Fix usage for compressed kernels
    On Wed, Aug 05, 2009 at 11:29:56AM +0200, Albin Tonnerre wrote:
    > linux/kernel.h brings at least:
    > extern int console_printk[];
    > extern const char hex_asc[];
    > which causes errors at link-time as they are not available when
    > compiling the pre-boot environement. There are also a few others:

    To be clear, for Andrew's benefit, the reason this happens is because
    we disable the 'static' when building on ARM - this is because we build
    the decompressor with -fPIC, so we can relocate _just_ the data segment
    without writing at all to the text segment.

    This is so that we can flash the compressed image into read only memory
    and have the kernel boot directly from that memory, without having to
    have an expensive and unnecessary copy.

    Having static data and functions causes complications which make this
    impossible to otherwise achieve. I don't remember the details, I'm not
    an expert on the ARM shared library stuff.


    \
     
     \ /
      Last update: 2009-08-05 23:23    [W:2.920 / U:0.244 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site