diff options
author | Heiko Carstens <heiko.carstens@de.ibm.com> | 2006-06-25 08:49:30 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-06-25 13:01:25 -0400 |
commit | cc13ad6217018833e590a0e2ef5937aa16162d34 (patch) | |
tree | 9281d0c5a259d4545572d4250cea9bbbe55791fe /arch | |
parent | bb12b76e2d795431fa9fd306eb274c69e5054dc7 (diff) |
[PATCH] s390: setup.c cleanup + build fix
Cleanup & fix 31 bit compilation:
CC arch/s390/kernel/setup.o
arch/s390/kernel/setup.c:83: error: initializer element is not computable at
load time
arch/s390/kernel/setup.c:83: error: (near initialization for
'code_resource.start')
Not sure which patch in the -mm tree breaks this, but since this can be
considered a cleanup it can be merged anyway.
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/s390/kernel/setup.c | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/arch/s390/kernel/setup.c b/arch/s390/kernel/setup.c index 0a04e4a564b2..b282034452a4 100644 --- a/arch/s390/kernel/setup.c +++ b/arch/s390/kernel/setup.c | |||
@@ -47,6 +47,7 @@ | |||
47 | #include <asm/irq.h> | 47 | #include <asm/irq.h> |
48 | #include <asm/page.h> | 48 | #include <asm/page.h> |
49 | #include <asm/ptrace.h> | 49 | #include <asm/ptrace.h> |
50 | #include <asm/sections.h> | ||
50 | 51 | ||
51 | /* | 52 | /* |
52 | * Machine setup.. | 53 | * Machine setup.. |
@@ -66,11 +67,6 @@ unsigned long __initdata zholes_size[MAX_NR_ZONES]; | |||
66 | static unsigned long __initdata memory_end; | 67 | static unsigned long __initdata memory_end; |
67 | 68 | ||
68 | /* | 69 | /* |
69 | * Setup options | ||
70 | */ | ||
71 | extern int _text,_etext, _edata, _end; | ||
72 | |||
73 | /* | ||
74 | * This is set up by the setup-routine at boot-time | 70 | * This is set up by the setup-routine at boot-time |
75 | * for S390 need to find out, what we have to setup | 71 | * for S390 need to find out, what we have to setup |
76 | * using address 0x10400 ... | 72 | * using address 0x10400 ... |
@@ -80,15 +76,11 @@ extern int _text,_etext, _edata, _end; | |||
80 | 76 | ||
81 | static struct resource code_resource = { | 77 | static struct resource code_resource = { |
82 | .name = "Kernel code", | 78 | .name = "Kernel code", |
83 | .start = (unsigned long) &_text, | ||
84 | .end = (unsigned long) &_etext - 1, | ||
85 | .flags = IORESOURCE_BUSY | IORESOURCE_MEM, | 79 | .flags = IORESOURCE_BUSY | IORESOURCE_MEM, |
86 | }; | 80 | }; |
87 | 81 | ||
88 | static struct resource data_resource = { | 82 | static struct resource data_resource = { |
89 | .name = "Kernel data", | 83 | .name = "Kernel data", |
90 | .start = (unsigned long) &_etext, | ||
91 | .end = (unsigned long) &_edata - 1, | ||
92 | .flags = IORESOURCE_BUSY | IORESOURCE_MEM, | 84 | .flags = IORESOURCE_BUSY | IORESOURCE_MEM, |
93 | }; | 85 | }; |
94 | 86 | ||
@@ -422,6 +414,11 @@ setup_resources(void) | |||
422 | struct resource *res; | 414 | struct resource *res; |
423 | int i; | 415 | int i; |
424 | 416 | ||
417 | code_resource.start = (unsigned long) &_text; | ||
418 | code_resource.end = (unsigned long) &_etext - 1; | ||
419 | data_resource.start = (unsigned long) &_etext; | ||
420 | data_resource.end = (unsigned long) &_edata - 1; | ||
421 | |||
425 | for (i = 0; i < MEMORY_CHUNKS && memory_chunk[i].size > 0; i++) { | 422 | for (i = 0; i < MEMORY_CHUNKS && memory_chunk[i].size > 0; i++) { |
426 | res = alloc_bootmem_low(sizeof(struct resource)); | 423 | res = alloc_bootmem_low(sizeof(struct resource)); |
427 | res->flags = IORESOURCE_BUSY | IORESOURCE_MEM; | 424 | res->flags = IORESOURCE_BUSY | IORESOURCE_MEM; |