diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-12-12 06:00:02 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-12-12 06:00:14 -0500 |
commit | 92bf73e90a35d40ebc1446488218f03833b36f86 (patch) | |
tree | 8aaae58fcb7f3e06e63a5214f910acf47f4cc9d6 /arch | |
parent | 447557ac7ce120306b4a31d6003faef39cb1bf14 (diff) | |
parent | 915b0d0104b72fd36af088ba4b11b5690bc96a6c (diff) |
Merge branch 'x86/irq' into perfcounters/core
( with manual semantic merge of arch/x86/kernel/cpu/perf_counter.c )
Diffstat (limited to 'arch')
29 files changed, 278 insertions, 155 deletions
diff --git a/arch/arm/include/asm/bitops.h b/arch/arm/include/asm/bitops.h index 9a1db20e032a..63a481fbbed4 100644 --- a/arch/arm/include/asm/bitops.h +++ b/arch/arm/include/asm/bitops.h | |||
@@ -237,6 +237,7 @@ extern int _find_next_bit_be(const unsigned long *p, int size, int offset); | |||
237 | #if __LINUX_ARM_ARCH__ < 5 | 237 | #if __LINUX_ARM_ARCH__ < 5 |
238 | 238 | ||
239 | #include <asm-generic/bitops/ffz.h> | 239 | #include <asm-generic/bitops/ffz.h> |
240 | #include <asm-generic/bitops/__fls.h> | ||
240 | #include <asm-generic/bitops/__ffs.h> | 241 | #include <asm-generic/bitops/__ffs.h> |
241 | #include <asm-generic/bitops/fls.h> | 242 | #include <asm-generic/bitops/fls.h> |
242 | #include <asm-generic/bitops/ffs.h> | 243 | #include <asm-generic/bitops/ffs.h> |
@@ -277,16 +278,19 @@ static inline int constant_fls(int x) | |||
277 | * the clz instruction for much better code efficiency. | 278 | * the clz instruction for much better code efficiency. |
278 | */ | 279 | */ |
279 | 280 | ||
280 | #define __fls(x) \ | ||
281 | ( __builtin_constant_p(x) ? constant_fls(x) : \ | ||
282 | ({ int __r; asm("clz\t%0, %1" : "=r"(__r) : "r"(x) : "cc"); 32-__r; }) ) | ||
283 | |||
284 | /* Implement fls() in C so that 64-bit args are suitably truncated */ | ||
285 | static inline int fls(int x) | 281 | static inline int fls(int x) |
286 | { | 282 | { |
287 | return __fls(x); | 283 | int ret; |
284 | |||
285 | if (__builtin_constant_p(x)) | ||
286 | return constant_fls(x); | ||
287 | |||
288 | asm("clz\t%0, %1" : "=r" (ret) : "r" (x) : "cc"); | ||
289 | ret = 32 - ret; | ||
290 | return ret; | ||
288 | } | 291 | } |
289 | 292 | ||
293 | #define __fls(x) (fls(x) - 1) | ||
290 | #define ffs(x) ({ unsigned long __t = (x); fls(__t & -__t); }) | 294 | #define ffs(x) ({ unsigned long __t = (x); fls(__t & -__t); }) |
291 | #define __ffs(x) (ffs(x) - 1) | 295 | #define __ffs(x) (ffs(x) - 1) |
292 | #define ffz(x) __ffs( ~(x) ) | 296 | #define ffz(x) __ffs( ~(x) ) |
diff --git a/arch/arm/include/asm/processor.h b/arch/arm/include/asm/processor.h index 517a4d6ffc74..6ff33790f47b 100644 --- a/arch/arm/include/asm/processor.h +++ b/arch/arm/include/asm/processor.h | |||
@@ -23,7 +23,7 @@ | |||
23 | #include <asm/types.h> | 23 | #include <asm/types.h> |
24 | 24 | ||
25 | #ifdef __KERNEL__ | 25 | #ifdef __KERNEL__ |
26 | #define STACK_TOP ((current->personality == PER_LINUX_32BIT) ? \ | 26 | #define STACK_TOP ((current->personality & ADDR_LIMIT_32BIT) ? \ |
27 | TASK_SIZE : TASK_SIZE_26) | 27 | TASK_SIZE : TASK_SIZE_26) |
28 | #define STACK_TOP_MAX TASK_SIZE | 28 | #define STACK_TOP_MAX TASK_SIZE |
29 | #endif | 29 | #endif |
diff --git a/arch/arm/mach-omap1/io.c b/arch/arm/mach-omap1/io.c index b3bd8ca85118..4c3e582f3d3c 100644 --- a/arch/arm/mach-omap1/io.c +++ b/arch/arm/mach-omap1/io.c | |||
@@ -128,7 +128,7 @@ void __init omap1_map_common_io(void) | |||
128 | * Common low-level hardware init for omap1. This should only get called from | 128 | * Common low-level hardware init for omap1. This should only get called from |
129 | * board specific init. | 129 | * board specific init. |
130 | */ | 130 | */ |
131 | void __init omap1_init_common_hw() | 131 | void __init omap1_init_common_hw(void) |
132 | { | 132 | { |
133 | /* REVISIT: Refer to OMAP5910 Errata, Advisory SYS_1: "Timeout Abort | 133 | /* REVISIT: Refer to OMAP5910 Errata, Advisory SYS_1: "Timeout Abort |
134 | * on a Posted Write in the TIPB Bridge". | 134 | * on a Posted Write in the TIPB Bridge". |
diff --git a/arch/arm/mm/alignment.c b/arch/arm/mm/alignment.c index 133e65d166b3..2d5884ce0435 100644 --- a/arch/arm/mm/alignment.c +++ b/arch/arm/mm/alignment.c | |||
@@ -70,6 +70,10 @@ static unsigned long ai_dword; | |||
70 | static unsigned long ai_multi; | 70 | static unsigned long ai_multi; |
71 | static int ai_usermode; | 71 | static int ai_usermode; |
72 | 72 | ||
73 | #define UM_WARN (1 << 0) | ||
74 | #define UM_FIXUP (1 << 1) | ||
75 | #define UM_SIGNAL (1 << 2) | ||
76 | |||
73 | #ifdef CONFIG_PROC_FS | 77 | #ifdef CONFIG_PROC_FS |
74 | static const char *usermode_action[] = { | 78 | static const char *usermode_action[] = { |
75 | "ignored", | 79 | "ignored", |
@@ -754,7 +758,7 @@ do_alignment(unsigned long addr, unsigned int fsr, struct pt_regs *regs) | |||
754 | user: | 758 | user: |
755 | ai_user += 1; | 759 | ai_user += 1; |
756 | 760 | ||
757 | if (ai_usermode & 1) | 761 | if (ai_usermode & UM_WARN) |
758 | printk("Alignment trap: %s (%d) PC=0x%08lx Instr=0x%0*lx " | 762 | printk("Alignment trap: %s (%d) PC=0x%08lx Instr=0x%0*lx " |
759 | "Address=0x%08lx FSR 0x%03x\n", current->comm, | 763 | "Address=0x%08lx FSR 0x%03x\n", current->comm, |
760 | task_pid_nr(current), instrptr, | 764 | task_pid_nr(current), instrptr, |
@@ -762,10 +766,10 @@ do_alignment(unsigned long addr, unsigned int fsr, struct pt_regs *regs) | |||
762 | thumb_mode(regs) ? tinstr : instr, | 766 | thumb_mode(regs) ? tinstr : instr, |
763 | addr, fsr); | 767 | addr, fsr); |
764 | 768 | ||
765 | if (ai_usermode & 2) | 769 | if (ai_usermode & UM_FIXUP) |
766 | goto fixup; | 770 | goto fixup; |
767 | 771 | ||
768 | if (ai_usermode & 4) | 772 | if (ai_usermode & UM_SIGNAL) |
769 | force_sig(SIGBUS, current); | 773 | force_sig(SIGBUS, current); |
770 | else | 774 | else |
771 | set_cr(cr_no_alignment); | 775 | set_cr(cr_no_alignment); |
@@ -796,6 +800,22 @@ static int __init alignment_init(void) | |||
796 | res->write_proc = proc_alignment_write; | 800 | res->write_proc = proc_alignment_write; |
797 | #endif | 801 | #endif |
798 | 802 | ||
803 | /* | ||
804 | * ARMv6 and later CPUs can perform unaligned accesses for | ||
805 | * most single load and store instructions up to word size. | ||
806 | * LDM, STM, LDRD and STRD still need to be handled. | ||
807 | * | ||
808 | * Ignoring the alignment fault is not an option on these | ||
809 | * CPUs since we spin re-faulting the instruction without | ||
810 | * making any progress. | ||
811 | */ | ||
812 | if (cpu_architecture() >= CPU_ARCH_ARMv6 && (cr_alignment & CR_U)) { | ||
813 | cr_alignment &= ~CR_A; | ||
814 | cr_no_alignment &= ~CR_A; | ||
815 | set_cr(cr_alignment); | ||
816 | ai_usermode = UM_FIXUP; | ||
817 | } | ||
818 | |||
799 | hook_fault_code(1, do_alignment, SIGILL, "alignment exception"); | 819 | hook_fault_code(1, do_alignment, SIGILL, "alignment exception"); |
800 | hook_fault_code(3, do_alignment, SIGILL, "alignment exception"); | 820 | hook_fault_code(3, do_alignment, SIGILL, "alignment exception"); |
801 | 821 | ||
diff --git a/arch/arm/plat-omap/include/mach/omapfb.h b/arch/arm/plat-omap/include/mach/omapfb.h index ec67fb428607..7b74d1255e0b 100644 --- a/arch/arm/plat-omap/include/mach/omapfb.h +++ b/arch/arm/plat-omap/include/mach/omapfb.h | |||
@@ -353,8 +353,8 @@ struct omapfb_device { | |||
353 | u32 pseudo_palette[17]; | 353 | u32 pseudo_palette[17]; |
354 | 354 | ||
355 | struct lcd_panel *panel; /* LCD panel */ | 355 | struct lcd_panel *panel; /* LCD panel */ |
356 | struct lcd_ctrl *ctrl; /* LCD controller */ | 356 | const struct lcd_ctrl *ctrl; /* LCD controller */ |
357 | struct lcd_ctrl *int_ctrl; /* internal LCD ctrl */ | 357 | const struct lcd_ctrl *int_ctrl; /* internal LCD ctrl */ |
358 | struct lcd_ctrl_extif *ext_if; /* LCD ctrl external | 358 | struct lcd_ctrl_extif *ext_if; /* LCD ctrl external |
359 | interface */ | 359 | interface */ |
360 | struct device *dev; | 360 | struct device *dev; |
diff --git a/arch/arm/plat-omap/sram.c b/arch/arm/plat-omap/sram.c index 9f9a921829c0..dcd9d16da2e9 100644 --- a/arch/arm/plat-omap/sram.c +++ b/arch/arm/plat-omap/sram.c | |||
@@ -255,7 +255,7 @@ void omap_sram_reprogram_clock(u32 dpllctl, u32 ckctl) | |||
255 | if (!_omap_sram_reprogram_clock) | 255 | if (!_omap_sram_reprogram_clock) |
256 | omap_sram_error(); | 256 | omap_sram_error(); |
257 | 257 | ||
258 | return _omap_sram_reprogram_clock(dpllctl, ckctl); | 258 | _omap_sram_reprogram_clock(dpllctl, ckctl); |
259 | } | 259 | } |
260 | 260 | ||
261 | int __init omap1_sram_init(void) | 261 | int __init omap1_sram_init(void) |
@@ -282,8 +282,8 @@ void omap2_sram_ddr_init(u32 *slow_dll_ctrl, u32 fast_dll_ctrl, | |||
282 | if (!_omap2_sram_ddr_init) | 282 | if (!_omap2_sram_ddr_init) |
283 | omap_sram_error(); | 283 | omap_sram_error(); |
284 | 284 | ||
285 | return _omap2_sram_ddr_init(slow_dll_ctrl, fast_dll_ctrl, | 285 | _omap2_sram_ddr_init(slow_dll_ctrl, fast_dll_ctrl, |
286 | base_cs, force_unlock); | 286 | base_cs, force_unlock); |
287 | } | 287 | } |
288 | 288 | ||
289 | static void (*_omap2_sram_reprogram_sdrc)(u32 perf_level, u32 dll_val, | 289 | static void (*_omap2_sram_reprogram_sdrc)(u32 perf_level, u32 dll_val, |
@@ -294,7 +294,7 @@ void omap2_sram_reprogram_sdrc(u32 perf_level, u32 dll_val, u32 mem_type) | |||
294 | if (!_omap2_sram_reprogram_sdrc) | 294 | if (!_omap2_sram_reprogram_sdrc) |
295 | omap_sram_error(); | 295 | omap_sram_error(); |
296 | 296 | ||
297 | return _omap2_sram_reprogram_sdrc(perf_level, dll_val, mem_type); | 297 | _omap2_sram_reprogram_sdrc(perf_level, dll_val, mem_type); |
298 | } | 298 | } |
299 | 299 | ||
300 | static u32 (*_omap2_set_prcm)(u32 dpll_ctrl_val, u32 sdrc_rfr_val, int bypass); | 300 | static u32 (*_omap2_set_prcm)(u32 dpll_ctrl_val, u32 sdrc_rfr_val, int bypass); |
diff --git a/arch/arm/plat-orion/pcie.c b/arch/arm/plat-orion/pcie.c index 883902fead89..d41d41d78ad9 100644 --- a/arch/arm/plat-orion/pcie.c +++ b/arch/arm/plat-orion/pcie.c | |||
@@ -35,7 +35,7 @@ | |||
35 | #define PCIE_CONF_REG(r) ((((r) & 0xf00) << 16) | ((r) & 0xfc)) | 35 | #define PCIE_CONF_REG(r) ((((r) & 0xf00) << 16) | ((r) & 0xfc)) |
36 | #define PCIE_CONF_BUS(b) (((b) & 0xff) << 16) | 36 | #define PCIE_CONF_BUS(b) (((b) & 0xff) << 16) |
37 | #define PCIE_CONF_DEV(d) (((d) & 0x1f) << 11) | 37 | #define PCIE_CONF_DEV(d) (((d) & 0x1f) << 11) |
38 | #define PCIE_CONF_FUNC(f) (((f) & 0x3) << 8) | 38 | #define PCIE_CONF_FUNC(f) (((f) & 0x7) << 8) |
39 | #define PCIE_CONF_DATA_OFF 0x18fc | 39 | #define PCIE_CONF_DATA_OFF 0x18fc |
40 | #define PCIE_MASK_OFF 0x1910 | 40 | #define PCIE_MASK_OFF 0x1910 |
41 | #define PCIE_CTRL_OFF 0x1a00 | 41 | #define PCIE_CTRL_OFF 0x1a00 |
diff --git a/arch/ia64/configs/generic_defconfig b/arch/ia64/configs/generic_defconfig index e05f9e1d3faa..27eb67604c53 100644 --- a/arch/ia64/configs/generic_defconfig +++ b/arch/ia64/configs/generic_defconfig | |||
@@ -1,7 +1,7 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.27-rc1 | 3 | # Linux kernel version: 2.6.28-rc7 |
4 | # Mon Aug 4 15:38:01 2008 | 4 | # Mon Dec 8 08:12:07 2008 |
5 | # | 5 | # |
6 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | 6 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" |
7 | 7 | ||
@@ -26,6 +26,7 @@ CONFIG_LOG_BUF_SHIFT=20 | |||
26 | CONFIG_CGROUPS=y | 26 | CONFIG_CGROUPS=y |
27 | # CONFIG_CGROUP_DEBUG is not set | 27 | # CONFIG_CGROUP_DEBUG is not set |
28 | # CONFIG_CGROUP_NS is not set | 28 | # CONFIG_CGROUP_NS is not set |
29 | # CONFIG_CGROUP_FREEZER is not set | ||
29 | # CONFIG_CGROUP_DEVICE is not set | 30 | # CONFIG_CGROUP_DEVICE is not set |
30 | CONFIG_CPUSETS=y | 31 | CONFIG_CPUSETS=y |
31 | # CONFIG_GROUP_SCHED is not set | 32 | # CONFIG_GROUP_SCHED is not set |
@@ -46,7 +47,6 @@ CONFIG_CC_OPTIMIZE_FOR_SIZE=y | |||
46 | CONFIG_SYSCTL=y | 47 | CONFIG_SYSCTL=y |
47 | # CONFIG_EMBEDDED is not set | 48 | # CONFIG_EMBEDDED is not set |
48 | CONFIG_SYSCTL_SYSCALL=y | 49 | CONFIG_SYSCTL_SYSCALL=y |
49 | CONFIG_SYSCTL_SYSCALL_CHECK=y | ||
50 | CONFIG_KALLSYMS=y | 50 | CONFIG_KALLSYMS=y |
51 | CONFIG_KALLSYMS_ALL=y | 51 | CONFIG_KALLSYMS_ALL=y |
52 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | 52 | # CONFIG_KALLSYMS_EXTRA_PASS is not set |
@@ -63,7 +63,9 @@ CONFIG_SIGNALFD=y | |||
63 | CONFIG_TIMERFD=y | 63 | CONFIG_TIMERFD=y |
64 | CONFIG_EVENTFD=y | 64 | CONFIG_EVENTFD=y |
65 | CONFIG_SHMEM=y | 65 | CONFIG_SHMEM=y |
66 | CONFIG_AIO=y | ||
66 | CONFIG_VM_EVENT_COUNTERS=y | 67 | CONFIG_VM_EVENT_COUNTERS=y |
68 | CONFIG_PCI_QUIRKS=y | ||
67 | CONFIG_SLUB_DEBUG=y | 69 | CONFIG_SLUB_DEBUG=y |
68 | # CONFIG_SLAB is not set | 70 | # CONFIG_SLAB is not set |
69 | CONFIG_SLUB=y | 71 | CONFIG_SLUB=y |
@@ -72,15 +74,11 @@ CONFIG_SLUB=y | |||
72 | # CONFIG_MARKERS is not set | 74 | # CONFIG_MARKERS is not set |
73 | CONFIG_HAVE_OPROFILE=y | 75 | CONFIG_HAVE_OPROFILE=y |
74 | # CONFIG_KPROBES is not set | 76 | # CONFIG_KPROBES is not set |
75 | # CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS is not set | ||
76 | # CONFIG_HAVE_IOREMAP_PROT is not set | ||
77 | CONFIG_HAVE_KPROBES=y | 77 | CONFIG_HAVE_KPROBES=y |
78 | CONFIG_HAVE_KRETPROBES=y | 78 | CONFIG_HAVE_KRETPROBES=y |
79 | # CONFIG_HAVE_ARCH_TRACEHOOK is not set | 79 | CONFIG_HAVE_ARCH_TRACEHOOK=y |
80 | CONFIG_HAVE_DMA_ATTRS=y | 80 | CONFIG_HAVE_DMA_ATTRS=y |
81 | CONFIG_USE_GENERIC_SMP_HELPERS=y | 81 | CONFIG_USE_GENERIC_SMP_HELPERS=y |
82 | # CONFIG_HAVE_CLK is not set | ||
83 | CONFIG_PROC_PAGE_MONITOR=y | ||
84 | # CONFIG_HAVE_GENERIC_DMA_COHERENT is not set | 82 | # CONFIG_HAVE_GENERIC_DMA_COHERENT is not set |
85 | CONFIG_SLABINFO=y | 83 | CONFIG_SLABINFO=y |
86 | CONFIG_RT_MUTEXES=y | 84 | CONFIG_RT_MUTEXES=y |
@@ -113,6 +111,7 @@ CONFIG_DEFAULT_AS=y | |||
113 | # CONFIG_DEFAULT_NOOP is not set | 111 | # CONFIG_DEFAULT_NOOP is not set |
114 | CONFIG_DEFAULT_IOSCHED="anticipatory" | 112 | CONFIG_DEFAULT_IOSCHED="anticipatory" |
115 | CONFIG_CLASSIC_RCU=y | 113 | CONFIG_CLASSIC_RCU=y |
114 | # CONFIG_FREEZER is not set | ||
116 | 115 | ||
117 | # | 116 | # |
118 | # Processor type and features | 117 | # Processor type and features |
@@ -125,8 +124,6 @@ CONFIG_MMU=y | |||
125 | CONFIG_SWIOTLB=y | 124 | CONFIG_SWIOTLB=y |
126 | CONFIG_IOMMU_HELPER=y | 125 | CONFIG_IOMMU_HELPER=y |
127 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y | 126 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y |
128 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | ||
129 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | ||
130 | CONFIG_HUGETLB_PAGE_SIZE_VARIABLE=y | 127 | CONFIG_HUGETLB_PAGE_SIZE_VARIABLE=y |
131 | CONFIG_GENERIC_FIND_NEXT_BIT=y | 128 | CONFIG_GENERIC_FIND_NEXT_BIT=y |
132 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 129 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
@@ -139,13 +136,16 @@ CONFIG_GENERIC_IOMAP=y | |||
139 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 136 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y |
140 | CONFIG_IA64_UNCACHED_ALLOCATOR=y | 137 | CONFIG_IA64_UNCACHED_ALLOCATOR=y |
141 | CONFIG_AUDIT_ARCH=y | 138 | CONFIG_AUDIT_ARCH=y |
139 | # CONFIG_PARAVIRT_GUEST is not set | ||
142 | CONFIG_IA64_GENERIC=y | 140 | CONFIG_IA64_GENERIC=y |
143 | # CONFIG_IA64_DIG is not set | 141 | # CONFIG_IA64_DIG is not set |
142 | # CONFIG_IA64_DIG_VTD is not set | ||
144 | # CONFIG_IA64_HP_ZX1 is not set | 143 | # CONFIG_IA64_HP_ZX1 is not set |
145 | # CONFIG_IA64_HP_ZX1_SWIOTLB is not set | 144 | # CONFIG_IA64_HP_ZX1_SWIOTLB is not set |
146 | # CONFIG_IA64_SGI_SN2 is not set | 145 | # CONFIG_IA64_SGI_SN2 is not set |
147 | # CONFIG_IA64_SGI_UV is not set | 146 | # CONFIG_IA64_SGI_UV is not set |
148 | # CONFIG_IA64_HP_SIM is not set | 147 | # CONFIG_IA64_HP_SIM is not set |
148 | # CONFIG_IA64_XEN_GUEST is not set | ||
149 | # CONFIG_ITANIUM is not set | 149 | # CONFIG_ITANIUM is not set |
150 | CONFIG_MCKINLEY=y | 150 | CONFIG_MCKINLEY=y |
151 | # CONFIG_IA64_PAGE_SIZE_4KB is not set | 151 | # CONFIG_IA64_PAGE_SIZE_4KB is not set |
@@ -182,16 +182,17 @@ CONFIG_DISCONTIGMEM_MANUAL=y | |||
182 | CONFIG_DISCONTIGMEM=y | 182 | CONFIG_DISCONTIGMEM=y |
183 | CONFIG_FLAT_NODE_MEM_MAP=y | 183 | CONFIG_FLAT_NODE_MEM_MAP=y |
184 | CONFIG_NEED_MULTIPLE_NODES=y | 184 | CONFIG_NEED_MULTIPLE_NODES=y |
185 | # CONFIG_SPARSEMEM_STATIC is not set | ||
186 | CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y | 185 | CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y |
187 | CONFIG_PAGEFLAGS_EXTENDED=y | 186 | CONFIG_PAGEFLAGS_EXTENDED=y |
188 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 187 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
189 | CONFIG_MIGRATION=y | 188 | CONFIG_MIGRATION=y |
190 | CONFIG_RESOURCES_64BIT=y | 189 | CONFIG_RESOURCES_64BIT=y |
190 | CONFIG_PHYS_ADDR_T_64BIT=y | ||
191 | CONFIG_ZONE_DMA_FLAG=1 | 191 | CONFIG_ZONE_DMA_FLAG=1 |
192 | CONFIG_BOUNCE=y | 192 | CONFIG_BOUNCE=y |
193 | CONFIG_NR_QUICK=1 | 193 | CONFIG_NR_QUICK=1 |
194 | CONFIG_VIRT_TO_BUS=y | 194 | CONFIG_VIRT_TO_BUS=y |
195 | CONFIG_UNEVICTABLE_LRU=y | ||
195 | CONFIG_MMU_NOTIFIER=y | 196 | CONFIG_MMU_NOTIFIER=y |
196 | CONFIG_ARCH_SELECT_MEMORY_MODEL=y | 197 | CONFIG_ARCH_SELECT_MEMORY_MODEL=y |
197 | CONFIG_ARCH_DISCONTIGMEM_ENABLE=y | 198 | CONFIG_ARCH_DISCONTIGMEM_ENABLE=y |
@@ -231,12 +232,12 @@ CONFIG_EFI_VARS=y | |||
231 | CONFIG_EFI_PCDP=y | 232 | CONFIG_EFI_PCDP=y |
232 | CONFIG_DMIID=y | 233 | CONFIG_DMIID=y |
233 | CONFIG_BINFMT_ELF=y | 234 | CONFIG_BINFMT_ELF=y |
235 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
236 | # CONFIG_HAVE_AOUT is not set | ||
234 | CONFIG_BINFMT_MISC=m | 237 | CONFIG_BINFMT_MISC=m |
235 | 238 | ||
236 | # CONFIG_DMAR is not set | ||
237 | |||
238 | # | 239 | # |
239 | # Power management and ACPI | 240 | # Power management and ACPI options |
240 | # | 241 | # |
241 | CONFIG_PM=y | 242 | CONFIG_PM=y |
242 | # CONFIG_PM_DEBUG is not set | 243 | # CONFIG_PM_DEBUG is not set |
@@ -248,7 +249,6 @@ CONFIG_ACPI_PROC_EVENT=y | |||
248 | CONFIG_ACPI_BUTTON=m | 249 | CONFIG_ACPI_BUTTON=m |
249 | CONFIG_ACPI_FAN=m | 250 | CONFIG_ACPI_FAN=m |
250 | CONFIG_ACPI_DOCK=y | 251 | CONFIG_ACPI_DOCK=y |
251 | # CONFIG_ACPI_BAY is not set | ||
252 | CONFIG_ACPI_PROCESSOR=m | 252 | CONFIG_ACPI_PROCESSOR=m |
253 | CONFIG_ACPI_HOTPLUG_CPU=y | 253 | CONFIG_ACPI_HOTPLUG_CPU=y |
254 | CONFIG_ACPI_THERMAL=m | 254 | CONFIG_ACPI_THERMAL=m |
@@ -256,9 +256,7 @@ CONFIG_ACPI_NUMA=y | |||
256 | # CONFIG_ACPI_CUSTOM_DSDT is not set | 256 | # CONFIG_ACPI_CUSTOM_DSDT is not set |
257 | CONFIG_ACPI_BLACKLIST_YEAR=0 | 257 | CONFIG_ACPI_BLACKLIST_YEAR=0 |
258 | # CONFIG_ACPI_DEBUG is not set | 258 | # CONFIG_ACPI_DEBUG is not set |
259 | CONFIG_ACPI_EC=y | ||
260 | # CONFIG_ACPI_PCI_SLOT is not set | 259 | # CONFIG_ACPI_PCI_SLOT is not set |
261 | CONFIG_ACPI_POWER=y | ||
262 | CONFIG_ACPI_SYSTEM=y | 260 | CONFIG_ACPI_SYSTEM=y |
263 | CONFIG_ACPI_CONTAINER=m | 261 | CONFIG_ACPI_CONTAINER=m |
264 | 262 | ||
@@ -275,7 +273,7 @@ CONFIG_PCI_DOMAINS=y | |||
275 | CONFIG_PCI_SYSCALL=y | 273 | CONFIG_PCI_SYSCALL=y |
276 | # CONFIG_PCIEPORTBUS is not set | 274 | # CONFIG_PCIEPORTBUS is not set |
277 | CONFIG_ARCH_SUPPORTS_MSI=y | 275 | CONFIG_ARCH_SUPPORTS_MSI=y |
278 | # CONFIG_PCI_MSI is not set | 276 | CONFIG_PCI_MSI=y |
279 | CONFIG_PCI_LEGACY=y | 277 | CONFIG_PCI_LEGACY=y |
280 | # CONFIG_PCI_DEBUG is not set | 278 | # CONFIG_PCI_DEBUG is not set |
281 | CONFIG_HOTPLUG_PCI=m | 279 | CONFIG_HOTPLUG_PCI=m |
@@ -286,6 +284,7 @@ CONFIG_HOTPLUG_PCI_ACPI=m | |||
286 | # CONFIG_HOTPLUG_PCI_SHPC is not set | 284 | # CONFIG_HOTPLUG_PCI_SHPC is not set |
287 | # CONFIG_HOTPLUG_PCI_SGI is not set | 285 | # CONFIG_HOTPLUG_PCI_SGI is not set |
288 | # CONFIG_PCCARD is not set | 286 | # CONFIG_PCCARD is not set |
287 | CONFIG_DMAR=y | ||
289 | CONFIG_NET=y | 288 | CONFIG_NET=y |
290 | 289 | ||
291 | # | 290 | # |
@@ -333,6 +332,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic" | |||
333 | # CONFIG_TIPC is not set | 332 | # CONFIG_TIPC is not set |
334 | # CONFIG_ATM is not set | 333 | # CONFIG_ATM is not set |
335 | # CONFIG_BRIDGE is not set | 334 | # CONFIG_BRIDGE is not set |
335 | # CONFIG_NET_DSA is not set | ||
336 | # CONFIG_VLAN_8021Q is not set | 336 | # CONFIG_VLAN_8021Q is not set |
337 | # CONFIG_DECNET is not set | 337 | # CONFIG_DECNET is not set |
338 | # CONFIG_LLC2 is not set | 338 | # CONFIG_LLC2 is not set |
@@ -353,11 +353,10 @@ CONFIG_DEFAULT_TCP_CONG="cubic" | |||
353 | # CONFIG_IRDA is not set | 353 | # CONFIG_IRDA is not set |
354 | # CONFIG_BT is not set | 354 | # CONFIG_BT is not set |
355 | # CONFIG_AF_RXRPC is not set | 355 | # CONFIG_AF_RXRPC is not set |
356 | 356 | # CONFIG_PHONET is not set | |
357 | # | 357 | CONFIG_WIRELESS=y |
358 | # Wireless | ||
359 | # | ||
360 | # CONFIG_CFG80211 is not set | 358 | # CONFIG_CFG80211 is not set |
359 | CONFIG_WIRELESS_OLD_REGULATORY=y | ||
361 | # CONFIG_WIRELESS_EXT is not set | 360 | # CONFIG_WIRELESS_EXT is not set |
362 | # CONFIG_MAC80211 is not set | 361 | # CONFIG_MAC80211 is not set |
363 | # CONFIG_IEEE80211 is not set | 362 | # CONFIG_IEEE80211 is not set |
@@ -385,7 +384,7 @@ CONFIG_PROC_EVENTS=y | |||
385 | # CONFIG_MTD is not set | 384 | # CONFIG_MTD is not set |
386 | # CONFIG_PARPORT is not set | 385 | # CONFIG_PARPORT is not set |
387 | CONFIG_PNP=y | 386 | CONFIG_PNP=y |
388 | # CONFIG_PNP_DEBUG is not set | 387 | # CONFIG_PNP_DEBUG_MESSAGES is not set |
389 | 388 | ||
390 | # | 389 | # |
391 | # Protocols | 390 | # Protocols |
@@ -419,10 +418,9 @@ CONFIG_SGI_XP=m | |||
419 | # CONFIG_HP_ILO is not set | 418 | # CONFIG_HP_ILO is not set |
420 | CONFIG_SGI_GRU=m | 419 | CONFIG_SGI_GRU=m |
421 | # CONFIG_SGI_GRU_DEBUG is not set | 420 | # CONFIG_SGI_GRU_DEBUG is not set |
421 | # CONFIG_C2PORT is not set | ||
422 | CONFIG_HAVE_IDE=y | 422 | CONFIG_HAVE_IDE=y |
423 | CONFIG_IDE=y | 423 | CONFIG_IDE=y |
424 | CONFIG_IDE_MAX_HWIFS=4 | ||
425 | CONFIG_BLK_DEV_IDE=y | ||
426 | 424 | ||
427 | # | 425 | # |
428 | # Please see Documentation/ide/ide.txt for help/info on IDE drives | 426 | # Please see Documentation/ide/ide.txt for help/info on IDE drives |
@@ -430,12 +428,12 @@ CONFIG_BLK_DEV_IDE=y | |||
430 | CONFIG_IDE_TIMINGS=y | 428 | CONFIG_IDE_TIMINGS=y |
431 | CONFIG_IDE_ATAPI=y | 429 | CONFIG_IDE_ATAPI=y |
432 | # CONFIG_BLK_DEV_IDE_SATA is not set | 430 | # CONFIG_BLK_DEV_IDE_SATA is not set |
433 | CONFIG_BLK_DEV_IDEDISK=y | 431 | CONFIG_IDE_GD=y |
434 | # CONFIG_IDEDISK_MULTI_MODE is not set | 432 | CONFIG_IDE_GD_ATA=y |
433 | # CONFIG_IDE_GD_ATAPI is not set | ||
435 | CONFIG_BLK_DEV_IDECD=y | 434 | CONFIG_BLK_DEV_IDECD=y |
436 | CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y | 435 | CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y |
437 | # CONFIG_BLK_DEV_IDETAPE is not set | 436 | # CONFIG_BLK_DEV_IDETAPE is not set |
438 | CONFIG_BLK_DEV_IDEFLOPPY=y | ||
439 | CONFIG_BLK_DEV_IDESCSI=m | 437 | CONFIG_BLK_DEV_IDESCSI=m |
440 | # CONFIG_BLK_DEV_IDEACPI is not set | 438 | # CONFIG_BLK_DEV_IDEACPI is not set |
441 | # CONFIG_IDE_TASK_IOCTL is not set | 439 | # CONFIG_IDE_TASK_IOCTL is not set |
@@ -705,6 +703,9 @@ CONFIG_TULIP=m | |||
705 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | 703 | # CONFIG_IBM_NEW_EMAC_RGMII is not set |
706 | # CONFIG_IBM_NEW_EMAC_TAH is not set | 704 | # CONFIG_IBM_NEW_EMAC_TAH is not set |
707 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set | 705 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set |
706 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | ||
707 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | ||
708 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | ||
708 | CONFIG_NET_PCI=y | 709 | CONFIG_NET_PCI=y |
709 | # CONFIG_PCNET32 is not set | 710 | # CONFIG_PCNET32 is not set |
710 | # CONFIG_AMD8111_ETH is not set | 711 | # CONFIG_AMD8111_ETH is not set |
@@ -725,11 +726,11 @@ CONFIG_E100=m | |||
725 | # CONFIG_TLAN is not set | 726 | # CONFIG_TLAN is not set |
726 | # CONFIG_VIA_RHINE is not set | 727 | # CONFIG_VIA_RHINE is not set |
727 | # CONFIG_SC92031 is not set | 728 | # CONFIG_SC92031 is not set |
729 | # CONFIG_ATL2 is not set | ||
728 | CONFIG_NETDEV_1000=y | 730 | CONFIG_NETDEV_1000=y |
729 | # CONFIG_ACENIC is not set | 731 | # CONFIG_ACENIC is not set |
730 | # CONFIG_DL2K is not set | 732 | # CONFIG_DL2K is not set |
731 | CONFIG_E1000=y | 733 | CONFIG_E1000=y |
732 | # CONFIG_E1000_DISABLE_PACKET_SPLIT is not set | ||
733 | # CONFIG_E1000E is not set | 734 | # CONFIG_E1000E is not set |
734 | # CONFIG_IP1000 is not set | 735 | # CONFIG_IP1000 is not set |
735 | CONFIG_IGB=y | 736 | CONFIG_IGB=y |
@@ -747,18 +748,22 @@ CONFIG_TIGON3=y | |||
747 | # CONFIG_QLA3XXX is not set | 748 | # CONFIG_QLA3XXX is not set |
748 | # CONFIG_ATL1 is not set | 749 | # CONFIG_ATL1 is not set |
749 | # CONFIG_ATL1E is not set | 750 | # CONFIG_ATL1E is not set |
751 | # CONFIG_JME is not set | ||
750 | CONFIG_NETDEV_10000=y | 752 | CONFIG_NETDEV_10000=y |
751 | # CONFIG_CHELSIO_T1 is not set | 753 | # CONFIG_CHELSIO_T1 is not set |
752 | # CONFIG_CHELSIO_T3 is not set | 754 | # CONFIG_CHELSIO_T3 is not set |
755 | # CONFIG_ENIC is not set | ||
753 | # CONFIG_IXGBE is not set | 756 | # CONFIG_IXGBE is not set |
754 | # CONFIG_IXGB is not set | 757 | # CONFIG_IXGB is not set |
755 | # CONFIG_S2IO is not set | 758 | # CONFIG_S2IO is not set |
756 | # CONFIG_MYRI10GE is not set | 759 | # CONFIG_MYRI10GE is not set |
757 | # CONFIG_NETXEN_NIC is not set | 760 | # CONFIG_NETXEN_NIC is not set |
758 | # CONFIG_NIU is not set | 761 | # CONFIG_NIU is not set |
762 | # CONFIG_MLX4_EN is not set | ||
759 | # CONFIG_MLX4_CORE is not set | 763 | # CONFIG_MLX4_CORE is not set |
760 | # CONFIG_TEHUTI is not set | 764 | # CONFIG_TEHUTI is not set |
761 | # CONFIG_BNX2X is not set | 765 | # CONFIG_BNX2X is not set |
766 | # CONFIG_QLGE is not set | ||
762 | # CONFIG_SFC is not set | 767 | # CONFIG_SFC is not set |
763 | # CONFIG_TR is not set | 768 | # CONFIG_TR is not set |
764 | 769 | ||
@@ -826,9 +831,11 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y | |||
826 | CONFIG_MOUSE_PS2_SYNAPTICS=y | 831 | CONFIG_MOUSE_PS2_SYNAPTICS=y |
827 | CONFIG_MOUSE_PS2_LIFEBOOK=y | 832 | CONFIG_MOUSE_PS2_LIFEBOOK=y |
828 | CONFIG_MOUSE_PS2_TRACKPOINT=y | 833 | CONFIG_MOUSE_PS2_TRACKPOINT=y |
834 | # CONFIG_MOUSE_PS2_ELANTECH is not set | ||
829 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set | 835 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set |
830 | # CONFIG_MOUSE_SERIAL is not set | 836 | # CONFIG_MOUSE_SERIAL is not set |
831 | # CONFIG_MOUSE_APPLETOUCH is not set | 837 | # CONFIG_MOUSE_APPLETOUCH is not set |
838 | # CONFIG_MOUSE_BCM5974 is not set | ||
832 | # CONFIG_MOUSE_VSXXXAA is not set | 839 | # CONFIG_MOUSE_VSXXXAA is not set |
833 | # CONFIG_INPUT_JOYSTICK is not set | 840 | # CONFIG_INPUT_JOYSTICK is not set |
834 | # CONFIG_INPUT_TABLET is not set | 841 | # CONFIG_INPUT_TABLET is not set |
@@ -942,15 +949,16 @@ CONFIG_HWMON=y | |||
942 | # CONFIG_SENSORS_VT8231 is not set | 949 | # CONFIG_SENSORS_VT8231 is not set |
943 | # CONFIG_SENSORS_W83627HF is not set | 950 | # CONFIG_SENSORS_W83627HF is not set |
944 | # CONFIG_SENSORS_W83627EHF is not set | 951 | # CONFIG_SENSORS_W83627EHF is not set |
952 | # CONFIG_SENSORS_LIS3LV02D is not set | ||
945 | # CONFIG_HWMON_DEBUG_CHIP is not set | 953 | # CONFIG_HWMON_DEBUG_CHIP is not set |
946 | CONFIG_THERMAL=m | 954 | CONFIG_THERMAL=m |
947 | # CONFIG_THERMAL_HWMON is not set | 955 | # CONFIG_THERMAL_HWMON is not set |
948 | # CONFIG_WATCHDOG is not set | 956 | # CONFIG_WATCHDOG is not set |
957 | CONFIG_SSB_POSSIBLE=y | ||
949 | 958 | ||
950 | # | 959 | # |
951 | # Sonics Silicon Backplane | 960 | # Sonics Silicon Backplane |
952 | # | 961 | # |
953 | CONFIG_SSB_POSSIBLE=y | ||
954 | # CONFIG_SSB is not set | 962 | # CONFIG_SSB is not set |
955 | 963 | ||
956 | # | 964 | # |
@@ -959,6 +967,8 @@ CONFIG_SSB_POSSIBLE=y | |||
959 | # CONFIG_MFD_CORE is not set | 967 | # CONFIG_MFD_CORE is not set |
960 | # CONFIG_MFD_SM501 is not set | 968 | # CONFIG_MFD_SM501 is not set |
961 | # CONFIG_HTC_PASIC3 is not set | 969 | # CONFIG_HTC_PASIC3 is not set |
970 | # CONFIG_MFD_TMIO is not set | ||
971 | # CONFIG_REGULATOR is not set | ||
962 | 972 | ||
963 | # | 973 | # |
964 | # Multimedia devices | 974 | # Multimedia devices |
@@ -1009,6 +1019,7 @@ CONFIG_VGA_CONSOLE=y | |||
1009 | # CONFIG_VGACON_SOFT_SCROLLBACK is not set | 1019 | # CONFIG_VGACON_SOFT_SCROLLBACK is not set |
1010 | CONFIG_DUMMY_CONSOLE=y | 1020 | CONFIG_DUMMY_CONSOLE=y |
1011 | CONFIG_SOUND=m | 1021 | CONFIG_SOUND=m |
1022 | CONFIG_SOUND_OSS_CORE=y | ||
1012 | CONFIG_SND=m | 1023 | CONFIG_SND=m |
1013 | CONFIG_SND_TIMER=m | 1024 | CONFIG_SND_TIMER=m |
1014 | CONFIG_SND_PCM=m | 1025 | CONFIG_SND_PCM=m |
@@ -1113,8 +1124,7 @@ CONFIG_HID=y | |||
1113 | # USB Input Devices | 1124 | # USB Input Devices |
1114 | # | 1125 | # |
1115 | CONFIG_USB_HID=m | 1126 | CONFIG_USB_HID=m |
1116 | # CONFIG_USB_HIDINPUT_POWERBOOK is not set | 1127 | # CONFIG_HID_PID is not set |
1117 | # CONFIG_HID_FF is not set | ||
1118 | # CONFIG_USB_HIDDEV is not set | 1128 | # CONFIG_USB_HIDDEV is not set |
1119 | 1129 | ||
1120 | # | 1130 | # |
@@ -1122,6 +1132,34 @@ CONFIG_USB_HID=m | |||
1122 | # | 1132 | # |
1123 | # CONFIG_USB_KBD is not set | 1133 | # CONFIG_USB_KBD is not set |
1124 | # CONFIG_USB_MOUSE is not set | 1134 | # CONFIG_USB_MOUSE is not set |
1135 | |||
1136 | # | ||
1137 | # Special HID drivers | ||
1138 | # | ||
1139 | CONFIG_HID_COMPAT=y | ||
1140 | CONFIG_HID_A4TECH=m | ||
1141 | CONFIG_HID_APPLE=m | ||
1142 | CONFIG_HID_BELKIN=m | ||
1143 | CONFIG_HID_BRIGHT=m | ||
1144 | CONFIG_HID_CHERRY=m | ||
1145 | CONFIG_HID_CHICONY=m | ||
1146 | CONFIG_HID_CYPRESS=m | ||
1147 | CONFIG_HID_DELL=m | ||
1148 | CONFIG_HID_EZKEY=m | ||
1149 | CONFIG_HID_GYRATION=m | ||
1150 | CONFIG_HID_LOGITECH=m | ||
1151 | # CONFIG_LOGITECH_FF is not set | ||
1152 | # CONFIG_LOGIRUMBLEPAD2_FF is not set | ||
1153 | CONFIG_HID_MICROSOFT=m | ||
1154 | CONFIG_HID_MONTEREY=m | ||
1155 | CONFIG_HID_PANTHERLORD=m | ||
1156 | # CONFIG_PANTHERLORD_FF is not set | ||
1157 | CONFIG_HID_PETALYNX=m | ||
1158 | CONFIG_HID_SAMSUNG=m | ||
1159 | CONFIG_HID_SONY=m | ||
1160 | CONFIG_HID_SUNPLUS=m | ||
1161 | # CONFIG_THRUSTMASTER_FF is not set | ||
1162 | # CONFIG_ZEROPLUS_FF is not set | ||
1125 | CONFIG_USB_SUPPORT=y | 1163 | CONFIG_USB_SUPPORT=y |
1126 | CONFIG_USB_ARCH_HAS_HCD=y | 1164 | CONFIG_USB_ARCH_HAS_HCD=y |
1127 | CONFIG_USB_ARCH_HAS_OHCI=y | 1165 | CONFIG_USB_ARCH_HAS_OHCI=y |
@@ -1138,6 +1176,9 @@ CONFIG_USB_DEVICE_CLASS=y | |||
1138 | # CONFIG_USB_DYNAMIC_MINORS is not set | 1176 | # CONFIG_USB_DYNAMIC_MINORS is not set |
1139 | # CONFIG_USB_SUSPEND is not set | 1177 | # CONFIG_USB_SUSPEND is not set |
1140 | # CONFIG_USB_OTG is not set | 1178 | # CONFIG_USB_OTG is not set |
1179 | CONFIG_USB_MON=y | ||
1180 | # CONFIG_USB_WUSB is not set | ||
1181 | # CONFIG_USB_WUSB_CBAF is not set | ||
1141 | 1182 | ||
1142 | # | 1183 | # |
1143 | # USB Host Controller Drivers | 1184 | # USB Host Controller Drivers |
@@ -1155,6 +1196,12 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y | |||
1155 | CONFIG_USB_UHCI_HCD=m | 1196 | CONFIG_USB_UHCI_HCD=m |
1156 | # CONFIG_USB_SL811_HCD is not set | 1197 | # CONFIG_USB_SL811_HCD is not set |
1157 | # CONFIG_USB_R8A66597_HCD is not set | 1198 | # CONFIG_USB_R8A66597_HCD is not set |
1199 | # CONFIG_USB_WHCI_HCD is not set | ||
1200 | # CONFIG_USB_HWA_HCD is not set | ||
1201 | |||
1202 | # | ||
1203 | # Enable Host or Gadget support to see Inventra options | ||
1204 | # | ||
1158 | 1205 | ||
1159 | # | 1206 | # |
1160 | # USB Device Class drivers | 1207 | # USB Device Class drivers |
@@ -1162,13 +1209,14 @@ CONFIG_USB_UHCI_HCD=m | |||
1162 | # CONFIG_USB_ACM is not set | 1209 | # CONFIG_USB_ACM is not set |
1163 | # CONFIG_USB_PRINTER is not set | 1210 | # CONFIG_USB_PRINTER is not set |
1164 | # CONFIG_USB_WDM is not set | 1211 | # CONFIG_USB_WDM is not set |
1212 | # CONFIG_USB_TMC is not set | ||
1165 | 1213 | ||
1166 | # | 1214 | # |
1167 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | 1215 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed; |
1168 | # | 1216 | # |
1169 | 1217 | ||
1170 | # | 1218 | # |
1171 | # may also be needed; see USB_STORAGE Help for more information | 1219 | # see USB_STORAGE Help for more information |
1172 | # | 1220 | # |
1173 | CONFIG_USB_STORAGE=m | 1221 | CONFIG_USB_STORAGE=m |
1174 | # CONFIG_USB_STORAGE_DEBUG is not set | 1222 | # CONFIG_USB_STORAGE_DEBUG is not set |
@@ -1191,7 +1239,6 @@ CONFIG_USB_STORAGE=m | |||
1191 | # | 1239 | # |
1192 | # CONFIG_USB_MDC800 is not set | 1240 | # CONFIG_USB_MDC800 is not set |
1193 | # CONFIG_USB_MICROTEK is not set | 1241 | # CONFIG_USB_MICROTEK is not set |
1194 | CONFIG_USB_MON=y | ||
1195 | 1242 | ||
1196 | # | 1243 | # |
1197 | # USB port drivers | 1244 | # USB port drivers |
@@ -1204,7 +1251,7 @@ CONFIG_USB_MON=y | |||
1204 | # CONFIG_USB_EMI62 is not set | 1251 | # CONFIG_USB_EMI62 is not set |
1205 | # CONFIG_USB_EMI26 is not set | 1252 | # CONFIG_USB_EMI26 is not set |
1206 | # CONFIG_USB_ADUTUX is not set | 1253 | # CONFIG_USB_ADUTUX is not set |
1207 | # CONFIG_USB_AUERSWALD is not set | 1254 | # CONFIG_USB_SEVSEG is not set |
1208 | # CONFIG_USB_RIO500 is not set | 1255 | # CONFIG_USB_RIO500 is not set |
1209 | # CONFIG_USB_LEGOTOWER is not set | 1256 | # CONFIG_USB_LEGOTOWER is not set |
1210 | # CONFIG_USB_LCD is not set | 1257 | # CONFIG_USB_LCD is not set |
@@ -1222,7 +1269,9 @@ CONFIG_USB_MON=y | |||
1222 | # CONFIG_USB_IOWARRIOR is not set | 1269 | # CONFIG_USB_IOWARRIOR is not set |
1223 | # CONFIG_USB_TEST is not set | 1270 | # CONFIG_USB_TEST is not set |
1224 | # CONFIG_USB_ISIGHTFW is not set | 1271 | # CONFIG_USB_ISIGHTFW is not set |
1272 | # CONFIG_USB_VST is not set | ||
1225 | # CONFIG_USB_GADGET is not set | 1273 | # CONFIG_USB_GADGET is not set |
1274 | # CONFIG_UWB is not set | ||
1226 | # CONFIG_MMC is not set | 1275 | # CONFIG_MMC is not set |
1227 | # CONFIG_MEMSTICK is not set | 1276 | # CONFIG_MEMSTICK is not set |
1228 | # CONFIG_NEW_LEDS is not set | 1277 | # CONFIG_NEW_LEDS is not set |
@@ -1246,6 +1295,15 @@ CONFIG_INFINIBAND_IPOIB_DEBUG=y | |||
1246 | # CONFIG_RTC_CLASS is not set | 1295 | # CONFIG_RTC_CLASS is not set |
1247 | # CONFIG_DMADEVICES is not set | 1296 | # CONFIG_DMADEVICES is not set |
1248 | # CONFIG_UIO is not set | 1297 | # CONFIG_UIO is not set |
1298 | # CONFIG_STAGING is not set | ||
1299 | CONFIG_STAGING_EXCLUDE_BUILD=y | ||
1300 | |||
1301 | # | ||
1302 | # HP Simulator drivers | ||
1303 | # | ||
1304 | # CONFIG_HP_SIMETH is not set | ||
1305 | # CONFIG_HP_SIMSERIAL is not set | ||
1306 | # CONFIG_HP_SIMSCSI is not set | ||
1249 | CONFIG_MSPEC=m | 1307 | CONFIG_MSPEC=m |
1250 | 1308 | ||
1251 | # | 1309 | # |
@@ -1260,7 +1318,7 @@ CONFIG_EXT3_FS=y | |||
1260 | CONFIG_EXT3_FS_XATTR=y | 1318 | CONFIG_EXT3_FS_XATTR=y |
1261 | CONFIG_EXT3_FS_POSIX_ACL=y | 1319 | CONFIG_EXT3_FS_POSIX_ACL=y |
1262 | CONFIG_EXT3_FS_SECURITY=y | 1320 | CONFIG_EXT3_FS_SECURITY=y |
1263 | # CONFIG_EXT4DEV_FS is not set | 1321 | # CONFIG_EXT4_FS is not set |
1264 | CONFIG_JBD=y | 1322 | CONFIG_JBD=y |
1265 | CONFIG_FS_MBCACHE=y | 1323 | CONFIG_FS_MBCACHE=y |
1266 | CONFIG_REISERFS_FS=y | 1324 | CONFIG_REISERFS_FS=y |
@@ -1271,6 +1329,7 @@ CONFIG_REISERFS_FS_POSIX_ACL=y | |||
1271 | CONFIG_REISERFS_FS_SECURITY=y | 1329 | CONFIG_REISERFS_FS_SECURITY=y |
1272 | # CONFIG_JFS_FS is not set | 1330 | # CONFIG_JFS_FS is not set |
1273 | CONFIG_FS_POSIX_ACL=y | 1331 | CONFIG_FS_POSIX_ACL=y |
1332 | CONFIG_FILE_LOCKING=y | ||
1274 | CONFIG_XFS_FS=y | 1333 | CONFIG_XFS_FS=y |
1275 | # CONFIG_XFS_QUOTA is not set | 1334 | # CONFIG_XFS_QUOTA is not set |
1276 | # CONFIG_XFS_POSIX_ACL is not set | 1335 | # CONFIG_XFS_POSIX_ACL is not set |
@@ -1282,8 +1341,8 @@ CONFIG_DNOTIFY=y | |||
1282 | CONFIG_INOTIFY=y | 1341 | CONFIG_INOTIFY=y |
1283 | CONFIG_INOTIFY_USER=y | 1342 | CONFIG_INOTIFY_USER=y |
1284 | # CONFIG_QUOTA is not set | 1343 | # CONFIG_QUOTA is not set |
1285 | CONFIG_AUTOFS_FS=y | 1344 | CONFIG_AUTOFS_FS=m |
1286 | CONFIG_AUTOFS4_FS=y | 1345 | CONFIG_AUTOFS4_FS=m |
1287 | # CONFIG_FUSE_FS is not set | 1346 | # CONFIG_FUSE_FS is not set |
1288 | 1347 | ||
1289 | # | 1348 | # |
@@ -1314,6 +1373,7 @@ CONFIG_PROC_FS=y | |||
1314 | CONFIG_PROC_KCORE=y | 1373 | CONFIG_PROC_KCORE=y |
1315 | CONFIG_PROC_VMCORE=y | 1374 | CONFIG_PROC_VMCORE=y |
1316 | CONFIG_PROC_SYSCTL=y | 1375 | CONFIG_PROC_SYSCTL=y |
1376 | CONFIG_PROC_PAGE_MONITOR=y | ||
1317 | CONFIG_SYSFS=y | 1377 | CONFIG_SYSFS=y |
1318 | CONFIG_TMPFS=y | 1378 | CONFIG_TMPFS=y |
1319 | # CONFIG_TMPFS_POSIX_ACL is not set | 1379 | # CONFIG_TMPFS_POSIX_ACL is not set |
@@ -1356,6 +1416,7 @@ CONFIG_NFS_COMMON=y | |||
1356 | CONFIG_SUNRPC=m | 1416 | CONFIG_SUNRPC=m |
1357 | CONFIG_SUNRPC_GSS=m | 1417 | CONFIG_SUNRPC_GSS=m |
1358 | CONFIG_SUNRPC_XPRT_RDMA=m | 1418 | CONFIG_SUNRPC_XPRT_RDMA=m |
1419 | # CONFIG_SUNRPC_REGISTER_V4 is not set | ||
1359 | CONFIG_RPCSEC_GSS_KRB5=m | 1420 | CONFIG_RPCSEC_GSS_KRB5=m |
1360 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | 1421 | # CONFIG_RPCSEC_GSS_SPKM3 is not set |
1361 | CONFIG_SMB_FS=m | 1422 | CONFIG_SMB_FS=m |
@@ -1433,38 +1494,6 @@ CONFIG_NLS_KOI8_R=m | |||
1433 | CONFIG_NLS_KOI8_U=m | 1494 | CONFIG_NLS_KOI8_U=m |
1434 | CONFIG_NLS_UTF8=m | 1495 | CONFIG_NLS_UTF8=m |
1435 | # CONFIG_DLM is not set | 1496 | # CONFIG_DLM is not set |
1436 | CONFIG_HAVE_KVM=y | ||
1437 | CONFIG_VIRTUALIZATION=y | ||
1438 | # CONFIG_KVM is not set | ||
1439 | |||
1440 | # | ||
1441 | # Library routines | ||
1442 | # | ||
1443 | CONFIG_BITREVERSE=y | ||
1444 | # CONFIG_GENERIC_FIND_FIRST_BIT is not set | ||
1445 | # CONFIG_CRC_CCITT is not set | ||
1446 | # CONFIG_CRC16 is not set | ||
1447 | CONFIG_CRC_T10DIF=y | ||
1448 | CONFIG_CRC_ITU_T=m | ||
1449 | CONFIG_CRC32=y | ||
1450 | # CONFIG_CRC7 is not set | ||
1451 | # CONFIG_LIBCRC32C is not set | ||
1452 | CONFIG_GENERIC_ALLOCATOR=y | ||
1453 | CONFIG_PLIST=y | ||
1454 | CONFIG_HAS_IOMEM=y | ||
1455 | CONFIG_HAS_IOPORT=y | ||
1456 | CONFIG_HAS_DMA=y | ||
1457 | CONFIG_GENERIC_HARDIRQS=y | ||
1458 | CONFIG_GENERIC_IRQ_PROBE=y | ||
1459 | CONFIG_GENERIC_PENDING_IRQ=y | ||
1460 | CONFIG_IRQ_PER_CPU=y | ||
1461 | |||
1462 | # | ||
1463 | # HP Simulator drivers | ||
1464 | # | ||
1465 | # CONFIG_HP_SIMETH is not set | ||
1466 | # CONFIG_HP_SIMSERIAL is not set | ||
1467 | # CONFIG_HP_SIMSCSI is not set | ||
1468 | 1497 | ||
1469 | # | 1498 | # |
1470 | # Kernel hacking | 1499 | # Kernel hacking |
@@ -1503,8 +1532,19 @@ CONFIG_DEBUG_MEMORY_INIT=y | |||
1503 | # CONFIG_DEBUG_SG is not set | 1532 | # CONFIG_DEBUG_SG is not set |
1504 | # CONFIG_BOOT_PRINTK_DELAY is not set | 1533 | # CONFIG_BOOT_PRINTK_DELAY is not set |
1505 | # CONFIG_RCU_TORTURE_TEST is not set | 1534 | # CONFIG_RCU_TORTURE_TEST is not set |
1535 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set | ||
1506 | # CONFIG_BACKTRACE_SELF_TEST is not set | 1536 | # CONFIG_BACKTRACE_SELF_TEST is not set |
1537 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set | ||
1507 | # CONFIG_FAULT_INJECTION is not set | 1538 | # CONFIG_FAULT_INJECTION is not set |
1539 | CONFIG_SYSCTL_SYSCALL_CHECK=y | ||
1540 | |||
1541 | # | ||
1542 | # Tracers | ||
1543 | # | ||
1544 | # CONFIG_SCHED_TRACER is not set | ||
1545 | # CONFIG_CONTEXT_SWITCH_TRACER is not set | ||
1546 | # CONFIG_BOOT_TRACER is not set | ||
1547 | # CONFIG_DYNAMIC_PRINTK_DEBUG is not set | ||
1508 | # CONFIG_SAMPLES is not set | 1548 | # CONFIG_SAMPLES is not set |
1509 | CONFIG_IA64_GRANULE_16MB=y | 1549 | CONFIG_IA64_GRANULE_16MB=y |
1510 | # CONFIG_IA64_GRANULE_64MB is not set | 1550 | # CONFIG_IA64_GRANULE_64MB is not set |
@@ -1519,14 +1559,19 @@ CONFIG_SYSVIPC_COMPAT=y | |||
1519 | # | 1559 | # |
1520 | # CONFIG_KEYS is not set | 1560 | # CONFIG_KEYS is not set |
1521 | # CONFIG_SECURITY is not set | 1561 | # CONFIG_SECURITY is not set |
1562 | # CONFIG_SECURITYFS is not set | ||
1522 | # CONFIG_SECURITY_FILE_CAPABILITIES is not set | 1563 | # CONFIG_SECURITY_FILE_CAPABILITIES is not set |
1523 | CONFIG_CRYPTO=y | 1564 | CONFIG_CRYPTO=y |
1524 | 1565 | ||
1525 | # | 1566 | # |
1526 | # Crypto core or helper | 1567 | # Crypto core or helper |
1527 | # | 1568 | # |
1569 | # CONFIG_CRYPTO_FIPS is not set | ||
1528 | CONFIG_CRYPTO_ALGAPI=y | 1570 | CONFIG_CRYPTO_ALGAPI=y |
1571 | CONFIG_CRYPTO_AEAD=m | ||
1529 | CONFIG_CRYPTO_BLKCIPHER=m | 1572 | CONFIG_CRYPTO_BLKCIPHER=m |
1573 | CONFIG_CRYPTO_HASH=m | ||
1574 | CONFIG_CRYPTO_RNG=m | ||
1530 | CONFIG_CRYPTO_MANAGER=m | 1575 | CONFIG_CRYPTO_MANAGER=m |
1531 | # CONFIG_CRYPTO_GF128MUL is not set | 1576 | # CONFIG_CRYPTO_GF128MUL is not set |
1532 | # CONFIG_CRYPTO_NULL is not set | 1577 | # CONFIG_CRYPTO_NULL is not set |
@@ -1599,5 +1644,36 @@ CONFIG_CRYPTO_DES=m | |||
1599 | # | 1644 | # |
1600 | # CONFIG_CRYPTO_DEFLATE is not set | 1645 | # CONFIG_CRYPTO_DEFLATE is not set |
1601 | # CONFIG_CRYPTO_LZO is not set | 1646 | # CONFIG_CRYPTO_LZO is not set |
1647 | |||
1648 | # | ||
1649 | # Random Number Generation | ||
1650 | # | ||
1651 | # CONFIG_CRYPTO_ANSI_CPRNG is not set | ||
1602 | CONFIG_CRYPTO_HW=y | 1652 | CONFIG_CRYPTO_HW=y |
1603 | # CONFIG_CRYPTO_DEV_HIFN_795X is not set | 1653 | # CONFIG_CRYPTO_DEV_HIFN_795X is not set |
1654 | CONFIG_HAVE_KVM=y | ||
1655 | CONFIG_VIRTUALIZATION=y | ||
1656 | # CONFIG_KVM is not set | ||
1657 | # CONFIG_VIRTIO_PCI is not set | ||
1658 | # CONFIG_VIRTIO_BALLOON is not set | ||
1659 | |||
1660 | # | ||
1661 | # Library routines | ||
1662 | # | ||
1663 | CONFIG_BITREVERSE=y | ||
1664 | # CONFIG_CRC_CCITT is not set | ||
1665 | # CONFIG_CRC16 is not set | ||
1666 | CONFIG_CRC_T10DIF=y | ||
1667 | CONFIG_CRC_ITU_T=m | ||
1668 | CONFIG_CRC32=y | ||
1669 | # CONFIG_CRC7 is not set | ||
1670 | # CONFIG_LIBCRC32C is not set | ||
1671 | CONFIG_GENERIC_ALLOCATOR=y | ||
1672 | CONFIG_PLIST=y | ||
1673 | CONFIG_HAS_IOMEM=y | ||
1674 | CONFIG_HAS_IOPORT=y | ||
1675 | CONFIG_HAS_DMA=y | ||
1676 | CONFIG_GENERIC_HARDIRQS=y | ||
1677 | CONFIG_GENERIC_IRQ_PROBE=y | ||
1678 | CONFIG_GENERIC_PENDING_IRQ=y | ||
1679 | CONFIG_IRQ_PER_CPU=y | ||
diff --git a/arch/ia64/include/asm/paravirt_privop.h b/arch/ia64/include/asm/paravirt_privop.h index 0b597424fcfc..33c8e55f5775 100644 --- a/arch/ia64/include/asm/paravirt_privop.h +++ b/arch/ia64/include/asm/paravirt_privop.h | |||
@@ -83,7 +83,6 @@ extern unsigned long ia64_native_getreg_func(int regnum); | |||
83 | #define paravirt_getreg(reg) \ | 83 | #define paravirt_getreg(reg) \ |
84 | ({ \ | 84 | ({ \ |
85 | unsigned long res; \ | 85 | unsigned long res; \ |
86 | BUILD_BUG_ON(!__builtin_constant_p(reg)); \ | ||
87 | if ((reg) == _IA64_REG_IP) \ | 86 | if ((reg) == _IA64_REG_IP) \ |
88 | res = ia64_native_getreg(_IA64_REG_IP); \ | 87 | res = ia64_native_getreg(_IA64_REG_IP); \ |
89 | else \ | 88 | else \ |
diff --git a/arch/ia64/kernel/topology.c b/arch/ia64/kernel/topology.c index 26228e2d01ae..c75b914f2d6b 100644 --- a/arch/ia64/kernel/topology.c +++ b/arch/ia64/kernel/topology.c | |||
@@ -53,10 +53,12 @@ int __ref arch_register_cpu(int num) | |||
53 | } | 53 | } |
54 | EXPORT_SYMBOL(arch_register_cpu); | 54 | EXPORT_SYMBOL(arch_register_cpu); |
55 | 55 | ||
56 | void arch_unregister_cpu(int num) | 56 | void __ref arch_unregister_cpu(int num) |
57 | { | 57 | { |
58 | unregister_cpu(&sysfs_cpus[num].cpu); | 58 | unregister_cpu(&sysfs_cpus[num].cpu); |
59 | #ifdef CONFIG_ACPI | ||
59 | unmap_cpu_from_node(num, cpu_to_node(num)); | 60 | unmap_cpu_from_node(num, cpu_to_node(num)); |
61 | #endif | ||
60 | } | 62 | } |
61 | EXPORT_SYMBOL(arch_unregister_cpu); | 63 | EXPORT_SYMBOL(arch_unregister_cpu); |
62 | #else | 64 | #else |
diff --git a/arch/ia64/sn/kernel/irq.c b/arch/ia64/sn/kernel/irq.c index 96c31b4180c3..0c66dbdd1d72 100644 --- a/arch/ia64/sn/kernel/irq.c +++ b/arch/ia64/sn/kernel/irq.c | |||
@@ -5,7 +5,7 @@ | |||
5 | * License. See the file "COPYING" in the main directory of this archive | 5 | * License. See the file "COPYING" in the main directory of this archive |
6 | * for more details. | 6 | * for more details. |
7 | * | 7 | * |
8 | * Copyright (c) 2000-2007 Silicon Graphics, Inc. All Rights Reserved. | 8 | * Copyright (c) 2000-2008 Silicon Graphics, Inc. All Rights Reserved. |
9 | */ | 9 | */ |
10 | 10 | ||
11 | #include <linux/irq.h> | 11 | #include <linux/irq.h> |
@@ -375,6 +375,7 @@ void sn_irq_fixup(struct pci_dev *pci_dev, struct sn_irq_info *sn_irq_info) | |||
375 | int cpu = nasid_slice_to_cpuid(nasid, slice); | 375 | int cpu = nasid_slice_to_cpuid(nasid, slice); |
376 | #ifdef CONFIG_SMP | 376 | #ifdef CONFIG_SMP |
377 | int cpuphys; | 377 | int cpuphys; |
378 | irq_desc_t *desc; | ||
378 | #endif | 379 | #endif |
379 | 380 | ||
380 | pci_dev_get(pci_dev); | 381 | pci_dev_get(pci_dev); |
@@ -391,6 +392,12 @@ void sn_irq_fixup(struct pci_dev *pci_dev, struct sn_irq_info *sn_irq_info) | |||
391 | #ifdef CONFIG_SMP | 392 | #ifdef CONFIG_SMP |
392 | cpuphys = cpu_physical_id(cpu); | 393 | cpuphys = cpu_physical_id(cpu); |
393 | set_irq_affinity_info(sn_irq_info->irq_irq, cpuphys, 0); | 394 | set_irq_affinity_info(sn_irq_info->irq_irq, cpuphys, 0); |
395 | desc = irq_to_desc(sn_irq_info->irq_irq); | ||
396 | /* | ||
397 | * Affinity was set by the PROM, prevent it from | ||
398 | * being reset by the request_irq() path. | ||
399 | */ | ||
400 | desc->status |= IRQ_AFFINITY_SET; | ||
394 | #endif | 401 | #endif |
395 | } | 402 | } |
396 | 403 | ||
diff --git a/arch/ia64/sn/kernel/setup.c b/arch/ia64/sn/kernel/setup.c index bb1d24929640..02c5b8a9fb60 100644 --- a/arch/ia64/sn/kernel/setup.c +++ b/arch/ia64/sn/kernel/setup.c | |||
@@ -200,7 +200,7 @@ static int __cpuinitdata shub_1_1_found; | |||
200 | * Set flag for enabling shub specific wars | 200 | * Set flag for enabling shub specific wars |
201 | */ | 201 | */ |
202 | 202 | ||
203 | static inline int __init is_shub_1_1(int nasid) | 203 | static inline int __cpuinit is_shub_1_1(int nasid) |
204 | { | 204 | { |
205 | unsigned long id; | 205 | unsigned long id; |
206 | int rev; | 206 | int rev; |
@@ -212,7 +212,7 @@ static inline int __init is_shub_1_1(int nasid) | |||
212 | return rev <= 2; | 212 | return rev <= 2; |
213 | } | 213 | } |
214 | 214 | ||
215 | static void __init sn_check_for_wars(void) | 215 | static void __cpuinit sn_check_for_wars(void) |
216 | { | 216 | { |
217 | int cnode; | 217 | int cnode; |
218 | 218 | ||
@@ -512,7 +512,6 @@ static void __init sn_init_pdas(char **cmdline_p) | |||
512 | for_each_online_node(cnode) { | 512 | for_each_online_node(cnode) { |
513 | nodepdaindr[cnode] = | 513 | nodepdaindr[cnode] = |
514 | alloc_bootmem_node(NODE_DATA(cnode), sizeof(nodepda_t)); | 514 | alloc_bootmem_node(NODE_DATA(cnode), sizeof(nodepda_t)); |
515 | memset(nodepdaindr[cnode], 0, sizeof(nodepda_t)); | ||
516 | memset(nodepdaindr[cnode]->phys_cpuid, -1, | 515 | memset(nodepdaindr[cnode]->phys_cpuid, -1, |
517 | sizeof(nodepdaindr[cnode]->phys_cpuid)); | 516 | sizeof(nodepdaindr[cnode]->phys_cpuid)); |
518 | spin_lock_init(&nodepdaindr[cnode]->ptc_lock); | 517 | spin_lock_init(&nodepdaindr[cnode]->ptc_lock); |
@@ -521,11 +520,9 @@ static void __init sn_init_pdas(char **cmdline_p) | |||
521 | /* | 520 | /* |
522 | * Allocate & initialize nodepda for TIOs. For now, put them on node 0. | 521 | * Allocate & initialize nodepda for TIOs. For now, put them on node 0. |
523 | */ | 522 | */ |
524 | for (cnode = num_online_nodes(); cnode < num_cnodes; cnode++) { | 523 | for (cnode = num_online_nodes(); cnode < num_cnodes; cnode++) |
525 | nodepdaindr[cnode] = | 524 | nodepdaindr[cnode] = |
526 | alloc_bootmem_node(NODE_DATA(0), sizeof(nodepda_t)); | 525 | alloc_bootmem_node(NODE_DATA(0), sizeof(nodepda_t)); |
527 | memset(nodepdaindr[cnode], 0, sizeof(nodepda_t)); | ||
528 | } | ||
529 | 526 | ||
530 | /* | 527 | /* |
531 | * Now copy the array of nodepda pointers to each nodepda. | 528 | * Now copy the array of nodepda pointers to each nodepda. |
diff --git a/arch/mips/include/asm/pci.h b/arch/mips/include/asm/pci.h index 5510c53b7feb..053e4634acee 100644 --- a/arch/mips/include/asm/pci.h +++ b/arch/mips/include/asm/pci.h | |||
@@ -79,6 +79,11 @@ static inline void pcibios_penalize_isa_irq(int irq, int active) | |||
79 | /* We don't do dynamic PCI IRQ allocation */ | 79 | /* We don't do dynamic PCI IRQ allocation */ |
80 | } | 80 | } |
81 | 81 | ||
82 | #define HAVE_PCI_MMAP | ||
83 | |||
84 | extern int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma, | ||
85 | enum pci_mmap_state mmap_state, int write_combine); | ||
86 | |||
82 | /* | 87 | /* |
83 | * Dynamic DMA mapping stuff. | 88 | * Dynamic DMA mapping stuff. |
84 | * MIPS has everything mapped statically. | 89 | * MIPS has everything mapped statically. |
diff --git a/arch/mips/pci/pci.c b/arch/mips/pci/pci.c index a377e9d2d029..62cae740e250 100644 --- a/arch/mips/pci/pci.c +++ b/arch/mips/pci/pci.c | |||
@@ -354,6 +354,30 @@ EXPORT_SYMBOL(PCIBIOS_MIN_IO); | |||
354 | EXPORT_SYMBOL(PCIBIOS_MIN_MEM); | 354 | EXPORT_SYMBOL(PCIBIOS_MIN_MEM); |
355 | #endif | 355 | #endif |
356 | 356 | ||
357 | int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma, | ||
358 | enum pci_mmap_state mmap_state, int write_combine) | ||
359 | { | ||
360 | unsigned long prot; | ||
361 | |||
362 | /* | ||
363 | * I/O space can be accessed via normal processor loads and stores on | ||
364 | * this platform but for now we elect not to do this and portable | ||
365 | * drivers should not do this anyway. | ||
366 | */ | ||
367 | if (mmap_state == pci_mmap_io) | ||
368 | return -EINVAL; | ||
369 | |||
370 | /* | ||
371 | * Ignore write-combine; for now only return uncached mappings. | ||
372 | */ | ||
373 | prot = pgprot_val(vma->vm_page_prot); | ||
374 | prot = (prot & ~_CACHE_MASK) | _CACHE_UNCACHED; | ||
375 | vma->vm_page_prot = __pgprot(prot); | ||
376 | |||
377 | return remap_pfn_range(vma, vma->vm_start, vma->vm_pgoff, | ||
378 | vma->vm_end - vma->vm_start, vma->vm_page_prot); | ||
379 | } | ||
380 | |||
357 | char * (*pcibios_plat_setup)(char *str) __devinitdata; | 381 | char * (*pcibios_plat_setup)(char *str) __devinitdata; |
358 | 382 | ||
359 | char *__devinit pcibios_setup(char *str) | 383 | char *__devinit pcibios_setup(char *str) |
diff --git a/arch/mn10300/kernel/entry.S b/arch/mn10300/kernel/entry.S index b7cbb1487af4..62fba8aa9b6e 100644 --- a/arch/mn10300/kernel/entry.S +++ b/arch/mn10300/kernel/entry.S | |||
@@ -180,6 +180,7 @@ ENTRY(resume_userspace) | |||
180 | 180 | ||
181 | #ifdef CONFIG_PREEMPT | 181 | #ifdef CONFIG_PREEMPT |
182 | ENTRY(resume_kernel) | 182 | ENTRY(resume_kernel) |
183 | __cli | ||
183 | mov (TI_preempt_count,a2),d0 # non-zero preempt_count ? | 184 | mov (TI_preempt_count,a2),d0 # non-zero preempt_count ? |
184 | cmp 0,d0 | 185 | cmp 0,d0 |
185 | bne restore_all | 186 | bne restore_all |
@@ -190,7 +191,7 @@ need_resched: | |||
190 | mov (REG_EPSW,fp),d0 | 191 | mov (REG_EPSW,fp),d0 |
191 | and EPSW_IM,d0 | 192 | and EPSW_IM,d0 |
192 | cmp EPSW_IM_7,d0 # interrupts off (exception path) ? | 193 | cmp EPSW_IM_7,d0 # interrupts off (exception path) ? |
193 | beq restore_all | 194 | bne restore_all |
194 | call preempt_schedule_irq[],0 | 195 | call preempt_schedule_irq[],0 |
195 | jmp need_resched | 196 | jmp need_resched |
196 | #endif | 197 | #endif |
diff --git a/arch/mn10300/kernel/mn10300-serial.c b/arch/mn10300/kernel/mn10300-serial.c index aa07d0cd1905..59b9c4bf9583 100644 --- a/arch/mn10300/kernel/mn10300-serial.c +++ b/arch/mn10300/kernel/mn10300-serial.c | |||
@@ -566,6 +566,11 @@ static void mn10300_serial_transmit_interrupt(struct mn10300_serial_port *port) | |||
566 | { | 566 | { |
567 | _enter("%s", port->name); | 567 | _enter("%s", port->name); |
568 | 568 | ||
569 | if (!port->uart.info || !port->uart.info->port.tty) { | ||
570 | mn10300_serial_dis_tx_intr(port); | ||
571 | return; | ||
572 | } | ||
573 | |||
569 | if (uart_tx_stopped(&port->uart) || | 574 | if (uart_tx_stopped(&port->uart) || |
570 | uart_circ_empty(&port->uart.info->xmit)) | 575 | uart_circ_empty(&port->uart.info->xmit)) |
571 | mn10300_serial_dis_tx_intr(port); | 576 | mn10300_serial_dis_tx_intr(port); |
diff --git a/arch/mn10300/kernel/setup.c b/arch/mn10300/kernel/setup.c index 017121ce896f..e1d88ab51008 100644 --- a/arch/mn10300/kernel/setup.c +++ b/arch/mn10300/kernel/setup.c | |||
@@ -161,7 +161,7 @@ void __init setup_arch(char **cmdline_p) | |||
161 | reserve the page it is occupying. */ | 161 | reserve the page it is occupying. */ |
162 | if (CONFIG_INTERRUPT_VECTOR_BASE >= CONFIG_KERNEL_RAM_BASE_ADDRESS && | 162 | if (CONFIG_INTERRUPT_VECTOR_BASE >= CONFIG_KERNEL_RAM_BASE_ADDRESS && |
163 | CONFIG_INTERRUPT_VECTOR_BASE < memory_end) | 163 | CONFIG_INTERRUPT_VECTOR_BASE < memory_end) |
164 | reserve_bootmem(CONFIG_INTERRUPT_VECTOR_BASE, 1, | 164 | reserve_bootmem(CONFIG_INTERRUPT_VECTOR_BASE, PAGE_SIZE, |
165 | BOOTMEM_DEFAULT); | 165 | BOOTMEM_DEFAULT); |
166 | 166 | ||
167 | reserve_bootmem(PAGE_ALIGN(PFN_PHYS(free_pfn)), bootmap_size, | 167 | reserve_bootmem(PAGE_ALIGN(PFN_PHYS(free_pfn)), bootmap_size, |
diff --git a/arch/mn10300/kernel/vmlinux.lds.S b/arch/mn10300/kernel/vmlinux.lds.S index a3e80f444f55..b8259668f7dc 100644 --- a/arch/mn10300/kernel/vmlinux.lds.S +++ b/arch/mn10300/kernel/vmlinux.lds.S | |||
@@ -11,6 +11,7 @@ | |||
11 | #define __VMLINUX_LDS__ | 11 | #define __VMLINUX_LDS__ |
12 | #include <asm-generic/vmlinux.lds.h> | 12 | #include <asm-generic/vmlinux.lds.h> |
13 | #include <asm/thread_info.h> | 13 | #include <asm/thread_info.h> |
14 | #include <asm/page.h> | ||
14 | 15 | ||
15 | OUTPUT_FORMAT("elf32-am33lin", "elf32-am33lin", "elf32-am33lin") | 16 | OUTPUT_FORMAT("elf32-am33lin", "elf32-am33lin", "elf32-am33lin") |
16 | OUTPUT_ARCH(mn10300) | 17 | OUTPUT_ARCH(mn10300) |
@@ -55,13 +56,13 @@ SECTIONS | |||
55 | CONSTRUCTORS | 56 | CONSTRUCTORS |
56 | } | 57 | } |
57 | 58 | ||
58 | . = ALIGN(4096); | 59 | . = ALIGN(PAGE_SIZE); |
59 | __nosave_begin = .; | 60 | __nosave_begin = .; |
60 | .data_nosave : { *(.data.nosave) } | 61 | .data_nosave : { *(.data.nosave) } |
61 | . = ALIGN(4096); | 62 | . = ALIGN(PAGE_SIZE); |
62 | __nosave_end = .; | 63 | __nosave_end = .; |
63 | 64 | ||
64 | . = ALIGN(4096); | 65 | . = ALIGN(PAGE_SIZE); |
65 | .data.page_aligned : { *(.data.idt) } | 66 | .data.page_aligned : { *(.data.idt) } |
66 | 67 | ||
67 | . = ALIGN(32); | 68 | . = ALIGN(32); |
@@ -78,7 +79,7 @@ SECTIONS | |||
78 | .data.init_task : { *(.data.init_task) } | 79 | .data.init_task : { *(.data.init_task) } |
79 | 80 | ||
80 | /* might get freed after init */ | 81 | /* might get freed after init */ |
81 | . = ALIGN(4096); | 82 | . = ALIGN(PAGE_SIZE); |
82 | .smp_locks : AT(ADDR(.smp_locks) - LOAD_OFFSET) { | 83 | .smp_locks : AT(ADDR(.smp_locks) - LOAD_OFFSET) { |
83 | __smp_locks = .; | 84 | __smp_locks = .; |
84 | *(.smp_locks) | 85 | *(.smp_locks) |
@@ -86,7 +87,7 @@ SECTIONS | |||
86 | } | 87 | } |
87 | 88 | ||
88 | /* will be freed after init */ | 89 | /* will be freed after init */ |
89 | . = ALIGN(4096); /* Init code and data */ | 90 | . = ALIGN(PAGE_SIZE); /* Init code and data */ |
90 | __init_begin = .; | 91 | __init_begin = .; |
91 | .init.text : { | 92 | .init.text : { |
92 | _sinittext = .; | 93 | _sinittext = .; |
@@ -120,17 +121,14 @@ SECTIONS | |||
120 | .exit.data : { *(.exit.data) } | 121 | .exit.data : { *(.exit.data) } |
121 | 122 | ||
122 | #ifdef CONFIG_BLK_DEV_INITRD | 123 | #ifdef CONFIG_BLK_DEV_INITRD |
123 | . = ALIGN(4096); | 124 | . = ALIGN(PAGE_SIZE); |
124 | __initramfs_start = .; | 125 | __initramfs_start = .; |
125 | .init.ramfs : { *(.init.ramfs) } | 126 | .init.ramfs : { *(.init.ramfs) } |
126 | __initramfs_end = .; | 127 | __initramfs_end = .; |
127 | #endif | 128 | #endif |
128 | 129 | ||
129 | . = ALIGN(32); | 130 | PERCPU(32) |
130 | __per_cpu_start = .; | 131 | . = ALIGN(PAGE_SIZE); |
131 | .data.percpu : { *(.data.percpu) } | ||
132 | __per_cpu_end = .; | ||
133 | . = ALIGN(4096); | ||
134 | __init_end = .; | 132 | __init_end = .; |
135 | /* freed after init ends here */ | 133 | /* freed after init ends here */ |
136 | 134 | ||
@@ -145,7 +143,7 @@ SECTIONS | |||
145 | _end = . ; | 143 | _end = . ; |
146 | 144 | ||
147 | /* This is where the kernel creates the early boot page tables */ | 145 | /* This is where the kernel creates the early boot page tables */ |
148 | . = ALIGN(4096); | 146 | . = ALIGN(PAGE_SIZE); |
149 | pg0 = .; | 147 | pg0 = .; |
150 | 148 | ||
151 | /* Sections to be discarded */ | 149 | /* Sections to be discarded */ |
diff --git a/arch/powerpc/kernel/cpu_setup_44x.S b/arch/powerpc/kernel/cpu_setup_44x.S index 31c18b52affb..10b4ab1008af 100644 --- a/arch/powerpc/kernel/cpu_setup_44x.S +++ b/arch/powerpc/kernel/cpu_setup_44x.S | |||
@@ -40,6 +40,7 @@ _GLOBAL(__setup_cpu_460gt) | |||
40 | mtlr r4 | 40 | mtlr r4 |
41 | blr | 41 | blr |
42 | 42 | ||
43 | _GLOBAL(__setup_cpu_440x5) | ||
43 | _GLOBAL(__setup_cpu_440gx) | 44 | _GLOBAL(__setup_cpu_440gx) |
44 | _GLOBAL(__setup_cpu_440spe) | 45 | _GLOBAL(__setup_cpu_440spe) |
45 | b __fixup_440A_mcheck | 46 | b __fixup_440A_mcheck |
diff --git a/arch/powerpc/kernel/cputable.c b/arch/powerpc/kernel/cputable.c index b1eb834bc0fc..7e8719504f39 100644 --- a/arch/powerpc/kernel/cputable.c +++ b/arch/powerpc/kernel/cputable.c | |||
@@ -39,6 +39,7 @@ extern void __setup_cpu_440epx(unsigned long offset, struct cpu_spec* spec); | |||
39 | extern void __setup_cpu_440gx(unsigned long offset, struct cpu_spec* spec); | 39 | extern void __setup_cpu_440gx(unsigned long offset, struct cpu_spec* spec); |
40 | extern void __setup_cpu_440grx(unsigned long offset, struct cpu_spec* spec); | 40 | extern void __setup_cpu_440grx(unsigned long offset, struct cpu_spec* spec); |
41 | extern void __setup_cpu_440spe(unsigned long offset, struct cpu_spec* spec); | 41 | extern void __setup_cpu_440spe(unsigned long offset, struct cpu_spec* spec); |
42 | extern void __setup_cpu_440x5(unsigned long offset, struct cpu_spec* spec); | ||
42 | extern void __setup_cpu_460ex(unsigned long offset, struct cpu_spec* spec); | 43 | extern void __setup_cpu_460ex(unsigned long offset, struct cpu_spec* spec); |
43 | extern void __setup_cpu_460gt(unsigned long offset, struct cpu_spec* spec); | 44 | extern void __setup_cpu_460gt(unsigned long offset, struct cpu_spec* spec); |
44 | extern void __setup_cpu_603(unsigned long offset, struct cpu_spec* spec); | 45 | extern void __setup_cpu_603(unsigned long offset, struct cpu_spec* spec); |
@@ -1500,6 +1501,8 @@ static struct cpu_spec __initdata cpu_specs[] = { | |||
1500 | .cpu_user_features = COMMON_USER_BOOKE, | 1501 | .cpu_user_features = COMMON_USER_BOOKE, |
1501 | .icache_bsize = 32, | 1502 | .icache_bsize = 32, |
1502 | .dcache_bsize = 32, | 1503 | .dcache_bsize = 32, |
1504 | .cpu_setup = __setup_cpu_440x5, | ||
1505 | .machine_check = machine_check_440A, | ||
1503 | .platform = "ppc440", | 1506 | .platform = "ppc440", |
1504 | }, | 1507 | }, |
1505 | { /* 460EX */ | 1508 | { /* 460EX */ |
diff --git a/arch/um/drivers/mconsole_kern.c b/arch/um/drivers/mconsole_kern.c index 19d579d74d27..8f44ebb0dec8 100644 --- a/arch/um/drivers/mconsole_kern.c +++ b/arch/um/drivers/mconsole_kern.c | |||
@@ -16,6 +16,8 @@ | |||
16 | #include <linux/slab.h> | 16 | #include <linux/slab.h> |
17 | #include <linux/syscalls.h> | 17 | #include <linux/syscalls.h> |
18 | #include <linux/utsname.h> | 18 | #include <linux/utsname.h> |
19 | #include <linux/socket.h> | ||
20 | #include <linux/un.h> | ||
19 | #include <linux/workqueue.h> | 21 | #include <linux/workqueue.h> |
20 | #include <linux/mutex.h> | 22 | #include <linux/mutex.h> |
21 | #include <asm/uaccess.h> | 23 | #include <asm/uaccess.h> |
@@ -785,7 +787,7 @@ static int __init mconsole_init(void) | |||
785 | /* long to avoid size mismatch warnings from gcc */ | 787 | /* long to avoid size mismatch warnings from gcc */ |
786 | long sock; | 788 | long sock; |
787 | int err; | 789 | int err; |
788 | char file[256]; | 790 | char file[UNIX_PATH_MAX]; |
789 | 791 | ||
790 | if (umid_file_name("mconsole", file, sizeof(file))) | 792 | if (umid_file_name("mconsole", file, sizeof(file))) |
791 | return -1; | 793 | return -1; |
diff --git a/arch/x86/include/asm/hardirq_32.h b/arch/x86/include/asm/hardirq_32.h index b3e475dc9338..7a07897a7888 100644 --- a/arch/x86/include/asm/hardirq_32.h +++ b/arch/x86/include/asm/hardirq_32.h | |||
@@ -23,6 +23,8 @@ DECLARE_PER_CPU(irq_cpustat_t, irq_stat); | |||
23 | #define __ARCH_IRQ_STAT | 23 | #define __ARCH_IRQ_STAT |
24 | #define __IRQ_STAT(cpu, member) (per_cpu(irq_stat, cpu).member) | 24 | #define __IRQ_STAT(cpu, member) (per_cpu(irq_stat, cpu).member) |
25 | 25 | ||
26 | #define inc_irq_stat(member) (__get_cpu_var(irq_stat).member++) | ||
27 | |||
26 | void ack_bad_irq(unsigned int irq); | 28 | void ack_bad_irq(unsigned int irq); |
27 | #include <linux/irq_cpustat.h> | 29 | #include <linux/irq_cpustat.h> |
28 | 30 | ||
diff --git a/arch/x86/include/asm/hardirq_64.h b/arch/x86/include/asm/hardirq_64.h index 1ba381fc51d3..b5a6b5d56704 100644 --- a/arch/x86/include/asm/hardirq_64.h +++ b/arch/x86/include/asm/hardirq_64.h | |||
@@ -11,6 +11,8 @@ | |||
11 | 11 | ||
12 | #define __ARCH_IRQ_STAT 1 | 12 | #define __ARCH_IRQ_STAT 1 |
13 | 13 | ||
14 | #define inc_irq_stat(member) add_pda(member, 1) | ||
15 | |||
14 | #define local_softirq_pending() read_pda(__softirq_pending) | 16 | #define local_softirq_pending() read_pda(__softirq_pending) |
15 | 17 | ||
16 | #define __ARCH_SET_SOFTIRQ_PENDING 1 | 18 | #define __ARCH_SET_SOFTIRQ_PENDING 1 |
diff --git a/arch/x86/kernel/amd_iommu.c b/arch/x86/kernel/amd_iommu.c index 5662e226b0c9..a7b6dec6fc3f 100644 --- a/arch/x86/kernel/amd_iommu.c +++ b/arch/x86/kernel/amd_iommu.c | |||
@@ -344,7 +344,7 @@ static int iommu_map(struct protection_domain *dom, | |||
344 | u64 __pte, *pte, *page; | 344 | u64 __pte, *pte, *page; |
345 | 345 | ||
346 | bus_addr = PAGE_ALIGN(bus_addr); | 346 | bus_addr = PAGE_ALIGN(bus_addr); |
347 | phys_addr = PAGE_ALIGN(bus_addr); | 347 | phys_addr = PAGE_ALIGN(phys_addr); |
348 | 348 | ||
349 | /* only support 512GB address spaces for now */ | 349 | /* only support 512GB address spaces for now */ |
350 | if (bus_addr > IOMMU_MAP_SIZE_L3 || !(prot & IOMMU_PROT_MASK)) | 350 | if (bus_addr > IOMMU_MAP_SIZE_L3 || !(prot & IOMMU_PROT_MASK)) |
@@ -600,7 +600,7 @@ static void dma_ops_free_pagetable(struct dma_ops_domain *dma_dom) | |||
600 | continue; | 600 | continue; |
601 | 601 | ||
602 | p2 = IOMMU_PTE_PAGE(p1[i]); | 602 | p2 = IOMMU_PTE_PAGE(p1[i]); |
603 | for (j = 0; j < 512; ++i) { | 603 | for (j = 0; j < 512; ++j) { |
604 | if (!IOMMU_PTE_PRESENT(p2[j])) | 604 | if (!IOMMU_PTE_PRESENT(p2[j])) |
605 | continue; | 605 | continue; |
606 | p3 = IOMMU_PTE_PAGE(p2[j]); | 606 | p3 = IOMMU_PTE_PAGE(p2[j]); |
@@ -910,7 +910,7 @@ static void dma_ops_domain_unmap(struct amd_iommu *iommu, | |||
910 | if (address >= dom->aperture_size) | 910 | if (address >= dom->aperture_size) |
911 | return; | 911 | return; |
912 | 912 | ||
913 | WARN_ON(address & 0xfffULL || address > dom->aperture_size); | 913 | WARN_ON(address & ~PAGE_MASK || address >= dom->aperture_size); |
914 | 914 | ||
915 | pte = dom->pte_pages[IOMMU_PTE_L1_INDEX(address)]; | 915 | pte = dom->pte_pages[IOMMU_PTE_L1_INDEX(address)]; |
916 | pte += IOMMU_PTE_L0_INDEX(address); | 916 | pte += IOMMU_PTE_L0_INDEX(address); |
@@ -922,8 +922,8 @@ static void dma_ops_domain_unmap(struct amd_iommu *iommu, | |||
922 | 922 | ||
923 | /* | 923 | /* |
924 | * This function contains common code for mapping of a physically | 924 | * This function contains common code for mapping of a physically |
925 | * contiguous memory region into DMA address space. It is uses by all | 925 | * contiguous memory region into DMA address space. It is used by all |
926 | * mapping functions provided by this IOMMU driver. | 926 | * mapping functions provided with this IOMMU driver. |
927 | * Must be called with the domain lock held. | 927 | * Must be called with the domain lock held. |
928 | */ | 928 | */ |
929 | static dma_addr_t __map_single(struct device *dev, | 929 | static dma_addr_t __map_single(struct device *dev, |
@@ -983,7 +983,8 @@ static void __unmap_single(struct amd_iommu *iommu, | |||
983 | dma_addr_t i, start; | 983 | dma_addr_t i, start; |
984 | unsigned int pages; | 984 | unsigned int pages; |
985 | 985 | ||
986 | if ((dma_addr == 0) || (dma_addr + size > dma_dom->aperture_size)) | 986 | if ((dma_addr == bad_dma_address) || |
987 | (dma_addr + size > dma_dom->aperture_size)) | ||
987 | return; | 988 | return; |
988 | 989 | ||
989 | pages = iommu_num_pages(dma_addr, size, PAGE_SIZE); | 990 | pages = iommu_num_pages(dma_addr, size, PAGE_SIZE); |
diff --git a/arch/x86/kernel/apic.c b/arch/x86/kernel/apic.c index 8ab8c1858672..0579ec1cd6e3 100644 --- a/arch/x86/kernel/apic.c +++ b/arch/x86/kernel/apic.c | |||
@@ -784,11 +784,7 @@ static void local_apic_timer_interrupt(void) | |||
784 | /* | 784 | /* |
785 | * the NMI deadlock-detector uses this. | 785 | * the NMI deadlock-detector uses this. |
786 | */ | 786 | */ |
787 | #ifdef CONFIG_X86_64 | 787 | inc_irq_stat(apic_timer_irqs); |
788 | add_pda(apic_timer_irqs, 1); | ||
789 | #else | ||
790 | per_cpu(irq_stat, cpu).apic_timer_irqs++; | ||
791 | #endif | ||
792 | 788 | ||
793 | evt->event_handler(evt); | 789 | evt->event_handler(evt); |
794 | } | 790 | } |
@@ -1697,14 +1693,11 @@ void smp_spurious_interrupt(struct pt_regs *regs) | |||
1697 | if (v & (1 << (SPURIOUS_APIC_VECTOR & 0x1f))) | 1693 | if (v & (1 << (SPURIOUS_APIC_VECTOR & 0x1f))) |
1698 | ack_APIC_irq(); | 1694 | ack_APIC_irq(); |
1699 | 1695 | ||
1700 | #ifdef CONFIG_X86_64 | 1696 | inc_irq_stat(irq_spurious_count); |
1701 | add_pda(irq_spurious_count, 1); | 1697 | |
1702 | #else | ||
1703 | /* see sw-dev-man vol 3, chapter 7.4.13.5 */ | 1698 | /* see sw-dev-man vol 3, chapter 7.4.13.5 */ |
1704 | printk(KERN_INFO "spurious APIC interrupt on CPU#%d, " | 1699 | printk(KERN_INFO "spurious APIC interrupt on CPU#%d, " |
1705 | "should never happen.\n", smp_processor_id()); | 1700 | "should never happen.\n", smp_processor_id()); |
1706 | __get_cpu_var(irq_stat).irq_spurious_count++; | ||
1707 | #endif | ||
1708 | irq_exit(); | 1701 | irq_exit(); |
1709 | } | 1702 | } |
1710 | 1703 | ||
diff --git a/arch/x86/kernel/cpu/perf_counter.c b/arch/x86/kernel/cpu/perf_counter.c index 4854cca7fffd..b903f8df72bb 100644 --- a/arch/x86/kernel/cpu/perf_counter.c +++ b/arch/x86/kernel/cpu/perf_counter.c | |||
@@ -425,11 +425,7 @@ out: | |||
425 | void smp_perf_counter_interrupt(struct pt_regs *regs) | 425 | void smp_perf_counter_interrupt(struct pt_regs *regs) |
426 | { | 426 | { |
427 | irq_enter(); | 427 | irq_enter(); |
428 | #ifdef CONFIG_X86_64 | 428 | inc_irq_stat(apic_perf_irqs); |
429 | add_pda(apic_perf_irqs, 1); | ||
430 | #else | ||
431 | per_cpu(irq_stat, smp_processor_id()).apic_perf_irqs++; | ||
432 | #endif | ||
433 | apic_write(APIC_LVTPC, LOCAL_PERF_VECTOR); | 429 | apic_write(APIC_LVTPC, LOCAL_PERF_VECTOR); |
434 | __smp_perf_counter_interrupt(regs, 0); | 430 | __smp_perf_counter_interrupt(regs, 0); |
435 | 431 | ||
diff --git a/arch/x86/kernel/paravirt-spinlocks.c b/arch/x86/kernel/paravirt-spinlocks.c index 0e9f1982b1dd..95777b0faa73 100644 --- a/arch/x86/kernel/paravirt-spinlocks.c +++ b/arch/x86/kernel/paravirt-spinlocks.c | |||
@@ -7,7 +7,8 @@ | |||
7 | 7 | ||
8 | #include <asm/paravirt.h> | 8 | #include <asm/paravirt.h> |
9 | 9 | ||
10 | static void default_spin_lock_flags(struct raw_spinlock *lock, unsigned long flags) | 10 | static inline void |
11 | default_spin_lock_flags(raw_spinlock_t *lock, unsigned long flags) | ||
11 | { | 12 | { |
12 | __raw_spin_lock(lock); | 13 | __raw_spin_lock(lock); |
13 | } | 14 | } |
diff --git a/arch/x86/kernel/smp.c b/arch/x86/kernel/smp.c index 18f9b19f5f8f..d18537ce2c79 100644 --- a/arch/x86/kernel/smp.c +++ b/arch/x86/kernel/smp.c | |||
@@ -178,11 +178,7 @@ static void native_smp_send_stop(void) | |||
178 | void smp_reschedule_interrupt(struct pt_regs *regs) | 178 | void smp_reschedule_interrupt(struct pt_regs *regs) |
179 | { | 179 | { |
180 | ack_APIC_irq(); | 180 | ack_APIC_irq(); |
181 | #ifdef CONFIG_X86_32 | 181 | inc_irq_stat(irq_resched_count); |
182 | __get_cpu_var(irq_stat).irq_resched_count++; | ||
183 | #else | ||
184 | add_pda(irq_resched_count, 1); | ||
185 | #endif | ||
186 | } | 182 | } |
187 | 183 | ||
188 | void smp_call_function_interrupt(struct pt_regs *regs) | 184 | void smp_call_function_interrupt(struct pt_regs *regs) |
@@ -190,11 +186,7 @@ void smp_call_function_interrupt(struct pt_regs *regs) | |||
190 | ack_APIC_irq(); | 186 | ack_APIC_irq(); |
191 | irq_enter(); | 187 | irq_enter(); |
192 | generic_smp_call_function_interrupt(); | 188 | generic_smp_call_function_interrupt(); |
193 | #ifdef CONFIG_X86_32 | 189 | inc_irq_stat(irq_call_count); |
194 | __get_cpu_var(irq_stat).irq_call_count++; | ||
195 | #else | ||
196 | add_pda(irq_call_count, 1); | ||
197 | #endif | ||
198 | irq_exit(); | 190 | irq_exit(); |
199 | } | 191 | } |
200 | 192 | ||
@@ -203,11 +195,7 @@ void smp_call_function_single_interrupt(struct pt_regs *regs) | |||
203 | ack_APIC_irq(); | 195 | ack_APIC_irq(); |
204 | irq_enter(); | 196 | irq_enter(); |
205 | generic_smp_call_function_single_interrupt(); | 197 | generic_smp_call_function_single_interrupt(); |
206 | #ifdef CONFIG_X86_32 | 198 | inc_irq_stat(irq_call_count); |
207 | __get_cpu_var(irq_stat).irq_call_count++; | ||
208 | #else | ||
209 | add_pda(irq_call_count, 1); | ||
210 | #endif | ||
211 | irq_exit(); | 199 | irq_exit(); |
212 | } | 200 | } |
213 | 201 | ||
diff --git a/arch/x86/kernel/traps.c b/arch/x86/kernel/traps.c index 04d242ab0161..d815293e6d94 100644 --- a/arch/x86/kernel/traps.c +++ b/arch/x86/kernel/traps.c | |||
@@ -481,11 +481,7 @@ do_nmi(struct pt_regs *regs, long error_code) | |||
481 | { | 481 | { |
482 | nmi_enter(); | 482 | nmi_enter(); |
483 | 483 | ||
484 | #ifdef CONFIG_X86_32 | 484 | inc_irq_stat(__nmi_count); |
485 | { int cpu; cpu = smp_processor_id(); ++nmi_count(cpu); } | ||
486 | #else | ||
487 | add_pda(__nmi_count, 1); | ||
488 | #endif | ||
489 | 485 | ||
490 | if (!ignore_nmis) | 486 | if (!ignore_nmis) |
491 | default_do_nmi(regs); | 487 | default_do_nmi(regs); |