Skip to content

Commit

Permalink
decompress: fix new decompressor for PIC
Browse files Browse the repository at this point in the history
The ARM kernel decompressor wants to be able to relocate r/w data
independently from the rest of the image, and we do this by ensuring that
r/w data has global visibility.  Define STATIC_RW_DATA to be empty to
achieve this.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Cc: Alain Knaff <alain@knaff.lu>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  • Loading branch information
Russell King authored and Linus Torvalds committed Mar 12, 2010
1 parent 8c1840f commit 5ceaa2f
Showing 1 changed file with 12 additions and 2 deletions.
14 changes: 12 additions & 2 deletions include/linux/decompress/mm.h
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,21 @@

/* Code active when included from pre-boot environment: */

/*
* Some architectures want to ensure there is no local data in their
* pre-boot environment, so that data can arbitarily relocated (via
* GOT references). This is achieved by defining STATIC_RW_DATA to
* be null.
*/
#ifndef STATIC_RW_DATA
#define STATIC_RW_DATA static
#endif

/* A trivial malloc implementation, adapted from
* malloc by Hannu Savolainen 1993 and Matthias Urlichs 1994
*/
static unsigned long malloc_ptr;
static int malloc_count;
STATIC_RW_DATA unsigned long malloc_ptr;
STATIC_RW_DATA int malloc_count;

static void *malloc(int size)
{
Expand Down

0 comments on commit 5ceaa2f

Please sign in to comment.