diff options
author | Jan Beulich <jbeulich@novell.com> | 2011-03-09 16:20:13 +0000 |
---|---|---|
committer | Jan Beulich <jbeulich@novell.com> | 2011-03-09 16:20:13 +0000 |
commit | 48115d14743e4134fcdd0b8766fc59c917ae1e79 (patch) | |
tree | 844da1e931139c0b614f55c71ec9433d166c5c19 /xen/arch/x86/bzimage.c | |
parent | 4afea3d65321c40bb8afec833c860f92176bfb42 (diff) | |
download | xen-48115d14743e4134fcdd0b8766fc59c917ae1e79.tar.gz xen-48115d14743e4134fcdd0b8766fc59c917ae1e79.tar.bz2 xen-48115d14743e4134fcdd0b8766fc59c917ae1e79.zip |
Move more kernel decompression bits to .init.* sections
Based on how c/s 22986:076b63b74cf6 changed xen/libelf/Makefile I
suppose this is compatibile with those clang/llvm changes, but I
didn't actually test it.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
Diffstat (limited to 'xen/arch/x86/bzimage.c')
-rw-r--r-- | xen/arch/x86/bzimage.c | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/xen/arch/x86/bzimage.c b/xen/arch/x86/bzimage.c index 2fa87e063a..d1aecabe35 100644 --- a/xen/arch/x86/bzimage.c +++ b/xen/arch/x86/bzimage.c @@ -9,21 +9,21 @@ #define HEAPORDER 3 -static unsigned char *window; +static unsigned char *__initdata window; #define memptr long -static memptr free_mem_ptr; -static memptr free_mem_end_ptr; +static memptr __initdata free_mem_ptr; +static memptr __initdata free_mem_end_ptr; #define WSIZE 0x80000000 -static unsigned char *inbuf; -static unsigned insize; +static unsigned char *__initdata inbuf; +static unsigned __initdata insize; /* Index of next byte to be processed in inbuf: */ -static unsigned inptr; +static unsigned __initdata inptr; /* Bytes in output buffer: */ -static unsigned outcnt; +static unsigned __initdata outcnt; #define OF(args) args #define STATIC static @@ -34,7 +34,8 @@ typedef unsigned char uch; typedef unsigned short ush; typedef unsigned long ulg; -#define INIT __init +#define INIT __init +#define INITDATA __initdata #define get_byte() (inptr < insize ? inbuf[inptr++] : fill_inbuf()) @@ -55,7 +56,7 @@ typedef unsigned long ulg; # define Tracecv(c, x) #endif -static long bytes_out; +static long __initdata bytes_out; static void flush_window(void); static __init void error(char *x) |