aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
Diffstat (limited to 'arch')
-rw-r--r--arch/alpha/Kconfig2
-rw-r--r--arch/alpha/kernel/smp.c6
-rw-r--r--arch/alpha/oprofile/common.c6
-rw-r--r--arch/arm/Kconfig2
-rw-r--r--arch/arm/kernel/traps.c2
-rw-r--r--arch/arm/nwfpe/fpopcode.h6
-rw-r--r--arch/m32r/Kconfig3
-rw-r--r--arch/m32r/Kconfig.debug2
-rw-r--r--arch/m32r/kernel/setup_m32700ut.c4
-rw-r--r--arch/m32r/kernel/setup_opsput.c4
-rw-r--r--arch/m32r/kernel/smpboot.c1
-rw-r--r--arch/m32r/lib/csum_partial_copy.c1
-rw-r--r--arch/m32r/mm/discontig.c2
-rw-r--r--arch/ppc/Kconfig5
-rw-r--r--arch/ppc/platforms/4xx/Kconfig14
-rw-r--r--arch/s390/kernel/cpcmd.c8
16 files changed, 43 insertions, 25 deletions
diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 083c5df42d35..189d5eababa8 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -522,7 +522,7 @@ source "mm/Kconfig"
522 522
523config NUMA 523config NUMA
524 bool "NUMA Support (EXPERIMENTAL)" 524 bool "NUMA Support (EXPERIMENTAL)"
525 depends on DISCONTIGMEM 525 depends on DISCONTIGMEM && BROKEN
526 help 526 help
527 Say Y to compile the kernel to support NUMA (Non-Uniform Memory 527 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
528 Access). This option is for configuring high-end multiprocessor 528 Access). This option is for configuring high-end multiprocessor
diff --git a/arch/alpha/kernel/smp.c b/arch/alpha/kernel/smp.c
index 8f1e78551b1e..e211aa7404e6 100644
--- a/arch/alpha/kernel/smp.c
+++ b/arch/alpha/kernel/smp.c
@@ -1036,7 +1036,7 @@ debug_spin_lock(spinlock_t * lock, const char *base_file, int line_no)
1036 " br 1b\n" 1036 " br 1b\n"
1037 ".previous" 1037 ".previous"
1038 : "=r" (tmp), "=m" (lock->lock), "=r" (stuck) 1038 : "=r" (tmp), "=m" (lock->lock), "=r" (stuck)
1039 : "1" (lock->lock), "2" (stuck) : "memory"); 1039 : "m" (lock->lock), "2" (stuck) : "memory");
1040 1040
1041 if (stuck < 0) { 1041 if (stuck < 0) {
1042 printk(KERN_WARNING 1042 printk(KERN_WARNING
@@ -1115,7 +1115,7 @@ void _raw_write_lock(rwlock_t * lock)
1115 ".previous" 1115 ".previous"
1116 : "=m" (*(volatile int *)lock), "=&r" (regx), "=&r" (regy), 1116 : "=m" (*(volatile int *)lock), "=&r" (regx), "=&r" (regy),
1117 "=&r" (stuck_lock), "=&r" (stuck_reader) 1117 "=&r" (stuck_lock), "=&r" (stuck_reader)
1118 : "0" (*(volatile int *)lock), "3" (stuck_lock), "4" (stuck_reader) : "memory"); 1118 : "m" (*(volatile int *)lock), "3" (stuck_lock), "4" (stuck_reader) : "memory");
1119 1119
1120 if (stuck_lock < 0) { 1120 if (stuck_lock < 0) {
1121 printk(KERN_WARNING "write_lock stuck at %p\n", inline_pc); 1121 printk(KERN_WARNING "write_lock stuck at %p\n", inline_pc);
@@ -1153,7 +1153,7 @@ void _raw_read_lock(rwlock_t * lock)
1153 " br 1b\n" 1153 " br 1b\n"
1154 ".previous" 1154 ".previous"
1155 : "=m" (*(volatile int *)lock), "=&r" (regx), "=&r" (stuck_lock) 1155 : "=m" (*(volatile int *)lock), "=&r" (regx), "=&r" (stuck_lock)
1156 : "0" (*(volatile int *)lock), "2" (stuck_lock) : "memory"); 1156 : "m" (*(volatile int *)lock), "2" (stuck_lock) : "memory");
1157 1157
1158 if (stuck_lock < 0) { 1158 if (stuck_lock < 0) {
1159 printk(KERN_WARNING "read_lock stuck at %p\n", inline_pc); 1159 printk(KERN_WARNING "read_lock stuck at %p\n", inline_pc);
diff --git a/arch/alpha/oprofile/common.c b/arch/alpha/oprofile/common.c
index 908eb4af8dec..ba788cfdc3c6 100644
--- a/arch/alpha/oprofile/common.c
+++ b/arch/alpha/oprofile/common.c
@@ -65,7 +65,7 @@ op_axp_setup(void)
65 model->reg_setup(&reg, ctr, &sys); 65 model->reg_setup(&reg, ctr, &sys);
66 66
67 /* Configure the registers on all cpus. */ 67 /* Configure the registers on all cpus. */
68 smp_call_function(model->cpu_setup, &reg, 0, 1); 68 (void)smp_call_function(model->cpu_setup, &reg, 0, 1);
69 model->cpu_setup(&reg); 69 model->cpu_setup(&reg);
70 return 0; 70 return 0;
71} 71}
@@ -86,7 +86,7 @@ op_axp_cpu_start(void *dummy)
86static int 86static int
87op_axp_start(void) 87op_axp_start(void)
88{ 88{
89 smp_call_function(op_axp_cpu_start, NULL, 0, 1); 89 (void)smp_call_function(op_axp_cpu_start, NULL, 0, 1);
90 op_axp_cpu_start(NULL); 90 op_axp_cpu_start(NULL);
91 return 0; 91 return 0;
92} 92}
@@ -101,7 +101,7 @@ op_axp_cpu_stop(void *dummy)
101static void 101static void
102op_axp_stop(void) 102op_axp_stop(void)
103{ 103{
104 smp_call_function(op_axp_cpu_stop, NULL, 0, 1); 104 (void)smp_call_function(op_axp_cpu_stop, NULL, 0, 1);
105 op_axp_cpu_stop(NULL); 105 op_axp_cpu_stop(NULL);
106} 106}
107 107
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 7bc4a583f4e1..c65c6eb9810d 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -310,7 +310,7 @@ menu "Kernel Features"
310 310
311config SMP 311config SMP
312 bool "Symmetric Multi-Processing (EXPERIMENTAL)" 312 bool "Symmetric Multi-Processing (EXPERIMENTAL)"
313 depends on EXPERIMENTAL #&& n 313 depends on EXPERIMENTAL && BROKEN #&& n
314 help 314 help
315 This enables support for systems with more than one CPU. If you have 315 This enables support for systems with more than one CPU. If you have
316 a system with only one CPU, like most personal computers, say N. If 316 a system with only one CPU, like most personal computers, say N. If
diff --git a/arch/arm/kernel/traps.c b/arch/arm/kernel/traps.c
index d571c37ac30c..4554c961251c 100644
--- a/arch/arm/kernel/traps.c
+++ b/arch/arm/kernel/traps.c
@@ -617,7 +617,7 @@ baddataabort(int code, unsigned long instr, struct pt_regs *regs)
617 notify_die("unknown data abort code", regs, &info, instr, 0); 617 notify_die("unknown data abort code", regs, &info, instr, 0);
618} 618}
619 619
620volatile void __bug(const char *file, int line, void *data) 620void __attribute__((noreturn)) __bug(const char *file, int line, void *data)
621{ 621{
622 printk(KERN_CRIT"kernel BUG at %s:%d!", file, line); 622 printk(KERN_CRIT"kernel BUG at %s:%d!", file, line);
623 if (data) 623 if (data)
diff --git a/arch/arm/nwfpe/fpopcode.h b/arch/arm/nwfpe/fpopcode.h
index 8035f4faafbf..1777e92a88e6 100644
--- a/arch/arm/nwfpe/fpopcode.h
+++ b/arch/arm/nwfpe/fpopcode.h
@@ -370,20 +370,20 @@ TABLE 5
370#define getRoundingMode(opcode) ((opcode & MASK_ROUNDING_MODE) >> 5) 370#define getRoundingMode(opcode) ((opcode & MASK_ROUNDING_MODE) >> 5)
371 371
372#ifdef CONFIG_FPE_NWFPE_XP 372#ifdef CONFIG_FPE_NWFPE_XP
373static inline const floatx80 getExtendedConstant(const unsigned int nIndex) 373static inline __attribute_pure__ floatx80 getExtendedConstant(const unsigned int nIndex)
374{ 374{
375 extern const floatx80 floatx80Constant[]; 375 extern const floatx80 floatx80Constant[];
376 return floatx80Constant[nIndex]; 376 return floatx80Constant[nIndex];
377} 377}
378#endif 378#endif
379 379
380static inline const float64 getDoubleConstant(const unsigned int nIndex) 380static inline __attribute_pure__ float64 getDoubleConstant(const unsigned int nIndex)
381{ 381{
382 extern const float64 float64Constant[]; 382 extern const float64 float64Constant[];
383 return float64Constant[nIndex]; 383 return float64Constant[nIndex];
384} 384}
385 385
386static inline const float32 getSingleConstant(const unsigned int nIndex) 386static inline __attribute_pure__ float32 getSingleConstant(const unsigned int nIndex)
387{ 387{
388 extern const float32 float32Constant[]; 388 extern const float32 float32Constant[];
389 return float32Constant[nIndex]; 389 return float32Constant[nIndex];
diff --git a/arch/m32r/Kconfig b/arch/m32r/Kconfig
index 7772951df313..7622d4ec5f08 100644
--- a/arch/m32r/Kconfig
+++ b/arch/m32r/Kconfig
@@ -269,7 +269,7 @@ config NR_CPUS
269# Common NUMA Features 269# Common NUMA Features
270config NUMA 270config NUMA
271 bool "Numa Memory Allocation Support" 271 bool "Numa Memory Allocation Support"
272 depends on SMP 272 depends on SMP && BROKEN
273 default n 273 default n
274 274
275# turning this on wastes a bunch of space. 275# turning this on wastes a bunch of space.
@@ -286,6 +286,7 @@ menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
286 286
287config PCI 287config PCI
288 bool "PCI support" 288 bool "PCI support"
289 depends on BROKEN
289 default n 290 default n
290 help 291 help
291 Find out whether you have a PCI motherboard. PCI is the name of a 292 Find out whether you have a PCI motherboard. PCI is the name of a
diff --git a/arch/m32r/Kconfig.debug b/arch/m32r/Kconfig.debug
index 31039723804f..bbf711bab69e 100644
--- a/arch/m32r/Kconfig.debug
+++ b/arch/m32r/Kconfig.debug
@@ -20,7 +20,7 @@ config DEBUG_STACK_USAGE
20 20
21config DEBUG_PAGEALLOC 21config DEBUG_PAGEALLOC
22 bool "Page alloc debugging" 22 bool "Page alloc debugging"
23 depends on DEBUG_KERNEL 23 depends on DEBUG_KERNEL && BROKEN
24 help 24 help
25 Unmap pages from the kernel linear mapping after free_pages(). 25 Unmap pages from the kernel linear mapping after free_pages().
26 This results in a large slowdown, but helps to find certain types 26 This results in a large slowdown, but helps to find certain types
diff --git a/arch/m32r/kernel/setup_m32700ut.c b/arch/m32r/kernel/setup_m32700ut.c
index a146b24a556b..708634b685e4 100644
--- a/arch/m32r/kernel/setup_m32700ut.c
+++ b/arch/m32r/kernel/setup_m32700ut.c
@@ -30,9 +30,11 @@
30typedef struct { 30typedef struct {
31 unsigned long icucr; /* ICU Control Register */ 31 unsigned long icucr; /* ICU Control Register */
32} icu_data_t; 32} icu_data_t;
33static icu_data_t icu_data[M32700UT_NUM_CPU_IRQ];
34#else
35icu_data_t icu_data[M32700UT_NUM_CPU_IRQ];
33#endif /* CONFIG_SMP */ 36#endif /* CONFIG_SMP */
34 37
35static icu_data_t icu_data[M32700UT_NUM_CPU_IRQ];
36 38
37static void disable_m32700ut_irq(unsigned int irq) 39static void disable_m32700ut_irq(unsigned int irq)
38{ 40{
diff --git a/arch/m32r/kernel/setup_opsput.c b/arch/m32r/kernel/setup_opsput.c
index f0301f58bcce..d7b7ec6d30f8 100644
--- a/arch/m32r/kernel/setup_opsput.c
+++ b/arch/m32r/kernel/setup_opsput.c
@@ -31,9 +31,11 @@
31typedef struct { 31typedef struct {
32 unsigned long icucr; /* ICU Control Register */ 32 unsigned long icucr; /* ICU Control Register */
33} icu_data_t; 33} icu_data_t;
34static icu_data_t icu_data[OPSPUT_NUM_CPU_IRQ];
35#else
36icu_data_t icu_data[OPSPUT_NUM_CPU_IRQ];
34#endif /* CONFIG_SMP */ 37#endif /* CONFIG_SMP */
35 38
36static icu_data_t icu_data[OPSPUT_NUM_CPU_IRQ];
37 39
38static void disable_opsput_irq(unsigned int irq) 40static void disable_opsput_irq(unsigned int irq)
39{ 41{
diff --git a/arch/m32r/kernel/smpboot.c b/arch/m32r/kernel/smpboot.c
index f9a0e723478d..640d592ea072 100644
--- a/arch/m32r/kernel/smpboot.c
+++ b/arch/m32r/kernel/smpboot.c
@@ -91,6 +91,7 @@ extern struct {
91 91
92/* which physical physical ID maps to which logical CPU number */ 92/* which physical physical ID maps to which logical CPU number */
93static volatile int physid_2_cpu[NR_CPUS]; 93static volatile int physid_2_cpu[NR_CPUS];
94#define physid_to_cpu(physid) physid_2_cpu[physid]
94 95
95/* which logical CPU number maps to which physical ID */ 96/* which logical CPU number maps to which physical ID */
96volatile int cpu_2_physid[NR_CPUS]; 97volatile int cpu_2_physid[NR_CPUS];
diff --git a/arch/m32r/lib/csum_partial_copy.c b/arch/m32r/lib/csum_partial_copy.c
index c871b4606b07..ddb16a83a8ce 100644
--- a/arch/m32r/lib/csum_partial_copy.c
+++ b/arch/m32r/lib/csum_partial_copy.c
@@ -58,3 +58,4 @@ csum_partial_copy_from_user (const unsigned char __user *src,
58 return csum_partial(dst, len-missing, sum); 58 return csum_partial(dst, len-missing, sum);
59} 59}
60EXPORT_SYMBOL(csum_partial_copy_from_user); 60EXPORT_SYMBOL(csum_partial_copy_from_user);
61EXPORT_SYMBOL(csum_partial);
diff --git a/arch/m32r/mm/discontig.c b/arch/m32r/mm/discontig.c
index 1d1a01e54b3f..08e727955555 100644
--- a/arch/m32r/mm/discontig.c
+++ b/arch/m32r/mm/discontig.c
@@ -12,12 +12,14 @@
12#include <linux/mmzone.h> 12#include <linux/mmzone.h>
13#include <linux/initrd.h> 13#include <linux/initrd.h>
14#include <linux/nodemask.h> 14#include <linux/nodemask.h>
15#include <linux/module.h>
15 16
16#include <asm/setup.h> 17#include <asm/setup.h>
17 18
18extern char _end[]; 19extern char _end[];
19 20
20struct pglist_data *node_data[MAX_NUMNODES]; 21struct pglist_data *node_data[MAX_NUMNODES];
22EXPORT_SYMBOL(node_data);
21static bootmem_data_t node_bdata[MAX_NUMNODES] __initdata; 23static bootmem_data_t node_bdata[MAX_NUMNODES] __initdata;
22 24
23pg_data_t m32r_node_data[MAX_NUMNODES]; 25pg_data_t m32r_node_data[MAX_NUMNODES];
diff --git a/arch/ppc/Kconfig b/arch/ppc/Kconfig
index f6db3b385fea..e6fa1d1cc03a 100644
--- a/arch/ppc/Kconfig
+++ b/arch/ppc/Kconfig
@@ -911,6 +911,7 @@ config PPCBUG_NVRAM
911 default y if PPC_PREP 911 default y if PPC_PREP
912 912
913config SMP 913config SMP
914 depends on PPC_STD_MMU
914 bool "Symmetric multi-processing support" 915 bool "Symmetric multi-processing support"
915 ---help--- 916 ---help---
916 This enables support for systems with more than one CPU. If you have 917 This enables support for systems with more than one CPU. If you have
@@ -930,7 +931,7 @@ config SMP
930 931
931config IRQ_ALL_CPUS 932config IRQ_ALL_CPUS
932 bool "Distribute interrupts on all CPUs by default" 933 bool "Distribute interrupts on all CPUs by default"
933 depends on SMP 934 depends on SMP && !MV64360
934 help 935 help
935 This option gives the kernel permission to distribute IRQs across 936 This option gives the kernel permission to distribute IRQs across
936 multiple CPUs. Saying N here will route all IRQs to the first 937 multiple CPUs. Saying N here will route all IRQs to the first
@@ -1121,7 +1122,9 @@ config PROC_HARDWARE
1121 1122
1122source "drivers/zorro/Kconfig" 1123source "drivers/zorro/Kconfig"
1123 1124
1125if !44x || BROKEN
1124source kernel/power/Kconfig 1126source kernel/power/Kconfig
1127endif
1125 1128
1126config SECCOMP 1129config SECCOMP
1127 bool "Enable seccomp to safely compute untrusted bytecode" 1130 bool "Enable seccomp to safely compute untrusted bytecode"
diff --git a/arch/ppc/platforms/4xx/Kconfig b/arch/ppc/platforms/4xx/Kconfig
index f7c045764e04..805dd98908a3 100644
--- a/arch/ppc/platforms/4xx/Kconfig
+++ b/arch/ppc/platforms/4xx/Kconfig
@@ -3,6 +3,11 @@ config 4xx
3 depends on 40x || 44x 3 depends on 40x || 44x
4 default y 4 default y
5 5
6config WANT_EARLY_SERIAL
7 bool
8 select SERIAL_8250
9 default n
10
6menu "IBM 4xx options" 11menu "IBM 4xx options"
7 depends on 4xx 12 depends on 4xx
8 13
@@ -18,6 +23,7 @@ config ASH
18 23
19config BUBINGA 24config BUBINGA
20 bool "Bubinga" 25 bool "Bubinga"
26 select WANT_EARLY_SERIAL
21 help 27 help
22 This option enables support for the IBM 405EP evaluation board. 28 This option enables support for the IBM 405EP evaluation board.
23 29
@@ -70,21 +76,25 @@ choice
70 76
71config BAMBOO 77config BAMBOO
72 bool "Bamboo" 78 bool "Bamboo"
79 select WANT_EARLY_SERIAL
73 help 80 help
74 This option enables support for the IBM PPC440EP evaluation board. 81 This option enables support for the IBM PPC440EP evaluation board.
75 82
76config EBONY 83config EBONY
77 bool "Ebony" 84 bool "Ebony"
85 select WANT_EARLY_SERIAL
78 help 86 help
79 This option enables support for the IBM PPC440GP evaluation board. 87 This option enables support for the IBM PPC440GP evaluation board.
80 88
81config LUAN 89config LUAN
82 bool "Luan" 90 bool "Luan"
91 select WANT_EARLY_SERIAL
83 help 92 help
84 This option enables support for the IBM PPC440SP evaluation board. 93 This option enables support for the IBM PPC440SP evaluation board.
85 94
86config OCOTEA 95config OCOTEA
87 bool "Ocotea" 96 bool "Ocotea"
97 select WANT_EARLY_SERIAL
88 help 98 help
89 This option enables support for the IBM PPC440GX evaluation board. 99 This option enables support for the IBM PPC440GX evaluation board.
90 100
@@ -230,10 +240,6 @@ config PPC_GEN550
230 depends on 4xx 240 depends on 4xx
231 default y 241 default y
232 242
233config PM
234 bool "Power Management support (EXPERIMENTAL)"
235 depends on 4xx && EXPERIMENTAL
236
237choice 243choice
238 prompt "TTYS0 device and default console" 244 prompt "TTYS0 device and default console"
239 depends on 40x 245 depends on 40x
diff --git a/arch/s390/kernel/cpcmd.c b/arch/s390/kernel/cpcmd.c
index 20062145e84e..d47fecb42cc5 100644
--- a/arch/s390/kernel/cpcmd.c
+++ b/arch/s390/kernel/cpcmd.c
@@ -46,9 +46,9 @@ int __cpcmd(const char *cmd, char *response, int rlen, int *response_code)
46 "lra 3,0(%4)\n" 46 "lra 3,0(%4)\n"
47 "lr 5,%5\n" 47 "lr 5,%5\n"
48 "diag 2,4,0x8\n" 48 "diag 2,4,0x8\n"
49 "brc 8, .Litfits\n" 49 "brc 8, 1f\n"
50 "ar 5, %5\n" 50 "ar 5, %5\n"
51 ".Litfits: \n" 51 "1: \n"
52 "lr %0,4\n" 52 "lr %0,4\n"
53 "lr %1,5\n" 53 "lr %1,5\n"
54 : "=d" (return_code), "=d" (return_len) 54 : "=d" (return_code), "=d" (return_len)
@@ -64,9 +64,9 @@ int __cpcmd(const char *cmd, char *response, int rlen, int *response_code)
64 "sam31\n" 64 "sam31\n"
65 "diag 2,4,0x8\n" 65 "diag 2,4,0x8\n"
66 "sam64\n" 66 "sam64\n"
67 "brc 8, .Litfits\n" 67 "brc 8, 1f\n"
68 "agr 5, %5\n" 68 "agr 5, %5\n"
69 ".Litfits: \n" 69 "1: \n"
70 "lgr %0,4\n" 70 "lgr %0,4\n"
71 "lgr %1,5\n" 71 "lgr %1,5\n"
72 : "=d" (return_code), "=d" (return_len) 72 : "=d" (return_code), "=d" (return_len)