summaryrefslogtreecommitdiffstats
path: root/arch/ia64/kernel/setup.c
diff options
context:
space:
mode:
authorTony Luck <tony.luck@intel.com>2005-09-28 16:09:46 -0700
committerTony Luck <tony.luck@intel.com>2005-09-28 16:09:46 -0700
commitd719948e623622cf9fc8016f7ec63422d929eb3b (patch)
tree3ea5e18a0f6c1b43392d9abc76722095ce179e59 /arch/ia64/kernel/setup.c
parentbe379124c0a5abfbe57dab2823fe8a71ce797aee (diff)
[IA64] end of kernel 'data' is at _end, not _edata
/proc/iomem describes a block of memory as "Kernel data", but the end address is derived from "_edata". The kernel actually has many other sections beyond _edata. Get the real end address from _end. Acked-by: Khalid Aziz <khalid_aziz@hp.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'arch/ia64/kernel/setup.c')
-rw-r--r--arch/ia64/kernel/setup.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/ia64/kernel/setup.c b/arch/ia64/kernel/setup.c
index 83b37c410cc..3e9b797e658 100644
--- a/arch/ia64/kernel/setup.c
+++ b/arch/ia64/kernel/setup.c
@@ -89,7 +89,7 @@ static struct resource code_resource = {
};
extern void efi_initialize_iomem_resources(struct resource *,
struct resource *);
-extern char _text[], _edata[], _etext[];
+extern char _text[], _end[], _etext[];
unsigned long ia64_max_cacheline_size;
unsigned long ia64_iobase; /* virtual address for I/O accesses */
@@ -192,7 +192,7 @@ static int __init register_memory(void)
code_resource.start = ia64_tpa(_text);
code_resource.end = ia64_tpa(_etext) - 1;
data_resource.start = ia64_tpa(_etext);
- data_resource.end = ia64_tpa(_edata) - 1;
+ data_resource.end = ia64_tpa(_end) - 1;
efi_initialize_iomem_resources(&code_resource, &data_resource);
return 0;