diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-12-12 07:48:57 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-12-12 07:48:57 -0500 |
commit | 45ab6b0c76d0e4cce5bd608ccf97b0f6b20f18df (patch) | |
tree | 4d51c73533c386aee16fde1e74b5e3bc22eedc53 | |
parent | 81444a799550214f549caf579cf65a0ca55e70b7 (diff) | |
parent | d65bd5ecb2bd166cea4952a59b7e16cc3ad6ef6c (diff) |
Merge branch 'sched/core' into cpus4096
Conflicts:
include/linux/ftrace.h
kernel/sched.c
166 files changed, 2889 insertions, 1646 deletions
diff --git a/Documentation/local_ops.txt b/Documentation/local_ops.txt index f4f8b1c6c8ba..23045b8b50f0 100644 --- a/Documentation/local_ops.txt +++ b/Documentation/local_ops.txt | |||
@@ -149,7 +149,7 @@ static void do_test_timer(unsigned long data) | |||
149 | int cpu; | 149 | int cpu; |
150 | 150 | ||
151 | /* Increment the counters */ | 151 | /* Increment the counters */ |
152 | on_each_cpu(test_each, NULL, 0, 1); | 152 | on_each_cpu(test_each, NULL, 1); |
153 | /* Read all the counters */ | 153 | /* Read all the counters */ |
154 | printk("Counters read from CPU %d\n", smp_processor_id()); | 154 | printk("Counters read from CPU %d\n", smp_processor_id()); |
155 | for_each_online_cpu(cpu) { | 155 | for_each_online_cpu(cpu) { |
diff --git a/MAINTAINERS b/MAINTAINERS index 8f2b67ea0549..24741de12a39 100644 --- a/MAINTAINERS +++ b/MAINTAINERS | |||
@@ -3759,6 +3759,15 @@ M: drzeus-sdhci@drzeus.cx | |||
3759 | L: sdhci-devel@list.drzeus.cx | 3759 | L: sdhci-devel@list.drzeus.cx |
3760 | S: Maintained | 3760 | S: Maintained |
3761 | 3761 | ||
3762 | SECURITY SUBSYSTEM | ||
3763 | F: security/ | ||
3764 | P: James Morris | ||
3765 | M: jmorris@namei.org | ||
3766 | L: linux-kernel@vger.kernel.org | ||
3767 | L: linux-security-module@vger.kernel.org (suggested Cc:) | ||
3768 | T: git kernel.org:pub/scm/linux/kernel/git/jmorris/security-testing-2.6.git | ||
3769 | S: Supported | ||
3770 | |||
3762 | SECURITY CONTACT | 3771 | SECURITY CONTACT |
3763 | P: Security Officers | 3772 | P: Security Officers |
3764 | M: security@kernel.org | 3773 | M: security@kernel.org |
@@ -1,7 +1,7 @@ | |||
1 | VERSION = 2 | 1 | VERSION = 2 |
2 | PATCHLEVEL = 6 | 2 | PATCHLEVEL = 6 |
3 | SUBLEVEL = 28 | 3 | SUBLEVEL = 28 |
4 | EXTRAVERSION = -rc7 | 4 | EXTRAVERSION = -rc8 |
5 | NAME = Erotic Pickled Herring | 5 | NAME = Erotic Pickled Herring |
6 | 6 | ||
7 | # *DOCUMENTATION* | 7 | # *DOCUMENTATION* |
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/configs/fulong_defconfig b/arch/mips/configs/fulong_defconfig index 620980081a30..b6698a232ae9 100644 --- a/arch/mips/configs/fulong_defconfig +++ b/arch/mips/configs/fulong_defconfig | |||
@@ -1,63 +1,78 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.22-rc4 | 3 | # Linux kernel version: 2.6.28-rc6 |
4 | # Mon Jun 11 00:23:51 2007 | 4 | # Fri Nov 28 17:53:48 2008 |
5 | # | 5 | # |
6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
7 | 7 | ||
8 | # | 8 | # |
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | CONFIG_LEMOTE_FULONG=y | ||
12 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
13 | # CONFIG_BASLER_EXCITE is not set | 12 | # CONFIG_BASLER_EXCITE is not set |
13 | # CONFIG_BCM47XX is not set | ||
14 | # CONFIG_MIPS_COBALT is not set | 14 | # CONFIG_MIPS_COBALT is not set |
15 | # CONFIG_MACH_DECSTATION is not set | 15 | # CONFIG_MACH_DECSTATION is not set |
16 | # CONFIG_MACH_JAZZ is not set | 16 | # CONFIG_MACH_JAZZ is not set |
17 | # CONFIG_LASAT is not set | ||
18 | CONFIG_LEMOTE_FULONG=y | ||
17 | # CONFIG_MIPS_MALTA is not set | 19 | # CONFIG_MIPS_MALTA is not set |
18 | # CONFIG_WR_PPMC is not set | ||
19 | # CONFIG_MIPS_SIM is not set | 20 | # CONFIG_MIPS_SIM is not set |
21 | # CONFIG_MACH_EMMA is not set | ||
22 | # CONFIG_MACH_VR41XX is not set | ||
23 | # CONFIG_NXP_STB220 is not set | ||
24 | # CONFIG_NXP_STB225 is not set | ||
20 | # CONFIG_PNX8550_JBS is not set | 25 | # CONFIG_PNX8550_JBS is not set |
21 | # CONFIG_PNX8550_STB810 is not set | 26 | # CONFIG_PNX8550_STB810 is not set |
22 | # CONFIG_MACH_VR41XX is not set | 27 | # CONFIG_PMC_MSP is not set |
23 | # CONFIG_PMC_YOSEMITE is not set | 28 | # CONFIG_PMC_YOSEMITE is not set |
24 | # CONFIG_MARKEINS is not set | ||
25 | # CONFIG_SGI_IP22 is not set | 29 | # CONFIG_SGI_IP22 is not set |
26 | # CONFIG_SGI_IP27 is not set | 30 | # CONFIG_SGI_IP27 is not set |
31 | # CONFIG_SGI_IP28 is not set | ||
27 | # CONFIG_SGI_IP32 is not set | 32 | # CONFIG_SGI_IP32 is not set |
28 | # CONFIG_SIBYTE_BIGSUR is not set | ||
29 | # CONFIG_SIBYTE_SWARM is not set | ||
30 | # CONFIG_SIBYTE_SENTOSA is not set | ||
31 | # CONFIG_SIBYTE_RHONE is not set | ||
32 | # CONFIG_SIBYTE_CARMEL is not set | ||
33 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
34 | # CONFIG_SIBYTE_CRHINE is not set | 33 | # CONFIG_SIBYTE_CRHINE is not set |
34 | # CONFIG_SIBYTE_CARMEL is not set | ||
35 | # CONFIG_SIBYTE_CRHONE is not set | 35 | # CONFIG_SIBYTE_CRHONE is not set |
36 | # CONFIG_SIBYTE_RHONE is not set | ||
37 | # CONFIG_SIBYTE_SWARM is not set | ||
38 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
39 | # CONFIG_SIBYTE_SENTOSA is not set | ||
40 | # CONFIG_SIBYTE_BIGSUR is not set | ||
36 | # CONFIG_SNI_RM is not set | 41 | # CONFIG_SNI_RM is not set |
37 | # CONFIG_TOSHIBA_JMR3927 is not set | 42 | # CONFIG_MACH_TX39XX is not set |
38 | # CONFIG_TOSHIBA_RBTX4927 is not set | 43 | # CONFIG_MACH_TX49XX is not set |
39 | # CONFIG_TOSHIBA_RBTX4938 is not set | 44 | # CONFIG_MIKROTIK_RB532 is not set |
45 | # CONFIG_WR_PPMC is not set | ||
40 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 46 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
41 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | 47 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set |
42 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | 48 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set |
49 | CONFIG_ARCH_SUPPORTS_OPROFILE=y | ||
43 | CONFIG_GENERIC_FIND_NEXT_BIT=y | 50 | CONFIG_GENERIC_FIND_NEXT_BIT=y |
44 | CONFIG_GENERIC_HWEIGHT=y | 51 | CONFIG_GENERIC_HWEIGHT=y |
45 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 52 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
53 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
46 | CONFIG_GENERIC_TIME=y | 54 | CONFIG_GENERIC_TIME=y |
55 | CONFIG_GENERIC_CMOS_UPDATE=y | ||
47 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 56 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y |
48 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y | 57 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y |
58 | CONFIG_CEVT_R4K=y | ||
59 | CONFIG_CSRC_R4K=y | ||
49 | CONFIG_DMA_NONCOHERENT=y | 60 | CONFIG_DMA_NONCOHERENT=y |
50 | CONFIG_DMA_NEED_PCI_MAP_STATE=y | 61 | CONFIG_DMA_NEED_PCI_MAP_STATE=y |
51 | CONFIG_EARLY_PRINTK=y | 62 | CONFIG_EARLY_PRINTK=y |
52 | CONFIG_SYS_HAS_EARLY_PRINTK=y | 63 | CONFIG_SYS_HAS_EARLY_PRINTK=y |
64 | # CONFIG_HOTPLUG_CPU is not set | ||
53 | CONFIG_I8259=y | 65 | CONFIG_I8259=y |
54 | # CONFIG_NO_IOPORT is not set | 66 | # CONFIG_NO_IOPORT is not set |
67 | CONFIG_GENERIC_ISA_DMA=y | ||
68 | CONFIG_GENERIC_ISA_DMA_SUPPORT_BROKEN=y | ||
55 | # CONFIG_CPU_BIG_ENDIAN is not set | 69 | # CONFIG_CPU_BIG_ENDIAN is not set |
56 | CONFIG_CPU_LITTLE_ENDIAN=y | 70 | CONFIG_CPU_LITTLE_ENDIAN=y |
57 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y | 71 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y |
58 | CONFIG_IRQ_CPU=y | 72 | CONFIG_IRQ_CPU=y |
59 | CONFIG_BOOT_ELF32=y | 73 | CONFIG_BOOT_ELF32=y |
60 | CONFIG_MIPS_L1_CACHE_SHIFT=5 | 74 | CONFIG_MIPS_L1_CACHE_SHIFT=5 |
75 | CONFIG_HAVE_STD_PC_SERIAL_PORT=y | ||
61 | 76 | ||
62 | # | 77 | # |
63 | # CPU selection | 78 | # CPU selection |
@@ -75,6 +90,7 @@ CONFIG_CPU_LOONGSON2=y | |||
75 | # CONFIG_CPU_TX49XX is not set | 90 | # CONFIG_CPU_TX49XX is not set |
76 | # CONFIG_CPU_R5000 is not set | 91 | # CONFIG_CPU_R5000 is not set |
77 | # CONFIG_CPU_R5432 is not set | 92 | # CONFIG_CPU_R5432 is not set |
93 | # CONFIG_CPU_R5500 is not set | ||
78 | # CONFIG_CPU_R6000 is not set | 94 | # CONFIG_CPU_R6000 is not set |
79 | # CONFIG_CPU_NEVADA is not set | 95 | # CONFIG_CPU_NEVADA is not set |
80 | # CONFIG_CPU_R8000 is not set | 96 | # CONFIG_CPU_R8000 is not set |
@@ -101,7 +117,6 @@ CONFIG_BOARD_SCACHE=y | |||
101 | CONFIG_MIPS_MT_DISABLED=y | 117 | CONFIG_MIPS_MT_DISABLED=y |
102 | # CONFIG_MIPS_MT_SMP is not set | 118 | # CONFIG_MIPS_MT_SMP is not set |
103 | # CONFIG_MIPS_MT_SMTC is not set | 119 | # CONFIG_MIPS_MT_SMTC is not set |
104 | # CONFIG_MIPS_VPE_LOADER is not set | ||
105 | CONFIG_CPU_HAS_WB=y | 120 | CONFIG_CPU_HAS_WB=y |
106 | CONFIG_CPU_HAS_SYNC=y | 121 | CONFIG_CPU_HAS_SYNC=y |
107 | CONFIG_GENERIC_HARDIRQS=y | 122 | CONFIG_GENERIC_HARDIRQS=y |
@@ -109,6 +124,7 @@ CONFIG_GENERIC_IRQ_PROBE=y | |||
109 | CONFIG_CPU_SUPPORTS_HIGHMEM=y | 124 | CONFIG_CPU_SUPPORTS_HIGHMEM=y |
110 | CONFIG_SYS_SUPPORTS_HIGHMEM=y | 125 | CONFIG_SYS_SUPPORTS_HIGHMEM=y |
111 | CONFIG_ARCH_FLATMEM_ENABLE=y | 126 | CONFIG_ARCH_FLATMEM_ENABLE=y |
127 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
112 | CONFIG_ARCH_SPARSEMEM_ENABLE=y | 128 | CONFIG_ARCH_SPARSEMEM_ENABLE=y |
113 | CONFIG_SELECT_MEMORY_MODEL=y | 129 | CONFIG_SELECT_MEMORY_MODEL=y |
114 | CONFIG_FLATMEM_MANUAL=y | 130 | CONFIG_FLATMEM_MANUAL=y |
@@ -117,9 +133,17 @@ CONFIG_FLATMEM_MANUAL=y | |||
117 | CONFIG_FLATMEM=y | 133 | CONFIG_FLATMEM=y |
118 | CONFIG_FLAT_NODE_MEM_MAP=y | 134 | CONFIG_FLAT_NODE_MEM_MAP=y |
119 | CONFIG_SPARSEMEM_STATIC=y | 135 | CONFIG_SPARSEMEM_STATIC=y |
136 | CONFIG_PAGEFLAGS_EXTENDED=y | ||
120 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 137 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
121 | CONFIG_RESOURCES_64BIT=y | 138 | CONFIG_RESOURCES_64BIT=y |
139 | CONFIG_PHYS_ADDR_T_64BIT=y | ||
122 | CONFIG_ZONE_DMA_FLAG=0 | 140 | CONFIG_ZONE_DMA_FLAG=0 |
141 | CONFIG_VIRT_TO_BUS=y | ||
142 | CONFIG_UNEVICTABLE_LRU=y | ||
143 | CONFIG_TICK_ONESHOT=y | ||
144 | CONFIG_NO_HZ=y | ||
145 | CONFIG_HIGH_RES_TIMERS=y | ||
146 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | ||
123 | # CONFIG_HZ_48 is not set | 147 | # CONFIG_HZ_48 is not set |
124 | # CONFIG_HZ_100 is not set | 148 | # CONFIG_HZ_100 is not set |
125 | # CONFIG_HZ_128 is not set | 149 | # CONFIG_HZ_128 is not set |
@@ -133,37 +157,40 @@ CONFIG_HZ=250 | |||
133 | CONFIG_PREEMPT_VOLUNTARY=y | 157 | CONFIG_PREEMPT_VOLUNTARY=y |
134 | # CONFIG_PREEMPT is not set | 158 | # CONFIG_PREEMPT is not set |
135 | # CONFIG_KEXEC is not set | 159 | # CONFIG_KEXEC is not set |
160 | CONFIG_SECCOMP=y | ||
136 | CONFIG_LOCKDEP_SUPPORT=y | 161 | CONFIG_LOCKDEP_SUPPORT=y |
137 | CONFIG_STACKTRACE_SUPPORT=y | 162 | CONFIG_STACKTRACE_SUPPORT=y |
138 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | 163 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" |
139 | 164 | ||
140 | # | 165 | # |
141 | # Code maturity level options | 166 | # General setup |
142 | # | 167 | # |
143 | CONFIG_EXPERIMENTAL=y | 168 | CONFIG_EXPERIMENTAL=y |
144 | CONFIG_BROKEN_ON_SMP=y | 169 | CONFIG_BROKEN_ON_SMP=y |
145 | CONFIG_INIT_ENV_ARG_LIMIT=32 | 170 | CONFIG_INIT_ENV_ARG_LIMIT=32 |
146 | |||
147 | # | ||
148 | # General setup | ||
149 | # | ||
150 | CONFIG_LOCALVERSION="lm32" | 171 | CONFIG_LOCALVERSION="lm32" |
151 | # CONFIG_LOCALVERSION_AUTO is not set | 172 | # CONFIG_LOCALVERSION_AUTO is not set |
152 | CONFIG_SWAP=y | 173 | CONFIG_SWAP=y |
153 | CONFIG_SYSVIPC=y | 174 | CONFIG_SYSVIPC=y |
154 | # CONFIG_IPC_NS is not set | ||
155 | CONFIG_SYSVIPC_SYSCTL=y | 175 | CONFIG_SYSVIPC_SYSCTL=y |
156 | CONFIG_POSIX_MQUEUE=y | 176 | CONFIG_POSIX_MQUEUE=y |
157 | CONFIG_BSD_PROCESS_ACCT=y | 177 | CONFIG_BSD_PROCESS_ACCT=y |
158 | # CONFIG_BSD_PROCESS_ACCT_V3 is not set | 178 | # CONFIG_BSD_PROCESS_ACCT_V3 is not set |
159 | # CONFIG_TASKSTATS is not set | 179 | # CONFIG_TASKSTATS is not set |
160 | # CONFIG_UTS_NS is not set | ||
161 | # CONFIG_AUDIT is not set | 180 | # CONFIG_AUDIT is not set |
162 | CONFIG_IKCONFIG=y | 181 | CONFIG_IKCONFIG=y |
163 | CONFIG_IKCONFIG_PROC=y | 182 | CONFIG_IKCONFIG_PROC=y |
164 | CONFIG_LOG_BUF_SHIFT=14 | 183 | CONFIG_LOG_BUF_SHIFT=14 |
184 | # CONFIG_CGROUPS is not set | ||
185 | # CONFIG_GROUP_SCHED is not set | ||
165 | CONFIG_SYSFS_DEPRECATED=y | 186 | CONFIG_SYSFS_DEPRECATED=y |
187 | CONFIG_SYSFS_DEPRECATED_V2=y | ||
166 | # CONFIG_RELAY is not set | 188 | # CONFIG_RELAY is not set |
189 | CONFIG_NAMESPACES=y | ||
190 | # CONFIG_UTS_NS is not set | ||
191 | # CONFIG_IPC_NS is not set | ||
192 | CONFIG_USER_NS=y | ||
193 | CONFIG_PID_NS=y | ||
167 | # CONFIG_BLK_DEV_INITRD is not set | 194 | # CONFIG_BLK_DEV_INITRD is not set |
168 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | 195 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set |
169 | CONFIG_SYSCTL=y | 196 | CONFIG_SYSCTL=y |
@@ -175,6 +202,8 @@ CONFIG_HOTPLUG=y | |||
175 | CONFIG_PRINTK=y | 202 | CONFIG_PRINTK=y |
176 | CONFIG_BUG=y | 203 | CONFIG_BUG=y |
177 | CONFIG_ELF_CORE=y | 204 | CONFIG_ELF_CORE=y |
205 | # CONFIG_PCSPKR_PLATFORM is not set | ||
206 | # CONFIG_COMPAT_BRK is not set | ||
178 | CONFIG_BASE_FULL=y | 207 | CONFIG_BASE_FULL=y |
179 | CONFIG_FUTEX=y | 208 | CONFIG_FUTEX=y |
180 | CONFIG_ANON_INODES=y | 209 | CONFIG_ANON_INODES=y |
@@ -183,29 +212,33 @@ CONFIG_SIGNALFD=y | |||
183 | CONFIG_TIMERFD=y | 212 | CONFIG_TIMERFD=y |
184 | CONFIG_EVENTFD=y | 213 | CONFIG_EVENTFD=y |
185 | CONFIG_SHMEM=y | 214 | CONFIG_SHMEM=y |
215 | CONFIG_AIO=y | ||
186 | CONFIG_VM_EVENT_COUNTERS=y | 216 | CONFIG_VM_EVENT_COUNTERS=y |
217 | CONFIG_PCI_QUIRKS=y | ||
187 | CONFIG_SLAB=y | 218 | CONFIG_SLAB=y |
188 | # CONFIG_SLUB is not set | 219 | # CONFIG_SLUB is not set |
189 | # CONFIG_SLOB is not set | 220 | # CONFIG_SLOB is not set |
221 | CONFIG_PROFILING=y | ||
222 | # CONFIG_MARKERS is not set | ||
223 | CONFIG_OPROFILE=m | ||
224 | CONFIG_HAVE_OPROFILE=y | ||
225 | # CONFIG_HAVE_GENERIC_DMA_COHERENT is not set | ||
226 | CONFIG_SLABINFO=y | ||
190 | CONFIG_RT_MUTEXES=y | 227 | CONFIG_RT_MUTEXES=y |
191 | # CONFIG_TINY_SHMEM is not set | 228 | # CONFIG_TINY_SHMEM is not set |
192 | CONFIG_BASE_SMALL=0 | 229 | CONFIG_BASE_SMALL=0 |
193 | |||
194 | # | ||
195 | # Loadable module support | ||
196 | # | ||
197 | CONFIG_MODULES=y | 230 | CONFIG_MODULES=y |
231 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
198 | CONFIG_MODULE_UNLOAD=y | 232 | CONFIG_MODULE_UNLOAD=y |
199 | CONFIG_MODULE_FORCE_UNLOAD=y | 233 | CONFIG_MODULE_FORCE_UNLOAD=y |
200 | # CONFIG_MODVERSIONS is not set | 234 | # CONFIG_MODVERSIONS is not set |
201 | # CONFIG_MODULE_SRCVERSION_ALL is not set | 235 | # CONFIG_MODULE_SRCVERSION_ALL is not set |
202 | CONFIG_KMOD=y | 236 | CONFIG_KMOD=y |
203 | |||
204 | # | ||
205 | # Block layer | ||
206 | # | ||
207 | CONFIG_BLOCK=y | 237 | CONFIG_BLOCK=y |
208 | # CONFIG_BLK_DEV_IO_TRACE is not set | 238 | # CONFIG_BLK_DEV_IO_TRACE is not set |
239 | CONFIG_BLK_DEV_BSG=y | ||
240 | # CONFIG_BLK_DEV_INTEGRITY is not set | ||
241 | CONFIG_BLOCK_COMPAT=y | ||
209 | 242 | ||
210 | # | 243 | # |
211 | # IO Schedulers | 244 | # IO Schedulers |
@@ -219,19 +252,19 @@ CONFIG_IOSCHED_CFQ=y | |||
219 | CONFIG_DEFAULT_CFQ=y | 252 | CONFIG_DEFAULT_CFQ=y |
220 | # CONFIG_DEFAULT_NOOP is not set | 253 | # CONFIG_DEFAULT_NOOP is not set |
221 | CONFIG_DEFAULT_IOSCHED="cfq" | 254 | CONFIG_DEFAULT_IOSCHED="cfq" |
255 | CONFIG_CLASSIC_RCU=y | ||
256 | CONFIG_FREEZER=y | ||
222 | 257 | ||
223 | # | 258 | # |
224 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) | 259 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) |
225 | # | 260 | # |
226 | CONFIG_HW_HAS_PCI=y | 261 | CONFIG_HW_HAS_PCI=y |
227 | CONFIG_PCI=y | 262 | CONFIG_PCI=y |
263 | CONFIG_PCI_DOMAINS=y | ||
228 | # CONFIG_ARCH_SUPPORTS_MSI is not set | 264 | # CONFIG_ARCH_SUPPORTS_MSI is not set |
265 | CONFIG_PCI_LEGACY=y | ||
229 | CONFIG_ISA=y | 266 | CONFIG_ISA=y |
230 | CONFIG_MMU=y | 267 | CONFIG_MMU=y |
231 | |||
232 | # | ||
233 | # PCCARD (PCMCIA/CardBus) support | ||
234 | # | ||
235 | # CONFIG_PCCARD is not set | 268 | # CONFIG_PCCARD is not set |
236 | # CONFIG_HOTPLUG_PCI is not set | 269 | # CONFIG_HOTPLUG_PCI is not set |
237 | 270 | ||
@@ -239,8 +272,9 @@ CONFIG_MMU=y | |||
239 | # Executable file formats | 272 | # Executable file formats |
240 | # | 273 | # |
241 | CONFIG_BINFMT_ELF=y | 274 | CONFIG_BINFMT_ELF=y |
275 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
276 | # CONFIG_HAVE_AOUT is not set | ||
242 | CONFIG_BINFMT_MISC=y | 277 | CONFIG_BINFMT_MISC=y |
243 | # CONFIG_BUILD_ELF64 is not set | ||
244 | CONFIG_MIPS32_COMPAT=y | 278 | CONFIG_MIPS32_COMPAT=y |
245 | CONFIG_COMPAT=y | 279 | CONFIG_COMPAT=y |
246 | CONFIG_SYSVIPC_COMPAT=y | 280 | CONFIG_SYSVIPC_COMPAT=y |
@@ -251,14 +285,12 @@ CONFIG_BINFMT_ELF32=y | |||
251 | # | 285 | # |
252 | # Power management options | 286 | # Power management options |
253 | # | 287 | # |
288 | CONFIG_ARCH_SUSPEND_POSSIBLE=y | ||
254 | CONFIG_PM=y | 289 | CONFIG_PM=y |
255 | # CONFIG_PM_LEGACY is not set | ||
256 | # CONFIG_PM_DEBUG is not set | 290 | # CONFIG_PM_DEBUG is not set |
257 | # CONFIG_PM_SYSFS_DEPRECATED is not set | 291 | CONFIG_PM_SLEEP=y |
258 | 292 | CONFIG_SUSPEND=y | |
259 | # | 293 | CONFIG_SUSPEND_FREEZER=y |
260 | # Networking | ||
261 | # | ||
262 | CONFIG_NET=y | 294 | CONFIG_NET=y |
263 | 295 | ||
264 | # | 296 | # |
@@ -271,6 +303,7 @@ CONFIG_XFRM=y | |||
271 | # CONFIG_XFRM_USER is not set | 303 | # CONFIG_XFRM_USER is not set |
272 | # CONFIG_XFRM_SUB_POLICY is not set | 304 | # CONFIG_XFRM_SUB_POLICY is not set |
273 | # CONFIG_XFRM_MIGRATE is not set | 305 | # CONFIG_XFRM_MIGRATE is not set |
306 | # CONFIG_XFRM_STATISTICS is not set | ||
274 | # CONFIG_NET_KEY is not set | 307 | # CONFIG_NET_KEY is not set |
275 | CONFIG_INET=y | 308 | CONFIG_INET=y |
276 | CONFIG_IP_MULTICAST=y | 309 | CONFIG_IP_MULTICAST=y |
@@ -294,18 +327,17 @@ CONFIG_INET_TUNNEL=m | |||
294 | # CONFIG_INET_XFRM_MODE_TRANSPORT is not set | 327 | # CONFIG_INET_XFRM_MODE_TRANSPORT is not set |
295 | # CONFIG_INET_XFRM_MODE_TUNNEL is not set | 328 | # CONFIG_INET_XFRM_MODE_TUNNEL is not set |
296 | CONFIG_INET_XFRM_MODE_BEET=y | 329 | CONFIG_INET_XFRM_MODE_BEET=y |
330 | # CONFIG_INET_LRO is not set | ||
297 | # CONFIG_INET_DIAG is not set | 331 | # CONFIG_INET_DIAG is not set |
298 | # CONFIG_TCP_CONG_ADVANCED is not set | 332 | # CONFIG_TCP_CONG_ADVANCED is not set |
299 | CONFIG_TCP_CONG_CUBIC=y | 333 | CONFIG_TCP_CONG_CUBIC=y |
300 | CONFIG_DEFAULT_TCP_CONG="cubic" | 334 | CONFIG_DEFAULT_TCP_CONG="cubic" |
301 | # CONFIG_TCP_MD5SIG is not set | 335 | # CONFIG_TCP_MD5SIG is not set |
302 | # CONFIG_IP_VS is not set | ||
303 | # CONFIG_IPV6 is not set | 336 | # CONFIG_IPV6 is not set |
304 | # CONFIG_INET6_XFRM_TUNNEL is not set | ||
305 | # CONFIG_INET6_TUNNEL is not set | ||
306 | # CONFIG_NETWORK_SECMARK is not set | 337 | # CONFIG_NETWORK_SECMARK is not set |
307 | CONFIG_NETFILTER=y | 338 | CONFIG_NETFILTER=y |
308 | # CONFIG_NETFILTER_DEBUG is not set | 339 | # CONFIG_NETFILTER_DEBUG is not set |
340 | CONFIG_NETFILTER_ADVANCED=y | ||
309 | 341 | ||
310 | # | 342 | # |
311 | # Core Netfilter Configuration | 343 | # Core Netfilter Configuration |
@@ -313,53 +345,59 @@ CONFIG_NETFILTER=y | |||
313 | CONFIG_NETFILTER_NETLINK=m | 345 | CONFIG_NETFILTER_NETLINK=m |
314 | CONFIG_NETFILTER_NETLINK_QUEUE=m | 346 | CONFIG_NETFILTER_NETLINK_QUEUE=m |
315 | CONFIG_NETFILTER_NETLINK_LOG=m | 347 | CONFIG_NETFILTER_NETLINK_LOG=m |
316 | # CONFIG_NF_CONNTRACK_ENABLED is not set | ||
317 | # CONFIG_NF_CONNTRACK is not set | 348 | # CONFIG_NF_CONNTRACK is not set |
318 | CONFIG_NETFILTER_XTABLES=m | 349 | CONFIG_NETFILTER_XTABLES=m |
319 | CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m | 350 | CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m |
320 | # CONFIG_NETFILTER_XT_TARGET_DSCP is not set | 351 | # CONFIG_NETFILTER_XT_TARGET_DSCP is not set |
321 | CONFIG_NETFILTER_XT_TARGET_MARK=m | 352 | CONFIG_NETFILTER_XT_TARGET_MARK=m |
322 | CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m | ||
323 | # CONFIG_NETFILTER_XT_TARGET_NFLOG is not set | 353 | # CONFIG_NETFILTER_XT_TARGET_NFLOG is not set |
354 | CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m | ||
355 | CONFIG_NETFILTER_XT_TARGET_RATEEST=m | ||
356 | CONFIG_NETFILTER_XT_TARGET_TRACE=m | ||
324 | # CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set | 357 | # CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set |
358 | CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m | ||
325 | CONFIG_NETFILTER_XT_MATCH_COMMENT=m | 359 | CONFIG_NETFILTER_XT_MATCH_COMMENT=m |
326 | CONFIG_NETFILTER_XT_MATCH_DCCP=m | 360 | CONFIG_NETFILTER_XT_MATCH_DCCP=m |
327 | # CONFIG_NETFILTER_XT_MATCH_DSCP is not set | 361 | # CONFIG_NETFILTER_XT_MATCH_DSCP is not set |
328 | CONFIG_NETFILTER_XT_MATCH_ESP=m | 362 | CONFIG_NETFILTER_XT_MATCH_ESP=m |
363 | # CONFIG_NETFILTER_XT_MATCH_HASHLIMIT is not set | ||
364 | CONFIG_NETFILTER_XT_MATCH_IPRANGE=m | ||
329 | CONFIG_NETFILTER_XT_MATCH_LENGTH=m | 365 | CONFIG_NETFILTER_XT_MATCH_LENGTH=m |
330 | CONFIG_NETFILTER_XT_MATCH_LIMIT=m | 366 | CONFIG_NETFILTER_XT_MATCH_LIMIT=m |
331 | CONFIG_NETFILTER_XT_MATCH_MAC=m | 367 | CONFIG_NETFILTER_XT_MATCH_MAC=m |
332 | CONFIG_NETFILTER_XT_MATCH_MARK=m | 368 | CONFIG_NETFILTER_XT_MATCH_MARK=m |
333 | # CONFIG_NETFILTER_XT_MATCH_POLICY is not set | ||
334 | CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m | 369 | CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m |
370 | CONFIG_NETFILTER_XT_MATCH_OWNER=m | ||
371 | # CONFIG_NETFILTER_XT_MATCH_POLICY is not set | ||
335 | CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m | 372 | CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m |
336 | CONFIG_NETFILTER_XT_MATCH_QUOTA=m | 373 | CONFIG_NETFILTER_XT_MATCH_QUOTA=m |
374 | CONFIG_NETFILTER_XT_MATCH_RATEEST=m | ||
337 | CONFIG_NETFILTER_XT_MATCH_REALM=m | 375 | CONFIG_NETFILTER_XT_MATCH_REALM=m |
376 | CONFIG_NETFILTER_XT_MATCH_RECENT=m | ||
377 | # CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT is not set | ||
338 | CONFIG_NETFILTER_XT_MATCH_SCTP=m | 378 | CONFIG_NETFILTER_XT_MATCH_SCTP=m |
339 | CONFIG_NETFILTER_XT_MATCH_STATISTIC=m | 379 | CONFIG_NETFILTER_XT_MATCH_STATISTIC=m |
340 | CONFIG_NETFILTER_XT_MATCH_STRING=m | 380 | CONFIG_NETFILTER_XT_MATCH_STRING=m |
341 | CONFIG_NETFILTER_XT_MATCH_TCPMSS=m | 381 | CONFIG_NETFILTER_XT_MATCH_TCPMSS=m |
342 | # CONFIG_NETFILTER_XT_MATCH_HASHLIMIT is not set | 382 | CONFIG_NETFILTER_XT_MATCH_TIME=m |
383 | CONFIG_NETFILTER_XT_MATCH_U32=m | ||
384 | # CONFIG_IP_VS is not set | ||
343 | 385 | ||
344 | # | 386 | # |
345 | # IP: Netfilter Configuration | 387 | # IP: Netfilter Configuration |
346 | # | 388 | # |
389 | # CONFIG_NF_DEFRAG_IPV4 is not set | ||
347 | CONFIG_IP_NF_QUEUE=m | 390 | CONFIG_IP_NF_QUEUE=m |
348 | CONFIG_IP_NF_IPTABLES=m | 391 | CONFIG_IP_NF_IPTABLES=m |
349 | CONFIG_IP_NF_MATCH_IPRANGE=m | 392 | CONFIG_IP_NF_MATCH_ADDRTYPE=m |
350 | CONFIG_IP_NF_MATCH_TOS=m | ||
351 | CONFIG_IP_NF_MATCH_RECENT=m | ||
352 | CONFIG_IP_NF_MATCH_ECN=m | ||
353 | CONFIG_IP_NF_MATCH_AH=m | 393 | CONFIG_IP_NF_MATCH_AH=m |
394 | CONFIG_IP_NF_MATCH_ECN=m | ||
354 | CONFIG_IP_NF_MATCH_TTL=m | 395 | CONFIG_IP_NF_MATCH_TTL=m |
355 | CONFIG_IP_NF_MATCH_OWNER=m | ||
356 | CONFIG_IP_NF_MATCH_ADDRTYPE=m | ||
357 | CONFIG_IP_NF_FILTER=m | 396 | CONFIG_IP_NF_FILTER=m |
358 | CONFIG_IP_NF_TARGET_REJECT=m | 397 | CONFIG_IP_NF_TARGET_REJECT=m |
359 | CONFIG_IP_NF_TARGET_LOG=m | 398 | CONFIG_IP_NF_TARGET_LOG=m |
360 | CONFIG_IP_NF_TARGET_ULOG=m | 399 | CONFIG_IP_NF_TARGET_ULOG=m |
361 | CONFIG_IP_NF_MANGLE=m | 400 | CONFIG_IP_NF_MANGLE=m |
362 | CONFIG_IP_NF_TARGET_TOS=m | ||
363 | CONFIG_IP_NF_TARGET_ECN=m | 401 | CONFIG_IP_NF_TARGET_ECN=m |
364 | CONFIG_IP_NF_TARGET_TTL=m | 402 | CONFIG_IP_NF_TARGET_TTL=m |
365 | CONFIG_IP_NF_RAW=m | 403 | CONFIG_IP_NF_RAW=m |
@@ -371,6 +409,7 @@ CONFIG_IP_NF_ARP_MANGLE=m | |||
371 | # CONFIG_TIPC is not set | 409 | # CONFIG_TIPC is not set |
372 | # CONFIG_ATM is not set | 410 | # CONFIG_ATM is not set |
373 | # CONFIG_BRIDGE is not set | 411 | # CONFIG_BRIDGE is not set |
412 | # CONFIG_NET_DSA is not set | ||
374 | # CONFIG_VLAN_8021Q is not set | 413 | # CONFIG_VLAN_8021Q is not set |
375 | # CONFIG_DECNET is not set | 414 | # CONFIG_DECNET is not set |
376 | # CONFIG_LLC2 is not set | 415 | # CONFIG_LLC2 is not set |
@@ -380,10 +419,6 @@ CONFIG_IP_NF_ARP_MANGLE=m | |||
380 | # CONFIG_LAPB is not set | 419 | # CONFIG_LAPB is not set |
381 | # CONFIG_ECONET is not set | 420 | # CONFIG_ECONET is not set |
382 | # CONFIG_WAN_ROUTER is not set | 421 | # CONFIG_WAN_ROUTER is not set |
383 | |||
384 | # | ||
385 | # QoS and/or fair queueing | ||
386 | # | ||
387 | # CONFIG_NET_SCHED is not set | 422 | # CONFIG_NET_SCHED is not set |
388 | CONFIG_NET_CLS_ROUTE=y | 423 | CONFIG_NET_CLS_ROUTE=y |
389 | 424 | ||
@@ -392,23 +427,25 @@ CONFIG_NET_CLS_ROUTE=y | |||
392 | # | 427 | # |
393 | # CONFIG_NET_PKTGEN is not set | 428 | # CONFIG_NET_PKTGEN is not set |
394 | # CONFIG_HAMRADIO is not set | 429 | # CONFIG_HAMRADIO is not set |
430 | # CONFIG_CAN is not set | ||
395 | # CONFIG_IRDA is not set | 431 | # CONFIG_IRDA is not set |
396 | # CONFIG_BT is not set | 432 | # CONFIG_BT is not set |
397 | # CONFIG_AF_RXRPC is not set | 433 | # CONFIG_AF_RXRPC is not set |
398 | 434 | CONFIG_PHONET=m | |
399 | # | 435 | CONFIG_WIRELESS=y |
400 | # Wireless | ||
401 | # | ||
402 | # CONFIG_CFG80211 is not set | 436 | # CONFIG_CFG80211 is not set |
437 | CONFIG_WIRELESS_OLD_REGULATORY=y | ||
403 | CONFIG_WIRELESS_EXT=y | 438 | CONFIG_WIRELESS_EXT=y |
439 | CONFIG_WIRELESS_EXT_SYSFS=y | ||
404 | # CONFIG_MAC80211 is not set | 440 | # CONFIG_MAC80211 is not set |
405 | CONFIG_IEEE80211=m | 441 | CONFIG_IEEE80211=m |
406 | # CONFIG_IEEE80211_DEBUG is not set | 442 | # CONFIG_IEEE80211_DEBUG is not set |
407 | CONFIG_IEEE80211_CRYPT_WEP=m | 443 | CONFIG_IEEE80211_CRYPT_WEP=m |
408 | # CONFIG_IEEE80211_CRYPT_CCMP is not set | 444 | # CONFIG_IEEE80211_CRYPT_CCMP is not set |
409 | # CONFIG_IEEE80211_CRYPT_TKIP is not set | 445 | # CONFIG_IEEE80211_CRYPT_TKIP is not set |
410 | # CONFIG_IEEE80211_SOFTMAC is not set | ||
411 | # CONFIG_RFKILL is not set | 446 | # CONFIG_RFKILL is not set |
447 | CONFIG_NET_9P=m | ||
448 | # CONFIG_NET_9P_DEBUG is not set | ||
412 | 449 | ||
413 | # | 450 | # |
414 | # Device Drivers | 451 | # Device Drivers |
@@ -417,14 +454,13 @@ CONFIG_IEEE80211_CRYPT_WEP=m | |||
417 | # | 454 | # |
418 | # Generic Driver Options | 455 | # Generic Driver Options |
419 | # | 456 | # |
457 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||
420 | CONFIG_STANDALONE=y | 458 | CONFIG_STANDALONE=y |
421 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 459 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
422 | CONFIG_FW_LOADER=m | 460 | CONFIG_FW_LOADER=m |
461 | CONFIG_FIRMWARE_IN_KERNEL=y | ||
462 | CONFIG_EXTRA_FIRMWARE="" | ||
423 | # CONFIG_SYS_HYPERVISOR is not set | 463 | # CONFIG_SYS_HYPERVISOR is not set |
424 | |||
425 | # | ||
426 | # Connector - unified userspace <-> kernelspace linker | ||
427 | # | ||
428 | # CONFIG_CONNECTOR is not set | 464 | # CONFIG_CONNECTOR is not set |
429 | CONFIG_MTD=m | 465 | CONFIG_MTD=m |
430 | # CONFIG_MTD_DEBUG is not set | 466 | # CONFIG_MTD_DEBUG is not set |
@@ -443,6 +479,7 @@ CONFIG_MTD_BLOCK=m | |||
443 | # CONFIG_INFTL is not set | 479 | # CONFIG_INFTL is not set |
444 | # CONFIG_RFD_FTL is not set | 480 | # CONFIG_RFD_FTL is not set |
445 | # CONFIG_SSFDC is not set | 481 | # CONFIG_SSFDC is not set |
482 | # CONFIG_MTD_OOPS is not set | ||
446 | 483 | ||
447 | # | 484 | # |
448 | # RAM/ROM/Flash chip drivers | 485 | # RAM/ROM/Flash chip drivers |
@@ -482,6 +519,7 @@ CONFIG_MTD_PHYSMAP=m | |||
482 | CONFIG_MTD_PHYSMAP_START=0x1fc00000 | 519 | CONFIG_MTD_PHYSMAP_START=0x1fc00000 |
483 | CONFIG_MTD_PHYSMAP_LEN=0x80000 | 520 | CONFIG_MTD_PHYSMAP_LEN=0x80000 |
484 | CONFIG_MTD_PHYSMAP_BANKWIDTH=1 | 521 | CONFIG_MTD_PHYSMAP_BANKWIDTH=1 |
522 | # CONFIG_MTD_INTEL_VR_NOR is not set | ||
485 | # CONFIG_MTD_PLATRAM is not set | 523 | # CONFIG_MTD_PLATRAM is not set |
486 | 524 | ||
487 | # | 525 | # |
@@ -506,21 +544,9 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=1 | |||
506 | # UBI - Unsorted block images | 544 | # UBI - Unsorted block images |
507 | # | 545 | # |
508 | # CONFIG_MTD_UBI is not set | 546 | # CONFIG_MTD_UBI is not set |
509 | |||
510 | # | ||
511 | # Parallel port support | ||
512 | # | ||
513 | # CONFIG_PARPORT is not set | 547 | # CONFIG_PARPORT is not set |
514 | |||
515 | # | ||
516 | # Plug and Play support | ||
517 | # | ||
518 | # CONFIG_PNP is not set | 548 | # CONFIG_PNP is not set |
519 | # CONFIG_PNPACPI is not set | 549 | CONFIG_BLK_DEV=y |
520 | |||
521 | # | ||
522 | # Block devices | ||
523 | # | ||
524 | # CONFIG_BLK_CPQ_DA is not set | 550 | # CONFIG_BLK_CPQ_DA is not set |
525 | # CONFIG_BLK_CPQ_CISS_DA is not set | 551 | # CONFIG_BLK_CPQ_CISS_DA is not set |
526 | # CONFIG_BLK_DEV_DAC960 is not set | 552 | # CONFIG_BLK_DEV_DAC960 is not set |
@@ -534,32 +560,28 @@ CONFIG_BLK_DEV_CRYPTOLOOP=m | |||
534 | CONFIG_BLK_DEV_RAM=m | 560 | CONFIG_BLK_DEV_RAM=m |
535 | CONFIG_BLK_DEV_RAM_COUNT=16 | 561 | CONFIG_BLK_DEV_RAM_COUNT=16 |
536 | CONFIG_BLK_DEV_RAM_SIZE=4096 | 562 | CONFIG_BLK_DEV_RAM_SIZE=4096 |
537 | CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 | 563 | # CONFIG_BLK_DEV_XIP is not set |
538 | CONFIG_CDROM_PKTCDVD=m | 564 | CONFIG_CDROM_PKTCDVD=m |
539 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 565 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
540 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 566 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
541 | CONFIG_ATA_OVER_ETH=m | 567 | CONFIG_ATA_OVER_ETH=m |
542 | 568 | # CONFIG_BLK_DEV_HD is not set | |
543 | # | 569 | # CONFIG_MISC_DEVICES is not set |
544 | # Misc devices | 570 | CONFIG_HAVE_IDE=y |
545 | # | ||
546 | # CONFIG_PHANTOM is not set | ||
547 | # CONFIG_SGI_IOC4 is not set | ||
548 | # CONFIG_TIFM_CORE is not set | ||
549 | # CONFIG_BLINK is not set | ||
550 | CONFIG_IDE=y | 571 | CONFIG_IDE=y |
551 | CONFIG_IDE_MAX_HWIFS=4 | ||
552 | CONFIG_BLK_DEV_IDE=y | ||
553 | 572 | ||
554 | # | 573 | # |
555 | # Please see Documentation/ide.txt for help/info on IDE drives | 574 | # Please see Documentation/ide/ide.txt for help/info on IDE drives |
556 | # | 575 | # |
576 | CONFIG_IDE_TIMINGS=y | ||
577 | CONFIG_IDE_ATAPI=y | ||
557 | # CONFIG_BLK_DEV_IDE_SATA is not set | 578 | # CONFIG_BLK_DEV_IDE_SATA is not set |
558 | CONFIG_BLK_DEV_IDEDISK=y | 579 | CONFIG_IDE_GD=y |
559 | CONFIG_IDEDISK_MULTI_MODE=y | 580 | CONFIG_IDE_GD_ATA=y |
581 | # CONFIG_IDE_GD_ATAPI is not set | ||
560 | CONFIG_BLK_DEV_IDECD=y | 582 | CONFIG_BLK_DEV_IDECD=y |
583 | CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y | ||
561 | # CONFIG_BLK_DEV_IDETAPE is not set | 584 | # CONFIG_BLK_DEV_IDETAPE is not set |
562 | # CONFIG_BLK_DEV_IDEFLOPPY is not set | ||
563 | CONFIG_BLK_DEV_IDESCSI=y | 585 | CONFIG_BLK_DEV_IDESCSI=y |
564 | CONFIG_IDE_TASK_IOCTL=y | 586 | CONFIG_IDE_TASK_IOCTL=y |
565 | CONFIG_IDE_PROC_FS=y | 587 | CONFIG_IDE_PROC_FS=y |
@@ -568,24 +590,25 @@ CONFIG_IDE_PROC_FS=y | |||
568 | # IDE chipset support/bugfixes | 590 | # IDE chipset support/bugfixes |
569 | # | 591 | # |
570 | CONFIG_IDE_GENERIC=y | 592 | CONFIG_IDE_GENERIC=y |
593 | # CONFIG_BLK_DEV_PLATFORM is not set | ||
594 | CONFIG_BLK_DEV_IDEDMA_SFF=y | ||
595 | |||
596 | # | ||
597 | # PCI IDE chipsets support | ||
598 | # | ||
571 | CONFIG_BLK_DEV_IDEPCI=y | 599 | CONFIG_BLK_DEV_IDEPCI=y |
572 | CONFIG_IDEPCI_SHARE_IRQ=y | ||
573 | CONFIG_IDEPCI_PCIBUS_ORDER=y | 600 | CONFIG_IDEPCI_PCIBUS_ORDER=y |
574 | # CONFIG_BLK_DEV_OFFBOARD is not set | 601 | # CONFIG_BLK_DEV_OFFBOARD is not set |
575 | CONFIG_BLK_DEV_GENERIC=y | 602 | CONFIG_BLK_DEV_GENERIC=y |
576 | # CONFIG_BLK_DEV_OPTI621 is not set | 603 | # CONFIG_BLK_DEV_OPTI621 is not set |
577 | CONFIG_BLK_DEV_IDEDMA_PCI=y | 604 | CONFIG_BLK_DEV_IDEDMA_PCI=y |
578 | # CONFIG_BLK_DEV_IDEDMA_FORCED is not set | ||
579 | # CONFIG_IDEDMA_ONLYDISK is not set | ||
580 | # CONFIG_BLK_DEV_AEC62XX is not set | 605 | # CONFIG_BLK_DEV_AEC62XX is not set |
581 | # CONFIG_BLK_DEV_ALI15X3 is not set | 606 | # CONFIG_BLK_DEV_ALI15X3 is not set |
582 | # CONFIG_BLK_DEV_AMD74XX is not set | 607 | # CONFIG_BLK_DEV_AMD74XX is not set |
583 | # CONFIG_BLK_DEV_CMD64X is not set | 608 | # CONFIG_BLK_DEV_CMD64X is not set |
584 | # CONFIG_BLK_DEV_TRIFLEX is not set | 609 | # CONFIG_BLK_DEV_TRIFLEX is not set |
585 | # CONFIG_BLK_DEV_CY82C693 is not set | ||
586 | # CONFIG_BLK_DEV_CS5520 is not set | 610 | # CONFIG_BLK_DEV_CS5520 is not set |
587 | # CONFIG_BLK_DEV_CS5530 is not set | 611 | # CONFIG_BLK_DEV_CS5530 is not set |
588 | # CONFIG_BLK_DEV_HPT34X is not set | ||
589 | # CONFIG_BLK_DEV_HPT366 is not set | 612 | # CONFIG_BLK_DEV_HPT366 is not set |
590 | # CONFIG_BLK_DEV_JMICRON is not set | 613 | # CONFIG_BLK_DEV_JMICRON is not set |
591 | # CONFIG_BLK_DEV_SC1200 is not set | 614 | # CONFIG_BLK_DEV_SC1200 is not set |
@@ -601,17 +624,28 @@ CONFIG_BLK_DEV_IDEDMA_PCI=y | |||
601 | # CONFIG_BLK_DEV_TRM290 is not set | 624 | # CONFIG_BLK_DEV_TRM290 is not set |
602 | CONFIG_BLK_DEV_VIA82CXXX=y | 625 | CONFIG_BLK_DEV_VIA82CXXX=y |
603 | # CONFIG_BLK_DEV_TC86C001 is not set | 626 | # CONFIG_BLK_DEV_TC86C001 is not set |
604 | # CONFIG_IDE_ARM is not set | 627 | |
605 | # CONFIG_IDE_CHIPSETS is not set | 628 | # |
629 | # Other IDE chipsets support | ||
630 | # | ||
631 | |||
632 | # | ||
633 | # Note: most of these also require special kernel boot parameters | ||
634 | # | ||
635 | # CONFIG_BLK_DEV_4DRIVES is not set | ||
636 | # CONFIG_BLK_DEV_ALI14XX is not set | ||
637 | # CONFIG_BLK_DEV_DTC2278 is not set | ||
638 | # CONFIG_BLK_DEV_HT6560B is not set | ||
639 | # CONFIG_BLK_DEV_QD65XX is not set | ||
640 | # CONFIG_BLK_DEV_UMC8672 is not set | ||
606 | CONFIG_BLK_DEV_IDEDMA=y | 641 | CONFIG_BLK_DEV_IDEDMA=y |
607 | # CONFIG_IDEDMA_IVB is not set | ||
608 | # CONFIG_BLK_DEV_HD is not set | ||
609 | 642 | ||
610 | # | 643 | # |
611 | # SCSI device support | 644 | # SCSI device support |
612 | # | 645 | # |
613 | # CONFIG_RAID_ATTRS is not set | 646 | # CONFIG_RAID_ATTRS is not set |
614 | CONFIG_SCSI=y | 647 | CONFIG_SCSI=y |
648 | CONFIG_SCSI_DMA=y | ||
615 | # CONFIG_SCSI_TGT is not set | 649 | # CONFIG_SCSI_TGT is not set |
616 | # CONFIG_SCSI_NETLINK is not set | 650 | # CONFIG_SCSI_NETLINK is not set |
617 | CONFIG_SCSI_PROC_FS=y | 651 | CONFIG_SCSI_PROC_FS=y |
@@ -644,88 +678,30 @@ CONFIG_SCSI_WAIT_SCAN=m | |||
644 | # CONFIG_SCSI_ISCSI_ATTRS is not set | 678 | # CONFIG_SCSI_ISCSI_ATTRS is not set |
645 | # CONFIG_SCSI_SAS_ATTRS is not set | 679 | # CONFIG_SCSI_SAS_ATTRS is not set |
646 | # CONFIG_SCSI_SAS_LIBSAS is not set | 680 | # CONFIG_SCSI_SAS_LIBSAS is not set |
647 | 681 | # CONFIG_SCSI_SRP_ATTRS is not set | |
648 | # | 682 | # CONFIG_SCSI_LOWLEVEL is not set |
649 | # SCSI low-level drivers | 683 | # CONFIG_SCSI_DH is not set |
650 | # | ||
651 | # CONFIG_ISCSI_TCP is not set | ||
652 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set | ||
653 | # CONFIG_SCSI_3W_9XXX is not set | ||
654 | # CONFIG_SCSI_ACARD is not set | ||
655 | # CONFIG_SCSI_AACRAID is not set | ||
656 | # CONFIG_SCSI_AIC7XXX is not set | ||
657 | # CONFIG_SCSI_AIC7XXX_OLD is not set | ||
658 | # CONFIG_SCSI_AIC79XX is not set | ||
659 | # CONFIG_SCSI_AIC94XX is not set | ||
660 | # CONFIG_SCSI_IN2000 is not set | ||
661 | # CONFIG_SCSI_ARCMSR is not set | ||
662 | # CONFIG_MEGARAID_NEWGEN is not set | ||
663 | # CONFIG_MEGARAID_LEGACY is not set | ||
664 | # CONFIG_MEGARAID_SAS is not set | ||
665 | # CONFIG_SCSI_HPTIOP is not set | ||
666 | # CONFIG_SCSI_DMX3191D is not set | ||
667 | # CONFIG_SCSI_DTC3280 is not set | ||
668 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | ||
669 | # CONFIG_SCSI_GENERIC_NCR5380 is not set | ||
670 | # CONFIG_SCSI_GENERIC_NCR5380_MMIO is not set | ||
671 | # CONFIG_SCSI_IPS is not set | ||
672 | # CONFIG_SCSI_INITIO is not set | ||
673 | # CONFIG_SCSI_INIA100 is not set | ||
674 | # CONFIG_SCSI_NCR53C406A is not set | ||
675 | # CONFIG_SCSI_STEX is not set | ||
676 | # CONFIG_SCSI_SYM53C8XX_2 is not set | ||
677 | # CONFIG_SCSI_PAS16 is not set | ||
678 | # CONFIG_SCSI_PSI240I is not set | ||
679 | # CONFIG_SCSI_QLOGIC_FAS is not set | ||
680 | # CONFIG_SCSI_QLOGIC_1280 is not set | ||
681 | # CONFIG_SCSI_QLA_FC is not set | ||
682 | # CONFIG_SCSI_QLA_ISCSI is not set | ||
683 | # CONFIG_SCSI_LPFC is not set | ||
684 | # CONFIG_SCSI_SYM53C416 is not set | ||
685 | # CONFIG_SCSI_DC395x is not set | ||
686 | # CONFIG_SCSI_DC390T is not set | ||
687 | # CONFIG_SCSI_T128 is not set | ||
688 | # CONFIG_SCSI_DEBUG is not set | ||
689 | # CONFIG_SCSI_SRP is not set | ||
690 | # CONFIG_ATA is not set | 684 | # CONFIG_ATA is not set |
691 | |||
692 | # | ||
693 | # Old CD-ROM drivers (not SCSI, not IDE) | ||
694 | # | ||
695 | # CONFIG_CD_NO_IDESCSI is not set | ||
696 | |||
697 | # | ||
698 | # Multi-device support (RAID and LVM) | ||
699 | # | ||
700 | # CONFIG_MD is not set | 685 | # CONFIG_MD is not set |
701 | |||
702 | # | ||
703 | # Fusion MPT device support | ||
704 | # | ||
705 | # CONFIG_FUSION is not set | 686 | # CONFIG_FUSION is not set |
706 | # CONFIG_FUSION_SPI is not set | ||
707 | # CONFIG_FUSION_FC is not set | ||
708 | # CONFIG_FUSION_SAS is not set | ||
709 | 687 | ||
710 | # | 688 | # |
711 | # IEEE 1394 (FireWire) support | 689 | # IEEE 1394 (FireWire) support |
712 | # | 690 | # |
713 | # CONFIG_FIREWIRE is not set | ||
714 | # CONFIG_IEEE1394 is not set | ||
715 | 691 | ||
716 | # | 692 | # |
717 | # I2O device support | 693 | # Enable only one of the two stacks, unless you know what you are doing |
718 | # | 694 | # |
695 | # CONFIG_FIREWIRE is not set | ||
696 | # CONFIG_IEEE1394 is not set | ||
719 | # CONFIG_I2O is not set | 697 | # CONFIG_I2O is not set |
720 | |||
721 | # | ||
722 | # Network device support | ||
723 | # | ||
724 | CONFIG_NETDEVICES=y | 698 | CONFIG_NETDEVICES=y |
725 | # CONFIG_DUMMY is not set | 699 | # CONFIG_DUMMY is not set |
726 | # CONFIG_BONDING is not set | 700 | # CONFIG_BONDING is not set |
701 | CONFIG_MACVLAN=m | ||
727 | # CONFIG_EQUALIZER is not set | 702 | # CONFIG_EQUALIZER is not set |
728 | # CONFIG_TUN is not set | 703 | # CONFIG_TUN is not set |
704 | CONFIG_VETH=m | ||
729 | # CONFIG_ARCNET is not set | 705 | # CONFIG_ARCNET is not set |
730 | CONFIG_PHYLIB=m | 706 | CONFIG_PHYLIB=m |
731 | 707 | ||
@@ -740,29 +716,32 @@ CONFIG_CICADA_PHY=m | |||
740 | # CONFIG_VITESSE_PHY is not set | 716 | # CONFIG_VITESSE_PHY is not set |
741 | # CONFIG_SMSC_PHY is not set | 717 | # CONFIG_SMSC_PHY is not set |
742 | # CONFIG_BROADCOM_PHY is not set | 718 | # CONFIG_BROADCOM_PHY is not set |
743 | # CONFIG_FIXED_PHY is not set | 719 | # CONFIG_ICPLUS_PHY is not set |
744 | 720 | # CONFIG_REALTEK_PHY is not set | |
745 | # | 721 | # CONFIG_MDIO_BITBANG is not set |
746 | # Ethernet (10 or 100Mbit) | ||
747 | # | ||
748 | CONFIG_NET_ETHERNET=y | 722 | CONFIG_NET_ETHERNET=y |
749 | CONFIG_MII=y | 723 | CONFIG_MII=y |
724 | # CONFIG_AX88796 is not set | ||
750 | # CONFIG_HAPPYMEAL is not set | 725 | # CONFIG_HAPPYMEAL is not set |
751 | # CONFIG_SUNGEM is not set | 726 | # CONFIG_SUNGEM is not set |
752 | # CONFIG_CASSINI is not set | 727 | # CONFIG_CASSINI is not set |
753 | # CONFIG_NET_VENDOR_3COM is not set | 728 | # CONFIG_NET_VENDOR_3COM is not set |
754 | # CONFIG_NET_VENDOR_SMC is not set | 729 | # CONFIG_NET_VENDOR_SMC is not set |
730 | # CONFIG_SMC91X is not set | ||
755 | # CONFIG_DM9000 is not set | 731 | # CONFIG_DM9000 is not set |
756 | # CONFIG_NET_VENDOR_RACAL is not set | 732 | # CONFIG_NET_VENDOR_RACAL is not set |
757 | |||
758 | # | ||
759 | # Tulip family network device support | ||
760 | # | ||
761 | # CONFIG_NET_TULIP is not set | 733 | # CONFIG_NET_TULIP is not set |
762 | # CONFIG_AT1700 is not set | 734 | # CONFIG_AT1700 is not set |
763 | # CONFIG_DEPCA is not set | 735 | # CONFIG_DEPCA is not set |
764 | # CONFIG_HP100 is not set | 736 | # CONFIG_HP100 is not set |
765 | # CONFIG_NET_ISA is not set | 737 | # CONFIG_NET_ISA is not set |
738 | # CONFIG_IBM_NEW_EMAC_ZMII is not set | ||
739 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | ||
740 | # CONFIG_IBM_NEW_EMAC_TAH is not set | ||
741 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set | ||
742 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | ||
743 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | ||
744 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | ||
766 | CONFIG_NET_PCI=y | 745 | CONFIG_NET_PCI=y |
767 | # CONFIG_PCNET32 is not set | 746 | # CONFIG_PCNET32 is not set |
768 | # CONFIG_AMD8111_ETH is not set | 747 | # CONFIG_AMD8111_ETH is not set |
@@ -773,7 +752,6 @@ CONFIG_NET_PCI=y | |||
773 | # CONFIG_FORCEDETH is not set | 752 | # CONFIG_FORCEDETH is not set |
774 | # CONFIG_CS89x0 is not set | 753 | # CONFIG_CS89x0 is not set |
775 | # CONFIG_TC35815 is not set | 754 | # CONFIG_TC35815 is not set |
776 | # CONFIG_DGRS is not set | ||
777 | # CONFIG_EEPRO100 is not set | 755 | # CONFIG_EEPRO100 is not set |
778 | # CONFIG_E100 is not set | 756 | # CONFIG_E100 is not set |
779 | # CONFIG_FEALNX is not set | 757 | # CONFIG_FEALNX is not set |
@@ -785,15 +763,21 @@ CONFIG_8139TOO=y | |||
785 | # CONFIG_8139TOO_TUNE_TWISTER is not set | 763 | # CONFIG_8139TOO_TUNE_TWISTER is not set |
786 | # CONFIG_8139TOO_8129 is not set | 764 | # CONFIG_8139TOO_8129 is not set |
787 | # CONFIG_8139_OLD_RX_RESET is not set | 765 | # CONFIG_8139_OLD_RX_RESET is not set |
766 | # CONFIG_R6040 is not set | ||
788 | # CONFIG_SIS900 is not set | 767 | # CONFIG_SIS900 is not set |
789 | # CONFIG_EPIC100 is not set | 768 | # CONFIG_EPIC100 is not set |
790 | # CONFIG_SUNDANCE is not set | 769 | # CONFIG_SUNDANCE is not set |
770 | # CONFIG_TLAN is not set | ||
791 | # CONFIG_VIA_RHINE is not set | 771 | # CONFIG_VIA_RHINE is not set |
792 | # CONFIG_SC92031 is not set | 772 | # CONFIG_SC92031 is not set |
773 | # CONFIG_ATL2 is not set | ||
793 | CONFIG_NETDEV_1000=y | 774 | CONFIG_NETDEV_1000=y |
794 | # CONFIG_ACENIC is not set | 775 | # CONFIG_ACENIC is not set |
795 | # CONFIG_DL2K is not set | 776 | # CONFIG_DL2K is not set |
796 | # CONFIG_E1000 is not set | 777 | # CONFIG_E1000 is not set |
778 | # CONFIG_E1000E is not set | ||
779 | # CONFIG_IP1000 is not set | ||
780 | # CONFIG_IGB is not set | ||
797 | # CONFIG_NS83820 is not set | 781 | # CONFIG_NS83820 is not set |
798 | # CONFIG_HAMACHI is not set | 782 | # CONFIG_HAMACHI is not set |
799 | # CONFIG_YELLOWFIN is not set | 783 | # CONFIG_YELLOWFIN is not set |
@@ -801,20 +785,29 @@ CONFIG_NETDEV_1000=y | |||
801 | # CONFIG_SIS190 is not set | 785 | # CONFIG_SIS190 is not set |
802 | # CONFIG_SKGE is not set | 786 | # CONFIG_SKGE is not set |
803 | # CONFIG_SKY2 is not set | 787 | # CONFIG_SKY2 is not set |
804 | # CONFIG_SK98LIN is not set | ||
805 | # CONFIG_VIA_VELOCITY is not set | 788 | # CONFIG_VIA_VELOCITY is not set |
806 | # CONFIG_TIGON3 is not set | 789 | # CONFIG_TIGON3 is not set |
807 | # CONFIG_BNX2 is not set | 790 | # CONFIG_BNX2 is not set |
808 | # CONFIG_QLA3XXX is not set | 791 | # CONFIG_QLA3XXX is not set |
809 | # CONFIG_ATL1 is not set | 792 | # CONFIG_ATL1 is not set |
793 | # CONFIG_ATL1E is not set | ||
794 | # CONFIG_JME is not set | ||
810 | CONFIG_NETDEV_10000=y | 795 | CONFIG_NETDEV_10000=y |
811 | # CONFIG_CHELSIO_T1 is not set | 796 | # CONFIG_CHELSIO_T1 is not set |
812 | # CONFIG_CHELSIO_T3 is not set | 797 | # CONFIG_CHELSIO_T3 is not set |
798 | # CONFIG_ENIC is not set | ||
799 | # CONFIG_IXGBE is not set | ||
813 | # CONFIG_IXGB is not set | 800 | # CONFIG_IXGB is not set |
814 | # CONFIG_S2IO is not set | 801 | # CONFIG_S2IO is not set |
815 | # CONFIG_MYRI10GE is not set | 802 | # CONFIG_MYRI10GE is not set |
816 | # CONFIG_NETXEN_NIC is not set | 803 | # CONFIG_NETXEN_NIC is not set |
804 | # CONFIG_NIU is not set | ||
805 | # CONFIG_MLX4_EN is not set | ||
817 | # CONFIG_MLX4_CORE is not set | 806 | # CONFIG_MLX4_CORE is not set |
807 | # CONFIG_TEHUTI is not set | ||
808 | # CONFIG_BNX2X is not set | ||
809 | # CONFIG_QLGE is not set | ||
810 | # CONFIG_SFC is not set | ||
818 | # CONFIG_TR is not set | 811 | # CONFIG_TR is not set |
819 | 812 | ||
820 | # | 813 | # |
@@ -822,6 +815,7 @@ CONFIG_NETDEV_10000=y | |||
822 | # | 815 | # |
823 | # CONFIG_WLAN_PRE80211 is not set | 816 | # CONFIG_WLAN_PRE80211 is not set |
824 | # CONFIG_WLAN_80211 is not set | 817 | # CONFIG_WLAN_80211 is not set |
818 | # CONFIG_IWLWIFI_LEDS is not set | ||
825 | 819 | ||
826 | # | 820 | # |
827 | # USB Network Adapters | 821 | # USB Network Adapters |
@@ -830,7 +824,6 @@ CONFIG_NETDEV_10000=y | |||
830 | # CONFIG_USB_KAWETH is not set | 824 | # CONFIG_USB_KAWETH is not set |
831 | # CONFIG_USB_PEGASUS is not set | 825 | # CONFIG_USB_PEGASUS is not set |
832 | # CONFIG_USB_RTL8150 is not set | 826 | # CONFIG_USB_RTL8150 is not set |
833 | # CONFIG_USB_USBNET_MII is not set | ||
834 | # CONFIG_USB_USBNET is not set | 827 | # CONFIG_USB_USBNET is not set |
835 | # CONFIG_WAN is not set | 828 | # CONFIG_WAN is not set |
836 | # CONFIG_FDDI is not set | 829 | # CONFIG_FDDI is not set |
@@ -844,25 +837,17 @@ CONFIG_PPP_DEFLATE=m | |||
844 | CONFIG_PPP_BSDCOMP=m | 837 | CONFIG_PPP_BSDCOMP=m |
845 | CONFIG_PPP_MPPE=m | 838 | CONFIG_PPP_MPPE=m |
846 | CONFIG_PPPOE=m | 839 | CONFIG_PPPOE=m |
840 | CONFIG_PPPOL2TP=m | ||
847 | CONFIG_SLIP=m | 841 | CONFIG_SLIP=m |
848 | CONFIG_SLIP_COMPRESSED=y | 842 | CONFIG_SLIP_COMPRESSED=y |
849 | CONFIG_SLHC=m | 843 | CONFIG_SLHC=m |
850 | CONFIG_SLIP_SMART=y | 844 | CONFIG_SLIP_SMART=y |
851 | CONFIG_SLIP_MODE_SLIP6=y | 845 | CONFIG_SLIP_MODE_SLIP6=y |
852 | CONFIG_NET_FC=y | 846 | CONFIG_NET_FC=y |
853 | # CONFIG_SHAPER is not set | ||
854 | # CONFIG_NETCONSOLE is not set | 847 | # CONFIG_NETCONSOLE is not set |
855 | # CONFIG_NETPOLL is not set | 848 | # CONFIG_NETPOLL is not set |
856 | # CONFIG_NET_POLL_CONTROLLER is not set | 849 | # CONFIG_NET_POLL_CONTROLLER is not set |
857 | |||
858 | # | ||
859 | # ISDN subsystem | ||
860 | # | ||
861 | # CONFIG_ISDN is not set | 850 | # CONFIG_ISDN is not set |
862 | |||
863 | # | ||
864 | # Telephony Support | ||
865 | # | ||
866 | # CONFIG_PHONE is not set | 851 | # CONFIG_PHONE is not set |
867 | 852 | ||
868 | # | 853 | # |
@@ -870,6 +855,7 @@ CONFIG_NET_FC=y | |||
870 | # | 855 | # |
871 | CONFIG_INPUT=y | 856 | CONFIG_INPUT=y |
872 | CONFIG_INPUT_FF_MEMLESS=y | 857 | CONFIG_INPUT_FF_MEMLESS=y |
858 | # CONFIG_INPUT_POLLDEV is not set | ||
873 | 859 | ||
874 | # | 860 | # |
875 | # Userland interfaces | 861 | # Userland interfaces |
@@ -879,7 +865,6 @@ CONFIG_INPUT_MOUSEDEV_PSAUX=y | |||
879 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | 865 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 |
880 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | 866 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 |
881 | # CONFIG_INPUT_JOYDEV is not set | 867 | # CONFIG_INPUT_JOYDEV is not set |
882 | # CONFIG_INPUT_TSDEV is not set | ||
883 | # CONFIG_INPUT_EVDEV is not set | 868 | # CONFIG_INPUT_EVDEV is not set |
884 | # CONFIG_INPUT_EVBUG is not set | 869 | # CONFIG_INPUT_EVBUG is not set |
885 | 870 | ||
@@ -900,9 +885,11 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y | |||
900 | CONFIG_MOUSE_PS2_SYNAPTICS=y | 885 | CONFIG_MOUSE_PS2_SYNAPTICS=y |
901 | CONFIG_MOUSE_PS2_LIFEBOOK=y | 886 | CONFIG_MOUSE_PS2_LIFEBOOK=y |
902 | CONFIG_MOUSE_PS2_TRACKPOINT=y | 887 | CONFIG_MOUSE_PS2_TRACKPOINT=y |
888 | # CONFIG_MOUSE_PS2_ELANTECH is not set | ||
903 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set | 889 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set |
904 | CONFIG_MOUSE_SERIAL=y | 890 | CONFIG_MOUSE_SERIAL=y |
905 | # CONFIG_MOUSE_APPLETOUCH is not set | 891 | # CONFIG_MOUSE_APPLETOUCH is not set |
892 | # CONFIG_MOUSE_BCM5974 is not set | ||
906 | # CONFIG_MOUSE_INPORT is not set | 893 | # CONFIG_MOUSE_INPORT is not set |
907 | # CONFIG_MOUSE_LOGIBM is not set | 894 | # CONFIG_MOUSE_LOGIBM is not set |
908 | # CONFIG_MOUSE_PC110PAD is not set | 895 | # CONFIG_MOUSE_PC110PAD is not set |
@@ -927,10 +914,13 @@ CONFIG_SERIO_LIBPS2=y | |||
927 | # Character devices | 914 | # Character devices |
928 | # | 915 | # |
929 | CONFIG_VT=y | 916 | CONFIG_VT=y |
917 | CONFIG_CONSOLE_TRANSLATIONS=y | ||
930 | CONFIG_VT_CONSOLE=y | 918 | CONFIG_VT_CONSOLE=y |
931 | CONFIG_HW_CONSOLE=y | 919 | CONFIG_HW_CONSOLE=y |
932 | # CONFIG_VT_HW_CONSOLE_BINDING is not set | 920 | # CONFIG_VT_HW_CONSOLE_BINDING is not set |
921 | CONFIG_DEVKMEM=y | ||
933 | # CONFIG_SERIAL_NONSTANDARD is not set | 922 | # CONFIG_SERIAL_NONSTANDARD is not set |
923 | # CONFIG_NOZOMI is not set | ||
934 | 924 | ||
935 | # | 925 | # |
936 | # Serial drivers | 926 | # Serial drivers |
@@ -951,105 +941,152 @@ CONFIG_SERIAL_CORE_CONSOLE=y | |||
951 | CONFIG_UNIX98_PTYS=y | 941 | CONFIG_UNIX98_PTYS=y |
952 | CONFIG_LEGACY_PTYS=y | 942 | CONFIG_LEGACY_PTYS=y |
953 | CONFIG_LEGACY_PTY_COUNT=256 | 943 | CONFIG_LEGACY_PTY_COUNT=256 |
954 | |||
955 | # | ||
956 | # IPMI | ||
957 | # | ||
958 | # CONFIG_IPMI_HANDLER is not set | 944 | # CONFIG_IPMI_HANDLER is not set |
959 | # CONFIG_WATCHDOG is not set | ||
960 | CONFIG_HW_RANDOM=y | 945 | CONFIG_HW_RANDOM=y |
961 | CONFIG_RTC=y | ||
962 | # CONFIG_DTLK is not set | 946 | # CONFIG_DTLK is not set |
963 | # CONFIG_R3964 is not set | 947 | # CONFIG_R3964 is not set |
964 | # CONFIG_APPLICOM is not set | 948 | # CONFIG_APPLICOM is not set |
965 | # CONFIG_DRM is not set | ||
966 | # CONFIG_RAW_DRIVER is not set | 949 | # CONFIG_RAW_DRIVER is not set |
967 | |||
968 | # | ||
969 | # TPM devices | ||
970 | # | ||
971 | # CONFIG_TCG_TPM is not set | 950 | # CONFIG_TCG_TPM is not set |
972 | CONFIG_DEVPORT=y | 951 | CONFIG_DEVPORT=y |
973 | CONFIG_I2C=m | 952 | CONFIG_I2C=m |
974 | CONFIG_I2C_BOARDINFO=y | 953 | CONFIG_I2C_BOARDINFO=y |
975 | CONFIG_I2C_CHARDEV=m | 954 | CONFIG_I2C_CHARDEV=m |
955 | CONFIG_I2C_HELPER_AUTO=y | ||
976 | 956 | ||
977 | # | 957 | # |
978 | # I2C Algorithms | 958 | # I2C Hardware Bus support |
979 | # | 959 | # |
980 | # CONFIG_I2C_ALGOBIT is not set | ||
981 | # CONFIG_I2C_ALGOPCF is not set | ||
982 | # CONFIG_I2C_ALGOPCA is not set | ||
983 | 960 | ||
984 | # | 961 | # |
985 | # I2C Hardware Bus support | 962 | # PC SMBus host controller drivers |
986 | # | 963 | # |
987 | # CONFIG_I2C_ALI1535 is not set | 964 | # CONFIG_I2C_ALI1535 is not set |
988 | # CONFIG_I2C_ALI1563 is not set | 965 | # CONFIG_I2C_ALI1563 is not set |
989 | # CONFIG_I2C_ALI15X3 is not set | 966 | # CONFIG_I2C_ALI15X3 is not set |
990 | # CONFIG_I2C_AMD756 is not set | 967 | # CONFIG_I2C_AMD756 is not set |
991 | # CONFIG_I2C_AMD8111 is not set | 968 | # CONFIG_I2C_AMD8111 is not set |
992 | # CONFIG_I2C_ELEKTOR is not set | ||
993 | # CONFIG_I2C_I801 is not set | 969 | # CONFIG_I2C_I801 is not set |
994 | # CONFIG_I2C_I810 is not set | 970 | # CONFIG_I2C_ISCH is not set |
995 | # CONFIG_I2C_PIIX4 is not set | 971 | # CONFIG_I2C_PIIX4 is not set |
996 | # CONFIG_I2C_NFORCE2 is not set | 972 | # CONFIG_I2C_NFORCE2 is not set |
997 | # CONFIG_I2C_OCORES is not set | ||
998 | # CONFIG_I2C_PARPORT_LIGHT is not set | ||
999 | # CONFIG_I2C_PROSAVAGE is not set | ||
1000 | # CONFIG_I2C_SAVAGE4 is not set | ||
1001 | # CONFIG_I2C_SIMTEC is not set | ||
1002 | # CONFIG_I2C_SIS5595 is not set | 973 | # CONFIG_I2C_SIS5595 is not set |
1003 | # CONFIG_I2C_SIS630 is not set | 974 | # CONFIG_I2C_SIS630 is not set |
1004 | # CONFIG_I2C_SIS96X is not set | 975 | # CONFIG_I2C_SIS96X is not set |
1005 | # CONFIG_I2C_STUB is not set | ||
1006 | # CONFIG_I2C_TINY_USB is not set | ||
1007 | # CONFIG_I2C_VIA is not set | 976 | # CONFIG_I2C_VIA is not set |
1008 | CONFIG_I2C_VIAPRO=m | 977 | CONFIG_I2C_VIAPRO=m |
978 | |||
979 | # | ||
980 | # I2C system bus drivers (mostly embedded / system-on-chip) | ||
981 | # | ||
982 | # CONFIG_I2C_OCORES is not set | ||
983 | # CONFIG_I2C_SIMTEC is not set | ||
984 | |||
985 | # | ||
986 | # External I2C/SMBus adapter drivers | ||
987 | # | ||
988 | # CONFIG_I2C_PARPORT_LIGHT is not set | ||
989 | # CONFIG_I2C_TAOS_EVM is not set | ||
990 | # CONFIG_I2C_TINY_USB is not set | ||
991 | |||
992 | # | ||
993 | # Graphics adapter I2C/DDC channel drivers | ||
994 | # | ||
1009 | # CONFIG_I2C_VOODOO3 is not set | 995 | # CONFIG_I2C_VOODOO3 is not set |
996 | |||
997 | # | ||
998 | # Other I2C/SMBus bus drivers | ||
999 | # | ||
1000 | # CONFIG_I2C_ELEKTOR is not set | ||
1010 | # CONFIG_I2C_PCA_ISA is not set | 1001 | # CONFIG_I2C_PCA_ISA is not set |
1002 | # CONFIG_I2C_PCA_PLATFORM is not set | ||
1003 | # CONFIG_I2C_STUB is not set | ||
1011 | 1004 | ||
1012 | # | 1005 | # |
1013 | # Miscellaneous I2C Chip support | 1006 | # Miscellaneous I2C Chip support |
1014 | # | 1007 | # |
1015 | # CONFIG_SENSORS_DS1337 is not set | 1008 | # CONFIG_DS1682 is not set |
1016 | # CONFIG_SENSORS_DS1374 is not set | 1009 | # CONFIG_AT24 is not set |
1017 | # CONFIG_SENSORS_EEPROM is not set | 1010 | # CONFIG_SENSORS_EEPROM is not set |
1018 | # CONFIG_SENSORS_PCF8574 is not set | 1011 | # CONFIG_SENSORS_PCF8574 is not set |
1012 | # CONFIG_PCF8575 is not set | ||
1019 | # CONFIG_SENSORS_PCA9539 is not set | 1013 | # CONFIG_SENSORS_PCA9539 is not set |
1020 | # CONFIG_SENSORS_PCF8591 is not set | 1014 | # CONFIG_SENSORS_PCF8591 is not set |
1021 | # CONFIG_SENSORS_MAX6875 is not set | 1015 | # CONFIG_SENSORS_MAX6875 is not set |
1016 | # CONFIG_SENSORS_TSL2550 is not set | ||
1022 | # CONFIG_I2C_DEBUG_CORE is not set | 1017 | # CONFIG_I2C_DEBUG_CORE is not set |
1023 | # CONFIG_I2C_DEBUG_ALGO is not set | 1018 | # CONFIG_I2C_DEBUG_ALGO is not set |
1024 | # CONFIG_I2C_DEBUG_BUS is not set | 1019 | # CONFIG_I2C_DEBUG_BUS is not set |
1025 | # CONFIG_I2C_DEBUG_CHIP is not set | 1020 | # CONFIG_I2C_DEBUG_CHIP is not set |
1026 | |||
1027 | # | ||
1028 | # SPI support | ||
1029 | # | ||
1030 | # CONFIG_SPI is not set | 1021 | # CONFIG_SPI is not set |
1031 | # CONFIG_SPI_MASTER is not set | 1022 | # CONFIG_W1 is not set |
1023 | # CONFIG_POWER_SUPPLY is not set | ||
1024 | # CONFIG_HWMON is not set | ||
1025 | # CONFIG_THERMAL is not set | ||
1026 | # CONFIG_THERMAL_HWMON is not set | ||
1027 | # CONFIG_WATCHDOG is not set | ||
1028 | CONFIG_SSB_POSSIBLE=y | ||
1032 | 1029 | ||
1033 | # | 1030 | # |
1034 | # Dallas's 1-wire bus | 1031 | # Sonics Silicon Backplane |
1035 | # | 1032 | # |
1036 | # CONFIG_W1 is not set | 1033 | # CONFIG_SSB is not set |
1037 | # CONFIG_HWMON is not set | ||
1038 | 1034 | ||
1039 | # | 1035 | # |
1040 | # Multifunction device drivers | 1036 | # Multifunction device drivers |
1041 | # | 1037 | # |
1038 | # CONFIG_MFD_CORE is not set | ||
1042 | # CONFIG_MFD_SM501 is not set | 1039 | # CONFIG_MFD_SM501 is not set |
1040 | # CONFIG_HTC_PASIC3 is not set | ||
1041 | # CONFIG_MFD_TMIO is not set | ||
1042 | # CONFIG_MFD_WM8400 is not set | ||
1043 | # CONFIG_MFD_WM8350_I2C is not set | ||
1044 | # CONFIG_REGULATOR is not set | ||
1043 | 1045 | ||
1044 | # | 1046 | # |
1045 | # Multimedia devices | 1047 | # Multimedia devices |
1046 | # | 1048 | # |
1049 | |||
1050 | # | ||
1051 | # Multimedia core support | ||
1052 | # | ||
1047 | CONFIG_VIDEO_DEV=m | 1053 | CONFIG_VIDEO_DEV=m |
1048 | CONFIG_VIDEO_V4L1=y | 1054 | CONFIG_VIDEO_V4L2_COMMON=m |
1055 | CONFIG_VIDEO_ALLOW_V4L1=y | ||
1049 | CONFIG_VIDEO_V4L1_COMPAT=y | 1056 | CONFIG_VIDEO_V4L1_COMPAT=y |
1050 | CONFIG_VIDEO_V4L2=y | 1057 | # CONFIG_DVB_CORE is not set |
1058 | CONFIG_VIDEO_MEDIA=m | ||
1059 | |||
1060 | # | ||
1061 | # Multimedia drivers | ||
1062 | # | ||
1063 | CONFIG_MEDIA_ATTACH=y | ||
1064 | CONFIG_MEDIA_TUNER=m | ||
1065 | CONFIG_MEDIA_TUNER_CUSTOMIZE=y | ||
1066 | CONFIG_MEDIA_TUNER_SIMPLE=m | ||
1067 | CONFIG_MEDIA_TUNER_TDA8290=m | ||
1068 | CONFIG_MEDIA_TUNER_TDA827X=m | ||
1069 | CONFIG_MEDIA_TUNER_TDA18271=m | ||
1070 | CONFIG_MEDIA_TUNER_TDA9887=m | ||
1071 | CONFIG_MEDIA_TUNER_TEA5761=m | ||
1072 | CONFIG_MEDIA_TUNER_TEA5767=m | ||
1073 | CONFIG_MEDIA_TUNER_MT20XX=m | ||
1074 | CONFIG_MEDIA_TUNER_MT2060=m | ||
1075 | CONFIG_MEDIA_TUNER_MT2266=m | ||
1076 | CONFIG_MEDIA_TUNER_MT2131=m | ||
1077 | CONFIG_MEDIA_TUNER_QT1010=m | ||
1078 | CONFIG_MEDIA_TUNER_XC2028=m | ||
1079 | CONFIG_MEDIA_TUNER_XC5000=m | ||
1080 | CONFIG_MEDIA_TUNER_MXL5005S=m | ||
1081 | CONFIG_MEDIA_TUNER_MXL5007T=m | ||
1082 | CONFIG_VIDEO_V4L2=m | ||
1083 | CONFIG_VIDEO_V4L1=m | ||
1084 | CONFIG_VIDEOBUF_GEN=m | ||
1085 | CONFIG_VIDEOBUF_VMALLOC=m | ||
1086 | CONFIG_VIDEOBUF_DMA_CONTIG=m | ||
1051 | CONFIG_VIDEO_CAPTURE_DRIVERS=y | 1087 | CONFIG_VIDEO_CAPTURE_DRIVERS=y |
1052 | # CONFIG_VIDEO_ADV_DEBUG is not set | 1088 | # CONFIG_VIDEO_ADV_DEBUG is not set |
1089 | # CONFIG_VIDEO_FIXED_MINOR_RANGES is not set | ||
1053 | CONFIG_VIDEO_HELPER_CHIPS_AUTO=y | 1090 | CONFIG_VIDEO_HELPER_CHIPS_AUTO=y |
1054 | # CONFIG_VIDEO_VIVI is not set | 1091 | # CONFIG_VIDEO_VIVI is not set |
1055 | # CONFIG_VIDEO_BT848 is not set | 1092 | # CONFIG_VIDEO_BT848 is not set |
@@ -1058,17 +1095,46 @@ CONFIG_VIDEO_HELPER_CHIPS_AUTO=y | |||
1058 | # CONFIG_VIDEO_CPIA2 is not set | 1095 | # CONFIG_VIDEO_CPIA2 is not set |
1059 | # CONFIG_VIDEO_SAA5246A is not set | 1096 | # CONFIG_VIDEO_SAA5246A is not set |
1060 | # CONFIG_VIDEO_SAA5249 is not set | 1097 | # CONFIG_VIDEO_SAA5249 is not set |
1061 | # CONFIG_TUNER_3036 is not set | ||
1062 | # CONFIG_VIDEO_STRADIS is not set | 1098 | # CONFIG_VIDEO_STRADIS is not set |
1063 | # CONFIG_VIDEO_SAA7134 is not set | 1099 | # CONFIG_VIDEO_SAA7134 is not set |
1064 | # CONFIG_VIDEO_MXB is not set | 1100 | # CONFIG_VIDEO_MXB is not set |
1065 | # CONFIG_VIDEO_DPC is not set | ||
1066 | # CONFIG_VIDEO_HEXIUM_ORION is not set | 1101 | # CONFIG_VIDEO_HEXIUM_ORION is not set |
1067 | # CONFIG_VIDEO_HEXIUM_GEMINI is not set | 1102 | # CONFIG_VIDEO_HEXIUM_GEMINI is not set |
1068 | # CONFIG_VIDEO_CX88 is not set | 1103 | # CONFIG_VIDEO_CX88 is not set |
1069 | # CONFIG_VIDEO_IVTV is not set | 1104 | # CONFIG_VIDEO_IVTV is not set |
1070 | # CONFIG_VIDEO_CAFE_CCIC is not set | 1105 | # CONFIG_VIDEO_CAFE_CCIC is not set |
1106 | CONFIG_SOC_CAMERA=m | ||
1107 | CONFIG_SOC_CAMERA_MT9M001=m | ||
1108 | CONFIG_SOC_CAMERA_MT9M111=m | ||
1109 | CONFIG_SOC_CAMERA_MT9V022=m | ||
1110 | CONFIG_SOC_CAMERA_PLATFORM=m | ||
1111 | CONFIG_VIDEO_SH_MOBILE_CEU=m | ||
1071 | CONFIG_V4L_USB_DRIVERS=y | 1112 | CONFIG_V4L_USB_DRIVERS=y |
1113 | CONFIG_USB_VIDEO_CLASS=m | ||
1114 | CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y | ||
1115 | CONFIG_USB_GSPCA=m | ||
1116 | CONFIG_USB_M5602=m | ||
1117 | CONFIG_USB_GSPCA_CONEX=m | ||
1118 | CONFIG_USB_GSPCA_ETOMS=m | ||
1119 | CONFIG_USB_GSPCA_FINEPIX=m | ||
1120 | CONFIG_USB_GSPCA_MARS=m | ||
1121 | CONFIG_USB_GSPCA_OV519=m | ||
1122 | CONFIG_USB_GSPCA_PAC207=m | ||
1123 | CONFIG_USB_GSPCA_PAC7311=m | ||
1124 | CONFIG_USB_GSPCA_SONIXB=m | ||
1125 | CONFIG_USB_GSPCA_SONIXJ=m | ||
1126 | CONFIG_USB_GSPCA_SPCA500=m | ||
1127 | CONFIG_USB_GSPCA_SPCA501=m | ||
1128 | CONFIG_USB_GSPCA_SPCA505=m | ||
1129 | CONFIG_USB_GSPCA_SPCA506=m | ||
1130 | CONFIG_USB_GSPCA_SPCA508=m | ||
1131 | CONFIG_USB_GSPCA_SPCA561=m | ||
1132 | CONFIG_USB_GSPCA_STK014=m | ||
1133 | CONFIG_USB_GSPCA_SUNPLUS=m | ||
1134 | CONFIG_USB_GSPCA_T613=m | ||
1135 | CONFIG_USB_GSPCA_TV8532=m | ||
1136 | CONFIG_USB_GSPCA_VC032X=m | ||
1137 | CONFIG_USB_GSPCA_ZC3XX=m | ||
1072 | # CONFIG_VIDEO_PVRUSB2 is not set | 1138 | # CONFIG_VIDEO_PVRUSB2 is not set |
1073 | # CONFIG_VIDEO_EM28XX is not set | 1139 | # CONFIG_VIDEO_EM28XX is not set |
1074 | # CONFIG_VIDEO_USBVISION is not set | 1140 | # CONFIG_VIDEO_USBVISION is not set |
@@ -1079,7 +1145,6 @@ CONFIG_USB_KONICAWC=m | |||
1079 | CONFIG_USB_QUICKCAM_MESSENGER=m | 1145 | CONFIG_USB_QUICKCAM_MESSENGER=m |
1080 | CONFIG_USB_ET61X251=m | 1146 | CONFIG_USB_ET61X251=m |
1081 | # CONFIG_VIDEO_OVCAMCHIP is not set | 1147 | # CONFIG_VIDEO_OVCAMCHIP is not set |
1082 | # CONFIG_USB_W9968CF is not set | ||
1083 | CONFIG_USB_OV511=m | 1148 | CONFIG_USB_OV511=m |
1084 | CONFIG_USB_SE401=m | 1149 | CONFIG_USB_SE401=m |
1085 | CONFIG_USB_SN9C102=m | 1150 | CONFIG_USB_SN9C102=m |
@@ -1088,6 +1153,8 @@ CONFIG_USB_ZC0301=m | |||
1088 | CONFIG_USB_PWC=m | 1153 | CONFIG_USB_PWC=m |
1089 | # CONFIG_USB_PWC_DEBUG is not set | 1154 | # CONFIG_USB_PWC_DEBUG is not set |
1090 | # CONFIG_USB_ZR364XX is not set | 1155 | # CONFIG_USB_ZR364XX is not set |
1156 | CONFIG_USB_STKWEBCAM=m | ||
1157 | CONFIG_USB_S2255=m | ||
1091 | CONFIG_RADIO_ADAPTERS=y | 1158 | CONFIG_RADIO_ADAPTERS=y |
1092 | # CONFIG_RADIO_CADET is not set | 1159 | # CONFIG_RADIO_CADET is not set |
1093 | # CONFIG_RADIO_RTRACK is not set | 1160 | # CONFIG_RADIO_RTRACK is not set |
@@ -1104,33 +1171,30 @@ CONFIG_RADIO_ADAPTERS=y | |||
1104 | # CONFIG_RADIO_TYPHOON is not set | 1171 | # CONFIG_RADIO_TYPHOON is not set |
1105 | # CONFIG_RADIO_ZOLTRIX is not set | 1172 | # CONFIG_RADIO_ZOLTRIX is not set |
1106 | # CONFIG_USB_DSBR is not set | 1173 | # CONFIG_USB_DSBR is not set |
1107 | # CONFIG_DVB_CORE is not set | 1174 | CONFIG_USB_SI470X=m |
1175 | CONFIG_USB_MR800=m | ||
1108 | CONFIG_DAB=y | 1176 | CONFIG_DAB=y |
1109 | # CONFIG_USB_DABUSB is not set | 1177 | # CONFIG_USB_DABUSB is not set |
1110 | 1178 | ||
1111 | # | 1179 | # |
1112 | # Graphics support | 1180 | # Graphics support |
1113 | # | 1181 | # |
1114 | CONFIG_BACKLIGHT_LCD_SUPPORT=y | 1182 | # CONFIG_DRM is not set |
1115 | CONFIG_BACKLIGHT_CLASS_DEVICE=y | ||
1116 | CONFIG_LCD_CLASS_DEVICE=m | ||
1117 | |||
1118 | # | ||
1119 | # Display device support | ||
1120 | # | ||
1121 | # CONFIG_DISPLAY_SUPPORT is not set | ||
1122 | # CONFIG_VGASTATE is not set | 1183 | # CONFIG_VGASTATE is not set |
1184 | CONFIG_VIDEO_OUTPUT_CONTROL=m | ||
1123 | CONFIG_FB=y | 1185 | CONFIG_FB=y |
1124 | # CONFIG_FIRMWARE_EDID is not set | 1186 | # CONFIG_FIRMWARE_EDID is not set |
1125 | # CONFIG_FB_DDC is not set | 1187 | # CONFIG_FB_DDC is not set |
1188 | # CONFIG_FB_BOOT_VESA_SUPPORT is not set | ||
1126 | CONFIG_FB_CFB_FILLRECT=y | 1189 | CONFIG_FB_CFB_FILLRECT=y |
1127 | CONFIG_FB_CFB_COPYAREA=y | 1190 | CONFIG_FB_CFB_COPYAREA=y |
1128 | CONFIG_FB_CFB_IMAGEBLIT=y | 1191 | CONFIG_FB_CFB_IMAGEBLIT=y |
1192 | # CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set | ||
1129 | # CONFIG_FB_SYS_FILLRECT is not set | 1193 | # CONFIG_FB_SYS_FILLRECT is not set |
1130 | # CONFIG_FB_SYS_COPYAREA is not set | 1194 | # CONFIG_FB_SYS_COPYAREA is not set |
1131 | # CONFIG_FB_SYS_IMAGEBLIT is not set | 1195 | # CONFIG_FB_SYS_IMAGEBLIT is not set |
1196 | # CONFIG_FB_FOREIGN_ENDIAN is not set | ||
1132 | # CONFIG_FB_SYS_FOPS is not set | 1197 | # CONFIG_FB_SYS_FOPS is not set |
1133 | CONFIG_FB_DEFERRED_IO=y | ||
1134 | # CONFIG_FB_SVGALIB is not set | 1198 | # CONFIG_FB_SVGALIB is not set |
1135 | # CONFIG_FB_MACMODES is not set | 1199 | # CONFIG_FB_MACMODES is not set |
1136 | CONFIG_FB_BACKLIGHT=y | 1200 | CONFIG_FB_BACKLIGHT=y |
@@ -1158,16 +1222,30 @@ CONFIG_FB_RADEON_BACKLIGHT=y | |||
1158 | # CONFIG_FB_S3 is not set | 1222 | # CONFIG_FB_S3 is not set |
1159 | # CONFIG_FB_SAVAGE is not set | 1223 | # CONFIG_FB_SAVAGE is not set |
1160 | # CONFIG_FB_SIS is not set | 1224 | # CONFIG_FB_SIS is not set |
1225 | # CONFIG_FB_VIA is not set | ||
1161 | # CONFIG_FB_NEOMAGIC is not set | 1226 | # CONFIG_FB_NEOMAGIC is not set |
1162 | # CONFIG_FB_KYRO is not set | 1227 | # CONFIG_FB_KYRO is not set |
1163 | # CONFIG_FB_3DFX is not set | 1228 | # CONFIG_FB_3DFX is not set |
1164 | # CONFIG_FB_VOODOO1 is not set | 1229 | # CONFIG_FB_VOODOO1 is not set |
1165 | # CONFIG_FB_SMIVGX is not set | ||
1166 | # CONFIG_FB_VT8623 is not set | 1230 | # CONFIG_FB_VT8623 is not set |
1167 | # CONFIG_FB_TRIDENT is not set | 1231 | # CONFIG_FB_TRIDENT is not set |
1168 | # CONFIG_FB_ARK is not set | 1232 | # CONFIG_FB_ARK is not set |
1169 | # CONFIG_FB_PM3 is not set | 1233 | # CONFIG_FB_PM3 is not set |
1234 | # CONFIG_FB_CARMINE is not set | ||
1170 | # CONFIG_FB_VIRTUAL is not set | 1235 | # CONFIG_FB_VIRTUAL is not set |
1236 | # CONFIG_FB_METRONOME is not set | ||
1237 | # CONFIG_FB_MB862XX is not set | ||
1238 | CONFIG_BACKLIGHT_LCD_SUPPORT=y | ||
1239 | CONFIG_LCD_CLASS_DEVICE=m | ||
1240 | # CONFIG_LCD_ILI9320 is not set | ||
1241 | # CONFIG_LCD_PLATFORM is not set | ||
1242 | CONFIG_BACKLIGHT_CLASS_DEVICE=y | ||
1243 | # CONFIG_BACKLIGHT_CORGI is not set | ||
1244 | |||
1245 | # | ||
1246 | # Display device support | ||
1247 | # | ||
1248 | # CONFIG_DISPLAY_SUPPORT is not set | ||
1171 | 1249 | ||
1172 | # | 1250 | # |
1173 | # Console display driver support | 1251 | # Console display driver support |
@@ -1176,20 +1254,14 @@ CONFIG_FB_RADEON_BACKLIGHT=y | |||
1176 | # CONFIG_MDA_CONSOLE is not set | 1254 | # CONFIG_MDA_CONSOLE is not set |
1177 | CONFIG_DUMMY_CONSOLE=y | 1255 | CONFIG_DUMMY_CONSOLE=y |
1178 | CONFIG_FRAMEBUFFER_CONSOLE=y | 1256 | CONFIG_FRAMEBUFFER_CONSOLE=y |
1257 | # CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set | ||
1179 | # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set | 1258 | # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set |
1180 | # CONFIG_FONTS is not set | 1259 | # CONFIG_FONTS is not set |
1181 | CONFIG_FONT_8x8=y | 1260 | CONFIG_FONT_8x8=y |
1182 | CONFIG_FONT_8x16=y | 1261 | CONFIG_FONT_8x16=y |
1183 | # CONFIG_LOGO is not set | 1262 | # CONFIG_LOGO is not set |
1184 | |||
1185 | # | ||
1186 | # Sound | ||
1187 | # | ||
1188 | CONFIG_SOUND=y | 1263 | CONFIG_SOUND=y |
1189 | 1264 | CONFIG_SOUND_OSS_CORE=y | |
1190 | # | ||
1191 | # Advanced Linux Sound Architecture | ||
1192 | # | ||
1193 | CONFIG_SND=m | 1265 | CONFIG_SND=m |
1194 | CONFIG_SND_TIMER=m | 1266 | CONFIG_SND_TIMER=m |
1195 | CONFIG_SND_PCM=m | 1267 | CONFIG_SND_PCM=m |
@@ -1201,28 +1273,22 @@ CONFIG_SND_MIXER_OSS=m | |||
1201 | CONFIG_SND_PCM_OSS=m | 1273 | CONFIG_SND_PCM_OSS=m |
1202 | CONFIG_SND_PCM_OSS_PLUGINS=y | 1274 | CONFIG_SND_PCM_OSS_PLUGINS=y |
1203 | CONFIG_SND_SEQUENCER_OSS=y | 1275 | CONFIG_SND_SEQUENCER_OSS=y |
1204 | CONFIG_SND_RTCTIMER=m | ||
1205 | CONFIG_SND_SEQ_RTCTIMER_DEFAULT=y | ||
1206 | # CONFIG_SND_DYNAMIC_MINORS is not set | 1276 | # CONFIG_SND_DYNAMIC_MINORS is not set |
1207 | CONFIG_SND_SUPPORT_OLD_API=y | 1277 | CONFIG_SND_SUPPORT_OLD_API=y |
1208 | CONFIG_SND_VERBOSE_PROCFS=y | 1278 | CONFIG_SND_VERBOSE_PROCFS=y |
1209 | # CONFIG_SND_VERBOSE_PRINTK is not set | 1279 | # CONFIG_SND_VERBOSE_PRINTK is not set |
1210 | # CONFIG_SND_DEBUG is not set | 1280 | # CONFIG_SND_DEBUG is not set |
1211 | 1281 | CONFIG_SND_VMASTER=y | |
1212 | # | ||
1213 | # Generic devices | ||
1214 | # | ||
1215 | CONFIG_SND_MPU401_UART=m | 1282 | CONFIG_SND_MPU401_UART=m |
1216 | CONFIG_SND_AC97_CODEC=m | 1283 | CONFIG_SND_AC97_CODEC=m |
1284 | CONFIG_SND_DRIVERS=y | ||
1217 | # CONFIG_SND_DUMMY is not set | 1285 | # CONFIG_SND_DUMMY is not set |
1218 | # CONFIG_SND_VIRMIDI is not set | 1286 | # CONFIG_SND_VIRMIDI is not set |
1219 | # CONFIG_SND_MTPAV is not set | 1287 | # CONFIG_SND_MTPAV is not set |
1220 | # CONFIG_SND_SERIAL_U16550 is not set | 1288 | # CONFIG_SND_SERIAL_U16550 is not set |
1221 | # CONFIG_SND_MPU401 is not set | 1289 | # CONFIG_SND_MPU401 is not set |
1222 | 1290 | # CONFIG_SND_AC97_POWER_SAVE is not set | |
1223 | # | 1291 | CONFIG_SND_PCI=y |
1224 | # PCI devices | ||
1225 | # | ||
1226 | # CONFIG_SND_AD1889 is not set | 1292 | # CONFIG_SND_AD1889 is not set |
1227 | # CONFIG_SND_ALS300 is not set | 1293 | # CONFIG_SND_ALS300 is not set |
1228 | # CONFIG_SND_ALI5451 is not set | 1294 | # CONFIG_SND_ALI5451 is not set |
@@ -1231,10 +1297,12 @@ CONFIG_SND_AC97_CODEC=m | |||
1231 | # CONFIG_SND_AU8810 is not set | 1297 | # CONFIG_SND_AU8810 is not set |
1232 | # CONFIG_SND_AU8820 is not set | 1298 | # CONFIG_SND_AU8820 is not set |
1233 | # CONFIG_SND_AU8830 is not set | 1299 | # CONFIG_SND_AU8830 is not set |
1300 | # CONFIG_SND_AW2 is not set | ||
1234 | # CONFIG_SND_AZT3328 is not set | 1301 | # CONFIG_SND_AZT3328 is not set |
1235 | # CONFIG_SND_BT87X is not set | 1302 | # CONFIG_SND_BT87X is not set |
1236 | # CONFIG_SND_CA0106 is not set | 1303 | # CONFIG_SND_CA0106 is not set |
1237 | # CONFIG_SND_CMIPCI is not set | 1304 | # CONFIG_SND_CMIPCI is not set |
1305 | # CONFIG_SND_OXYGEN is not set | ||
1238 | # CONFIG_SND_CS4281 is not set | 1306 | # CONFIG_SND_CS4281 is not set |
1239 | # CONFIG_SND_CS46XX is not set | 1307 | # CONFIG_SND_CS46XX is not set |
1240 | # CONFIG_SND_DARLA20 is not set | 1308 | # CONFIG_SND_DARLA20 is not set |
@@ -1259,6 +1327,7 @@ CONFIG_SND_AC97_CODEC=m | |||
1259 | # CONFIG_SND_HDA_INTEL is not set | 1327 | # CONFIG_SND_HDA_INTEL is not set |
1260 | # CONFIG_SND_HDSP is not set | 1328 | # CONFIG_SND_HDSP is not set |
1261 | # CONFIG_SND_HDSPM is not set | 1329 | # CONFIG_SND_HDSPM is not set |
1330 | # CONFIG_SND_HIFIER is not set | ||
1262 | # CONFIG_SND_ICE1712 is not set | 1331 | # CONFIG_SND_ICE1712 is not set |
1263 | # CONFIG_SND_ICE1724 is not set | 1332 | # CONFIG_SND_ICE1724 is not set |
1264 | # CONFIG_SND_INTEL8X0 is not set | 1333 | # CONFIG_SND_INTEL8X0 is not set |
@@ -1276,43 +1345,26 @@ CONFIG_SND_AC97_CODEC=m | |||
1276 | # CONFIG_SND_TRIDENT is not set | 1345 | # CONFIG_SND_TRIDENT is not set |
1277 | CONFIG_SND_VIA82XX=m | 1346 | CONFIG_SND_VIA82XX=m |
1278 | # CONFIG_SND_VIA82XX_MODEM is not set | 1347 | # CONFIG_SND_VIA82XX_MODEM is not set |
1348 | # CONFIG_SND_VIRTUOSO is not set | ||
1279 | # CONFIG_SND_VX222 is not set | 1349 | # CONFIG_SND_VX222 is not set |
1280 | # CONFIG_SND_YMFPCI is not set | 1350 | # CONFIG_SND_YMFPCI is not set |
1281 | # CONFIG_SND_AC97_POWER_SAVE is not set | 1351 | CONFIG_SND_MIPS=y |
1282 | 1352 | CONFIG_SND_USB=y | |
1283 | # | ||
1284 | # ALSA MIPS devices | ||
1285 | # | ||
1286 | |||
1287 | # | ||
1288 | # USB devices | ||
1289 | # | ||
1290 | # CONFIG_SND_USB_AUDIO is not set | 1353 | # CONFIG_SND_USB_AUDIO is not set |
1291 | # CONFIG_SND_USB_CAIAQ is not set | 1354 | # CONFIG_SND_USB_CAIAQ is not set |
1292 | |||
1293 | # | ||
1294 | # System on Chip audio support | ||
1295 | # | ||
1296 | # CONFIG_SND_SOC is not set | 1355 | # CONFIG_SND_SOC is not set |
1297 | |||
1298 | # | ||
1299 | # Open Sound System | ||
1300 | # | ||
1301 | # CONFIG_SOUND_PRIME is not set | 1356 | # CONFIG_SOUND_PRIME is not set |
1302 | CONFIG_AC97_BUS=m | 1357 | CONFIG_AC97_BUS=m |
1303 | 1358 | CONFIG_HID_SUPPORT=y | |
1304 | # | ||
1305 | # HID Devices | ||
1306 | # | ||
1307 | CONFIG_HID=y | 1359 | CONFIG_HID=y |
1308 | # CONFIG_HID_DEBUG is not set | 1360 | # CONFIG_HID_DEBUG is not set |
1361 | CONFIG_HIDRAW=y | ||
1309 | 1362 | ||
1310 | # | 1363 | # |
1311 | # USB Input Devices | 1364 | # USB Input Devices |
1312 | # | 1365 | # |
1313 | CONFIG_USB_HID=m | 1366 | CONFIG_USB_HID=m |
1314 | # CONFIG_USB_HIDINPUT_POWERBOOK is not set | 1367 | CONFIG_HID_PID=y |
1315 | # CONFIG_HID_FF is not set | ||
1316 | CONFIG_USB_HIDDEV=y | 1368 | CONFIG_USB_HIDDEV=y |
1317 | 1369 | ||
1318 | # | 1370 | # |
@@ -1322,13 +1374,39 @@ CONFIG_USB_HIDDEV=y | |||
1322 | # CONFIG_USB_MOUSE is not set | 1374 | # CONFIG_USB_MOUSE is not set |
1323 | 1375 | ||
1324 | # | 1376 | # |
1325 | # USB support | 1377 | # Special HID drivers |
1326 | # | 1378 | # |
1379 | CONFIG_HID_COMPAT=y | ||
1380 | CONFIG_HID_A4TECH=m | ||
1381 | CONFIG_HID_APPLE=m | ||
1382 | CONFIG_HID_BELKIN=m | ||
1383 | CONFIG_HID_BRIGHT=m | ||
1384 | CONFIG_HID_CHERRY=m | ||
1385 | CONFIG_HID_CHICONY=m | ||
1386 | CONFIG_HID_CYPRESS=m | ||
1387 | CONFIG_HID_DELL=m | ||
1388 | CONFIG_HID_EZKEY=m | ||
1389 | CONFIG_HID_GYRATION=m | ||
1390 | CONFIG_HID_LOGITECH=m | ||
1391 | CONFIG_LOGITECH_FF=y | ||
1392 | CONFIG_LOGIRUMBLEPAD2_FF=y | ||
1393 | CONFIG_HID_MICROSOFT=m | ||
1394 | CONFIG_HID_MONTEREY=m | ||
1395 | CONFIG_HID_PANTHERLORD=m | ||
1396 | # CONFIG_PANTHERLORD_FF is not set | ||
1397 | CONFIG_HID_PETALYNX=m | ||
1398 | CONFIG_HID_SAMSUNG=m | ||
1399 | CONFIG_HID_SONY=m | ||
1400 | CONFIG_HID_SUNPLUS=m | ||
1401 | # CONFIG_THRUSTMASTER_FF is not set | ||
1402 | CONFIG_ZEROPLUS_FF=m | ||
1403 | CONFIG_USB_SUPPORT=y | ||
1327 | CONFIG_USB_ARCH_HAS_HCD=y | 1404 | CONFIG_USB_ARCH_HAS_HCD=y |
1328 | CONFIG_USB_ARCH_HAS_OHCI=y | 1405 | CONFIG_USB_ARCH_HAS_OHCI=y |
1329 | CONFIG_USB_ARCH_HAS_EHCI=y | 1406 | CONFIG_USB_ARCH_HAS_EHCI=y |
1330 | CONFIG_USB=y | 1407 | CONFIG_USB=y |
1331 | # CONFIG_USB_DEBUG is not set | 1408 | # CONFIG_USB_DEBUG is not set |
1409 | CONFIG_USB_ANNOUNCE_NEW_DEVICES=y | ||
1332 | 1410 | ||
1333 | # | 1411 | # |
1334 | # Miscellaneous USB options | 1412 | # Miscellaneous USB options |
@@ -1338,35 +1416,46 @@ CONFIG_USB_DEVICEFS=y | |||
1338 | # CONFIG_USB_DYNAMIC_MINORS is not set | 1416 | # CONFIG_USB_DYNAMIC_MINORS is not set |
1339 | # CONFIG_USB_SUSPEND is not set | 1417 | # CONFIG_USB_SUSPEND is not set |
1340 | # CONFIG_USB_OTG is not set | 1418 | # CONFIG_USB_OTG is not set |
1419 | CONFIG_USB_OTG_WHITELIST=y | ||
1420 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set | ||
1421 | # CONFIG_USB_MON is not set | ||
1422 | # CONFIG_USB_WUSB is not set | ||
1423 | CONFIG_USB_WUSB_CBAF=m | ||
1424 | # CONFIG_USB_WUSB_CBAF_DEBUG is not set | ||
1341 | 1425 | ||
1342 | # | 1426 | # |
1343 | # USB Host Controller Drivers | 1427 | # USB Host Controller Drivers |
1344 | # | 1428 | # |
1429 | CONFIG_USB_C67X00_HCD=m | ||
1345 | CONFIG_USB_EHCI_HCD=y | 1430 | CONFIG_USB_EHCI_HCD=y |
1346 | CONFIG_USB_EHCI_SPLIT_ISO=y | ||
1347 | CONFIG_USB_EHCI_ROOT_HUB_TT=y | 1431 | CONFIG_USB_EHCI_ROOT_HUB_TT=y |
1348 | CONFIG_USB_EHCI_TT_NEWSCHED=y | 1432 | CONFIG_USB_EHCI_TT_NEWSCHED=y |
1349 | # CONFIG_USB_EHCI_BIG_ENDIAN_MMIO is not set | ||
1350 | # CONFIG_USB_ISP116X_HCD is not set | 1433 | # CONFIG_USB_ISP116X_HCD is not set |
1434 | CONFIG_USB_ISP1760_HCD=m | ||
1351 | CONFIG_USB_OHCI_HCD=y | 1435 | CONFIG_USB_OHCI_HCD=y |
1352 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set | 1436 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set |
1353 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set | 1437 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set |
1354 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y | 1438 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y |
1355 | CONFIG_USB_UHCI_HCD=m | 1439 | CONFIG_USB_UHCI_HCD=m |
1356 | # CONFIG_USB_SL811_HCD is not set | 1440 | # CONFIG_USB_SL811_HCD is not set |
1441 | CONFIG_USB_R8A66597_HCD=m | ||
1442 | # CONFIG_USB_WHCI_HCD is not set | ||
1443 | # CONFIG_USB_HWA_HCD is not set | ||
1357 | 1444 | ||
1358 | # | 1445 | # |
1359 | # USB Device Class drivers | 1446 | # USB Device Class drivers |
1360 | # | 1447 | # |
1361 | CONFIG_USB_ACM=y | 1448 | CONFIG_USB_ACM=y |
1362 | CONFIG_USB_PRINTER=y | 1449 | CONFIG_USB_PRINTER=y |
1450 | CONFIG_USB_WDM=m | ||
1451 | CONFIG_USB_TMC=m | ||
1363 | 1452 | ||
1364 | # | 1453 | # |
1365 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | 1454 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed; |
1366 | # | 1455 | # |
1367 | 1456 | ||
1368 | # | 1457 | # |
1369 | # may also be needed; see USB_STORAGE Help for more information | 1458 | # see USB_STORAGE Help for more information |
1370 | # | 1459 | # |
1371 | CONFIG_USB_STORAGE=y | 1460 | CONFIG_USB_STORAGE=y |
1372 | # CONFIG_USB_STORAGE_DEBUG is not set | 1461 | # CONFIG_USB_STORAGE_DEBUG is not set |
@@ -1379,7 +1468,9 @@ CONFIG_USB_STORAGE=y | |||
1379 | # CONFIG_USB_STORAGE_SDDR55 is not set | 1468 | # CONFIG_USB_STORAGE_SDDR55 is not set |
1380 | # CONFIG_USB_STORAGE_JUMPSHOT is not set | 1469 | # CONFIG_USB_STORAGE_JUMPSHOT is not set |
1381 | # CONFIG_USB_STORAGE_ALAUDA is not set | 1470 | # CONFIG_USB_STORAGE_ALAUDA is not set |
1471 | CONFIG_USB_STORAGE_ONETOUCH=y | ||
1382 | # CONFIG_USB_STORAGE_KARMA is not set | 1472 | # CONFIG_USB_STORAGE_KARMA is not set |
1473 | CONFIG_USB_STORAGE_CYPRESS_ATACB=y | ||
1383 | CONFIG_USB_LIBUSUAL=y | 1474 | CONFIG_USB_LIBUSUAL=y |
1384 | 1475 | ||
1385 | # | 1476 | # |
@@ -1387,15 +1478,10 @@ CONFIG_USB_LIBUSUAL=y | |||
1387 | # | 1478 | # |
1388 | # CONFIG_USB_MDC800 is not set | 1479 | # CONFIG_USB_MDC800 is not set |
1389 | # CONFIG_USB_MICROTEK is not set | 1480 | # CONFIG_USB_MICROTEK is not set |
1390 | # CONFIG_USB_MON is not set | ||
1391 | 1481 | ||
1392 | # | 1482 | # |
1393 | # USB port drivers | 1483 | # USB port drivers |
1394 | # | 1484 | # |
1395 | |||
1396 | # | ||
1397 | # USB Serial Converter support | ||
1398 | # | ||
1399 | # CONFIG_USB_SERIAL is not set | 1485 | # CONFIG_USB_SERIAL is not set |
1400 | 1486 | ||
1401 | # | 1487 | # |
@@ -1404,7 +1490,7 @@ CONFIG_USB_LIBUSUAL=y | |||
1404 | # CONFIG_USB_EMI62 is not set | 1490 | # CONFIG_USB_EMI62 is not set |
1405 | # CONFIG_USB_EMI26 is not set | 1491 | # CONFIG_USB_EMI26 is not set |
1406 | # CONFIG_USB_ADUTUX is not set | 1492 | # CONFIG_USB_ADUTUX is not set |
1407 | # CONFIG_USB_AUERSWALD is not set | 1493 | CONFIG_USB_SEVSEG=m |
1408 | # CONFIG_USB_RIO500 is not set | 1494 | # CONFIG_USB_RIO500 is not set |
1409 | # CONFIG_USB_LEGOTOWER is not set | 1495 | # CONFIG_USB_LEGOTOWER is not set |
1410 | # CONFIG_USB_LCD is not set | 1496 | # CONFIG_USB_LCD is not set |
@@ -1421,56 +1507,75 @@ CONFIG_USB_LIBUSUAL=y | |||
1421 | # CONFIG_USB_TRANCEVIBRATOR is not set | 1507 | # CONFIG_USB_TRANCEVIBRATOR is not set |
1422 | # CONFIG_USB_IOWARRIOR is not set | 1508 | # CONFIG_USB_IOWARRIOR is not set |
1423 | # CONFIG_USB_TEST is not set | 1509 | # CONFIG_USB_TEST is not set |
1424 | 1510 | CONFIG_USB_ISIGHTFW=m | |
1425 | # | 1511 | CONFIG_USB_VST=m |
1426 | # USB DSL modem support | ||
1427 | # | ||
1428 | |||
1429 | # | ||
1430 | # USB Gadget Support | ||
1431 | # | ||
1432 | # CONFIG_USB_GADGET is not set | 1512 | # CONFIG_USB_GADGET is not set |
1513 | # CONFIG_UWB is not set | ||
1433 | # CONFIG_MMC is not set | 1514 | # CONFIG_MMC is not set |
1434 | 1515 | # CONFIG_MEMSTICK is not set | |
1435 | # | ||
1436 | # LED devices | ||
1437 | # | ||
1438 | # CONFIG_NEW_LEDS is not set | 1516 | # CONFIG_NEW_LEDS is not set |
1439 | 1517 | # CONFIG_ACCESSIBILITY is not set | |
1440 | # | ||
1441 | # LED drivers | ||
1442 | # | ||
1443 | |||
1444 | # | ||
1445 | # LED Triggers | ||
1446 | # | ||
1447 | |||
1448 | # | ||
1449 | # InfiniBand support | ||
1450 | # | ||
1451 | # CONFIG_INFINIBAND is not set | 1518 | # CONFIG_INFINIBAND is not set |
1519 | CONFIG_RTC_LIB=y | ||
1520 | CONFIG_RTC_CLASS=m | ||
1452 | 1521 | ||
1453 | # | 1522 | # |
1454 | # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) | 1523 | # RTC interfaces |
1455 | # | 1524 | # |
1525 | CONFIG_RTC_INTF_SYSFS=y | ||
1526 | CONFIG_RTC_INTF_PROC=y | ||
1527 | CONFIG_RTC_INTF_DEV=y | ||
1528 | CONFIG_RTC_INTF_DEV_UIE_EMUL=y | ||
1529 | # CONFIG_RTC_DRV_TEST is not set | ||
1456 | 1530 | ||
1457 | # | 1531 | # |
1458 | # Real Time Clock | 1532 | # I2C RTC drivers |
1459 | # | 1533 | # |
1460 | # CONFIG_RTC_CLASS is not set | 1534 | # CONFIG_RTC_DRV_DS1307 is not set |
1535 | # CONFIG_RTC_DRV_DS1374 is not set | ||
1536 | # CONFIG_RTC_DRV_DS1672 is not set | ||
1537 | # CONFIG_RTC_DRV_MAX6900 is not set | ||
1538 | # CONFIG_RTC_DRV_RS5C372 is not set | ||
1539 | # CONFIG_RTC_DRV_ISL1208 is not set | ||
1540 | # CONFIG_RTC_DRV_X1205 is not set | ||
1541 | # CONFIG_RTC_DRV_PCF8563 is not set | ||
1542 | # CONFIG_RTC_DRV_PCF8583 is not set | ||
1543 | # CONFIG_RTC_DRV_M41T80 is not set | ||
1544 | # CONFIG_RTC_DRV_S35390A is not set | ||
1545 | # CONFIG_RTC_DRV_FM3130 is not set | ||
1546 | # CONFIG_RTC_DRV_RX8581 is not set | ||
1461 | 1547 | ||
1462 | # | 1548 | # |
1463 | # DMA Engine support | 1549 | # SPI RTC drivers |
1464 | # | 1550 | # |
1465 | # CONFIG_DMA_ENGINE is not set | ||
1466 | 1551 | ||
1467 | # | 1552 | # |
1468 | # DMA Clients | 1553 | # Platform RTC drivers |
1469 | # | 1554 | # |
1555 | CONFIG_RTC_DRV_CMOS=m | ||
1556 | # CONFIG_RTC_DRV_DS1286 is not set | ||
1557 | # CONFIG_RTC_DRV_DS1511 is not set | ||
1558 | # CONFIG_RTC_DRV_DS1553 is not set | ||
1559 | # CONFIG_RTC_DRV_DS1742 is not set | ||
1560 | # CONFIG_RTC_DRV_STK17TA8 is not set | ||
1561 | # CONFIG_RTC_DRV_M48T86 is not set | ||
1562 | # CONFIG_RTC_DRV_M48T35 is not set | ||
1563 | # CONFIG_RTC_DRV_M48T59 is not set | ||
1564 | # CONFIG_RTC_DRV_BQ4802 is not set | ||
1565 | # CONFIG_RTC_DRV_V3020 is not set | ||
1470 | 1566 | ||
1471 | # | 1567 | # |
1472 | # DMA Devices | 1568 | # on-CPU RTC drivers |
1473 | # | 1569 | # |
1570 | # CONFIG_DMADEVICES is not set | ||
1571 | CONFIG_UIO=m | ||
1572 | CONFIG_UIO_CIF=m | ||
1573 | # CONFIG_UIO_PDRV is not set | ||
1574 | # CONFIG_UIO_PDRV_GENIRQ is not set | ||
1575 | # CONFIG_UIO_SMX is not set | ||
1576 | # CONFIG_UIO_SERCOS3 is not set | ||
1577 | # CONFIG_STAGING is not set | ||
1578 | CONFIG_STAGING_EXCLUDE_BUILD=y | ||
1474 | 1579 | ||
1475 | # | 1580 | # |
1476 | # File systems | 1581 | # File systems |
@@ -1478,27 +1583,31 @@ CONFIG_USB_LIBUSUAL=y | |||
1478 | CONFIG_EXT2_FS=y | 1583 | CONFIG_EXT2_FS=y |
1479 | # CONFIG_EXT2_FS_XATTR is not set | 1584 | # CONFIG_EXT2_FS_XATTR is not set |
1480 | CONFIG_EXT2_FS_XIP=y | 1585 | CONFIG_EXT2_FS_XIP=y |
1481 | CONFIG_FS_XIP=y | ||
1482 | CONFIG_EXT3_FS=y | 1586 | CONFIG_EXT3_FS=y |
1483 | # CONFIG_EXT3_FS_XATTR is not set | 1587 | # CONFIG_EXT3_FS_XATTR is not set |
1484 | # CONFIG_EXT4DEV_FS is not set | 1588 | CONFIG_EXT4_FS=m |
1589 | CONFIG_EXT4DEV_COMPAT=y | ||
1590 | CONFIG_EXT4_FS_XATTR=y | ||
1591 | CONFIG_EXT4_FS_POSIX_ACL=y | ||
1592 | CONFIG_EXT4_FS_SECURITY=y | ||
1593 | CONFIG_FS_XIP=y | ||
1485 | CONFIG_JBD=y | 1594 | CONFIG_JBD=y |
1486 | # CONFIG_JBD_DEBUG is not set | 1595 | CONFIG_JBD2=m |
1596 | CONFIG_FS_MBCACHE=m | ||
1487 | CONFIG_REISERFS_FS=m | 1597 | CONFIG_REISERFS_FS=m |
1488 | # CONFIG_REISERFS_CHECK is not set | 1598 | # CONFIG_REISERFS_CHECK is not set |
1489 | # CONFIG_REISERFS_PROC_INFO is not set | 1599 | # CONFIG_REISERFS_PROC_INFO is not set |
1490 | # CONFIG_REISERFS_FS_XATTR is not set | 1600 | # CONFIG_REISERFS_FS_XATTR is not set |
1491 | # CONFIG_JFS_FS is not set | 1601 | # CONFIG_JFS_FS is not set |
1492 | CONFIG_FS_POSIX_ACL=y | 1602 | CONFIG_FS_POSIX_ACL=y |
1603 | CONFIG_FILE_LOCKING=y | ||
1493 | # CONFIG_XFS_FS is not set | 1604 | # CONFIG_XFS_FS is not set |
1494 | # CONFIG_GFS2_FS is not set | 1605 | # CONFIG_GFS2_FS is not set |
1495 | # CONFIG_OCFS2_FS is not set | 1606 | # CONFIG_OCFS2_FS is not set |
1496 | # CONFIG_MINIX_FS is not set | 1607 | CONFIG_DNOTIFY=y |
1497 | # CONFIG_ROMFS_FS is not set | ||
1498 | CONFIG_INOTIFY=y | 1608 | CONFIG_INOTIFY=y |
1499 | CONFIG_INOTIFY_USER=y | 1609 | CONFIG_INOTIFY_USER=y |
1500 | # CONFIG_QUOTA is not set | 1610 | # CONFIG_QUOTA is not set |
1501 | CONFIG_DNOTIFY=y | ||
1502 | CONFIG_AUTOFS_FS=y | 1611 | CONFIG_AUTOFS_FS=y |
1503 | CONFIG_AUTOFS4_FS=y | 1612 | CONFIG_AUTOFS4_FS=y |
1504 | CONFIG_FUSE_FS=y | 1613 | CONFIG_FUSE_FS=y |
@@ -1530,11 +1639,11 @@ CONFIG_NTFS_RW=y | |||
1530 | CONFIG_PROC_FS=y | 1639 | CONFIG_PROC_FS=y |
1531 | CONFIG_PROC_KCORE=y | 1640 | CONFIG_PROC_KCORE=y |
1532 | CONFIG_PROC_SYSCTL=y | 1641 | CONFIG_PROC_SYSCTL=y |
1642 | CONFIG_PROC_PAGE_MONITOR=y | ||
1533 | CONFIG_SYSFS=y | 1643 | CONFIG_SYSFS=y |
1534 | CONFIG_TMPFS=y | 1644 | CONFIG_TMPFS=y |
1535 | # CONFIG_TMPFS_POSIX_ACL is not set | 1645 | # CONFIG_TMPFS_POSIX_ACL is not set |
1536 | # CONFIG_HUGETLB_PAGE is not set | 1646 | # CONFIG_HUGETLB_PAGE is not set |
1537 | CONFIG_RAMFS=y | ||
1538 | # CONFIG_CONFIGFS_FS is not set | 1647 | # CONFIG_CONFIGFS_FS is not set |
1539 | 1648 | ||
1540 | # | 1649 | # |
@@ -1550,25 +1659,23 @@ CONFIG_RAMFS=y | |||
1550 | # CONFIG_JFFS2_FS is not set | 1659 | # CONFIG_JFFS2_FS is not set |
1551 | # CONFIG_CRAMFS is not set | 1660 | # CONFIG_CRAMFS is not set |
1552 | # CONFIG_VXFS_FS is not set | 1661 | # CONFIG_VXFS_FS is not set |
1662 | # CONFIG_MINIX_FS is not set | ||
1663 | CONFIG_OMFS_FS=m | ||
1553 | # CONFIG_HPFS_FS is not set | 1664 | # CONFIG_HPFS_FS is not set |
1554 | # CONFIG_QNX4FS_FS is not set | 1665 | # CONFIG_QNX4FS_FS is not set |
1666 | # CONFIG_ROMFS_FS is not set | ||
1555 | # CONFIG_SYSV_FS is not set | 1667 | # CONFIG_SYSV_FS is not set |
1556 | # CONFIG_UFS_FS is not set | 1668 | # CONFIG_UFS_FS is not set |
1557 | 1669 | CONFIG_NETWORK_FILESYSTEMS=y | |
1558 | # | ||
1559 | # Network File Systems | ||
1560 | # | ||
1561 | CONFIG_NFS_FS=m | 1670 | CONFIG_NFS_FS=m |
1562 | CONFIG_NFS_V3=y | 1671 | CONFIG_NFS_V3=y |
1563 | CONFIG_NFS_V3_ACL=y | 1672 | CONFIG_NFS_V3_ACL=y |
1564 | CONFIG_NFS_V4=y | 1673 | CONFIG_NFS_V4=y |
1565 | CONFIG_NFS_DIRECTIO=y | ||
1566 | CONFIG_NFSD=m | 1674 | CONFIG_NFSD=m |
1567 | CONFIG_NFSD_V2_ACL=y | 1675 | CONFIG_NFSD_V2_ACL=y |
1568 | CONFIG_NFSD_V3=y | 1676 | CONFIG_NFSD_V3=y |
1569 | CONFIG_NFSD_V3_ACL=y | 1677 | CONFIG_NFSD_V3_ACL=y |
1570 | CONFIG_NFSD_V4=y | 1678 | CONFIG_NFSD_V4=y |
1571 | CONFIG_NFSD_TCP=y | ||
1572 | CONFIG_LOCKD=m | 1679 | CONFIG_LOCKD=m |
1573 | CONFIG_LOCKD_V4=y | 1680 | CONFIG_LOCKD_V4=y |
1574 | CONFIG_EXPORTFS=m | 1681 | CONFIG_EXPORTFS=m |
@@ -1576,7 +1683,7 @@ CONFIG_NFS_ACL_SUPPORT=m | |||
1576 | CONFIG_NFS_COMMON=y | 1683 | CONFIG_NFS_COMMON=y |
1577 | CONFIG_SUNRPC=m | 1684 | CONFIG_SUNRPC=m |
1578 | CONFIG_SUNRPC_GSS=m | 1685 | CONFIG_SUNRPC_GSS=m |
1579 | # CONFIG_SUNRPC_BIND34 is not set | 1686 | # CONFIG_SUNRPC_REGISTER_V4 is not set |
1580 | CONFIG_RPCSEC_GSS_KRB5=m | 1687 | CONFIG_RPCSEC_GSS_KRB5=m |
1581 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | 1688 | # CONFIG_RPCSEC_GSS_SPKM3 is not set |
1582 | CONFIG_SMB_FS=m | 1689 | CONFIG_SMB_FS=m |
@@ -1616,10 +1723,6 @@ CONFIG_MSDOS_PARTITION=y | |||
1616 | # CONFIG_KARMA_PARTITION is not set | 1723 | # CONFIG_KARMA_PARTITION is not set |
1617 | # CONFIG_EFI_PARTITION is not set | 1724 | # CONFIG_EFI_PARTITION is not set |
1618 | # CONFIG_SYSV68_PARTITION is not set | 1725 | # CONFIG_SYSV68_PARTITION is not set |
1619 | |||
1620 | # | ||
1621 | # Native Language Support | ||
1622 | # | ||
1623 | CONFIG_NLS=y | 1726 | CONFIG_NLS=y |
1624 | CONFIG_NLS_DEFAULT="utf8" | 1727 | CONFIG_NLS_DEFAULT="utf8" |
1625 | # CONFIG_NLS_CODEPAGE_437 is not set | 1728 | # CONFIG_NLS_CODEPAGE_437 is not set |
@@ -1660,30 +1763,31 @@ CONFIG_NLS_ISO8859_1=y | |||
1660 | # CONFIG_NLS_KOI8_R is not set | 1763 | # CONFIG_NLS_KOI8_R is not set |
1661 | # CONFIG_NLS_KOI8_U is not set | 1764 | # CONFIG_NLS_KOI8_U is not set |
1662 | CONFIG_NLS_UTF8=y | 1765 | CONFIG_NLS_UTF8=y |
1663 | |||
1664 | # | ||
1665 | # Distributed Lock Manager | ||
1666 | # | ||
1667 | # CONFIG_DLM is not set | 1766 | # CONFIG_DLM is not set |
1668 | 1767 | ||
1669 | # | 1768 | # |
1670 | # Profiling support | ||
1671 | # | ||
1672 | CONFIG_PROFILING=y | ||
1673 | CONFIG_OPROFILE=m | ||
1674 | |||
1675 | # | ||
1676 | # Kernel hacking | 1769 | # Kernel hacking |
1677 | # | 1770 | # |
1678 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | 1771 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y |
1679 | # CONFIG_PRINTK_TIME is not set | 1772 | # CONFIG_PRINTK_TIME is not set |
1773 | CONFIG_ENABLE_WARN_DEPRECATED=y | ||
1680 | # CONFIG_ENABLE_MUST_CHECK is not set | 1774 | # CONFIG_ENABLE_MUST_CHECK is not set |
1775 | CONFIG_FRAME_WARN=2048 | ||
1681 | # CONFIG_MAGIC_SYSRQ is not set | 1776 | # CONFIG_MAGIC_SYSRQ is not set |
1682 | # CONFIG_UNUSED_SYMBOLS is not set | 1777 | # CONFIG_UNUSED_SYMBOLS is not set |
1683 | # CONFIG_DEBUG_FS is not set | 1778 | # CONFIG_DEBUG_FS is not set |
1684 | # CONFIG_HEADERS_CHECK is not set | 1779 | # CONFIG_HEADERS_CHECK is not set |
1685 | # CONFIG_DEBUG_KERNEL is not set | 1780 | # CONFIG_DEBUG_KERNEL is not set |
1686 | CONFIG_CROSSCOMPILE=y | 1781 | # CONFIG_DEBUG_MEMORY_INIT is not set |
1782 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set | ||
1783 | CONFIG_SYSCTL_SYSCALL_CHECK=y | ||
1784 | |||
1785 | # | ||
1786 | # Tracers | ||
1787 | # | ||
1788 | CONFIG_DYNAMIC_PRINTK_DEBUG=y | ||
1789 | # CONFIG_SAMPLES is not set | ||
1790 | CONFIG_HAVE_ARCH_KGDB=y | ||
1687 | CONFIG_CMDLINE="" | 1791 | CONFIG_CMDLINE="" |
1688 | 1792 | ||
1689 | # | 1793 | # |
@@ -1691,64 +1795,113 @@ CONFIG_CMDLINE="" | |||
1691 | # | 1795 | # |
1692 | # CONFIG_KEYS is not set | 1796 | # CONFIG_KEYS is not set |
1693 | # CONFIG_SECURITY is not set | 1797 | # CONFIG_SECURITY is not set |
1798 | # CONFIG_SECURITYFS is not set | ||
1799 | CONFIG_SECURITY_FILE_CAPABILITIES=y | ||
1800 | CONFIG_CRYPTO=y | ||
1694 | 1801 | ||
1695 | # | 1802 | # |
1696 | # Cryptographic options | 1803 | # Crypto core or helper |
1697 | # | 1804 | # |
1698 | CONFIG_CRYPTO=y | 1805 | CONFIG_CRYPTO_FIPS=y |
1699 | CONFIG_CRYPTO_ALGAPI=y | 1806 | CONFIG_CRYPTO_ALGAPI=y |
1700 | CONFIG_CRYPTO_BLKCIPHER=m | 1807 | CONFIG_CRYPTO_AEAD=y |
1808 | CONFIG_CRYPTO_BLKCIPHER=y | ||
1701 | CONFIG_CRYPTO_HASH=y | 1809 | CONFIG_CRYPTO_HASH=y |
1810 | CONFIG_CRYPTO_RNG=y | ||
1702 | CONFIG_CRYPTO_MANAGER=y | 1811 | CONFIG_CRYPTO_MANAGER=y |
1812 | CONFIG_CRYPTO_GF128MUL=m | ||
1813 | # CONFIG_CRYPTO_NULL is not set | ||
1814 | # CONFIG_CRYPTO_CRYPTD is not set | ||
1815 | CONFIG_CRYPTO_AUTHENC=m | ||
1816 | # CONFIG_CRYPTO_TEST is not set | ||
1817 | |||
1818 | # | ||
1819 | # Authenticated Encryption with Associated Data | ||
1820 | # | ||
1821 | CONFIG_CRYPTO_CCM=m | ||
1822 | CONFIG_CRYPTO_GCM=m | ||
1823 | CONFIG_CRYPTO_SEQIV=m | ||
1824 | |||
1825 | # | ||
1826 | # Block modes | ||
1827 | # | ||
1828 | CONFIG_CRYPTO_CBC=m | ||
1829 | CONFIG_CRYPTO_CTR=m | ||
1830 | CONFIG_CRYPTO_CTS=m | ||
1831 | CONFIG_CRYPTO_ECB=m | ||
1832 | # CONFIG_CRYPTO_LRW is not set | ||
1833 | CONFIG_CRYPTO_PCBC=m | ||
1834 | CONFIG_CRYPTO_XTS=m | ||
1835 | |||
1836 | # | ||
1837 | # Hash modes | ||
1838 | # | ||
1703 | CONFIG_CRYPTO_HMAC=y | 1839 | CONFIG_CRYPTO_HMAC=y |
1704 | # CONFIG_CRYPTO_XCBC is not set | 1840 | # CONFIG_CRYPTO_XCBC is not set |
1705 | # CONFIG_CRYPTO_NULL is not set | 1841 | |
1842 | # | ||
1843 | # Digest | ||
1844 | # | ||
1845 | # CONFIG_CRYPTO_CRC32C is not set | ||
1706 | # CONFIG_CRYPTO_MD4 is not set | 1846 | # CONFIG_CRYPTO_MD4 is not set |
1707 | CONFIG_CRYPTO_MD5=m | 1847 | CONFIG_CRYPTO_MD5=m |
1848 | # CONFIG_CRYPTO_MICHAEL_MIC is not set | ||
1849 | CONFIG_CRYPTO_RMD128=m | ||
1850 | CONFIG_CRYPTO_RMD160=m | ||
1851 | CONFIG_CRYPTO_RMD256=m | ||
1852 | CONFIG_CRYPTO_RMD320=m | ||
1708 | CONFIG_CRYPTO_SHA1=m | 1853 | CONFIG_CRYPTO_SHA1=m |
1709 | # CONFIG_CRYPTO_SHA256 is not set | 1854 | # CONFIG_CRYPTO_SHA256 is not set |
1710 | # CONFIG_CRYPTO_SHA512 is not set | 1855 | # CONFIG_CRYPTO_SHA512 is not set |
1711 | # CONFIG_CRYPTO_WP512 is not set | ||
1712 | # CONFIG_CRYPTO_TGR192 is not set | 1856 | # CONFIG_CRYPTO_TGR192 is not set |
1713 | # CONFIG_CRYPTO_GF128MUL is not set | 1857 | # CONFIG_CRYPTO_WP512 is not set |
1714 | CONFIG_CRYPTO_ECB=m | 1858 | |
1715 | CONFIG_CRYPTO_CBC=m | 1859 | # |
1716 | CONFIG_CRYPTO_PCBC=m | 1860 | # Ciphers |
1717 | # CONFIG_CRYPTO_LRW is not set | 1861 | # |
1718 | # CONFIG_CRYPTO_CRYPTD is not set | 1862 | CONFIG_CRYPTO_AES=m |
1719 | CONFIG_CRYPTO_DES=m | 1863 | # CONFIG_CRYPTO_ANUBIS is not set |
1720 | # CONFIG_CRYPTO_FCRYPT is not set | 1864 | CONFIG_CRYPTO_ARC4=m |
1721 | # CONFIG_CRYPTO_BLOWFISH is not set | 1865 | # CONFIG_CRYPTO_BLOWFISH is not set |
1722 | # CONFIG_CRYPTO_TWOFISH is not set | 1866 | # CONFIG_CRYPTO_CAMELLIA is not set |
1723 | # CONFIG_CRYPTO_SERPENT is not set | ||
1724 | # CONFIG_CRYPTO_AES is not set | ||
1725 | # CONFIG_CRYPTO_CAST5 is not set | 1867 | # CONFIG_CRYPTO_CAST5 is not set |
1726 | # CONFIG_CRYPTO_CAST6 is not set | 1868 | # CONFIG_CRYPTO_CAST6 is not set |
1727 | # CONFIG_CRYPTO_TEA is not set | 1869 | CONFIG_CRYPTO_DES=m |
1728 | CONFIG_CRYPTO_ARC4=m | 1870 | # CONFIG_CRYPTO_FCRYPT is not set |
1729 | # CONFIG_CRYPTO_KHAZAD is not set | 1871 | # CONFIG_CRYPTO_KHAZAD is not set |
1730 | # CONFIG_CRYPTO_ANUBIS is not set | 1872 | CONFIG_CRYPTO_SALSA20=m |
1873 | CONFIG_CRYPTO_SEED=m | ||
1874 | # CONFIG_CRYPTO_SERPENT is not set | ||
1875 | # CONFIG_CRYPTO_TEA is not set | ||
1876 | # CONFIG_CRYPTO_TWOFISH is not set | ||
1877 | |||
1878 | # | ||
1879 | # Compression | ||
1880 | # | ||
1731 | CONFIG_CRYPTO_DEFLATE=m | 1881 | CONFIG_CRYPTO_DEFLATE=m |
1732 | # CONFIG_CRYPTO_MICHAEL_MIC is not set | 1882 | CONFIG_CRYPTO_LZO=m |
1733 | # CONFIG_CRYPTO_CRC32C is not set | ||
1734 | # CONFIG_CRYPTO_CAMELLIA is not set | ||
1735 | # CONFIG_CRYPTO_TEST is not set | ||
1736 | 1883 | ||
1737 | # | 1884 | # |
1738 | # Hardware crypto devices | 1885 | # Random Number Generation |
1739 | # | 1886 | # |
1887 | CONFIG_CRYPTO_ANSI_CPRNG=m | ||
1888 | # CONFIG_CRYPTO_HW is not set | ||
1740 | 1889 | ||
1741 | # | 1890 | # |
1742 | # Library routines | 1891 | # Library routines |
1743 | # | 1892 | # |
1744 | CONFIG_BITREVERSE=y | 1893 | CONFIG_BITREVERSE=y |
1745 | CONFIG_CRC_CCITT=y | 1894 | CONFIG_CRC_CCITT=y |
1746 | # CONFIG_CRC16 is not set | 1895 | CONFIG_CRC16=m |
1747 | # CONFIG_CRC_ITU_T is not set | 1896 | # CONFIG_CRC_T10DIF is not set |
1897 | CONFIG_CRC_ITU_T=m | ||
1748 | CONFIG_CRC32=y | 1898 | CONFIG_CRC32=y |
1899 | CONFIG_CRC7=m | ||
1749 | # CONFIG_LIBCRC32C is not set | 1900 | # CONFIG_LIBCRC32C is not set |
1750 | CONFIG_ZLIB_INFLATE=m | 1901 | CONFIG_ZLIB_INFLATE=m |
1751 | CONFIG_ZLIB_DEFLATE=m | 1902 | CONFIG_ZLIB_DEFLATE=m |
1903 | CONFIG_LZO_COMPRESS=m | ||
1904 | CONFIG_LZO_DECOMPRESS=m | ||
1752 | CONFIG_TEXTSEARCH=y | 1905 | CONFIG_TEXTSEARCH=y |
1753 | CONFIG_TEXTSEARCH_KMP=m | 1906 | CONFIG_TEXTSEARCH_KMP=m |
1754 | CONFIG_TEXTSEARCH_BM=m | 1907 | CONFIG_TEXTSEARCH_BM=m |
diff --git a/arch/mips/configs/ip22_defconfig b/arch/mips/configs/ip22_defconfig index f719bf5e01aa..115822876417 100644 --- a/arch/mips/configs/ip22_defconfig +++ b/arch/mips/configs/ip22_defconfig | |||
@@ -1,30 +1,34 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.23-rc2 | 3 | # Linux kernel version: 2.6.28-rc6 |
4 | # Tue Aug 7 12:39:49 2007 | 4 | # Fri Nov 28 15:41:33 2008 |
5 | # | 5 | # |
6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
7 | 7 | ||
8 | # | 8 | # |
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | CONFIG_ZONE_DMA=y | ||
12 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
13 | # CONFIG_BASLER_EXCITE is not set | 12 | # CONFIG_BASLER_EXCITE is not set |
13 | # CONFIG_BCM47XX is not set | ||
14 | # CONFIG_MIPS_COBALT is not set | 14 | # CONFIG_MIPS_COBALT is not set |
15 | # CONFIG_MACH_DECSTATION is not set | 15 | # CONFIG_MACH_DECSTATION is not set |
16 | # CONFIG_MACH_JAZZ is not set | 16 | # CONFIG_MACH_JAZZ is not set |
17 | # CONFIG_LASAT is not set | ||
17 | # CONFIG_LEMOTE_FULONG is not set | 18 | # CONFIG_LEMOTE_FULONG is not set |
18 | # CONFIG_MIPS_MALTA is not set | 19 | # CONFIG_MIPS_MALTA is not set |
19 | # CONFIG_MIPS_SIM is not set | 20 | # CONFIG_MIPS_SIM is not set |
20 | # CONFIG_MARKEINS is not set | 21 | # CONFIG_MACH_EMMA is not set |
21 | # CONFIG_MACH_VR41XX is not set | 22 | # CONFIG_MACH_VR41XX is not set |
23 | # CONFIG_NXP_STB220 is not set | ||
24 | # CONFIG_NXP_STB225 is not set | ||
22 | # CONFIG_PNX8550_JBS is not set | 25 | # CONFIG_PNX8550_JBS is not set |
23 | # CONFIG_PNX8550_STB810 is not set | 26 | # CONFIG_PNX8550_STB810 is not set |
24 | # CONFIG_PMC_MSP is not set | 27 | # CONFIG_PMC_MSP is not set |
25 | # CONFIG_PMC_YOSEMITE is not set | 28 | # CONFIG_PMC_YOSEMITE is not set |
26 | CONFIG_SGI_IP22=y | 29 | CONFIG_SGI_IP22=y |
27 | # CONFIG_SGI_IP27 is not set | 30 | # CONFIG_SGI_IP27 is not set |
31 | # CONFIG_SGI_IP28 is not set | ||
28 | # CONFIG_SGI_IP32 is not set | 32 | # CONFIG_SGI_IP32 is not set |
29 | # CONFIG_SIBYTE_CRHINE is not set | 33 | # CONFIG_SIBYTE_CRHINE is not set |
30 | # CONFIG_SIBYTE_CARMEL is not set | 34 | # CONFIG_SIBYTE_CARMEL is not set |
@@ -35,34 +39,49 @@ CONFIG_SGI_IP22=y | |||
35 | # CONFIG_SIBYTE_SENTOSA is not set | 39 | # CONFIG_SIBYTE_SENTOSA is not set |
36 | # CONFIG_SIBYTE_BIGSUR is not set | 40 | # CONFIG_SIBYTE_BIGSUR is not set |
37 | # CONFIG_SNI_RM is not set | 41 | # CONFIG_SNI_RM is not set |
38 | # CONFIG_TOSHIBA_JMR3927 is not set | 42 | # CONFIG_MACH_TX39XX is not set |
39 | # CONFIG_TOSHIBA_RBTX4927 is not set | 43 | # CONFIG_MACH_TX49XX is not set |
40 | # CONFIG_TOSHIBA_RBTX4938 is not set | 44 | # CONFIG_MIKROTIK_RB532 is not set |
41 | # CONFIG_WR_PPMC is not set | 45 | # CONFIG_WR_PPMC is not set |
42 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 46 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
43 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | 47 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set |
44 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | 48 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set |
49 | CONFIG_ARCH_SUPPORTS_OPROFILE=y | ||
45 | CONFIG_GENERIC_FIND_NEXT_BIT=y | 50 | CONFIG_GENERIC_FIND_NEXT_BIT=y |
46 | CONFIG_GENERIC_HWEIGHT=y | 51 | CONFIG_GENERIC_HWEIGHT=y |
47 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 52 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
53 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
48 | CONFIG_GENERIC_TIME=y | 54 | CONFIG_GENERIC_TIME=y |
55 | CONFIG_GENERIC_CMOS_UPDATE=y | ||
49 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 56 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y |
50 | # CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set | 57 | # CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set |
51 | CONFIG_ARC=y | 58 | CONFIG_ARC=y |
59 | CONFIG_CEVT_R4K=y | ||
60 | CONFIG_CSRC_R4K=y | ||
52 | CONFIG_DMA_NONCOHERENT=y | 61 | CONFIG_DMA_NONCOHERENT=y |
53 | CONFIG_DMA_NEED_PCI_MAP_STATE=y | 62 | CONFIG_DMA_NEED_PCI_MAP_STATE=y |
54 | CONFIG_EARLY_PRINTK=y | 63 | CONFIG_EARLY_PRINTK=y |
55 | CONFIG_SYS_HAS_EARLY_PRINTK=y | 64 | CONFIG_SYS_HAS_EARLY_PRINTK=y |
65 | # CONFIG_HOTPLUG_CPU is not set | ||
66 | CONFIG_I8259=y | ||
56 | # CONFIG_NO_IOPORT is not set | 67 | # CONFIG_NO_IOPORT is not set |
68 | CONFIG_GENERIC_ISA_DMA=y | ||
57 | CONFIG_GENERIC_ISA_DMA_SUPPORT_BROKEN=y | 69 | CONFIG_GENERIC_ISA_DMA_SUPPORT_BROKEN=y |
58 | CONFIG_CPU_BIG_ENDIAN=y | 70 | CONFIG_CPU_BIG_ENDIAN=y |
59 | # CONFIG_CPU_LITTLE_ENDIAN is not set | 71 | # CONFIG_CPU_LITTLE_ENDIAN is not set |
60 | CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y | 72 | CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y |
61 | CONFIG_IRQ_CPU=y | 73 | CONFIG_IRQ_CPU=y |
62 | CONFIG_SWAP_IO_SPACE=y | 74 | CONFIG_SWAP_IO_SPACE=y |
75 | CONFIG_SGI_HAS_INDYDOG=y | ||
76 | CONFIG_SGI_HAS_HAL2=y | ||
77 | CONFIG_SGI_HAS_SEEQ=y | ||
78 | CONFIG_SGI_HAS_WD93=y | ||
79 | CONFIG_SGI_HAS_ZILOG=y | ||
80 | CONFIG_SGI_HAS_I8042=y | ||
81 | CONFIG_DEFAULT_SGI_PARTITION=y | ||
63 | CONFIG_ARC32=y | 82 | CONFIG_ARC32=y |
64 | CONFIG_BOOT_ELF32=y | 83 | CONFIG_BOOT_ELF32=y |
65 | CONFIG_MIPS_L1_CACHE_SHIFT=5 | 84 | CONFIG_MIPS_L1_CACHE_SHIFT=7 |
66 | CONFIG_ARC_CONSOLE=y | 85 | CONFIG_ARC_CONSOLE=y |
67 | CONFIG_ARC_PROMLIB=y | 86 | CONFIG_ARC_PROMLIB=y |
68 | 87 | ||
@@ -82,6 +101,7 @@ CONFIG_ARC_PROMLIB=y | |||
82 | # CONFIG_CPU_TX49XX is not set | 101 | # CONFIG_CPU_TX49XX is not set |
83 | CONFIG_CPU_R5000=y | 102 | CONFIG_CPU_R5000=y |
84 | # CONFIG_CPU_R5432 is not set | 103 | # CONFIG_CPU_R5432 is not set |
104 | # CONFIG_CPU_R5500 is not set | ||
85 | # CONFIG_CPU_R6000 is not set | 105 | # CONFIG_CPU_R6000 is not set |
86 | # CONFIG_CPU_NEVADA is not set | 106 | # CONFIG_CPU_NEVADA is not set |
87 | # CONFIG_CPU_R8000 is not set | 107 | # CONFIG_CPU_R8000 is not set |
@@ -115,18 +135,24 @@ CONFIG_CPU_HAS_SYNC=y | |||
115 | CONFIG_GENERIC_HARDIRQS=y | 135 | CONFIG_GENERIC_HARDIRQS=y |
116 | CONFIG_GENERIC_IRQ_PROBE=y | 136 | CONFIG_GENERIC_IRQ_PROBE=y |
117 | CONFIG_ARCH_FLATMEM_ENABLE=y | 137 | CONFIG_ARCH_FLATMEM_ENABLE=y |
138 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
118 | CONFIG_SELECT_MEMORY_MODEL=y | 139 | CONFIG_SELECT_MEMORY_MODEL=y |
119 | CONFIG_FLATMEM_MANUAL=y | 140 | CONFIG_FLATMEM_MANUAL=y |
120 | # CONFIG_DISCONTIGMEM_MANUAL is not set | 141 | # CONFIG_DISCONTIGMEM_MANUAL is not set |
121 | # CONFIG_SPARSEMEM_MANUAL is not set | 142 | # CONFIG_SPARSEMEM_MANUAL is not set |
122 | CONFIG_FLATMEM=y | 143 | CONFIG_FLATMEM=y |
123 | CONFIG_FLAT_NODE_MEM_MAP=y | 144 | CONFIG_FLAT_NODE_MEM_MAP=y |
124 | # CONFIG_SPARSEMEM_STATIC is not set | 145 | CONFIG_PAGEFLAGS_EXTENDED=y |
125 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 146 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
126 | # CONFIG_RESOURCES_64BIT is not set | 147 | # CONFIG_RESOURCES_64BIT is not set |
127 | CONFIG_ZONE_DMA_FLAG=1 | 148 | # CONFIG_PHYS_ADDR_T_64BIT is not set |
128 | CONFIG_BOUNCE=y | 149 | CONFIG_ZONE_DMA_FLAG=0 |
129 | CONFIG_VIRT_TO_BUS=y | 150 | CONFIG_VIRT_TO_BUS=y |
151 | CONFIG_UNEVICTABLE_LRU=y | ||
152 | CONFIG_TICK_ONESHOT=y | ||
153 | CONFIG_NO_HZ=y | ||
154 | CONFIG_HIGH_RES_TIMERS=y | ||
155 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | ||
130 | # CONFIG_HZ_48 is not set | 156 | # CONFIG_HZ_48 is not set |
131 | # CONFIG_HZ_100 is not set | 157 | # CONFIG_HZ_100 is not set |
132 | # CONFIG_HZ_128 is not set | 158 | # CONFIG_HZ_128 is not set |
@@ -159,13 +185,20 @@ CONFIG_SYSVIPC_SYSCTL=y | |||
159 | # CONFIG_POSIX_MQUEUE is not set | 185 | # CONFIG_POSIX_MQUEUE is not set |
160 | # CONFIG_BSD_PROCESS_ACCT is not set | 186 | # CONFIG_BSD_PROCESS_ACCT is not set |
161 | # CONFIG_TASKSTATS is not set | 187 | # CONFIG_TASKSTATS is not set |
162 | # CONFIG_USER_NS is not set | ||
163 | # CONFIG_AUDIT is not set | 188 | # CONFIG_AUDIT is not set |
164 | CONFIG_IKCONFIG=y | 189 | CONFIG_IKCONFIG=y |
165 | CONFIG_IKCONFIG_PROC=y | 190 | CONFIG_IKCONFIG_PROC=y |
166 | CONFIG_LOG_BUF_SHIFT=14 | 191 | CONFIG_LOG_BUF_SHIFT=14 |
192 | # CONFIG_CGROUPS is not set | ||
193 | # CONFIG_GROUP_SCHED is not set | ||
167 | CONFIG_SYSFS_DEPRECATED=y | 194 | CONFIG_SYSFS_DEPRECATED=y |
195 | CONFIG_SYSFS_DEPRECATED_V2=y | ||
168 | CONFIG_RELAY=y | 196 | CONFIG_RELAY=y |
197 | CONFIG_NAMESPACES=y | ||
198 | CONFIG_UTS_NS=y | ||
199 | CONFIG_IPC_NS=y | ||
200 | CONFIG_USER_NS=y | ||
201 | CONFIG_PID_NS=y | ||
169 | # CONFIG_BLK_DEV_INITRD is not set | 202 | # CONFIG_BLK_DEV_INITRD is not set |
170 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | 203 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set |
171 | CONFIG_SYSCTL=y | 204 | CONFIG_SYSCTL=y |
@@ -177,6 +210,8 @@ CONFIG_KALLSYMS=y | |||
177 | CONFIG_PRINTK=y | 210 | CONFIG_PRINTK=y |
178 | CONFIG_BUG=y | 211 | CONFIG_BUG=y |
179 | CONFIG_ELF_CORE=y | 212 | CONFIG_ELF_CORE=y |
213 | # CONFIG_PCSPKR_PLATFORM is not set | ||
214 | # CONFIG_COMPAT_BRK is not set | ||
180 | CONFIG_BASE_FULL=y | 215 | CONFIG_BASE_FULL=y |
181 | CONFIG_FUTEX=y | 216 | CONFIG_FUTEX=y |
182 | CONFIG_ANON_INODES=y | 217 | CONFIG_ANON_INODES=y |
@@ -185,14 +220,21 @@ CONFIG_SIGNALFD=y | |||
185 | CONFIG_TIMERFD=y | 220 | CONFIG_TIMERFD=y |
186 | CONFIG_EVENTFD=y | 221 | CONFIG_EVENTFD=y |
187 | CONFIG_SHMEM=y | 222 | CONFIG_SHMEM=y |
223 | CONFIG_AIO=y | ||
188 | CONFIG_VM_EVENT_COUNTERS=y | 224 | CONFIG_VM_EVENT_COUNTERS=y |
189 | CONFIG_SLAB=y | 225 | CONFIG_SLAB=y |
190 | # CONFIG_SLUB is not set | 226 | # CONFIG_SLUB is not set |
191 | # CONFIG_SLOB is not set | 227 | # CONFIG_SLOB is not set |
228 | # CONFIG_PROFILING is not set | ||
229 | # CONFIG_MARKERS is not set | ||
230 | CONFIG_HAVE_OPROFILE=y | ||
231 | # CONFIG_HAVE_GENERIC_DMA_COHERENT is not set | ||
232 | CONFIG_SLABINFO=y | ||
192 | CONFIG_RT_MUTEXES=y | 233 | CONFIG_RT_MUTEXES=y |
193 | # CONFIG_TINY_SHMEM is not set | 234 | # CONFIG_TINY_SHMEM is not set |
194 | CONFIG_BASE_SMALL=0 | 235 | CONFIG_BASE_SMALL=0 |
195 | CONFIG_MODULES=y | 236 | CONFIG_MODULES=y |
237 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
196 | CONFIG_MODULE_UNLOAD=y | 238 | CONFIG_MODULE_UNLOAD=y |
197 | # CONFIG_MODULE_FORCE_UNLOAD is not set | 239 | # CONFIG_MODULE_FORCE_UNLOAD is not set |
198 | CONFIG_MODVERSIONS=y | 240 | CONFIG_MODVERSIONS=y |
@@ -203,6 +245,7 @@ CONFIG_BLOCK=y | |||
203 | # CONFIG_BLK_DEV_IO_TRACE is not set | 245 | # CONFIG_BLK_DEV_IO_TRACE is not set |
204 | # CONFIG_LSF is not set | 246 | # CONFIG_LSF is not set |
205 | # CONFIG_BLK_DEV_BSG is not set | 247 | # CONFIG_BLK_DEV_BSG is not set |
248 | # CONFIG_BLK_DEV_INTEGRITY is not set | ||
206 | 249 | ||
207 | # | 250 | # |
208 | # IO Schedulers | 251 | # IO Schedulers |
@@ -216,6 +259,8 @@ CONFIG_DEFAULT_AS=y | |||
216 | # CONFIG_DEFAULT_CFQ is not set | 259 | # CONFIG_DEFAULT_CFQ is not set |
217 | # CONFIG_DEFAULT_NOOP is not set | 260 | # CONFIG_DEFAULT_NOOP is not set |
218 | CONFIG_DEFAULT_IOSCHED="anticipatory" | 261 | CONFIG_DEFAULT_IOSCHED="anticipatory" |
262 | CONFIG_CLASSIC_RCU=y | ||
263 | # CONFIG_FREEZER is not set | ||
219 | 264 | ||
220 | # | 265 | # |
221 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) | 266 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) |
@@ -224,29 +269,24 @@ CONFIG_HW_HAS_EISA=y | |||
224 | # CONFIG_ARCH_SUPPORTS_MSI is not set | 269 | # CONFIG_ARCH_SUPPORTS_MSI is not set |
225 | # CONFIG_EISA is not set | 270 | # CONFIG_EISA is not set |
226 | CONFIG_MMU=y | 271 | CONFIG_MMU=y |
227 | 272 | CONFIG_I8253=y | |
228 | # | ||
229 | # PCCARD (PCMCIA/CardBus) support | ||
230 | # | ||
231 | 273 | ||
232 | # | 274 | # |
233 | # Executable file formats | 275 | # Executable file formats |
234 | # | 276 | # |
235 | CONFIG_BINFMT_ELF=y | 277 | CONFIG_BINFMT_ELF=y |
278 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
279 | # CONFIG_HAVE_AOUT is not set | ||
236 | CONFIG_BINFMT_MISC=m | 280 | CONFIG_BINFMT_MISC=m |
237 | CONFIG_TRAD_SIGNALS=y | 281 | CONFIG_TRAD_SIGNALS=y |
238 | 282 | ||
239 | # | 283 | # |
240 | # Power management options | 284 | # Power management options |
241 | # | 285 | # |
286 | CONFIG_ARCH_SUSPEND_POSSIBLE=y | ||
242 | CONFIG_PM=y | 287 | CONFIG_PM=y |
243 | # CONFIG_PM_LEGACY is not set | ||
244 | # CONFIG_PM_DEBUG is not set | 288 | # CONFIG_PM_DEBUG is not set |
245 | # CONFIG_SUSPEND is not set | 289 | # CONFIG_SUSPEND is not set |
246 | |||
247 | # | ||
248 | # Networking | ||
249 | # | ||
250 | CONFIG_NET=y | 290 | CONFIG_NET=y |
251 | 291 | ||
252 | # | 292 | # |
@@ -259,6 +299,8 @@ CONFIG_XFRM=y | |||
259 | CONFIG_XFRM_USER=m | 299 | CONFIG_XFRM_USER=m |
260 | # CONFIG_XFRM_SUB_POLICY is not set | 300 | # CONFIG_XFRM_SUB_POLICY is not set |
261 | CONFIG_XFRM_MIGRATE=y | 301 | CONFIG_XFRM_MIGRATE=y |
302 | # CONFIG_XFRM_STATISTICS is not set | ||
303 | CONFIG_XFRM_IPCOMP=m | ||
262 | CONFIG_NET_KEY=y | 304 | CONFIG_NET_KEY=y |
263 | CONFIG_NET_KEY_MIGRATE=y | 305 | CONFIG_NET_KEY_MIGRATE=y |
264 | CONFIG_INET=y | 306 | CONFIG_INET=y |
@@ -282,42 +324,13 @@ CONFIG_INET_TUNNEL=m | |||
282 | CONFIG_INET_XFRM_MODE_TRANSPORT=m | 324 | CONFIG_INET_XFRM_MODE_TRANSPORT=m |
283 | CONFIG_INET_XFRM_MODE_TUNNEL=m | 325 | CONFIG_INET_XFRM_MODE_TUNNEL=m |
284 | CONFIG_INET_XFRM_MODE_BEET=m | 326 | CONFIG_INET_XFRM_MODE_BEET=m |
327 | # CONFIG_INET_LRO is not set | ||
285 | CONFIG_INET_DIAG=y | 328 | CONFIG_INET_DIAG=y |
286 | CONFIG_INET_TCP_DIAG=y | 329 | CONFIG_INET_TCP_DIAG=y |
287 | # CONFIG_TCP_CONG_ADVANCED is not set | 330 | # CONFIG_TCP_CONG_ADVANCED is not set |
288 | CONFIG_TCP_CONG_CUBIC=y | 331 | CONFIG_TCP_CONG_CUBIC=y |
289 | CONFIG_DEFAULT_TCP_CONG="cubic" | 332 | CONFIG_DEFAULT_TCP_CONG="cubic" |
290 | CONFIG_TCP_MD5SIG=y | 333 | CONFIG_TCP_MD5SIG=y |
291 | CONFIG_IP_VS=m | ||
292 | # CONFIG_IP_VS_DEBUG is not set | ||
293 | CONFIG_IP_VS_TAB_BITS=12 | ||
294 | |||
295 | # | ||
296 | # IPVS transport protocol load balancing support | ||
297 | # | ||
298 | CONFIG_IP_VS_PROTO_TCP=y | ||
299 | CONFIG_IP_VS_PROTO_UDP=y | ||
300 | CONFIG_IP_VS_PROTO_ESP=y | ||
301 | CONFIG_IP_VS_PROTO_AH=y | ||
302 | |||
303 | # | ||
304 | # IPVS scheduler | ||
305 | # | ||
306 | CONFIG_IP_VS_RR=m | ||
307 | CONFIG_IP_VS_WRR=m | ||
308 | CONFIG_IP_VS_LC=m | ||
309 | CONFIG_IP_VS_WLC=m | ||
310 | CONFIG_IP_VS_LBLC=m | ||
311 | CONFIG_IP_VS_LBLCR=m | ||
312 | CONFIG_IP_VS_DH=m | ||
313 | CONFIG_IP_VS_SH=m | ||
314 | CONFIG_IP_VS_SED=m | ||
315 | CONFIG_IP_VS_NQ=m | ||
316 | |||
317 | # | ||
318 | # IPVS application helper | ||
319 | # | ||
320 | CONFIG_IP_VS_FTP=m | ||
321 | CONFIG_IPV6=m | 334 | CONFIG_IPV6=m |
322 | CONFIG_IPV6_PRIVACY=y | 335 | CONFIG_IPV6_PRIVACY=y |
323 | CONFIG_IPV6_ROUTER_PREF=y | 336 | CONFIG_IPV6_ROUTER_PREF=y |
@@ -334,12 +347,16 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m | |||
334 | CONFIG_INET6_XFRM_MODE_BEET=m | 347 | CONFIG_INET6_XFRM_MODE_BEET=m |
335 | CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m | 348 | CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m |
336 | CONFIG_IPV6_SIT=m | 349 | CONFIG_IPV6_SIT=m |
350 | CONFIG_IPV6_NDISC_NODETYPE=y | ||
337 | CONFIG_IPV6_TUNNEL=m | 351 | CONFIG_IPV6_TUNNEL=m |
338 | CONFIG_IPV6_MULTIPLE_TABLES=y | 352 | CONFIG_IPV6_MULTIPLE_TABLES=y |
339 | CONFIG_IPV6_SUBTREES=y | 353 | CONFIG_IPV6_SUBTREES=y |
354 | CONFIG_IPV6_MROUTE=y | ||
355 | CONFIG_IPV6_PIMSM_V2=y | ||
340 | CONFIG_NETWORK_SECMARK=y | 356 | CONFIG_NETWORK_SECMARK=y |
341 | CONFIG_NETFILTER=y | 357 | CONFIG_NETFILTER=y |
342 | # CONFIG_NETFILTER_DEBUG is not set | 358 | # CONFIG_NETFILTER_DEBUG is not set |
359 | CONFIG_NETFILTER_ADVANCED=y | ||
343 | 360 | ||
344 | # | 361 | # |
345 | # Core Netfilter Configuration | 362 | # Core Netfilter Configuration |
@@ -347,12 +364,12 @@ CONFIG_NETFILTER=y | |||
347 | CONFIG_NETFILTER_NETLINK=m | 364 | CONFIG_NETFILTER_NETLINK=m |
348 | CONFIG_NETFILTER_NETLINK_QUEUE=m | 365 | CONFIG_NETFILTER_NETLINK_QUEUE=m |
349 | CONFIG_NETFILTER_NETLINK_LOG=m | 366 | CONFIG_NETFILTER_NETLINK_LOG=m |
350 | CONFIG_NF_CONNTRACK_ENABLED=m | ||
351 | CONFIG_NF_CONNTRACK=m | 367 | CONFIG_NF_CONNTRACK=m |
352 | CONFIG_NF_CT_ACCT=y | 368 | CONFIG_NF_CT_ACCT=y |
353 | CONFIG_NF_CONNTRACK_MARK=y | 369 | CONFIG_NF_CONNTRACK_MARK=y |
354 | CONFIG_NF_CONNTRACK_SECMARK=y | 370 | CONFIG_NF_CONNTRACK_SECMARK=y |
355 | CONFIG_NF_CONNTRACK_EVENTS=y | 371 | CONFIG_NF_CONNTRACK_EVENTS=y |
372 | CONFIG_NF_CT_PROTO_DCCP=m | ||
356 | CONFIG_NF_CT_PROTO_GRE=m | 373 | CONFIG_NF_CT_PROTO_GRE=m |
357 | CONFIG_NF_CT_PROTO_SCTP=m | 374 | CONFIG_NF_CT_PROTO_SCTP=m |
358 | CONFIG_NF_CT_PROTO_UDPLITE=m | 375 | CONFIG_NF_CT_PROTO_UDPLITE=m |
@@ -366,18 +383,22 @@ CONFIG_NF_CONNTRACK_SANE=m | |||
366 | CONFIG_NF_CONNTRACK_SIP=m | 383 | CONFIG_NF_CONNTRACK_SIP=m |
367 | CONFIG_NF_CONNTRACK_TFTP=m | 384 | CONFIG_NF_CONNTRACK_TFTP=m |
368 | CONFIG_NF_CT_NETLINK=m | 385 | CONFIG_NF_CT_NETLINK=m |
386 | CONFIG_NETFILTER_TPROXY=m | ||
369 | CONFIG_NETFILTER_XTABLES=m | 387 | CONFIG_NETFILTER_XTABLES=m |
370 | CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m | 388 | CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m |
371 | CONFIG_NETFILTER_XT_TARGET_CONNMARK=m | 389 | CONFIG_NETFILTER_XT_TARGET_CONNMARK=m |
390 | CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m | ||
372 | CONFIG_NETFILTER_XT_TARGET_DSCP=m | 391 | CONFIG_NETFILTER_XT_TARGET_DSCP=m |
373 | CONFIG_NETFILTER_XT_TARGET_MARK=m | 392 | CONFIG_NETFILTER_XT_TARGET_MARK=m |
374 | CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m | ||
375 | CONFIG_NETFILTER_XT_TARGET_NFLOG=m | 393 | CONFIG_NETFILTER_XT_TARGET_NFLOG=m |
394 | CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m | ||
376 | CONFIG_NETFILTER_XT_TARGET_NOTRACK=m | 395 | CONFIG_NETFILTER_XT_TARGET_NOTRACK=m |
396 | CONFIG_NETFILTER_XT_TARGET_RATEEST=m | ||
397 | CONFIG_NETFILTER_XT_TARGET_TPROXY=m | ||
377 | CONFIG_NETFILTER_XT_TARGET_TRACE=m | 398 | CONFIG_NETFILTER_XT_TARGET_TRACE=m |
378 | CONFIG_NETFILTER_XT_TARGET_SECMARK=m | 399 | CONFIG_NETFILTER_XT_TARGET_SECMARK=m |
379 | CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m | ||
380 | CONFIG_NETFILTER_XT_TARGET_TCPMSS=m | 400 | CONFIG_NETFILTER_XT_TARGET_TCPMSS=m |
401 | CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m | ||
381 | CONFIG_NETFILTER_XT_MATCH_COMMENT=m | 402 | CONFIG_NETFILTER_XT_MATCH_COMMENT=m |
382 | CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m | 403 | CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m |
383 | CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m | 404 | CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m |
@@ -386,39 +407,75 @@ CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m | |||
386 | CONFIG_NETFILTER_XT_MATCH_DCCP=m | 407 | CONFIG_NETFILTER_XT_MATCH_DCCP=m |
387 | CONFIG_NETFILTER_XT_MATCH_DSCP=m | 408 | CONFIG_NETFILTER_XT_MATCH_DSCP=m |
388 | CONFIG_NETFILTER_XT_MATCH_ESP=m | 409 | CONFIG_NETFILTER_XT_MATCH_ESP=m |
410 | CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m | ||
389 | CONFIG_NETFILTER_XT_MATCH_HELPER=m | 411 | CONFIG_NETFILTER_XT_MATCH_HELPER=m |
412 | CONFIG_NETFILTER_XT_MATCH_IPRANGE=m | ||
390 | CONFIG_NETFILTER_XT_MATCH_LENGTH=m | 413 | CONFIG_NETFILTER_XT_MATCH_LENGTH=m |
391 | CONFIG_NETFILTER_XT_MATCH_LIMIT=m | 414 | CONFIG_NETFILTER_XT_MATCH_LIMIT=m |
392 | CONFIG_NETFILTER_XT_MATCH_MAC=m | 415 | CONFIG_NETFILTER_XT_MATCH_MAC=m |
393 | CONFIG_NETFILTER_XT_MATCH_MARK=m | 416 | CONFIG_NETFILTER_XT_MATCH_MARK=m |
394 | CONFIG_NETFILTER_XT_MATCH_POLICY=m | ||
395 | CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m | 417 | CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m |
418 | CONFIG_NETFILTER_XT_MATCH_OWNER=m | ||
419 | CONFIG_NETFILTER_XT_MATCH_POLICY=m | ||
396 | CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m | 420 | CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m |
397 | CONFIG_NETFILTER_XT_MATCH_QUOTA=m | 421 | CONFIG_NETFILTER_XT_MATCH_QUOTA=m |
422 | CONFIG_NETFILTER_XT_MATCH_RATEEST=m | ||
398 | CONFIG_NETFILTER_XT_MATCH_REALM=m | 423 | CONFIG_NETFILTER_XT_MATCH_REALM=m |
424 | CONFIG_NETFILTER_XT_MATCH_RECENT=m | ||
425 | CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT=y | ||
399 | CONFIG_NETFILTER_XT_MATCH_SCTP=m | 426 | CONFIG_NETFILTER_XT_MATCH_SCTP=m |
427 | CONFIG_NETFILTER_XT_MATCH_SOCKET=m | ||
400 | CONFIG_NETFILTER_XT_MATCH_STATE=m | 428 | CONFIG_NETFILTER_XT_MATCH_STATE=m |
401 | CONFIG_NETFILTER_XT_MATCH_STATISTIC=m | 429 | CONFIG_NETFILTER_XT_MATCH_STATISTIC=m |
402 | CONFIG_NETFILTER_XT_MATCH_STRING=m | 430 | CONFIG_NETFILTER_XT_MATCH_STRING=m |
403 | CONFIG_NETFILTER_XT_MATCH_TCPMSS=m | 431 | CONFIG_NETFILTER_XT_MATCH_TCPMSS=m |
432 | CONFIG_NETFILTER_XT_MATCH_TIME=m | ||
404 | CONFIG_NETFILTER_XT_MATCH_U32=m | 433 | CONFIG_NETFILTER_XT_MATCH_U32=m |
405 | CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m | 434 | CONFIG_IP_VS=m |
435 | CONFIG_IP_VS_IPV6=y | ||
436 | # CONFIG_IP_VS_DEBUG is not set | ||
437 | CONFIG_IP_VS_TAB_BITS=12 | ||
438 | |||
439 | # | ||
440 | # IPVS transport protocol load balancing support | ||
441 | # | ||
442 | CONFIG_IP_VS_PROTO_TCP=y | ||
443 | CONFIG_IP_VS_PROTO_UDP=y | ||
444 | CONFIG_IP_VS_PROTO_AH_ESP=y | ||
445 | CONFIG_IP_VS_PROTO_ESP=y | ||
446 | CONFIG_IP_VS_PROTO_AH=y | ||
447 | |||
448 | # | ||
449 | # IPVS scheduler | ||
450 | # | ||
451 | CONFIG_IP_VS_RR=m | ||
452 | CONFIG_IP_VS_WRR=m | ||
453 | CONFIG_IP_VS_LC=m | ||
454 | CONFIG_IP_VS_WLC=m | ||
455 | CONFIG_IP_VS_LBLC=m | ||
456 | CONFIG_IP_VS_LBLCR=m | ||
457 | CONFIG_IP_VS_DH=m | ||
458 | CONFIG_IP_VS_SH=m | ||
459 | CONFIG_IP_VS_SED=m | ||
460 | CONFIG_IP_VS_NQ=m | ||
461 | |||
462 | # | ||
463 | # IPVS application helper | ||
464 | # | ||
465 | CONFIG_IP_VS_FTP=m | ||
406 | 466 | ||
407 | # | 467 | # |
408 | # IP: Netfilter Configuration | 468 | # IP: Netfilter Configuration |
409 | # | 469 | # |
470 | CONFIG_NF_DEFRAG_IPV4=m | ||
410 | CONFIG_NF_CONNTRACK_IPV4=m | 471 | CONFIG_NF_CONNTRACK_IPV4=m |
411 | CONFIG_NF_CONNTRACK_PROC_COMPAT=y | 472 | CONFIG_NF_CONNTRACK_PROC_COMPAT=y |
412 | CONFIG_IP_NF_QUEUE=m | 473 | CONFIG_IP_NF_QUEUE=m |
413 | CONFIG_IP_NF_IPTABLES=m | 474 | CONFIG_IP_NF_IPTABLES=m |
414 | CONFIG_IP_NF_MATCH_IPRANGE=m | 475 | CONFIG_IP_NF_MATCH_ADDRTYPE=m |
415 | CONFIG_IP_NF_MATCH_TOS=m | ||
416 | CONFIG_IP_NF_MATCH_RECENT=m | ||
417 | CONFIG_IP_NF_MATCH_ECN=m | ||
418 | CONFIG_IP_NF_MATCH_AH=m | 476 | CONFIG_IP_NF_MATCH_AH=m |
477 | CONFIG_IP_NF_MATCH_ECN=m | ||
419 | CONFIG_IP_NF_MATCH_TTL=m | 478 | CONFIG_IP_NF_MATCH_TTL=m |
420 | CONFIG_IP_NF_MATCH_OWNER=m | ||
421 | CONFIG_IP_NF_MATCH_ADDRTYPE=m | ||
422 | CONFIG_IP_NF_FILTER=m | 479 | CONFIG_IP_NF_FILTER=m |
423 | CONFIG_IP_NF_TARGET_REJECT=m | 480 | CONFIG_IP_NF_TARGET_REJECT=m |
424 | CONFIG_IP_NF_TARGET_LOG=m | 481 | CONFIG_IP_NF_TARGET_LOG=m |
@@ -426,11 +483,13 @@ CONFIG_IP_NF_TARGET_ULOG=m | |||
426 | CONFIG_NF_NAT=m | 483 | CONFIG_NF_NAT=m |
427 | CONFIG_NF_NAT_NEEDED=y | 484 | CONFIG_NF_NAT_NEEDED=y |
428 | CONFIG_IP_NF_TARGET_MASQUERADE=m | 485 | CONFIG_IP_NF_TARGET_MASQUERADE=m |
429 | CONFIG_IP_NF_TARGET_REDIRECT=m | ||
430 | CONFIG_IP_NF_TARGET_NETMAP=m | 486 | CONFIG_IP_NF_TARGET_NETMAP=m |
431 | CONFIG_IP_NF_TARGET_SAME=m | 487 | CONFIG_IP_NF_TARGET_REDIRECT=m |
432 | CONFIG_NF_NAT_SNMP_BASIC=m | 488 | CONFIG_NF_NAT_SNMP_BASIC=m |
489 | CONFIG_NF_NAT_PROTO_DCCP=m | ||
433 | CONFIG_NF_NAT_PROTO_GRE=m | 490 | CONFIG_NF_NAT_PROTO_GRE=m |
491 | CONFIG_NF_NAT_PROTO_UDPLITE=m | ||
492 | CONFIG_NF_NAT_PROTO_SCTP=m | ||
434 | CONFIG_NF_NAT_FTP=m | 493 | CONFIG_NF_NAT_FTP=m |
435 | CONFIG_NF_NAT_IRC=m | 494 | CONFIG_NF_NAT_IRC=m |
436 | CONFIG_NF_NAT_TFTP=m | 495 | CONFIG_NF_NAT_TFTP=m |
@@ -439,32 +498,30 @@ CONFIG_NF_NAT_PPTP=m | |||
439 | CONFIG_NF_NAT_H323=m | 498 | CONFIG_NF_NAT_H323=m |
440 | CONFIG_NF_NAT_SIP=m | 499 | CONFIG_NF_NAT_SIP=m |
441 | CONFIG_IP_NF_MANGLE=m | 500 | CONFIG_IP_NF_MANGLE=m |
442 | CONFIG_IP_NF_TARGET_TOS=m | 501 | CONFIG_IP_NF_TARGET_CLUSTERIP=m |
443 | CONFIG_IP_NF_TARGET_ECN=m | 502 | CONFIG_IP_NF_TARGET_ECN=m |
444 | CONFIG_IP_NF_TARGET_TTL=m | 503 | CONFIG_IP_NF_TARGET_TTL=m |
445 | CONFIG_IP_NF_TARGET_CLUSTERIP=m | ||
446 | CONFIG_IP_NF_RAW=m | 504 | CONFIG_IP_NF_RAW=m |
447 | CONFIG_IP_NF_ARPTABLES=m | 505 | CONFIG_IP_NF_ARPTABLES=m |
448 | CONFIG_IP_NF_ARPFILTER=m | 506 | CONFIG_IP_NF_ARPFILTER=m |
449 | CONFIG_IP_NF_ARP_MANGLE=m | 507 | CONFIG_IP_NF_ARP_MANGLE=m |
450 | 508 | ||
451 | # | 509 | # |
452 | # IPv6: Netfilter Configuration (EXPERIMENTAL) | 510 | # IPv6: Netfilter Configuration |
453 | # | 511 | # |
454 | CONFIG_NF_CONNTRACK_IPV6=m | 512 | CONFIG_NF_CONNTRACK_IPV6=m |
455 | CONFIG_IP6_NF_QUEUE=m | 513 | CONFIG_IP6_NF_QUEUE=m |
456 | CONFIG_IP6_NF_IPTABLES=m | 514 | CONFIG_IP6_NF_IPTABLES=m |
457 | CONFIG_IP6_NF_MATCH_RT=m | 515 | CONFIG_IP6_NF_MATCH_AH=m |
458 | CONFIG_IP6_NF_MATCH_OPTS=m | 516 | CONFIG_IP6_NF_MATCH_EUI64=m |
459 | CONFIG_IP6_NF_MATCH_FRAG=m | 517 | CONFIG_IP6_NF_MATCH_FRAG=m |
518 | CONFIG_IP6_NF_MATCH_OPTS=m | ||
460 | CONFIG_IP6_NF_MATCH_HL=m | 519 | CONFIG_IP6_NF_MATCH_HL=m |
461 | CONFIG_IP6_NF_MATCH_OWNER=m | ||
462 | CONFIG_IP6_NF_MATCH_IPV6HEADER=m | 520 | CONFIG_IP6_NF_MATCH_IPV6HEADER=m |
463 | CONFIG_IP6_NF_MATCH_AH=m | ||
464 | CONFIG_IP6_NF_MATCH_MH=m | 521 | CONFIG_IP6_NF_MATCH_MH=m |
465 | CONFIG_IP6_NF_MATCH_EUI64=m | 522 | CONFIG_IP6_NF_MATCH_RT=m |
466 | CONFIG_IP6_NF_FILTER=m | ||
467 | CONFIG_IP6_NF_TARGET_LOG=m | 523 | CONFIG_IP6_NF_TARGET_LOG=m |
524 | CONFIG_IP6_NF_FILTER=m | ||
468 | CONFIG_IP6_NF_TARGET_REJECT=m | 525 | CONFIG_IP6_NF_TARGET_REJECT=m |
469 | CONFIG_IP6_NF_MANGLE=m | 526 | CONFIG_IP6_NF_MANGLE=m |
470 | CONFIG_IP6_NF_TARGET_HL=m | 527 | CONFIG_IP6_NF_TARGET_HL=m |
@@ -479,6 +536,7 @@ CONFIG_SCTP_HMAC_MD5=y | |||
479 | # CONFIG_TIPC is not set | 536 | # CONFIG_TIPC is not set |
480 | # CONFIG_ATM is not set | 537 | # CONFIG_ATM is not set |
481 | # CONFIG_BRIDGE is not set | 538 | # CONFIG_BRIDGE is not set |
539 | # CONFIG_NET_DSA is not set | ||
482 | # CONFIG_VLAN_8021Q is not set | 540 | # CONFIG_VLAN_8021Q is not set |
483 | # CONFIG_DECNET is not set | 541 | # CONFIG_DECNET is not set |
484 | # CONFIG_LLC2 is not set | 542 | # CONFIG_LLC2 is not set |
@@ -488,12 +546,7 @@ CONFIG_SCTP_HMAC_MD5=y | |||
488 | # CONFIG_LAPB is not set | 546 | # CONFIG_LAPB is not set |
489 | # CONFIG_ECONET is not set | 547 | # CONFIG_ECONET is not set |
490 | # CONFIG_WAN_ROUTER is not set | 548 | # CONFIG_WAN_ROUTER is not set |
491 | |||
492 | # | ||
493 | # QoS and/or fair queueing | ||
494 | # | ||
495 | CONFIG_NET_SCHED=y | 549 | CONFIG_NET_SCHED=y |
496 | CONFIG_NET_SCH_FIFO=y | ||
497 | 550 | ||
498 | # | 551 | # |
499 | # Queueing/Scheduling | 552 | # Queueing/Scheduling |
@@ -502,7 +555,7 @@ CONFIG_NET_SCH_CBQ=m | |||
502 | CONFIG_NET_SCH_HTB=m | 555 | CONFIG_NET_SCH_HTB=m |
503 | CONFIG_NET_SCH_HFSC=m | 556 | CONFIG_NET_SCH_HFSC=m |
504 | CONFIG_NET_SCH_PRIO=m | 557 | CONFIG_NET_SCH_PRIO=m |
505 | CONFIG_NET_SCH_RR=m | 558 | # CONFIG_NET_SCH_MULTIQ is not set |
506 | CONFIG_NET_SCH_RED=m | 559 | CONFIG_NET_SCH_RED=m |
507 | CONFIG_NET_SCH_SFQ=m | 560 | CONFIG_NET_SCH_SFQ=m |
508 | CONFIG_NET_SCH_TEQL=m | 561 | CONFIG_NET_SCH_TEQL=m |
@@ -526,6 +579,7 @@ CONFIG_NET_CLS_U32=m | |||
526 | # CONFIG_CLS_U32_MARK is not set | 579 | # CONFIG_CLS_U32_MARK is not set |
527 | CONFIG_NET_CLS_RSVP=m | 580 | CONFIG_NET_CLS_RSVP=m |
528 | CONFIG_NET_CLS_RSVP6=m | 581 | CONFIG_NET_CLS_RSVP6=m |
582 | CONFIG_NET_CLS_FLOW=m | ||
529 | # CONFIG_NET_EMATCH is not set | 583 | # CONFIG_NET_EMATCH is not set |
530 | CONFIG_NET_CLS_ACT=y | 584 | CONFIG_NET_CLS_ACT=y |
531 | CONFIG_NET_ACT_POLICE=y | 585 | CONFIG_NET_ACT_POLICE=y |
@@ -533,35 +587,28 @@ CONFIG_NET_ACT_GACT=m | |||
533 | CONFIG_GACT_PROB=y | 587 | CONFIG_GACT_PROB=y |
534 | CONFIG_NET_ACT_MIRRED=m | 588 | CONFIG_NET_ACT_MIRRED=m |
535 | CONFIG_NET_ACT_IPT=m | 589 | CONFIG_NET_ACT_IPT=m |
590 | CONFIG_NET_ACT_NAT=m | ||
536 | CONFIG_NET_ACT_PEDIT=m | 591 | CONFIG_NET_ACT_PEDIT=m |
537 | CONFIG_NET_ACT_SIMP=m | 592 | CONFIG_NET_ACT_SIMP=m |
538 | CONFIG_NET_CLS_POLICE=y | 593 | CONFIG_NET_ACT_SKBEDIT=m |
539 | # CONFIG_NET_CLS_IND is not set | 594 | # CONFIG_NET_CLS_IND is not set |
595 | CONFIG_NET_SCH_FIFO=y | ||
540 | 596 | ||
541 | # | 597 | # |
542 | # Network testing | 598 | # Network testing |
543 | # | 599 | # |
544 | # CONFIG_NET_PKTGEN is not set | 600 | # CONFIG_NET_PKTGEN is not set |
545 | # CONFIG_HAMRADIO is not set | 601 | # CONFIG_HAMRADIO is not set |
602 | # CONFIG_CAN is not set | ||
546 | # CONFIG_IRDA is not set | 603 | # CONFIG_IRDA is not set |
547 | # CONFIG_BT is not set | 604 | # CONFIG_BT is not set |
548 | # CONFIG_AF_RXRPC is not set | 605 | # CONFIG_AF_RXRPC is not set |
606 | CONFIG_PHONET=m | ||
549 | CONFIG_FIB_RULES=y | 607 | CONFIG_FIB_RULES=y |
550 | 608 | # CONFIG_WIRELESS is not set | |
551 | # | ||
552 | # Wireless | ||
553 | # | ||
554 | CONFIG_CFG80211=m | ||
555 | CONFIG_WIRELESS_EXT=y | 609 | CONFIG_WIRELESS_EXT=y |
556 | CONFIG_MAC80211=m | ||
557 | # CONFIG_MAC80211_DEBUG is not set | ||
558 | CONFIG_IEEE80211=m | 610 | CONFIG_IEEE80211=m |
559 | # CONFIG_IEEE80211_DEBUG is not set | ||
560 | CONFIG_IEEE80211_CRYPT_WEP=m | 611 | CONFIG_IEEE80211_CRYPT_WEP=m |
561 | CONFIG_IEEE80211_CRYPT_CCMP=m | ||
562 | CONFIG_IEEE80211_CRYPT_TKIP=m | ||
563 | CONFIG_IEEE80211_SOFTMAC=m | ||
564 | # CONFIG_IEEE80211_SOFTMAC_DEBUG is not set | ||
565 | CONFIG_RFKILL=m | 612 | CONFIG_RFKILL=m |
566 | CONFIG_RFKILL_INPUT=m | 613 | CONFIG_RFKILL_INPUT=m |
567 | # CONFIG_NET_9P is not set | 614 | # CONFIG_NET_9P is not set |
@@ -588,7 +635,9 @@ CONFIG_CDROM_PKTCDVD=m | |||
588 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 635 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
589 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 636 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
590 | CONFIG_ATA_OVER_ETH=m | 637 | CONFIG_ATA_OVER_ETH=m |
638 | # CONFIG_BLK_DEV_HD is not set | ||
591 | # CONFIG_MISC_DEVICES is not set | 639 | # CONFIG_MISC_DEVICES is not set |
640 | CONFIG_HAVE_IDE=y | ||
592 | # CONFIG_IDE is not set | 641 | # CONFIG_IDE is not set |
593 | 642 | ||
594 | # | 643 | # |
@@ -628,20 +677,22 @@ CONFIG_SCSI_SPI_ATTRS=m | |||
628 | # CONFIG_SCSI_FC_ATTRS is not set | 677 | # CONFIG_SCSI_FC_ATTRS is not set |
629 | CONFIG_SCSI_ISCSI_ATTRS=m | 678 | CONFIG_SCSI_ISCSI_ATTRS=m |
630 | # CONFIG_SCSI_SAS_LIBSAS is not set | 679 | # CONFIG_SCSI_SAS_LIBSAS is not set |
680 | # CONFIG_SCSI_SRP_ATTRS is not set | ||
631 | CONFIG_SCSI_LOWLEVEL=y | 681 | CONFIG_SCSI_LOWLEVEL=y |
632 | CONFIG_ISCSI_TCP=m | 682 | CONFIG_ISCSI_TCP=m |
633 | CONFIG_SGIWD93_SCSI=y | 683 | CONFIG_SGIWD93_SCSI=y |
634 | # CONFIG_SCSI_DEBUG is not set | 684 | # CONFIG_SCSI_DEBUG is not set |
685 | # CONFIG_SCSI_DH is not set | ||
635 | # CONFIG_ATA is not set | 686 | # CONFIG_ATA is not set |
636 | # CONFIG_MD is not set | 687 | # CONFIG_MD is not set |
637 | CONFIG_NETDEVICES=y | 688 | CONFIG_NETDEVICES=y |
638 | # CONFIG_NETDEVICES_MULTIQUEUE is not set | ||
639 | # CONFIG_IFB is not set | 689 | # CONFIG_IFB is not set |
640 | CONFIG_DUMMY=m | 690 | CONFIG_DUMMY=m |
641 | CONFIG_BONDING=m | 691 | CONFIG_BONDING=m |
642 | CONFIG_MACVLAN=m | 692 | CONFIG_MACVLAN=m |
643 | CONFIG_EQUALIZER=m | 693 | CONFIG_EQUALIZER=m |
644 | CONFIG_TUN=m | 694 | CONFIG_TUN=m |
695 | CONFIG_VETH=m | ||
645 | CONFIG_PHYLIB=m | 696 | CONFIG_PHYLIB=m |
646 | 697 | ||
647 | # | 698 | # |
@@ -656,11 +707,21 @@ CONFIG_CICADA_PHY=m | |||
656 | # CONFIG_SMSC_PHY is not set | 707 | # CONFIG_SMSC_PHY is not set |
657 | # CONFIG_BROADCOM_PHY is not set | 708 | # CONFIG_BROADCOM_PHY is not set |
658 | # CONFIG_ICPLUS_PHY is not set | 709 | # CONFIG_ICPLUS_PHY is not set |
659 | # CONFIG_FIXED_PHY is not set | 710 | CONFIG_REALTEK_PHY=m |
711 | CONFIG_MDIO_BITBANG=m | ||
660 | CONFIG_NET_ETHERNET=y | 712 | CONFIG_NET_ETHERNET=y |
661 | # CONFIG_MII is not set | 713 | CONFIG_MII=m |
662 | # CONFIG_AX88796 is not set | 714 | # CONFIG_AX88796 is not set |
715 | CONFIG_SMC91X=m | ||
663 | # CONFIG_DM9000 is not set | 716 | # CONFIG_DM9000 is not set |
717 | # CONFIG_IBM_NEW_EMAC_ZMII is not set | ||
718 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | ||
719 | # CONFIG_IBM_NEW_EMAC_TAH is not set | ||
720 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set | ||
721 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | ||
722 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | ||
723 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | ||
724 | # CONFIG_B44 is not set | ||
664 | CONFIG_SGISEEQ=y | 725 | CONFIG_SGISEEQ=y |
665 | # CONFIG_NETDEV_1000 is not set | 726 | # CONFIG_NETDEV_1000 is not set |
666 | # CONFIG_NETDEV_10000 is not set | 727 | # CONFIG_NETDEV_10000 is not set |
@@ -672,12 +733,12 @@ CONFIG_WLAN_PRE80211=y | |||
672 | CONFIG_STRIP=m | 733 | CONFIG_STRIP=m |
673 | CONFIG_WLAN_80211=y | 734 | CONFIG_WLAN_80211=y |
674 | # CONFIG_LIBERTAS is not set | 735 | # CONFIG_LIBERTAS is not set |
736 | # CONFIG_IWLWIFI_LEDS is not set | ||
675 | CONFIG_HOSTAP=m | 737 | CONFIG_HOSTAP=m |
676 | # CONFIG_HOSTAP_FIRMWARE is not set | 738 | # CONFIG_HOSTAP_FIRMWARE is not set |
677 | # CONFIG_WAN is not set | 739 | # CONFIG_WAN is not set |
678 | # CONFIG_PPP is not set | 740 | # CONFIG_PPP is not set |
679 | # CONFIG_SLIP is not set | 741 | # CONFIG_SLIP is not set |
680 | # CONFIG_SHAPER is not set | ||
681 | # CONFIG_NETCONSOLE is not set | 742 | # CONFIG_NETCONSOLE is not set |
682 | # CONFIG_NETPOLL is not set | 743 | # CONFIG_NETPOLL is not set |
683 | # CONFIG_NET_POLL_CONTROLLER is not set | 744 | # CONFIG_NET_POLL_CONTROLLER is not set |
@@ -699,7 +760,6 @@ CONFIG_INPUT_MOUSEDEV_PSAUX=y | |||
699 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | 760 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 |
700 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | 761 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 |
701 | # CONFIG_INPUT_JOYDEV is not set | 762 | # CONFIG_INPUT_JOYDEV is not set |
702 | # CONFIG_INPUT_TSDEV is not set | ||
703 | # CONFIG_INPUT_EVDEV is not set | 763 | # CONFIG_INPUT_EVDEV is not set |
704 | # CONFIG_INPUT_EVBUG is not set | 764 | # CONFIG_INPUT_EVBUG is not set |
705 | 765 | ||
@@ -720,6 +780,7 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y | |||
720 | # CONFIG_MOUSE_PS2_SYNAPTICS is not set | 780 | # CONFIG_MOUSE_PS2_SYNAPTICS is not set |
721 | # CONFIG_MOUSE_PS2_LIFEBOOK is not set | 781 | # CONFIG_MOUSE_PS2_LIFEBOOK is not set |
722 | CONFIG_MOUSE_PS2_TRACKPOINT=y | 782 | CONFIG_MOUSE_PS2_TRACKPOINT=y |
783 | # CONFIG_MOUSE_PS2_ELANTECH is not set | ||
723 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set | 784 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set |
724 | CONFIG_MOUSE_SERIAL=m | 785 | CONFIG_MOUSE_SERIAL=m |
725 | # CONFIG_MOUSE_VSXXXAA is not set | 786 | # CONFIG_MOUSE_VSXXXAA is not set |
@@ -742,9 +803,11 @@ CONFIG_SERIO_RAW=m | |||
742 | # Character devices | 803 | # Character devices |
743 | # | 804 | # |
744 | CONFIG_VT=y | 805 | CONFIG_VT=y |
806 | CONFIG_CONSOLE_TRANSLATIONS=y | ||
745 | CONFIG_VT_CONSOLE=y | 807 | CONFIG_VT_CONSOLE=y |
746 | CONFIG_HW_CONSOLE=y | 808 | CONFIG_HW_CONSOLE=y |
747 | CONFIG_VT_HW_CONSOLE_BINDING=y | 809 | CONFIG_VT_HW_CONSOLE_BINDING=y |
810 | CONFIG_DEVKMEM=y | ||
748 | # CONFIG_SERIAL_NONSTANDARD is not set | 811 | # CONFIG_SERIAL_NONSTANDARD is not set |
749 | 812 | ||
750 | # | 813 | # |
@@ -761,6 +824,17 @@ CONFIG_UNIX98_PTYS=y | |||
761 | CONFIG_LEGACY_PTYS=y | 824 | CONFIG_LEGACY_PTYS=y |
762 | CONFIG_LEGACY_PTY_COUNT=256 | 825 | CONFIG_LEGACY_PTY_COUNT=256 |
763 | # CONFIG_IPMI_HANDLER is not set | 826 | # CONFIG_IPMI_HANDLER is not set |
827 | # CONFIG_HW_RANDOM is not set | ||
828 | # CONFIG_R3964 is not set | ||
829 | CONFIG_RAW_DRIVER=m | ||
830 | CONFIG_MAX_RAW_DEVS=256 | ||
831 | # CONFIG_TCG_TPM is not set | ||
832 | # CONFIG_I2C is not set | ||
833 | # CONFIG_SPI is not set | ||
834 | # CONFIG_W1 is not set | ||
835 | # CONFIG_POWER_SUPPLY is not set | ||
836 | # CONFIG_HWMON is not set | ||
837 | CONFIG_THERMAL=m | ||
764 | CONFIG_WATCHDOG=y | 838 | CONFIG_WATCHDOG=y |
765 | # CONFIG_WATCHDOG_NOWAYOUT is not set | 839 | # CONFIG_WATCHDOG_NOWAYOUT is not set |
766 | 840 | ||
@@ -769,47 +843,50 @@ CONFIG_WATCHDOG=y | |||
769 | # | 843 | # |
770 | # CONFIG_SOFT_WATCHDOG is not set | 844 | # CONFIG_SOFT_WATCHDOG is not set |
771 | CONFIG_INDYDOG=m | 845 | CONFIG_INDYDOG=m |
772 | # CONFIG_HW_RANDOM is not set | 846 | CONFIG_SSB_POSSIBLE=y |
773 | # CONFIG_RTC is not set | ||
774 | # CONFIG_R3964 is not set | ||
775 | CONFIG_RAW_DRIVER=m | ||
776 | CONFIG_MAX_RAW_DEVS=256 | ||
777 | # CONFIG_TCG_TPM is not set | ||
778 | # CONFIG_I2C is not set | ||
779 | 847 | ||
780 | # | 848 | # |
781 | # SPI support | 849 | # Sonics Silicon Backplane |
782 | # | 850 | # |
783 | # CONFIG_SPI is not set | 851 | # CONFIG_SSB is not set |
784 | # CONFIG_SPI_MASTER is not set | ||
785 | # CONFIG_W1 is not set | ||
786 | # CONFIG_POWER_SUPPLY is not set | ||
787 | # CONFIG_HWMON is not set | ||
788 | 852 | ||
789 | # | 853 | # |
790 | # Multifunction device drivers | 854 | # Multifunction device drivers |
791 | # | 855 | # |
856 | # CONFIG_MFD_CORE is not set | ||
792 | # CONFIG_MFD_SM501 is not set | 857 | # CONFIG_MFD_SM501 is not set |
858 | # CONFIG_HTC_PASIC3 is not set | ||
859 | # CONFIG_MFD_TMIO is not set | ||
860 | # CONFIG_REGULATOR is not set | ||
793 | 861 | ||
794 | # | 862 | # |
795 | # Multimedia devices | 863 | # Multimedia devices |
796 | # | 864 | # |
865 | |||
866 | # | ||
867 | # Multimedia core support | ||
868 | # | ||
797 | # CONFIG_VIDEO_DEV is not set | 869 | # CONFIG_VIDEO_DEV is not set |
798 | # CONFIG_DVB_CORE is not set | 870 | # CONFIG_DVB_CORE is not set |
871 | # CONFIG_VIDEO_MEDIA is not set | ||
872 | |||
873 | # | ||
874 | # Multimedia drivers | ||
875 | # | ||
799 | # CONFIG_DAB is not set | 876 | # CONFIG_DAB is not set |
800 | 877 | ||
801 | # | 878 | # |
802 | # Graphics support | 879 | # Graphics support |
803 | # | 880 | # |
881 | # CONFIG_VGASTATE is not set | ||
882 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | ||
883 | # CONFIG_FB is not set | ||
804 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | 884 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set |
805 | 885 | ||
806 | # | 886 | # |
807 | # Display device support | 887 | # Display device support |
808 | # | 888 | # |
809 | # CONFIG_DISPLAY_SUPPORT is not set | 889 | # CONFIG_DISPLAY_SUPPORT is not set |
810 | # CONFIG_VGASTATE is not set | ||
811 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | ||
812 | # CONFIG_FB is not set | ||
813 | 890 | ||
814 | # | 891 | # |
815 | # Console display driver support | 892 | # Console display driver support |
@@ -823,48 +900,77 @@ CONFIG_LOGO=y | |||
823 | # CONFIG_LOGO_LINUX_VGA16 is not set | 900 | # CONFIG_LOGO_LINUX_VGA16 is not set |
824 | # CONFIG_LOGO_LINUX_CLUT224 is not set | 901 | # CONFIG_LOGO_LINUX_CLUT224 is not set |
825 | CONFIG_LOGO_SGI_CLUT224=y | 902 | CONFIG_LOGO_SGI_CLUT224=y |
826 | |||
827 | # | ||
828 | # Sound | ||
829 | # | ||
830 | # CONFIG_SOUND is not set | 903 | # CONFIG_SOUND is not set |
831 | CONFIG_HID_SUPPORT=y | 904 | CONFIG_HID_SUPPORT=y |
832 | CONFIG_HID=y | 905 | CONFIG_HID=y |
833 | # CONFIG_HID_DEBUG is not set | 906 | # CONFIG_HID_DEBUG is not set |
907 | CONFIG_HIDRAW=y | ||
908 | CONFIG_HID_PID=y | ||
909 | |||
910 | # | ||
911 | # Special HID drivers | ||
912 | # | ||
913 | CONFIG_HID_COMPAT=y | ||
834 | CONFIG_USB_SUPPORT=y | 914 | CONFIG_USB_SUPPORT=y |
835 | # CONFIG_USB_ARCH_HAS_HCD is not set | 915 | # CONFIG_USB_ARCH_HAS_HCD is not set |
836 | # CONFIG_USB_ARCH_HAS_OHCI is not set | 916 | # CONFIG_USB_ARCH_HAS_OHCI is not set |
837 | # CONFIG_USB_ARCH_HAS_EHCI is not set | 917 | # CONFIG_USB_ARCH_HAS_EHCI is not set |
918 | # CONFIG_USB_OTG_WHITELIST is not set | ||
919 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set | ||
838 | 920 | ||
839 | # | 921 | # |
840 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | 922 | # Enable Host or Gadget support to see Inventra options |
841 | # | 923 | # |
842 | 924 | ||
843 | # | 925 | # |
844 | # USB Gadget Support | 926 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed; |
845 | # | 927 | # |
846 | # CONFIG_USB_GADGET is not set | 928 | # CONFIG_USB_GADGET is not set |
847 | # CONFIG_MMC is not set | 929 | # CONFIG_MMC is not set |
930 | # CONFIG_MEMSTICK is not set | ||
848 | # CONFIG_NEW_LEDS is not set | 931 | # CONFIG_NEW_LEDS is not set |
849 | # CONFIG_RTC_CLASS is not set | 932 | # CONFIG_ACCESSIBILITY is not set |
933 | CONFIG_RTC_LIB=y | ||
934 | CONFIG_RTC_CLASS=y | ||
935 | CONFIG_RTC_HCTOSYS=y | ||
936 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | ||
937 | # CONFIG_RTC_DEBUG is not set | ||
850 | 938 | ||
851 | # | 939 | # |
852 | # DMA Engine support | 940 | # RTC interfaces |
853 | # | 941 | # |
854 | # CONFIG_DMA_ENGINE is not set | 942 | CONFIG_RTC_INTF_SYSFS=y |
943 | CONFIG_RTC_INTF_PROC=y | ||
944 | CONFIG_RTC_INTF_DEV=y | ||
945 | CONFIG_RTC_INTF_DEV_UIE_EMUL=y | ||
946 | # CONFIG_RTC_DRV_TEST is not set | ||
855 | 947 | ||
856 | # | 948 | # |
857 | # DMA Clients | 949 | # SPI RTC drivers |
858 | # | 950 | # |
859 | 951 | ||
860 | # | 952 | # |
861 | # DMA Devices | 953 | # Platform RTC drivers |
862 | # | 954 | # |
955 | # CONFIG_RTC_DRV_CMOS is not set | ||
956 | CONFIG_RTC_DRV_DS1286=y | ||
957 | # CONFIG_RTC_DRV_DS1511 is not set | ||
958 | # CONFIG_RTC_DRV_DS1553 is not set | ||
959 | # CONFIG_RTC_DRV_DS1742 is not set | ||
960 | # CONFIG_RTC_DRV_STK17TA8 is not set | ||
961 | # CONFIG_RTC_DRV_M48T86 is not set | ||
962 | # CONFIG_RTC_DRV_M48T35 is not set | ||
963 | # CONFIG_RTC_DRV_M48T59 is not set | ||
964 | # CONFIG_RTC_DRV_BQ4802 is not set | ||
965 | # CONFIG_RTC_DRV_V3020 is not set | ||
863 | 966 | ||
864 | # | 967 | # |
865 | # Userspace I/O | 968 | # on-CPU RTC drivers |
866 | # | 969 | # |
970 | # CONFIG_DMADEVICES is not set | ||
867 | # CONFIG_UIO is not set | 971 | # CONFIG_UIO is not set |
972 | # CONFIG_STAGING is not set | ||
973 | CONFIG_STAGING_EXCLUDE_BUILD=y | ||
868 | 974 | ||
869 | # | 975 | # |
870 | # File systems | 976 | # File systems |
@@ -876,29 +982,33 @@ CONFIG_EXT3_FS=y | |||
876 | CONFIG_EXT3_FS_XATTR=y | 982 | CONFIG_EXT3_FS_XATTR=y |
877 | CONFIG_EXT3_FS_POSIX_ACL=y | 983 | CONFIG_EXT3_FS_POSIX_ACL=y |
878 | CONFIG_EXT3_FS_SECURITY=y | 984 | CONFIG_EXT3_FS_SECURITY=y |
879 | # CONFIG_EXT4DEV_FS is not set | 985 | CONFIG_EXT4_FS=m |
986 | CONFIG_EXT4DEV_COMPAT=y | ||
987 | CONFIG_EXT4_FS_XATTR=y | ||
988 | CONFIG_EXT4_FS_POSIX_ACL=y | ||
989 | CONFIG_EXT4_FS_SECURITY=y | ||
880 | CONFIG_JBD=y | 990 | CONFIG_JBD=y |
881 | # CONFIG_JBD_DEBUG is not set | 991 | CONFIG_JBD2=m |
882 | CONFIG_FS_MBCACHE=y | 992 | CONFIG_FS_MBCACHE=y |
883 | # CONFIG_REISERFS_FS is not set | 993 | # CONFIG_REISERFS_FS is not set |
884 | # CONFIG_JFS_FS is not set | 994 | # CONFIG_JFS_FS is not set |
885 | CONFIG_FS_POSIX_ACL=y | 995 | CONFIG_FS_POSIX_ACL=y |
996 | CONFIG_FILE_LOCKING=y | ||
886 | CONFIG_XFS_FS=m | 997 | CONFIG_XFS_FS=m |
887 | CONFIG_XFS_QUOTA=y | 998 | CONFIG_XFS_QUOTA=y |
888 | CONFIG_XFS_SECURITY=y | ||
889 | # CONFIG_XFS_POSIX_ACL is not set | 999 | # CONFIG_XFS_POSIX_ACL is not set |
890 | # CONFIG_XFS_RT is not set | 1000 | # CONFIG_XFS_RT is not set |
891 | # CONFIG_GFS2_FS is not set | 1001 | # CONFIG_XFS_DEBUG is not set |
892 | # CONFIG_OCFS2_FS is not set | 1002 | # CONFIG_OCFS2_FS is not set |
893 | CONFIG_MINIX_FS=m | 1003 | CONFIG_DNOTIFY=y |
894 | # CONFIG_ROMFS_FS is not set | ||
895 | CONFIG_INOTIFY=y | 1004 | CONFIG_INOTIFY=y |
896 | CONFIG_INOTIFY_USER=y | 1005 | CONFIG_INOTIFY_USER=y |
897 | CONFIG_QUOTA=y | 1006 | CONFIG_QUOTA=y |
1007 | CONFIG_QUOTA_NETLINK_INTERFACE=y | ||
1008 | # CONFIG_PRINT_QUOTA_WARNING is not set | ||
898 | # CONFIG_QFMT_V1 is not set | 1009 | # CONFIG_QFMT_V1 is not set |
899 | CONFIG_QFMT_V2=m | 1010 | CONFIG_QFMT_V2=m |
900 | CONFIG_QUOTACTL=y | 1011 | CONFIG_QUOTACTL=y |
901 | CONFIG_DNOTIFY=y | ||
902 | CONFIG_AUTOFS_FS=m | 1012 | CONFIG_AUTOFS_FS=m |
903 | CONFIG_AUTOFS4_FS=m | 1013 | CONFIG_AUTOFS4_FS=m |
904 | CONFIG_FUSE_FS=m | 1014 | CONFIG_FUSE_FS=m |
@@ -929,11 +1039,11 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | |||
929 | CONFIG_PROC_FS=y | 1039 | CONFIG_PROC_FS=y |
930 | CONFIG_PROC_KCORE=y | 1040 | CONFIG_PROC_KCORE=y |
931 | CONFIG_PROC_SYSCTL=y | 1041 | CONFIG_PROC_SYSCTL=y |
1042 | CONFIG_PROC_PAGE_MONITOR=y | ||
932 | CONFIG_SYSFS=y | 1043 | CONFIG_SYSFS=y |
933 | CONFIG_TMPFS=y | 1044 | CONFIG_TMPFS=y |
934 | CONFIG_TMPFS_POSIX_ACL=y | 1045 | CONFIG_TMPFS_POSIX_ACL=y |
935 | # CONFIG_HUGETLB_PAGE is not set | 1046 | # CONFIG_HUGETLB_PAGE is not set |
936 | CONFIG_RAMFS=y | ||
937 | CONFIG_CONFIGFS_FS=m | 1047 | CONFIG_CONFIGFS_FS=m |
938 | 1048 | ||
939 | # | 1049 | # |
@@ -949,27 +1059,25 @@ CONFIG_CONFIGFS_FS=m | |||
949 | CONFIG_EFS_FS=m | 1059 | CONFIG_EFS_FS=m |
950 | # CONFIG_CRAMFS is not set | 1060 | # CONFIG_CRAMFS is not set |
951 | # CONFIG_VXFS_FS is not set | 1061 | # CONFIG_VXFS_FS is not set |
1062 | CONFIG_MINIX_FS=m | ||
1063 | CONFIG_OMFS_FS=m | ||
952 | # CONFIG_HPFS_FS is not set | 1064 | # CONFIG_HPFS_FS is not set |
953 | # CONFIG_QNX4FS_FS is not set | 1065 | # CONFIG_QNX4FS_FS is not set |
1066 | # CONFIG_ROMFS_FS is not set | ||
954 | # CONFIG_SYSV_FS is not set | 1067 | # CONFIG_SYSV_FS is not set |
955 | CONFIG_UFS_FS=m | 1068 | CONFIG_UFS_FS=m |
956 | # CONFIG_UFS_FS_WRITE is not set | 1069 | # CONFIG_UFS_FS_WRITE is not set |
957 | # CONFIG_UFS_DEBUG is not set | 1070 | # CONFIG_UFS_DEBUG is not set |
958 | 1071 | CONFIG_NETWORK_FILESYSTEMS=y | |
959 | # | ||
960 | # Network File Systems | ||
961 | # | ||
962 | CONFIG_NFS_FS=m | 1072 | CONFIG_NFS_FS=m |
963 | CONFIG_NFS_V3=y | 1073 | CONFIG_NFS_V3=y |
964 | CONFIG_NFS_V3_ACL=y | 1074 | CONFIG_NFS_V3_ACL=y |
965 | # CONFIG_NFS_V4 is not set | 1075 | # CONFIG_NFS_V4 is not set |
966 | # CONFIG_NFS_DIRECTIO is not set | ||
967 | CONFIG_NFSD=m | 1076 | CONFIG_NFSD=m |
968 | CONFIG_NFSD_V2_ACL=y | 1077 | CONFIG_NFSD_V2_ACL=y |
969 | CONFIG_NFSD_V3=y | 1078 | CONFIG_NFSD_V3=y |
970 | CONFIG_NFSD_V3_ACL=y | 1079 | CONFIG_NFSD_V3_ACL=y |
971 | # CONFIG_NFSD_V4 is not set | 1080 | # CONFIG_NFSD_V4 is not set |
972 | CONFIG_NFSD_TCP=y | ||
973 | CONFIG_LOCKD=m | 1081 | CONFIG_LOCKD=m |
974 | CONFIG_LOCKD_V4=y | 1082 | CONFIG_LOCKD_V4=y |
975 | CONFIG_EXPORTFS=m | 1083 | CONFIG_EXPORTFS=m |
@@ -977,7 +1085,7 @@ CONFIG_NFS_ACL_SUPPORT=m | |||
977 | CONFIG_NFS_COMMON=y | 1085 | CONFIG_NFS_COMMON=y |
978 | CONFIG_SUNRPC=m | 1086 | CONFIG_SUNRPC=m |
979 | CONFIG_SUNRPC_GSS=m | 1087 | CONFIG_SUNRPC_GSS=m |
980 | # CONFIG_SUNRPC_BIND34 is not set | 1088 | # CONFIG_SUNRPC_REGISTER_V4 is not set |
981 | CONFIG_RPCSEC_GSS_KRB5=m | 1089 | CONFIG_RPCSEC_GSS_KRB5=m |
982 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | 1090 | # CONFIG_RPCSEC_GSS_SPKM3 is not set |
983 | CONFIG_SMB_FS=m | 1091 | CONFIG_SMB_FS=m |
@@ -986,12 +1094,12 @@ CONFIG_SMB_NLS_REMOTE="cp437" | |||
986 | CONFIG_CIFS=m | 1094 | CONFIG_CIFS=m |
987 | # CONFIG_CIFS_STATS is not set | 1095 | # CONFIG_CIFS_STATS is not set |
988 | # CONFIG_CIFS_WEAK_PW_HASH is not set | 1096 | # CONFIG_CIFS_WEAK_PW_HASH is not set |
1097 | CONFIG_CIFS_UPCALL=y | ||
989 | # CONFIG_CIFS_XATTR is not set | 1098 | # CONFIG_CIFS_XATTR is not set |
990 | # CONFIG_CIFS_DEBUG2 is not set | 1099 | # CONFIG_CIFS_DEBUG2 is not set |
991 | # CONFIG_CIFS_EXPERIMENTAL is not set | 1100 | # CONFIG_CIFS_EXPERIMENTAL is not set |
992 | # CONFIG_NCP_FS is not set | 1101 | # CONFIG_NCP_FS is not set |
993 | CONFIG_CODA_FS=m | 1102 | CONFIG_CODA_FS=m |
994 | # CONFIG_CODA_FS_OLD_API is not set | ||
995 | # CONFIG_AFS_FS is not set | 1103 | # CONFIG_AFS_FS is not set |
996 | 1104 | ||
997 | # | 1105 | # |
@@ -1015,10 +1123,6 @@ CONFIG_SGI_PARTITION=y | |||
1015 | # CONFIG_KARMA_PARTITION is not set | 1123 | # CONFIG_KARMA_PARTITION is not set |
1016 | # CONFIG_EFI_PARTITION is not set | 1124 | # CONFIG_EFI_PARTITION is not set |
1017 | # CONFIG_SYSV68_PARTITION is not set | 1125 | # CONFIG_SYSV68_PARTITION is not set |
1018 | |||
1019 | # | ||
1020 | # Native Language Support | ||
1021 | # | ||
1022 | CONFIG_NLS=m | 1126 | CONFIG_NLS=m |
1023 | CONFIG_NLS_DEFAULT="iso8859-1" | 1127 | CONFIG_NLS_DEFAULT="iso8859-1" |
1024 | CONFIG_NLS_CODEPAGE_437=m | 1128 | CONFIG_NLS_CODEPAGE_437=m |
@@ -1059,30 +1163,32 @@ CONFIG_NLS_ISO8859_15=m | |||
1059 | CONFIG_NLS_KOI8_R=m | 1163 | CONFIG_NLS_KOI8_R=m |
1060 | CONFIG_NLS_KOI8_U=m | 1164 | CONFIG_NLS_KOI8_U=m |
1061 | CONFIG_NLS_UTF8=m | 1165 | CONFIG_NLS_UTF8=m |
1062 | |||
1063 | # | ||
1064 | # Distributed Lock Manager | ||
1065 | # | ||
1066 | CONFIG_DLM=m | 1166 | CONFIG_DLM=m |
1067 | # CONFIG_DLM_DEBUG is not set | 1167 | # CONFIG_DLM_DEBUG is not set |
1068 | 1168 | ||
1069 | # | 1169 | # |
1070 | # Profiling support | ||
1071 | # | ||
1072 | # CONFIG_PROFILING is not set | ||
1073 | |||
1074 | # | ||
1075 | # Kernel hacking | 1170 | # Kernel hacking |
1076 | # | 1171 | # |
1077 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | 1172 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y |
1078 | # CONFIG_PRINTK_TIME is not set | 1173 | # CONFIG_PRINTK_TIME is not set |
1174 | CONFIG_ENABLE_WARN_DEPRECATED=y | ||
1079 | CONFIG_ENABLE_MUST_CHECK=y | 1175 | CONFIG_ENABLE_MUST_CHECK=y |
1176 | CONFIG_FRAME_WARN=1024 | ||
1080 | # CONFIG_MAGIC_SYSRQ is not set | 1177 | # CONFIG_MAGIC_SYSRQ is not set |
1081 | # CONFIG_UNUSED_SYMBOLS is not set | 1178 | # CONFIG_UNUSED_SYMBOLS is not set |
1082 | # CONFIG_DEBUG_FS is not set | 1179 | # CONFIG_DEBUG_FS is not set |
1083 | # CONFIG_HEADERS_CHECK is not set | 1180 | # CONFIG_HEADERS_CHECK is not set |
1084 | # CONFIG_DEBUG_KERNEL is not set | 1181 | # CONFIG_DEBUG_KERNEL is not set |
1085 | CONFIG_CROSSCOMPILE=y | 1182 | CONFIG_DEBUG_MEMORY_INIT=y |
1183 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set | ||
1184 | # CONFIG_SYSCTL_SYSCALL_CHECK is not set | ||
1185 | |||
1186 | # | ||
1187 | # Tracers | ||
1188 | # | ||
1189 | CONFIG_DYNAMIC_PRINTK_DEBUG=y | ||
1190 | # CONFIG_SAMPLES is not set | ||
1191 | CONFIG_HAVE_ARCH_KGDB=y | ||
1086 | CONFIG_CMDLINE="" | 1192 | CONFIG_CMDLINE="" |
1087 | 1193 | ||
1088 | # | 1194 | # |
@@ -1091,46 +1197,97 @@ CONFIG_CMDLINE="" | |||
1091 | CONFIG_KEYS=y | 1197 | CONFIG_KEYS=y |
1092 | CONFIG_KEYS_DEBUG_PROC_KEYS=y | 1198 | CONFIG_KEYS_DEBUG_PROC_KEYS=y |
1093 | # CONFIG_SECURITY is not set | 1199 | # CONFIG_SECURITY is not set |
1200 | # CONFIG_SECURITYFS is not set | ||
1201 | CONFIG_SECURITY_FILE_CAPABILITIES=y | ||
1094 | CONFIG_CRYPTO=y | 1202 | CONFIG_CRYPTO=y |
1203 | |||
1204 | # | ||
1205 | # Crypto core or helper | ||
1206 | # | ||
1207 | CONFIG_CRYPTO_FIPS=y | ||
1095 | CONFIG_CRYPTO_ALGAPI=y | 1208 | CONFIG_CRYPTO_ALGAPI=y |
1096 | CONFIG_CRYPTO_ABLKCIPHER=m | 1209 | CONFIG_CRYPTO_AEAD=y |
1097 | CONFIG_CRYPTO_BLKCIPHER=m | 1210 | CONFIG_CRYPTO_BLKCIPHER=y |
1098 | CONFIG_CRYPTO_HASH=y | 1211 | CONFIG_CRYPTO_HASH=y |
1212 | CONFIG_CRYPTO_RNG=y | ||
1099 | CONFIG_CRYPTO_MANAGER=y | 1213 | CONFIG_CRYPTO_MANAGER=y |
1214 | CONFIG_CRYPTO_GF128MUL=m | ||
1215 | CONFIG_CRYPTO_NULL=m | ||
1216 | CONFIG_CRYPTO_CRYPTD=m | ||
1217 | CONFIG_CRYPTO_AUTHENC=m | ||
1218 | # CONFIG_CRYPTO_TEST is not set | ||
1219 | |||
1220 | # | ||
1221 | # Authenticated Encryption with Associated Data | ||
1222 | # | ||
1223 | CONFIG_CRYPTO_CCM=m | ||
1224 | CONFIG_CRYPTO_GCM=m | ||
1225 | CONFIG_CRYPTO_SEQIV=m | ||
1226 | |||
1227 | # | ||
1228 | # Block modes | ||
1229 | # | ||
1230 | CONFIG_CRYPTO_CBC=m | ||
1231 | CONFIG_CRYPTO_CTR=m | ||
1232 | CONFIG_CRYPTO_CTS=m | ||
1233 | CONFIG_CRYPTO_ECB=m | ||
1234 | CONFIG_CRYPTO_LRW=m | ||
1235 | CONFIG_CRYPTO_PCBC=m | ||
1236 | CONFIG_CRYPTO_XTS=m | ||
1237 | |||
1238 | # | ||
1239 | # Hash modes | ||
1240 | # | ||
1100 | CONFIG_CRYPTO_HMAC=y | 1241 | CONFIG_CRYPTO_HMAC=y |
1101 | CONFIG_CRYPTO_XCBC=m | 1242 | CONFIG_CRYPTO_XCBC=m |
1102 | CONFIG_CRYPTO_NULL=m | 1243 | |
1244 | # | ||
1245 | # Digest | ||
1246 | # | ||
1247 | CONFIG_CRYPTO_CRC32C=m | ||
1103 | CONFIG_CRYPTO_MD4=m | 1248 | CONFIG_CRYPTO_MD4=m |
1104 | CONFIG_CRYPTO_MD5=y | 1249 | CONFIG_CRYPTO_MD5=y |
1250 | CONFIG_CRYPTO_MICHAEL_MIC=m | ||
1251 | CONFIG_CRYPTO_RMD128=m | ||
1252 | CONFIG_CRYPTO_RMD160=m | ||
1253 | CONFIG_CRYPTO_RMD256=m | ||
1254 | CONFIG_CRYPTO_RMD320=m | ||
1105 | CONFIG_CRYPTO_SHA1=m | 1255 | CONFIG_CRYPTO_SHA1=m |
1106 | CONFIG_CRYPTO_SHA256=m | 1256 | CONFIG_CRYPTO_SHA256=m |
1107 | CONFIG_CRYPTO_SHA512=m | 1257 | CONFIG_CRYPTO_SHA512=m |
1108 | CONFIG_CRYPTO_WP512=m | ||
1109 | CONFIG_CRYPTO_TGR192=m | 1258 | CONFIG_CRYPTO_TGR192=m |
1110 | CONFIG_CRYPTO_GF128MUL=m | 1259 | CONFIG_CRYPTO_WP512=m |
1111 | CONFIG_CRYPTO_ECB=m | 1260 | |
1112 | CONFIG_CRYPTO_CBC=m | 1261 | # |
1113 | CONFIG_CRYPTO_PCBC=m | 1262 | # Ciphers |
1114 | CONFIG_CRYPTO_LRW=m | 1263 | # |
1115 | CONFIG_CRYPTO_CRYPTD=m | ||
1116 | CONFIG_CRYPTO_DES=m | ||
1117 | CONFIG_CRYPTO_FCRYPT=m | ||
1118 | CONFIG_CRYPTO_BLOWFISH=m | ||
1119 | CONFIG_CRYPTO_TWOFISH=m | ||
1120 | CONFIG_CRYPTO_TWOFISH_COMMON=m | ||
1121 | CONFIG_CRYPTO_SERPENT=m | ||
1122 | CONFIG_CRYPTO_AES=m | 1264 | CONFIG_CRYPTO_AES=m |
1265 | CONFIG_CRYPTO_ANUBIS=m | ||
1266 | CONFIG_CRYPTO_ARC4=m | ||
1267 | CONFIG_CRYPTO_BLOWFISH=m | ||
1268 | CONFIG_CRYPTO_CAMELLIA=m | ||
1123 | CONFIG_CRYPTO_CAST5=m | 1269 | CONFIG_CRYPTO_CAST5=m |
1124 | CONFIG_CRYPTO_CAST6=m | 1270 | CONFIG_CRYPTO_CAST6=m |
1125 | CONFIG_CRYPTO_TEA=m | 1271 | CONFIG_CRYPTO_DES=m |
1126 | CONFIG_CRYPTO_ARC4=m | 1272 | CONFIG_CRYPTO_FCRYPT=m |
1127 | CONFIG_CRYPTO_KHAZAD=m | 1273 | CONFIG_CRYPTO_KHAZAD=m |
1128 | CONFIG_CRYPTO_ANUBIS=m | 1274 | CONFIG_CRYPTO_SALSA20=m |
1275 | CONFIG_CRYPTO_SEED=m | ||
1276 | CONFIG_CRYPTO_SERPENT=m | ||
1277 | CONFIG_CRYPTO_TEA=m | ||
1278 | CONFIG_CRYPTO_TWOFISH=m | ||
1279 | CONFIG_CRYPTO_TWOFISH_COMMON=m | ||
1280 | |||
1281 | # | ||
1282 | # Compression | ||
1283 | # | ||
1129 | CONFIG_CRYPTO_DEFLATE=m | 1284 | CONFIG_CRYPTO_DEFLATE=m |
1130 | CONFIG_CRYPTO_MICHAEL_MIC=m | 1285 | CONFIG_CRYPTO_LZO=m |
1131 | CONFIG_CRYPTO_CRC32C=m | 1286 | |
1132 | CONFIG_CRYPTO_CAMELLIA=m | 1287 | # |
1133 | # CONFIG_CRYPTO_TEST is not set | 1288 | # Random Number Generation |
1289 | # | ||
1290 | CONFIG_CRYPTO_ANSI_CPRNG=m | ||
1134 | # CONFIG_CRYPTO_HW is not set | 1291 | # CONFIG_CRYPTO_HW is not set |
1135 | 1292 | ||
1136 | # | 1293 | # |
@@ -1139,12 +1296,15 @@ CONFIG_CRYPTO_CAMELLIA=m | |||
1139 | CONFIG_BITREVERSE=m | 1296 | CONFIG_BITREVERSE=m |
1140 | # CONFIG_CRC_CCITT is not set | 1297 | # CONFIG_CRC_CCITT is not set |
1141 | CONFIG_CRC16=m | 1298 | CONFIG_CRC16=m |
1142 | # CONFIG_CRC_ITU_T is not set | 1299 | CONFIG_CRC_T10DIF=m |
1300 | CONFIG_CRC_ITU_T=m | ||
1143 | CONFIG_CRC32=m | 1301 | CONFIG_CRC32=m |
1144 | # CONFIG_CRC7 is not set | 1302 | # CONFIG_CRC7 is not set |
1145 | CONFIG_LIBCRC32C=m | 1303 | CONFIG_LIBCRC32C=m |
1146 | CONFIG_ZLIB_INFLATE=m | 1304 | CONFIG_ZLIB_INFLATE=m |
1147 | CONFIG_ZLIB_DEFLATE=m | 1305 | CONFIG_ZLIB_DEFLATE=m |
1306 | CONFIG_LZO_COMPRESS=m | ||
1307 | CONFIG_LZO_DECOMPRESS=m | ||
1148 | CONFIG_TEXTSEARCH=y | 1308 | CONFIG_TEXTSEARCH=y |
1149 | CONFIG_TEXTSEARCH_KMP=m | 1309 | CONFIG_TEXTSEARCH_KMP=m |
1150 | CONFIG_TEXTSEARCH_BM=m | 1310 | CONFIG_TEXTSEARCH_BM=m |
diff --git a/arch/mips/configs/malta_defconfig b/arch/mips/configs/malta_defconfig index 74daa0cf87e6..1ecdd3b65dc7 100644 --- a/arch/mips/configs/malta_defconfig +++ b/arch/mips/configs/malta_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.23-rc2 | 3 | # Linux kernel version: 2.6.28-rc6 |
4 | # Tue Aug 7 12:59:29 2007 | 4 | # Mon Dec 1 08:08:19 2008 |
5 | # | 5 | # |
6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
7 | 7 | ||
@@ -11,20 +11,25 @@ CONFIG_MIPS=y | |||
11 | CONFIG_ZONE_DMA=y | 11 | CONFIG_ZONE_DMA=y |
12 | # CONFIG_MACH_ALCHEMY is not set | 12 | # CONFIG_MACH_ALCHEMY is not set |
13 | # CONFIG_BASLER_EXCITE is not set | 13 | # CONFIG_BASLER_EXCITE is not set |
14 | # CONFIG_BCM47XX is not set | ||
14 | # CONFIG_MIPS_COBALT is not set | 15 | # CONFIG_MIPS_COBALT is not set |
15 | # CONFIG_MACH_DECSTATION is not set | 16 | # CONFIG_MACH_DECSTATION is not set |
16 | # CONFIG_MACH_JAZZ is not set | 17 | # CONFIG_MACH_JAZZ is not set |
18 | # CONFIG_LASAT is not set | ||
17 | # CONFIG_LEMOTE_FULONG is not set | 19 | # CONFIG_LEMOTE_FULONG is not set |
18 | CONFIG_MIPS_MALTA=y | 20 | CONFIG_MIPS_MALTA=y |
19 | # CONFIG_MIPS_SIM is not set | 21 | # CONFIG_MIPS_SIM is not set |
20 | # CONFIG_MARKEINS is not set | 22 | # CONFIG_MACH_EMMA is not set |
21 | # CONFIG_MACH_VR41XX is not set | 23 | # CONFIG_MACH_VR41XX is not set |
24 | # CONFIG_NXP_STB220 is not set | ||
25 | # CONFIG_NXP_STB225 is not set | ||
22 | # CONFIG_PNX8550_JBS is not set | 26 | # CONFIG_PNX8550_JBS is not set |
23 | # CONFIG_PNX8550_STB810 is not set | 27 | # CONFIG_PNX8550_STB810 is not set |
24 | # CONFIG_PMC_MSP is not set | 28 | # CONFIG_PMC_MSP is not set |
25 | # CONFIG_PMC_YOSEMITE is not set | 29 | # CONFIG_PMC_YOSEMITE is not set |
26 | # CONFIG_SGI_IP22 is not set | 30 | # CONFIG_SGI_IP22 is not set |
27 | # CONFIG_SGI_IP27 is not set | 31 | # CONFIG_SGI_IP27 is not set |
32 | # CONFIG_SGI_IP28 is not set | ||
28 | # CONFIG_SGI_IP32 is not set | 33 | # CONFIG_SGI_IP32 is not set |
29 | # CONFIG_SIBYTE_CRHINE is not set | 34 | # CONFIG_SIBYTE_CRHINE is not set |
30 | # CONFIG_SIBYTE_CARMEL is not set | 35 | # CONFIG_SIBYTE_CARMEL is not set |
@@ -35,13 +40,14 @@ CONFIG_MIPS_MALTA=y | |||
35 | # CONFIG_SIBYTE_SENTOSA is not set | 40 | # CONFIG_SIBYTE_SENTOSA is not set |
36 | # CONFIG_SIBYTE_BIGSUR is not set | 41 | # CONFIG_SIBYTE_BIGSUR is not set |
37 | # CONFIG_SNI_RM is not set | 42 | # CONFIG_SNI_RM is not set |
38 | # CONFIG_TOSHIBA_JMR3927 is not set | 43 | # CONFIG_MACH_TX39XX is not set |
39 | # CONFIG_TOSHIBA_RBTX4927 is not set | 44 | # CONFIG_MACH_TX49XX is not set |
40 | # CONFIG_TOSHIBA_RBTX4938 is not set | 45 | # CONFIG_MIKROTIK_RB532 is not set |
41 | # CONFIG_WR_PPMC is not set | 46 | # CONFIG_WR_PPMC is not set |
42 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 47 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
43 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | 48 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set |
44 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | 49 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set |
50 | CONFIG_ARCH_SUPPORTS_OPROFILE=y | ||
45 | CONFIG_GENERIC_FIND_NEXT_BIT=y | 51 | CONFIG_GENERIC_FIND_NEXT_BIT=y |
46 | CONFIG_GENERIC_HWEIGHT=y | 52 | CONFIG_GENERIC_HWEIGHT=y |
47 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 53 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
@@ -51,21 +57,26 @@ CONFIG_GENERIC_CMOS_UPDATE=y | |||
51 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 57 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y |
52 | # CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set | 58 | # CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set |
53 | CONFIG_ARCH_MAY_HAVE_PC_FDC=y | 59 | CONFIG_ARCH_MAY_HAVE_PC_FDC=y |
60 | CONFIG_BOOT_RAW=y | ||
54 | CONFIG_CEVT_R4K=y | 61 | CONFIG_CEVT_R4K=y |
62 | CONFIG_CSRC_R4K=y | ||
55 | CONFIG_DMA_NONCOHERENT=y | 63 | CONFIG_DMA_NONCOHERENT=y |
56 | CONFIG_DMA_NEED_PCI_MAP_STATE=y | 64 | CONFIG_DMA_NEED_PCI_MAP_STATE=y |
57 | CONFIG_EARLY_PRINTK=y | 65 | CONFIG_EARLY_PRINTK=y |
58 | CONFIG_SYS_HAS_EARLY_PRINTK=y | 66 | CONFIG_SYS_HAS_EARLY_PRINTK=y |
59 | CONFIG_GENERIC_ISA_DMA=y | 67 | # CONFIG_HOTPLUG_CPU is not set |
60 | CONFIG_I8259=y | 68 | CONFIG_I8259=y |
61 | CONFIG_MIPS_BONITO64=y | 69 | CONFIG_MIPS_BONITO64=y |
62 | CONFIG_MIPS_MSC=y | 70 | CONFIG_MIPS_MSC=y |
63 | # CONFIG_NO_IOPORT is not set | 71 | # CONFIG_NO_IOPORT is not set |
72 | CONFIG_GENERIC_ISA_DMA=y | ||
64 | # CONFIG_CPU_BIG_ENDIAN is not set | 73 | # CONFIG_CPU_BIG_ENDIAN is not set |
65 | CONFIG_CPU_LITTLE_ENDIAN=y | 74 | CONFIG_CPU_LITTLE_ENDIAN=y |
66 | CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y | 75 | CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y |
67 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y | 76 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y |
68 | CONFIG_IRQ_CPU=y | 77 | CONFIG_IRQ_CPU=y |
78 | CONFIG_IRQ_GIC=y | ||
79 | CONFIG_MIPS_BOARDS_GEN=y | ||
69 | CONFIG_PCI_GT64XXX_PCI0=y | 80 | CONFIG_PCI_GT64XXX_PCI0=y |
70 | CONFIG_SWAP_IO_SPACE=y | 81 | CONFIG_SWAP_IO_SPACE=y |
71 | CONFIG_BOOT_ELF32=y | 82 | CONFIG_BOOT_ELF32=y |
@@ -74,10 +85,6 @@ CONFIG_MIPS_L1_CACHE_SHIFT=5 | |||
74 | # | 85 | # |
75 | # CPU selection | 86 | # CPU selection |
76 | # | 87 | # |
77 | CONFIG_TICK_ONESHOT=y | ||
78 | CONFIG_NO_HZ=y | ||
79 | CONFIG_HIGH_RES_TIMERS=y | ||
80 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | ||
81 | # CONFIG_CPU_LOONGSON2 is not set | 88 | # CONFIG_CPU_LOONGSON2 is not set |
82 | # CONFIG_CPU_MIPS32_R1 is not set | 89 | # CONFIG_CPU_MIPS32_R1 is not set |
83 | CONFIG_CPU_MIPS32_R2=y | 90 | CONFIG_CPU_MIPS32_R2=y |
@@ -91,6 +98,7 @@ CONFIG_CPU_MIPS32_R2=y | |||
91 | # CONFIG_CPU_TX49XX is not set | 98 | # CONFIG_CPU_TX49XX is not set |
92 | # CONFIG_CPU_R5000 is not set | 99 | # CONFIG_CPU_R5000 is not set |
93 | # CONFIG_CPU_R5432 is not set | 100 | # CONFIG_CPU_R5432 is not set |
101 | # CONFIG_CPU_R5500 is not set | ||
94 | # CONFIG_CPU_R6000 is not set | 102 | # CONFIG_CPU_R6000 is not set |
95 | # CONFIG_CPU_NEVADA is not set | 103 | # CONFIG_CPU_NEVADA is not set |
96 | # CONFIG_CPU_R8000 is not set | 104 | # CONFIG_CPU_R8000 is not set |
@@ -108,6 +116,7 @@ CONFIG_CPU_MIPSR2=y | |||
108 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y | 116 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y |
109 | CONFIG_SYS_SUPPORTS_64BIT_KERNEL=y | 117 | CONFIG_SYS_SUPPORTS_64BIT_KERNEL=y |
110 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y | 118 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y |
119 | CONFIG_HARDWARE_WATCHPOINTS=y | ||
111 | 120 | ||
112 | # | 121 | # |
113 | # Kernel type | 122 | # Kernel type |
@@ -125,6 +134,8 @@ CONFIG_CPU_HAS_PREFETCH=y | |||
125 | CONFIG_MIPS_MT_SMP=y | 134 | CONFIG_MIPS_MT_SMP=y |
126 | # CONFIG_MIPS_MT_SMTC is not set | 135 | # CONFIG_MIPS_MT_SMTC is not set |
127 | CONFIG_MIPS_MT=y | 136 | CONFIG_MIPS_MT=y |
137 | # CONFIG_SCHED_SMT is not set | ||
138 | CONFIG_SYS_SUPPORTS_SCHED_SMT=y | ||
128 | CONFIG_SYS_SUPPORTS_MULTITHREADING=y | 139 | CONFIG_SYS_SUPPORTS_MULTITHREADING=y |
129 | CONFIG_MIPS_MT_FPAFF=y | 140 | CONFIG_MIPS_MT_FPAFF=y |
130 | # CONFIG_MIPS_VPE_LOADER is not set | 141 | # CONFIG_MIPS_VPE_LOADER is not set |
@@ -132,7 +143,6 @@ CONFIG_CPU_HAS_LLSC=y | |||
132 | # CONFIG_CPU_HAS_SMARTMIPS is not set | 143 | # CONFIG_CPU_HAS_SMARTMIPS is not set |
133 | CONFIG_CPU_MIPSR2_IRQ_VI=y | 144 | CONFIG_CPU_MIPSR2_IRQ_VI=y |
134 | CONFIG_CPU_MIPSR2_IRQ_EI=y | 145 | CONFIG_CPU_MIPSR2_IRQ_EI=y |
135 | CONFIG_CPU_MIPSR2_SRS=y | ||
136 | CONFIG_CPU_HAS_SYNC=y | 146 | CONFIG_CPU_HAS_SYNC=y |
137 | CONFIG_GENERIC_HARDIRQS=y | 147 | CONFIG_GENERIC_HARDIRQS=y |
138 | CONFIG_GENERIC_IRQ_PROBE=y | 148 | CONFIG_GENERIC_IRQ_PROBE=y |
@@ -140,22 +150,30 @@ CONFIG_IRQ_PER_CPU=y | |||
140 | CONFIG_CPU_SUPPORTS_HIGHMEM=y | 150 | CONFIG_CPU_SUPPORTS_HIGHMEM=y |
141 | CONFIG_SYS_SUPPORTS_SMARTMIPS=y | 151 | CONFIG_SYS_SUPPORTS_SMARTMIPS=y |
142 | CONFIG_ARCH_FLATMEM_ENABLE=y | 152 | CONFIG_ARCH_FLATMEM_ENABLE=y |
153 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
143 | CONFIG_SELECT_MEMORY_MODEL=y | 154 | CONFIG_SELECT_MEMORY_MODEL=y |
144 | CONFIG_FLATMEM_MANUAL=y | 155 | CONFIG_FLATMEM_MANUAL=y |
145 | # CONFIG_DISCONTIGMEM_MANUAL is not set | 156 | # CONFIG_DISCONTIGMEM_MANUAL is not set |
146 | # CONFIG_SPARSEMEM_MANUAL is not set | 157 | # CONFIG_SPARSEMEM_MANUAL is not set |
147 | CONFIG_FLATMEM=y | 158 | CONFIG_FLATMEM=y |
148 | CONFIG_FLAT_NODE_MEM_MAP=y | 159 | CONFIG_FLAT_NODE_MEM_MAP=y |
149 | # CONFIG_SPARSEMEM_STATIC is not set | 160 | CONFIG_PAGEFLAGS_EXTENDED=y |
150 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 161 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
151 | # CONFIG_RESOURCES_64BIT is not set | 162 | # CONFIG_RESOURCES_64BIT is not set |
163 | # CONFIG_PHYS_ADDR_T_64BIT is not set | ||
152 | CONFIG_ZONE_DMA_FLAG=1 | 164 | CONFIG_ZONE_DMA_FLAG=1 |
153 | CONFIG_BOUNCE=y | 165 | CONFIG_BOUNCE=y |
154 | CONFIG_VIRT_TO_BUS=y | 166 | CONFIG_VIRT_TO_BUS=y |
167 | CONFIG_UNEVICTABLE_LRU=y | ||
155 | CONFIG_SMP=y | 168 | CONFIG_SMP=y |
169 | CONFIG_SMP_UP=y | ||
156 | CONFIG_SYS_SUPPORTS_SMP=y | 170 | CONFIG_SYS_SUPPORTS_SMP=y |
157 | CONFIG_NR_CPUS_DEFAULT_2=y | 171 | CONFIG_NR_CPUS_DEFAULT_2=y |
158 | CONFIG_NR_CPUS=2 | 172 | CONFIG_NR_CPUS=2 |
173 | CONFIG_TICK_ONESHOT=y | ||
174 | CONFIG_NO_HZ=y | ||
175 | CONFIG_HIGH_RES_TIMERS=y | ||
176 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | ||
159 | # CONFIG_HZ_48 is not set | 177 | # CONFIG_HZ_48 is not set |
160 | CONFIG_HZ_100=y | 178 | CONFIG_HZ_100=y |
161 | # CONFIG_HZ_128 is not set | 179 | # CONFIG_HZ_128 is not set |
@@ -168,7 +186,6 @@ CONFIG_HZ=100 | |||
168 | CONFIG_PREEMPT_NONE=y | 186 | CONFIG_PREEMPT_NONE=y |
169 | # CONFIG_PREEMPT_VOLUNTARY is not set | 187 | # CONFIG_PREEMPT_VOLUNTARY is not set |
170 | # CONFIG_PREEMPT is not set | 188 | # CONFIG_PREEMPT is not set |
171 | CONFIG_PREEMPT_BKL=y | ||
172 | # CONFIG_KEXEC is not set | 189 | # CONFIG_KEXEC is not set |
173 | CONFIG_SECCOMP=y | 190 | CONFIG_SECCOMP=y |
174 | CONFIG_LOCKDEP_SUPPORT=y | 191 | CONFIG_LOCKDEP_SUPPORT=y |
@@ -189,13 +206,19 @@ CONFIG_SYSVIPC_SYSCTL=y | |||
189 | # CONFIG_POSIX_MQUEUE is not set | 206 | # CONFIG_POSIX_MQUEUE is not set |
190 | # CONFIG_BSD_PROCESS_ACCT is not set | 207 | # CONFIG_BSD_PROCESS_ACCT is not set |
191 | # CONFIG_TASKSTATS is not set | 208 | # CONFIG_TASKSTATS is not set |
192 | # CONFIG_USER_NS is not set | ||
193 | # CONFIG_AUDIT is not set | 209 | # CONFIG_AUDIT is not set |
194 | # CONFIG_IKCONFIG is not set | 210 | # CONFIG_IKCONFIG is not set |
195 | CONFIG_LOG_BUF_SHIFT=15 | 211 | CONFIG_LOG_BUF_SHIFT=15 |
196 | # CONFIG_CPUSETS is not set | 212 | # CONFIG_CGROUPS is not set |
213 | # CONFIG_GROUP_SCHED is not set | ||
197 | CONFIG_SYSFS_DEPRECATED=y | 214 | CONFIG_SYSFS_DEPRECATED=y |
215 | CONFIG_SYSFS_DEPRECATED_V2=y | ||
198 | CONFIG_RELAY=y | 216 | CONFIG_RELAY=y |
217 | CONFIG_NAMESPACES=y | ||
218 | CONFIG_UTS_NS=y | ||
219 | CONFIG_IPC_NS=y | ||
220 | # CONFIG_USER_NS is not set | ||
221 | CONFIG_PID_NS=y | ||
199 | # CONFIG_BLK_DEV_INITRD is not set | 222 | # CONFIG_BLK_DEV_INITRD is not set |
200 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | 223 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set |
201 | CONFIG_SYSCTL=y | 224 | CONFIG_SYSCTL=y |
@@ -207,6 +230,8 @@ CONFIG_HOTPLUG=y | |||
207 | CONFIG_PRINTK=y | 230 | CONFIG_PRINTK=y |
208 | CONFIG_BUG=y | 231 | CONFIG_BUG=y |
209 | CONFIG_ELF_CORE=y | 232 | CONFIG_ELF_CORE=y |
233 | CONFIG_PCSPKR_PLATFORM=y | ||
234 | # CONFIG_COMPAT_BRK is not set | ||
210 | CONFIG_BASE_FULL=y | 235 | CONFIG_BASE_FULL=y |
211 | CONFIG_FUTEX=y | 236 | CONFIG_FUTEX=y |
212 | CONFIG_ANON_INODES=y | 237 | CONFIG_ANON_INODES=y |
@@ -215,14 +240,23 @@ CONFIG_SIGNALFD=y | |||
215 | CONFIG_TIMERFD=y | 240 | CONFIG_TIMERFD=y |
216 | CONFIG_EVENTFD=y | 241 | CONFIG_EVENTFD=y |
217 | CONFIG_SHMEM=y | 242 | CONFIG_SHMEM=y |
243 | CONFIG_AIO=y | ||
218 | CONFIG_VM_EVENT_COUNTERS=y | 244 | CONFIG_VM_EVENT_COUNTERS=y |
245 | CONFIG_PCI_QUIRKS=y | ||
219 | CONFIG_SLAB=y | 246 | CONFIG_SLAB=y |
220 | # CONFIG_SLUB is not set | 247 | # CONFIG_SLUB is not set |
221 | # CONFIG_SLOB is not set | 248 | # CONFIG_SLOB is not set |
249 | # CONFIG_PROFILING is not set | ||
250 | # CONFIG_MARKERS is not set | ||
251 | CONFIG_HAVE_OPROFILE=y | ||
252 | CONFIG_USE_GENERIC_SMP_HELPERS=y | ||
253 | # CONFIG_HAVE_GENERIC_DMA_COHERENT is not set | ||
254 | CONFIG_SLABINFO=y | ||
222 | CONFIG_RT_MUTEXES=y | 255 | CONFIG_RT_MUTEXES=y |
223 | # CONFIG_TINY_SHMEM is not set | 256 | # CONFIG_TINY_SHMEM is not set |
224 | CONFIG_BASE_SMALL=0 | 257 | CONFIG_BASE_SMALL=0 |
225 | CONFIG_MODULES=y | 258 | CONFIG_MODULES=y |
259 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
226 | CONFIG_MODULE_UNLOAD=y | 260 | CONFIG_MODULE_UNLOAD=y |
227 | # CONFIG_MODULE_FORCE_UNLOAD is not set | 261 | # CONFIG_MODULE_FORCE_UNLOAD is not set |
228 | CONFIG_MODVERSIONS=y | 262 | CONFIG_MODVERSIONS=y |
@@ -234,6 +268,7 @@ CONFIG_BLOCK=y | |||
234 | # CONFIG_BLK_DEV_IO_TRACE is not set | 268 | # CONFIG_BLK_DEV_IO_TRACE is not set |
235 | # CONFIG_LSF is not set | 269 | # CONFIG_LSF is not set |
236 | # CONFIG_BLK_DEV_BSG is not set | 270 | # CONFIG_BLK_DEV_BSG is not set |
271 | # CONFIG_BLK_DEV_INTEGRITY is not set | ||
237 | 272 | ||
238 | # | 273 | # |
239 | # IO Schedulers | 274 | # IO Schedulers |
@@ -247,19 +282,19 @@ CONFIG_DEFAULT_AS=y | |||
247 | # CONFIG_DEFAULT_CFQ is not set | 282 | # CONFIG_DEFAULT_CFQ is not set |
248 | # CONFIG_DEFAULT_NOOP is not set | 283 | # CONFIG_DEFAULT_NOOP is not set |
249 | CONFIG_DEFAULT_IOSCHED="anticipatory" | 284 | CONFIG_DEFAULT_IOSCHED="anticipatory" |
285 | CONFIG_CLASSIC_RCU=y | ||
286 | # CONFIG_FREEZER is not set | ||
250 | 287 | ||
251 | # | 288 | # |
252 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) | 289 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) |
253 | # | 290 | # |
254 | CONFIG_HW_HAS_PCI=y | 291 | CONFIG_HW_HAS_PCI=y |
255 | CONFIG_PCI=y | 292 | CONFIG_PCI=y |
293 | CONFIG_PCI_DOMAINS=y | ||
256 | # CONFIG_ARCH_SUPPORTS_MSI is not set | 294 | # CONFIG_ARCH_SUPPORTS_MSI is not set |
295 | CONFIG_PCI_LEGACY=y | ||
257 | CONFIG_MMU=y | 296 | CONFIG_MMU=y |
258 | CONFIG_I8253=y | 297 | CONFIG_I8253=y |
259 | |||
260 | # | ||
261 | # PCCARD (PCMCIA/CardBus) support | ||
262 | # | ||
263 | # CONFIG_PCCARD is not set | 298 | # CONFIG_PCCARD is not set |
264 | # CONFIG_HOTPLUG_PCI is not set | 299 | # CONFIG_HOTPLUG_PCI is not set |
265 | 300 | ||
@@ -267,6 +302,8 @@ CONFIG_I8253=y | |||
267 | # Executable file formats | 302 | # Executable file formats |
268 | # | 303 | # |
269 | CONFIG_BINFMT_ELF=y | 304 | CONFIG_BINFMT_ELF=y |
305 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
306 | # CONFIG_HAVE_AOUT is not set | ||
270 | # CONFIG_BINFMT_MISC is not set | 307 | # CONFIG_BINFMT_MISC is not set |
271 | CONFIG_TRAD_SIGNALS=y | 308 | CONFIG_TRAD_SIGNALS=y |
272 | 309 | ||
@@ -274,12 +311,7 @@ CONFIG_TRAD_SIGNALS=y | |||
274 | # Power management options | 311 | # Power management options |
275 | # | 312 | # |
276 | CONFIG_PM=y | 313 | CONFIG_PM=y |
277 | # CONFIG_PM_LEGACY is not set | ||
278 | # CONFIG_PM_DEBUG is not set | 314 | # CONFIG_PM_DEBUG is not set |
279 | |||
280 | # | ||
281 | # Networking | ||
282 | # | ||
283 | CONFIG_NET=y | 315 | CONFIG_NET=y |
284 | 316 | ||
285 | # | 317 | # |
@@ -292,6 +324,8 @@ CONFIG_XFRM=y | |||
292 | CONFIG_XFRM_USER=m | 324 | CONFIG_XFRM_USER=m |
293 | # CONFIG_XFRM_SUB_POLICY is not set | 325 | # CONFIG_XFRM_SUB_POLICY is not set |
294 | CONFIG_XFRM_MIGRATE=y | 326 | CONFIG_XFRM_MIGRATE=y |
327 | # CONFIG_XFRM_STATISTICS is not set | ||
328 | CONFIG_XFRM_IPCOMP=m | ||
295 | CONFIG_NET_KEY=y | 329 | CONFIG_NET_KEY=y |
296 | CONFIG_NET_KEY_MIGRATE=y | 330 | CONFIG_NET_KEY_MIGRATE=y |
297 | CONFIG_INET=y | 331 | CONFIG_INET=y |
@@ -323,42 +357,13 @@ CONFIG_INET_TUNNEL=m | |||
323 | CONFIG_INET_XFRM_MODE_TRANSPORT=m | 357 | CONFIG_INET_XFRM_MODE_TRANSPORT=m |
324 | CONFIG_INET_XFRM_MODE_TUNNEL=m | 358 | CONFIG_INET_XFRM_MODE_TUNNEL=m |
325 | CONFIG_INET_XFRM_MODE_BEET=y | 359 | CONFIG_INET_XFRM_MODE_BEET=y |
360 | CONFIG_INET_LRO=m | ||
326 | CONFIG_INET_DIAG=y | 361 | CONFIG_INET_DIAG=y |
327 | CONFIG_INET_TCP_DIAG=y | 362 | CONFIG_INET_TCP_DIAG=y |
328 | # CONFIG_TCP_CONG_ADVANCED is not set | 363 | # CONFIG_TCP_CONG_ADVANCED is not set |
329 | CONFIG_TCP_CONG_CUBIC=y | 364 | CONFIG_TCP_CONG_CUBIC=y |
330 | CONFIG_DEFAULT_TCP_CONG="cubic" | 365 | CONFIG_DEFAULT_TCP_CONG="cubic" |
331 | CONFIG_TCP_MD5SIG=y | 366 | CONFIG_TCP_MD5SIG=y |
332 | CONFIG_IP_VS=m | ||
333 | # CONFIG_IP_VS_DEBUG is not set | ||
334 | CONFIG_IP_VS_TAB_BITS=12 | ||
335 | |||
336 | # | ||
337 | # IPVS transport protocol load balancing support | ||
338 | # | ||
339 | CONFIG_IP_VS_PROTO_TCP=y | ||
340 | CONFIG_IP_VS_PROTO_UDP=y | ||
341 | CONFIG_IP_VS_PROTO_ESP=y | ||
342 | CONFIG_IP_VS_PROTO_AH=y | ||
343 | |||
344 | # | ||
345 | # IPVS scheduler | ||
346 | # | ||
347 | CONFIG_IP_VS_RR=m | ||
348 | CONFIG_IP_VS_WRR=m | ||
349 | CONFIG_IP_VS_LC=m | ||
350 | CONFIG_IP_VS_WLC=m | ||
351 | CONFIG_IP_VS_LBLC=m | ||
352 | CONFIG_IP_VS_LBLCR=m | ||
353 | CONFIG_IP_VS_DH=m | ||
354 | CONFIG_IP_VS_SH=m | ||
355 | CONFIG_IP_VS_SED=m | ||
356 | CONFIG_IP_VS_NQ=m | ||
357 | |||
358 | # | ||
359 | # IPVS application helper | ||
360 | # | ||
361 | CONFIG_IP_VS_FTP=m | ||
362 | CONFIG_IPV6=m | 367 | CONFIG_IPV6=m |
363 | CONFIG_IPV6_PRIVACY=y | 368 | CONFIG_IPV6_PRIVACY=y |
364 | CONFIG_IPV6_ROUTER_PREF=y | 369 | CONFIG_IPV6_ROUTER_PREF=y |
@@ -375,11 +380,15 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m | |||
375 | CONFIG_INET6_XFRM_MODE_BEET=m | 380 | CONFIG_INET6_XFRM_MODE_BEET=m |
376 | # CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set | 381 | # CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set |
377 | CONFIG_IPV6_SIT=m | 382 | CONFIG_IPV6_SIT=m |
383 | CONFIG_IPV6_NDISC_NODETYPE=y | ||
378 | CONFIG_IPV6_TUNNEL=m | 384 | CONFIG_IPV6_TUNNEL=m |
379 | # CONFIG_IPV6_MULTIPLE_TABLES is not set | 385 | # CONFIG_IPV6_MULTIPLE_TABLES is not set |
386 | CONFIG_IPV6_MROUTE=y | ||
387 | CONFIG_IPV6_PIMSM_V2=y | ||
380 | CONFIG_NETWORK_SECMARK=y | 388 | CONFIG_NETWORK_SECMARK=y |
381 | CONFIG_NETFILTER=y | 389 | CONFIG_NETFILTER=y |
382 | # CONFIG_NETFILTER_DEBUG is not set | 390 | # CONFIG_NETFILTER_DEBUG is not set |
391 | CONFIG_NETFILTER_ADVANCED=y | ||
383 | CONFIG_BRIDGE_NETFILTER=y | 392 | CONFIG_BRIDGE_NETFILTER=y |
384 | 393 | ||
385 | # | 394 | # |
@@ -388,12 +397,12 @@ CONFIG_BRIDGE_NETFILTER=y | |||
388 | CONFIG_NETFILTER_NETLINK=m | 397 | CONFIG_NETFILTER_NETLINK=m |
389 | CONFIG_NETFILTER_NETLINK_QUEUE=m | 398 | CONFIG_NETFILTER_NETLINK_QUEUE=m |
390 | CONFIG_NETFILTER_NETLINK_LOG=m | 399 | CONFIG_NETFILTER_NETLINK_LOG=m |
391 | CONFIG_NF_CONNTRACK_ENABLED=m | ||
392 | CONFIG_NF_CONNTRACK=m | 400 | CONFIG_NF_CONNTRACK=m |
393 | CONFIG_NF_CT_ACCT=y | 401 | CONFIG_NF_CT_ACCT=y |
394 | CONFIG_NF_CONNTRACK_MARK=y | 402 | CONFIG_NF_CONNTRACK_MARK=y |
395 | CONFIG_NF_CONNTRACK_SECMARK=y | 403 | CONFIG_NF_CONNTRACK_SECMARK=y |
396 | CONFIG_NF_CONNTRACK_EVENTS=y | 404 | CONFIG_NF_CONNTRACK_EVENTS=y |
405 | CONFIG_NF_CT_PROTO_DCCP=m | ||
397 | CONFIG_NF_CT_PROTO_GRE=m | 406 | CONFIG_NF_CT_PROTO_GRE=m |
398 | CONFIG_NF_CT_PROTO_SCTP=m | 407 | CONFIG_NF_CT_PROTO_SCTP=m |
399 | CONFIG_NF_CT_PROTO_UDPLITE=m | 408 | CONFIG_NF_CT_PROTO_UDPLITE=m |
@@ -407,18 +416,22 @@ CONFIG_NF_CONNTRACK_SANE=m | |||
407 | CONFIG_NF_CONNTRACK_SIP=m | 416 | CONFIG_NF_CONNTRACK_SIP=m |
408 | CONFIG_NF_CONNTRACK_TFTP=m | 417 | CONFIG_NF_CONNTRACK_TFTP=m |
409 | CONFIG_NF_CT_NETLINK=m | 418 | CONFIG_NF_CT_NETLINK=m |
419 | CONFIG_NETFILTER_TPROXY=m | ||
410 | CONFIG_NETFILTER_XTABLES=m | 420 | CONFIG_NETFILTER_XTABLES=m |
411 | CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m | 421 | CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m |
412 | CONFIG_NETFILTER_XT_TARGET_CONNMARK=m | 422 | CONFIG_NETFILTER_XT_TARGET_CONNMARK=m |
423 | # CONFIG_NETFILTER_XT_TARGET_CONNSECMARK is not set | ||
413 | # CONFIG_NETFILTER_XT_TARGET_DSCP is not set | 424 | # CONFIG_NETFILTER_XT_TARGET_DSCP is not set |
414 | CONFIG_NETFILTER_XT_TARGET_MARK=m | 425 | CONFIG_NETFILTER_XT_TARGET_MARK=m |
415 | CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m | ||
416 | CONFIG_NETFILTER_XT_TARGET_NFLOG=m | 426 | CONFIG_NETFILTER_XT_TARGET_NFLOG=m |
427 | CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m | ||
417 | CONFIG_NETFILTER_XT_TARGET_NOTRACK=m | 428 | CONFIG_NETFILTER_XT_TARGET_NOTRACK=m |
429 | CONFIG_NETFILTER_XT_TARGET_RATEEST=m | ||
430 | CONFIG_NETFILTER_XT_TARGET_TPROXY=m | ||
418 | CONFIG_NETFILTER_XT_TARGET_TRACE=m | 431 | CONFIG_NETFILTER_XT_TARGET_TRACE=m |
419 | CONFIG_NETFILTER_XT_TARGET_SECMARK=m | 432 | CONFIG_NETFILTER_XT_TARGET_SECMARK=m |
420 | # CONFIG_NETFILTER_XT_TARGET_CONNSECMARK is not set | ||
421 | CONFIG_NETFILTER_XT_TARGET_TCPMSS=m | 433 | CONFIG_NETFILTER_XT_TARGET_TCPMSS=m |
434 | CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m | ||
422 | CONFIG_NETFILTER_XT_MATCH_COMMENT=m | 435 | CONFIG_NETFILTER_XT_MATCH_COMMENT=m |
423 | CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m | 436 | CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m |
424 | CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m | 437 | CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m |
@@ -427,40 +440,76 @@ CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m | |||
427 | CONFIG_NETFILTER_XT_MATCH_DCCP=m | 440 | CONFIG_NETFILTER_XT_MATCH_DCCP=m |
428 | # CONFIG_NETFILTER_XT_MATCH_DSCP is not set | 441 | # CONFIG_NETFILTER_XT_MATCH_DSCP is not set |
429 | CONFIG_NETFILTER_XT_MATCH_ESP=m | 442 | CONFIG_NETFILTER_XT_MATCH_ESP=m |
443 | CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m | ||
430 | CONFIG_NETFILTER_XT_MATCH_HELPER=m | 444 | CONFIG_NETFILTER_XT_MATCH_HELPER=m |
445 | CONFIG_NETFILTER_XT_MATCH_IPRANGE=m | ||
431 | CONFIG_NETFILTER_XT_MATCH_LENGTH=m | 446 | CONFIG_NETFILTER_XT_MATCH_LENGTH=m |
432 | CONFIG_NETFILTER_XT_MATCH_LIMIT=m | 447 | CONFIG_NETFILTER_XT_MATCH_LIMIT=m |
433 | CONFIG_NETFILTER_XT_MATCH_MAC=m | 448 | CONFIG_NETFILTER_XT_MATCH_MAC=m |
434 | CONFIG_NETFILTER_XT_MATCH_MARK=m | 449 | CONFIG_NETFILTER_XT_MATCH_MARK=m |
435 | CONFIG_NETFILTER_XT_MATCH_POLICY=m | ||
436 | CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m | 450 | CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m |
451 | CONFIG_NETFILTER_XT_MATCH_OWNER=m | ||
452 | CONFIG_NETFILTER_XT_MATCH_POLICY=m | ||
437 | # CONFIG_NETFILTER_XT_MATCH_PHYSDEV is not set | 453 | # CONFIG_NETFILTER_XT_MATCH_PHYSDEV is not set |
438 | CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m | 454 | CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m |
439 | CONFIG_NETFILTER_XT_MATCH_QUOTA=m | 455 | CONFIG_NETFILTER_XT_MATCH_QUOTA=m |
456 | CONFIG_NETFILTER_XT_MATCH_RATEEST=m | ||
440 | CONFIG_NETFILTER_XT_MATCH_REALM=m | 457 | CONFIG_NETFILTER_XT_MATCH_REALM=m |
458 | CONFIG_NETFILTER_XT_MATCH_RECENT=m | ||
459 | # CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT is not set | ||
441 | CONFIG_NETFILTER_XT_MATCH_SCTP=m | 460 | CONFIG_NETFILTER_XT_MATCH_SCTP=m |
461 | CONFIG_NETFILTER_XT_MATCH_SOCKET=m | ||
442 | CONFIG_NETFILTER_XT_MATCH_STATE=m | 462 | CONFIG_NETFILTER_XT_MATCH_STATE=m |
443 | CONFIG_NETFILTER_XT_MATCH_STATISTIC=m | 463 | CONFIG_NETFILTER_XT_MATCH_STATISTIC=m |
444 | CONFIG_NETFILTER_XT_MATCH_STRING=m | 464 | CONFIG_NETFILTER_XT_MATCH_STRING=m |
445 | CONFIG_NETFILTER_XT_MATCH_TCPMSS=m | 465 | CONFIG_NETFILTER_XT_MATCH_TCPMSS=m |
466 | CONFIG_NETFILTER_XT_MATCH_TIME=m | ||
446 | CONFIG_NETFILTER_XT_MATCH_U32=m | 467 | CONFIG_NETFILTER_XT_MATCH_U32=m |
447 | CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m | 468 | CONFIG_IP_VS=m |
469 | CONFIG_IP_VS_IPV6=y | ||
470 | # CONFIG_IP_VS_DEBUG is not set | ||
471 | CONFIG_IP_VS_TAB_BITS=12 | ||
472 | |||
473 | # | ||
474 | # IPVS transport protocol load balancing support | ||
475 | # | ||
476 | CONFIG_IP_VS_PROTO_TCP=y | ||
477 | CONFIG_IP_VS_PROTO_UDP=y | ||
478 | CONFIG_IP_VS_PROTO_AH_ESP=y | ||
479 | CONFIG_IP_VS_PROTO_ESP=y | ||
480 | CONFIG_IP_VS_PROTO_AH=y | ||
481 | |||
482 | # | ||
483 | # IPVS scheduler | ||
484 | # | ||
485 | CONFIG_IP_VS_RR=m | ||
486 | CONFIG_IP_VS_WRR=m | ||
487 | CONFIG_IP_VS_LC=m | ||
488 | CONFIG_IP_VS_WLC=m | ||
489 | CONFIG_IP_VS_LBLC=m | ||
490 | CONFIG_IP_VS_LBLCR=m | ||
491 | CONFIG_IP_VS_DH=m | ||
492 | CONFIG_IP_VS_SH=m | ||
493 | CONFIG_IP_VS_SED=m | ||
494 | CONFIG_IP_VS_NQ=m | ||
495 | |||
496 | # | ||
497 | # IPVS application helper | ||
498 | # | ||
499 | CONFIG_IP_VS_FTP=m | ||
448 | 500 | ||
449 | # | 501 | # |
450 | # IP: Netfilter Configuration | 502 | # IP: Netfilter Configuration |
451 | # | 503 | # |
504 | CONFIG_NF_DEFRAG_IPV4=m | ||
452 | CONFIG_NF_CONNTRACK_IPV4=m | 505 | CONFIG_NF_CONNTRACK_IPV4=m |
453 | CONFIG_NF_CONNTRACK_PROC_COMPAT=y | 506 | CONFIG_NF_CONNTRACK_PROC_COMPAT=y |
454 | CONFIG_IP_NF_QUEUE=m | 507 | CONFIG_IP_NF_QUEUE=m |
455 | CONFIG_IP_NF_IPTABLES=m | 508 | CONFIG_IP_NF_IPTABLES=m |
456 | CONFIG_IP_NF_MATCH_IPRANGE=m | 509 | CONFIG_IP_NF_MATCH_ADDRTYPE=m |
457 | CONFIG_IP_NF_MATCH_TOS=m | ||
458 | CONFIG_IP_NF_MATCH_RECENT=m | ||
459 | CONFIG_IP_NF_MATCH_ECN=m | ||
460 | CONFIG_IP_NF_MATCH_AH=m | 510 | CONFIG_IP_NF_MATCH_AH=m |
511 | CONFIG_IP_NF_MATCH_ECN=m | ||
461 | CONFIG_IP_NF_MATCH_TTL=m | 512 | CONFIG_IP_NF_MATCH_TTL=m |
462 | CONFIG_IP_NF_MATCH_OWNER=m | ||
463 | CONFIG_IP_NF_MATCH_ADDRTYPE=m | ||
464 | CONFIG_IP_NF_FILTER=m | 513 | CONFIG_IP_NF_FILTER=m |
465 | CONFIG_IP_NF_TARGET_REJECT=m | 514 | CONFIG_IP_NF_TARGET_REJECT=m |
466 | CONFIG_IP_NF_TARGET_LOG=m | 515 | CONFIG_IP_NF_TARGET_LOG=m |
@@ -468,11 +517,13 @@ CONFIG_IP_NF_TARGET_ULOG=m | |||
468 | CONFIG_NF_NAT=m | 517 | CONFIG_NF_NAT=m |
469 | CONFIG_NF_NAT_NEEDED=y | 518 | CONFIG_NF_NAT_NEEDED=y |
470 | CONFIG_IP_NF_TARGET_MASQUERADE=m | 519 | CONFIG_IP_NF_TARGET_MASQUERADE=m |
471 | CONFIG_IP_NF_TARGET_REDIRECT=m | ||
472 | CONFIG_IP_NF_TARGET_NETMAP=m | 520 | CONFIG_IP_NF_TARGET_NETMAP=m |
473 | CONFIG_IP_NF_TARGET_SAME=m | 521 | CONFIG_IP_NF_TARGET_REDIRECT=m |
474 | CONFIG_NF_NAT_SNMP_BASIC=m | 522 | CONFIG_NF_NAT_SNMP_BASIC=m |
523 | CONFIG_NF_NAT_PROTO_DCCP=m | ||
475 | CONFIG_NF_NAT_PROTO_GRE=m | 524 | CONFIG_NF_NAT_PROTO_GRE=m |
525 | CONFIG_NF_NAT_PROTO_UDPLITE=m | ||
526 | CONFIG_NF_NAT_PROTO_SCTP=m | ||
476 | CONFIG_NF_NAT_FTP=m | 527 | CONFIG_NF_NAT_FTP=m |
477 | CONFIG_NF_NAT_IRC=m | 528 | CONFIG_NF_NAT_IRC=m |
478 | CONFIG_NF_NAT_TFTP=m | 529 | CONFIG_NF_NAT_TFTP=m |
@@ -481,40 +532,34 @@ CONFIG_NF_NAT_PPTP=m | |||
481 | CONFIG_NF_NAT_H323=m | 532 | CONFIG_NF_NAT_H323=m |
482 | CONFIG_NF_NAT_SIP=m | 533 | CONFIG_NF_NAT_SIP=m |
483 | CONFIG_IP_NF_MANGLE=m | 534 | CONFIG_IP_NF_MANGLE=m |
484 | CONFIG_IP_NF_TARGET_TOS=m | 535 | CONFIG_IP_NF_TARGET_CLUSTERIP=m |
485 | CONFIG_IP_NF_TARGET_ECN=m | 536 | CONFIG_IP_NF_TARGET_ECN=m |
486 | CONFIG_IP_NF_TARGET_TTL=m | 537 | CONFIG_IP_NF_TARGET_TTL=m |
487 | CONFIG_IP_NF_TARGET_CLUSTERIP=m | ||
488 | CONFIG_IP_NF_RAW=m | 538 | CONFIG_IP_NF_RAW=m |
489 | CONFIG_IP_NF_ARPTABLES=m | 539 | CONFIG_IP_NF_ARPTABLES=m |
490 | CONFIG_IP_NF_ARPFILTER=m | 540 | CONFIG_IP_NF_ARPFILTER=m |
491 | CONFIG_IP_NF_ARP_MANGLE=m | 541 | CONFIG_IP_NF_ARP_MANGLE=m |
492 | 542 | ||
493 | # | 543 | # |
494 | # IPv6: Netfilter Configuration (EXPERIMENTAL) | 544 | # IPv6: Netfilter Configuration |
495 | # | 545 | # |
496 | CONFIG_NF_CONNTRACK_IPV6=m | 546 | CONFIG_NF_CONNTRACK_IPV6=m |
497 | CONFIG_IP6_NF_QUEUE=m | 547 | CONFIG_IP6_NF_QUEUE=m |
498 | CONFIG_IP6_NF_IPTABLES=m | 548 | CONFIG_IP6_NF_IPTABLES=m |
499 | CONFIG_IP6_NF_MATCH_RT=m | 549 | CONFIG_IP6_NF_MATCH_AH=m |
500 | CONFIG_IP6_NF_MATCH_OPTS=m | 550 | CONFIG_IP6_NF_MATCH_EUI64=m |
501 | CONFIG_IP6_NF_MATCH_FRAG=m | 551 | CONFIG_IP6_NF_MATCH_FRAG=m |
552 | CONFIG_IP6_NF_MATCH_OPTS=m | ||
502 | CONFIG_IP6_NF_MATCH_HL=m | 553 | CONFIG_IP6_NF_MATCH_HL=m |
503 | CONFIG_IP6_NF_MATCH_OWNER=m | ||
504 | CONFIG_IP6_NF_MATCH_IPV6HEADER=m | 554 | CONFIG_IP6_NF_MATCH_IPV6HEADER=m |
505 | CONFIG_IP6_NF_MATCH_AH=m | ||
506 | CONFIG_IP6_NF_MATCH_MH=m | 555 | CONFIG_IP6_NF_MATCH_MH=m |
507 | CONFIG_IP6_NF_MATCH_EUI64=m | 556 | CONFIG_IP6_NF_MATCH_RT=m |
508 | CONFIG_IP6_NF_FILTER=m | ||
509 | CONFIG_IP6_NF_TARGET_LOG=m | 557 | CONFIG_IP6_NF_TARGET_LOG=m |
558 | CONFIG_IP6_NF_FILTER=m | ||
510 | CONFIG_IP6_NF_TARGET_REJECT=m | 559 | CONFIG_IP6_NF_TARGET_REJECT=m |
511 | CONFIG_IP6_NF_MANGLE=m | 560 | CONFIG_IP6_NF_MANGLE=m |
512 | CONFIG_IP6_NF_TARGET_HL=m | 561 | CONFIG_IP6_NF_TARGET_HL=m |
513 | CONFIG_IP6_NF_RAW=m | 562 | CONFIG_IP6_NF_RAW=m |
514 | |||
515 | # | ||
516 | # Bridge: Netfilter Configuration | ||
517 | # | ||
518 | CONFIG_BRIDGE_NF_EBTABLES=m | 563 | CONFIG_BRIDGE_NF_EBTABLES=m |
519 | CONFIG_BRIDGE_EBT_BROUTE=m | 564 | CONFIG_BRIDGE_EBT_BROUTE=m |
520 | CONFIG_BRIDGE_EBT_T_FILTER=m | 565 | CONFIG_BRIDGE_EBT_T_FILTER=m |
@@ -523,6 +568,7 @@ CONFIG_BRIDGE_EBT_802_3=m | |||
523 | CONFIG_BRIDGE_EBT_AMONG=m | 568 | CONFIG_BRIDGE_EBT_AMONG=m |
524 | CONFIG_BRIDGE_EBT_ARP=m | 569 | CONFIG_BRIDGE_EBT_ARP=m |
525 | CONFIG_BRIDGE_EBT_IP=m | 570 | CONFIG_BRIDGE_EBT_IP=m |
571 | CONFIG_BRIDGE_EBT_IP6=m | ||
526 | CONFIG_BRIDGE_EBT_LIMIT=m | 572 | CONFIG_BRIDGE_EBT_LIMIT=m |
527 | CONFIG_BRIDGE_EBT_MARK=m | 573 | CONFIG_BRIDGE_EBT_MARK=m |
528 | CONFIG_BRIDGE_EBT_PKTTYPE=m | 574 | CONFIG_BRIDGE_EBT_PKTTYPE=m |
@@ -535,6 +581,7 @@ CONFIG_BRIDGE_EBT_REDIRECT=m | |||
535 | CONFIG_BRIDGE_EBT_SNAT=m | 581 | CONFIG_BRIDGE_EBT_SNAT=m |
536 | CONFIG_BRIDGE_EBT_LOG=m | 582 | CONFIG_BRIDGE_EBT_LOG=m |
537 | CONFIG_BRIDGE_EBT_ULOG=m | 583 | CONFIG_BRIDGE_EBT_ULOG=m |
584 | CONFIG_BRIDGE_EBT_NFLOG=m | ||
538 | # CONFIG_IP_DCCP is not set | 585 | # CONFIG_IP_DCCP is not set |
539 | CONFIG_IP_SCTP=m | 586 | CONFIG_IP_SCTP=m |
540 | # CONFIG_SCTP_DBG_MSG is not set | 587 | # CONFIG_SCTP_DBG_MSG is not set |
@@ -544,8 +591,12 @@ CONFIG_IP_SCTP=m | |||
544 | CONFIG_SCTP_HMAC_MD5=y | 591 | CONFIG_SCTP_HMAC_MD5=y |
545 | # CONFIG_TIPC is not set | 592 | # CONFIG_TIPC is not set |
546 | # CONFIG_ATM is not set | 593 | # CONFIG_ATM is not set |
594 | CONFIG_STP=m | ||
595 | CONFIG_GARP=m | ||
547 | CONFIG_BRIDGE=m | 596 | CONFIG_BRIDGE=m |
597 | # CONFIG_NET_DSA is not set | ||
548 | CONFIG_VLAN_8021Q=m | 598 | CONFIG_VLAN_8021Q=m |
599 | CONFIG_VLAN_8021Q_GVRP=y | ||
549 | # CONFIG_DECNET is not set | 600 | # CONFIG_DECNET is not set |
550 | CONFIG_LLC=m | 601 | CONFIG_LLC=m |
551 | # CONFIG_LLC2 is not set | 602 | # CONFIG_LLC2 is not set |
@@ -559,12 +610,7 @@ CONFIG_IPDDP_DECAP=y | |||
559 | # CONFIG_LAPB is not set | 610 | # CONFIG_LAPB is not set |
560 | # CONFIG_ECONET is not set | 611 | # CONFIG_ECONET is not set |
561 | # CONFIG_WAN_ROUTER is not set | 612 | # CONFIG_WAN_ROUTER is not set |
562 | |||
563 | # | ||
564 | # QoS and/or fair queueing | ||
565 | # | ||
566 | CONFIG_NET_SCHED=y | 613 | CONFIG_NET_SCHED=y |
567 | CONFIG_NET_SCH_FIFO=y | ||
568 | 614 | ||
569 | # | 615 | # |
570 | # Queueing/Scheduling | 616 | # Queueing/Scheduling |
@@ -573,7 +619,7 @@ CONFIG_NET_SCH_CBQ=m | |||
573 | CONFIG_NET_SCH_HTB=m | 619 | CONFIG_NET_SCH_HTB=m |
574 | CONFIG_NET_SCH_HFSC=m | 620 | CONFIG_NET_SCH_HFSC=m |
575 | CONFIG_NET_SCH_PRIO=m | 621 | CONFIG_NET_SCH_PRIO=m |
576 | CONFIG_NET_SCH_RR=m | 622 | # CONFIG_NET_SCH_MULTIQ is not set |
577 | CONFIG_NET_SCH_RED=m | 623 | CONFIG_NET_SCH_RED=m |
578 | CONFIG_NET_SCH_SFQ=m | 624 | CONFIG_NET_SCH_SFQ=m |
579 | CONFIG_NET_SCH_TEQL=m | 625 | CONFIG_NET_SCH_TEQL=m |
@@ -597,6 +643,7 @@ CONFIG_NET_CLS_U32=m | |||
597 | # CONFIG_CLS_U32_MARK is not set | 643 | # CONFIG_CLS_U32_MARK is not set |
598 | CONFIG_NET_CLS_RSVP=m | 644 | CONFIG_NET_CLS_RSVP=m |
599 | CONFIG_NET_CLS_RSVP6=m | 645 | CONFIG_NET_CLS_RSVP6=m |
646 | CONFIG_NET_CLS_FLOW=m | ||
600 | # CONFIG_NET_EMATCH is not set | 647 | # CONFIG_NET_EMATCH is not set |
601 | CONFIG_NET_CLS_ACT=y | 648 | CONFIG_NET_CLS_ACT=y |
602 | CONFIG_NET_ACT_POLICE=y | 649 | CONFIG_NET_ACT_POLICE=y |
@@ -604,37 +651,51 @@ CONFIG_NET_ACT_GACT=m | |||
604 | CONFIG_GACT_PROB=y | 651 | CONFIG_GACT_PROB=y |
605 | CONFIG_NET_ACT_MIRRED=m | 652 | CONFIG_NET_ACT_MIRRED=m |
606 | CONFIG_NET_ACT_IPT=m | 653 | CONFIG_NET_ACT_IPT=m |
654 | CONFIG_NET_ACT_NAT=m | ||
607 | CONFIG_NET_ACT_PEDIT=m | 655 | CONFIG_NET_ACT_PEDIT=m |
608 | CONFIG_NET_ACT_SIMP=m | 656 | CONFIG_NET_ACT_SIMP=m |
609 | CONFIG_NET_CLS_POLICE=y | 657 | CONFIG_NET_ACT_SKBEDIT=m |
610 | CONFIG_NET_CLS_IND=y | 658 | CONFIG_NET_CLS_IND=y |
659 | CONFIG_NET_SCH_FIFO=y | ||
611 | 660 | ||
612 | # | 661 | # |
613 | # Network testing | 662 | # Network testing |
614 | # | 663 | # |
615 | # CONFIG_NET_PKTGEN is not set | 664 | # CONFIG_NET_PKTGEN is not set |
616 | # CONFIG_HAMRADIO is not set | 665 | # CONFIG_HAMRADIO is not set |
666 | # CONFIG_CAN is not set | ||
617 | # CONFIG_IRDA is not set | 667 | # CONFIG_IRDA is not set |
618 | # CONFIG_BT is not set | 668 | # CONFIG_BT is not set |
619 | # CONFIG_AF_RXRPC is not set | 669 | # CONFIG_AF_RXRPC is not set |
670 | CONFIG_PHONET=m | ||
620 | CONFIG_FIB_RULES=y | 671 | CONFIG_FIB_RULES=y |
621 | 672 | CONFIG_WIRELESS=y | |
622 | # | ||
623 | # Wireless | ||
624 | # | ||
625 | CONFIG_CFG80211=m | 673 | CONFIG_CFG80211=m |
674 | CONFIG_NL80211=y | ||
675 | CONFIG_WIRELESS_OLD_REGULATORY=y | ||
626 | CONFIG_WIRELESS_EXT=y | 676 | CONFIG_WIRELESS_EXT=y |
677 | CONFIG_WIRELESS_EXT_SYSFS=y | ||
627 | CONFIG_MAC80211=m | 678 | CONFIG_MAC80211=m |
628 | # CONFIG_MAC80211_DEBUG is not set | 679 | |
680 | # | ||
681 | # Rate control algorithm selection | ||
682 | # | ||
683 | CONFIG_MAC80211_RC_PID=y | ||
684 | CONFIG_MAC80211_RC_MINSTREL=y | ||
685 | CONFIG_MAC80211_RC_DEFAULT_PID=y | ||
686 | # CONFIG_MAC80211_RC_DEFAULT_MINSTREL is not set | ||
687 | CONFIG_MAC80211_RC_DEFAULT="pid" | ||
688 | CONFIG_MAC80211_MESH=y | ||
689 | CONFIG_MAC80211_LEDS=y | ||
690 | # CONFIG_MAC80211_DEBUG_MENU is not set | ||
629 | CONFIG_IEEE80211=m | 691 | CONFIG_IEEE80211=m |
630 | # CONFIG_IEEE80211_DEBUG is not set | 692 | # CONFIG_IEEE80211_DEBUG is not set |
631 | CONFIG_IEEE80211_CRYPT_WEP=m | 693 | CONFIG_IEEE80211_CRYPT_WEP=m |
632 | CONFIG_IEEE80211_CRYPT_CCMP=m | 694 | CONFIG_IEEE80211_CRYPT_CCMP=m |
633 | CONFIG_IEEE80211_CRYPT_TKIP=m | 695 | CONFIG_IEEE80211_CRYPT_TKIP=m |
634 | CONFIG_IEEE80211_SOFTMAC=m | ||
635 | # CONFIG_IEEE80211_SOFTMAC_DEBUG is not set | ||
636 | CONFIG_RFKILL=m | 696 | CONFIG_RFKILL=m |
637 | CONFIG_RFKILL_INPUT=m | 697 | CONFIG_RFKILL_INPUT=m |
698 | CONFIG_RFKILL_LEDS=y | ||
638 | # CONFIG_NET_9P is not set | 699 | # CONFIG_NET_9P is not set |
639 | 700 | ||
640 | # | 701 | # |
@@ -644,9 +705,12 @@ CONFIG_RFKILL_INPUT=m | |||
644 | # | 705 | # |
645 | # Generic Driver Options | 706 | # Generic Driver Options |
646 | # | 707 | # |
708 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||
647 | CONFIG_STANDALONE=y | 709 | CONFIG_STANDALONE=y |
648 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 710 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
649 | CONFIG_FW_LOADER=y | 711 | CONFIG_FW_LOADER=y |
712 | CONFIG_FIRMWARE_IN_KERNEL=y | ||
713 | CONFIG_EXTRA_FIRMWARE="" | ||
650 | # CONFIG_SYS_HYPERVISOR is not set | 714 | # CONFIG_SYS_HYPERVISOR is not set |
651 | CONFIG_CONNECTOR=m | 715 | CONFIG_CONNECTOR=m |
652 | CONFIG_MTD=y | 716 | CONFIG_MTD=y |
@@ -655,6 +719,7 @@ CONFIG_MTD=y | |||
655 | CONFIG_MTD_PARTITIONS=y | 719 | CONFIG_MTD_PARTITIONS=y |
656 | # CONFIG_MTD_REDBOOT_PARTS is not set | 720 | # CONFIG_MTD_REDBOOT_PARTS is not set |
657 | # CONFIG_MTD_CMDLINE_PARTS is not set | 721 | # CONFIG_MTD_CMDLINE_PARTS is not set |
722 | # CONFIG_MTD_AR7_PARTS is not set | ||
658 | 723 | ||
659 | # | 724 | # |
660 | # User Modules And Translation Layers | 725 | # User Modules And Translation Layers |
@@ -667,6 +732,7 @@ CONFIG_MTD_BLOCK=y | |||
667 | # CONFIG_INFTL is not set | 732 | # CONFIG_INFTL is not set |
668 | # CONFIG_RFD_FTL is not set | 733 | # CONFIG_RFD_FTL is not set |
669 | # CONFIG_SSFDC is not set | 734 | # CONFIG_SSFDC is not set |
735 | CONFIG_MTD_OOPS=m | ||
670 | 736 | ||
671 | # | 737 | # |
672 | # RAM/ROM/Flash chip drivers | 738 | # RAM/ROM/Flash chip drivers |
@@ -701,6 +767,7 @@ CONFIG_MTD_PHYSMAP=y | |||
701 | CONFIG_MTD_PHYSMAP_START=0x0 | 767 | CONFIG_MTD_PHYSMAP_START=0x0 |
702 | CONFIG_MTD_PHYSMAP_LEN=0x0 | 768 | CONFIG_MTD_PHYSMAP_LEN=0x0 |
703 | CONFIG_MTD_PHYSMAP_BANKWIDTH=0 | 769 | CONFIG_MTD_PHYSMAP_BANKWIDTH=0 |
770 | # CONFIG_MTD_INTEL_VR_NOR is not set | ||
704 | # CONFIG_MTD_PLATRAM is not set | 771 | # CONFIG_MTD_PLATRAM is not set |
705 | 772 | ||
706 | # | 773 | # |
@@ -748,25 +815,26 @@ CONFIG_BLK_DEV_NBD=m | |||
748 | CONFIG_BLK_DEV_RAM=y | 815 | CONFIG_BLK_DEV_RAM=y |
749 | CONFIG_BLK_DEV_RAM_COUNT=16 | 816 | CONFIG_BLK_DEV_RAM_COUNT=16 |
750 | CONFIG_BLK_DEV_RAM_SIZE=4096 | 817 | CONFIG_BLK_DEV_RAM_SIZE=4096 |
751 | CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 | 818 | # CONFIG_BLK_DEV_XIP is not set |
752 | CONFIG_CDROM_PKTCDVD=m | 819 | CONFIG_CDROM_PKTCDVD=m |
753 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 820 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
754 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 821 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
755 | CONFIG_ATA_OVER_ETH=m | 822 | CONFIG_ATA_OVER_ETH=m |
823 | # CONFIG_BLK_DEV_HD is not set | ||
756 | # CONFIG_MISC_DEVICES is not set | 824 | # CONFIG_MISC_DEVICES is not set |
825 | CONFIG_HAVE_IDE=y | ||
757 | CONFIG_IDE=y | 826 | CONFIG_IDE=y |
758 | CONFIG_IDE_MAX_HWIFS=4 | ||
759 | CONFIG_BLK_DEV_IDE=y | ||
760 | 827 | ||
761 | # | 828 | # |
762 | # Please see Documentation/ide.txt for help/info on IDE drives | 829 | # Please see Documentation/ide/ide.txt for help/info on IDE drives |
763 | # | 830 | # |
764 | # CONFIG_BLK_DEV_IDE_SATA is not set | 831 | # CONFIG_BLK_DEV_IDE_SATA is not set |
765 | CONFIG_BLK_DEV_IDEDISK=y | 832 | CONFIG_IDE_GD=y |
766 | # CONFIG_IDEDISK_MULTI_MODE is not set | 833 | CONFIG_IDE_GD_ATA=y |
834 | # CONFIG_IDE_GD_ATAPI is not set | ||
767 | CONFIG_BLK_DEV_IDECD=y | 835 | CONFIG_BLK_DEV_IDECD=y |
836 | CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y | ||
768 | # CONFIG_BLK_DEV_IDETAPE is not set | 837 | # CONFIG_BLK_DEV_IDETAPE is not set |
769 | # CONFIG_BLK_DEV_IDEFLOPPY is not set | ||
770 | # CONFIG_BLK_DEV_IDESCSI is not set | 838 | # CONFIG_BLK_DEV_IDESCSI is not set |
771 | # CONFIG_IDE_TASK_IOCTL is not set | 839 | # CONFIG_IDE_TASK_IOCTL is not set |
772 | CONFIG_IDE_PROC_FS=y | 840 | CONFIG_IDE_PROC_FS=y |
@@ -775,24 +843,25 @@ CONFIG_IDE_PROC_FS=y | |||
775 | # IDE chipset support/bugfixes | 843 | # IDE chipset support/bugfixes |
776 | # | 844 | # |
777 | CONFIG_IDE_GENERIC=y | 845 | CONFIG_IDE_GENERIC=y |
846 | # CONFIG_BLK_DEV_PLATFORM is not set | ||
847 | CONFIG_BLK_DEV_IDEDMA_SFF=y | ||
848 | |||
849 | # | ||
850 | # PCI IDE chipsets support | ||
851 | # | ||
778 | CONFIG_BLK_DEV_IDEPCI=y | 852 | CONFIG_BLK_DEV_IDEPCI=y |
779 | # CONFIG_IDEPCI_SHARE_IRQ is not set | ||
780 | CONFIG_IDEPCI_PCIBUS_ORDER=y | 853 | CONFIG_IDEPCI_PCIBUS_ORDER=y |
781 | # CONFIG_BLK_DEV_OFFBOARD is not set | 854 | # CONFIG_BLK_DEV_OFFBOARD is not set |
782 | CONFIG_BLK_DEV_GENERIC=y | 855 | CONFIG_BLK_DEV_GENERIC=y |
783 | # CONFIG_BLK_DEV_OPTI621 is not set | 856 | # CONFIG_BLK_DEV_OPTI621 is not set |
784 | CONFIG_BLK_DEV_IDEDMA_PCI=y | 857 | CONFIG_BLK_DEV_IDEDMA_PCI=y |
785 | # CONFIG_BLK_DEV_IDEDMA_FORCED is not set | ||
786 | # CONFIG_IDEDMA_ONLYDISK is not set | ||
787 | # CONFIG_BLK_DEV_AEC62XX is not set | 858 | # CONFIG_BLK_DEV_AEC62XX is not set |
788 | # CONFIG_BLK_DEV_ALI15X3 is not set | 859 | # CONFIG_BLK_DEV_ALI15X3 is not set |
789 | # CONFIG_BLK_DEV_AMD74XX is not set | 860 | # CONFIG_BLK_DEV_AMD74XX is not set |
790 | # CONFIG_BLK_DEV_CMD64X is not set | 861 | # CONFIG_BLK_DEV_CMD64X is not set |
791 | # CONFIG_BLK_DEV_TRIFLEX is not set | 862 | # CONFIG_BLK_DEV_TRIFLEX is not set |
792 | # CONFIG_BLK_DEV_CY82C693 is not set | ||
793 | # CONFIG_BLK_DEV_CS5520 is not set | 863 | # CONFIG_BLK_DEV_CS5520 is not set |
794 | # CONFIG_BLK_DEV_CS5530 is not set | 864 | # CONFIG_BLK_DEV_CS5530 is not set |
795 | # CONFIG_BLK_DEV_HPT34X is not set | ||
796 | # CONFIG_BLK_DEV_HPT366 is not set | 865 | # CONFIG_BLK_DEV_HPT366 is not set |
797 | # CONFIG_BLK_DEV_JMICRON is not set | 866 | # CONFIG_BLK_DEV_JMICRON is not set |
798 | # CONFIG_BLK_DEV_SC1200 is not set | 867 | # CONFIG_BLK_DEV_SC1200 is not set |
@@ -808,10 +877,7 @@ CONFIG_BLK_DEV_IT8213=m | |||
808 | # CONFIG_BLK_DEV_TRM290 is not set | 877 | # CONFIG_BLK_DEV_TRM290 is not set |
809 | # CONFIG_BLK_DEV_VIA82CXXX is not set | 878 | # CONFIG_BLK_DEV_VIA82CXXX is not set |
810 | CONFIG_BLK_DEV_TC86C001=m | 879 | CONFIG_BLK_DEV_TC86C001=m |
811 | # CONFIG_IDE_ARM is not set | ||
812 | CONFIG_BLK_DEV_IDEDMA=y | 880 | CONFIG_BLK_DEV_IDEDMA=y |
813 | # CONFIG_IDEDMA_IVB is not set | ||
814 | # CONFIG_BLK_DEV_HD is not set | ||
815 | 881 | ||
816 | # | 882 | # |
817 | # SCSI device support | 883 | # SCSI device support |
@@ -848,8 +914,10 @@ CONFIG_SCSI_WAIT_SCAN=m | |||
848 | # | 914 | # |
849 | CONFIG_SCSI_SPI_ATTRS=m | 915 | CONFIG_SCSI_SPI_ATTRS=m |
850 | CONFIG_SCSI_FC_ATTRS=m | 916 | CONFIG_SCSI_FC_ATTRS=m |
917 | # CONFIG_SCSI_FC_TGT_ATTRS is not set | ||
851 | CONFIG_SCSI_ISCSI_ATTRS=m | 918 | CONFIG_SCSI_ISCSI_ATTRS=m |
852 | # CONFIG_SCSI_SAS_LIBSAS is not set | 919 | # CONFIG_SCSI_SAS_LIBSAS is not set |
920 | # CONFIG_SCSI_SRP_ATTRS is not set | ||
853 | CONFIG_SCSI_LOWLEVEL=y | 921 | CONFIG_SCSI_LOWLEVEL=y |
854 | CONFIG_ISCSI_TCP=m | 922 | CONFIG_ISCSI_TCP=m |
855 | CONFIG_BLK_DEV_3W_XXXX_RAID=m | 923 | CONFIG_BLK_DEV_3W_XXXX_RAID=m |
@@ -866,6 +934,7 @@ CONFIG_AIC7XXX_REG_PRETTY_PRINT=y | |||
866 | # CONFIG_SCSI_AIC79XX is not set | 934 | # CONFIG_SCSI_AIC79XX is not set |
867 | # CONFIG_SCSI_AIC94XX is not set | 935 | # CONFIG_SCSI_AIC94XX is not set |
868 | # CONFIG_SCSI_DPT_I2O is not set | 936 | # CONFIG_SCSI_DPT_I2O is not set |
937 | # CONFIG_SCSI_ADVANSYS is not set | ||
869 | # CONFIG_SCSI_ARCMSR is not set | 938 | # CONFIG_SCSI_ARCMSR is not set |
870 | # CONFIG_MEGARAID_NEWGEN is not set | 939 | # CONFIG_MEGARAID_NEWGEN is not set |
871 | # CONFIG_MEGARAID_LEGACY is not set | 940 | # CONFIG_MEGARAID_LEGACY is not set |
@@ -876,6 +945,7 @@ CONFIG_AIC7XXX_REG_PRETTY_PRINT=y | |||
876 | # CONFIG_SCSI_IPS is not set | 945 | # CONFIG_SCSI_IPS is not set |
877 | # CONFIG_SCSI_INITIO is not set | 946 | # CONFIG_SCSI_INITIO is not set |
878 | # CONFIG_SCSI_INIA100 is not set | 947 | # CONFIG_SCSI_INIA100 is not set |
948 | # CONFIG_SCSI_MVSAS is not set | ||
879 | # CONFIG_SCSI_STEX is not set | 949 | # CONFIG_SCSI_STEX is not set |
880 | # CONFIG_SCSI_SYM53C8XX_2 is not set | 950 | # CONFIG_SCSI_SYM53C8XX_2 is not set |
881 | # CONFIG_SCSI_QLOGIC_1280 is not set | 951 | # CONFIG_SCSI_QLOGIC_1280 is not set |
@@ -887,6 +957,7 @@ CONFIG_AIC7XXX_REG_PRETTY_PRINT=y | |||
887 | # CONFIG_SCSI_NSP32 is not set | 957 | # CONFIG_SCSI_NSP32 is not set |
888 | # CONFIG_SCSI_DEBUG is not set | 958 | # CONFIG_SCSI_DEBUG is not set |
889 | # CONFIG_SCSI_SRP is not set | 959 | # CONFIG_SCSI_SRP is not set |
960 | # CONFIG_SCSI_DH is not set | ||
890 | # CONFIG_ATA is not set | 961 | # CONFIG_ATA is not set |
891 | CONFIG_MD=y | 962 | CONFIG_MD=y |
892 | CONFIG_BLK_DEV_MD=m | 963 | CONFIG_BLK_DEV_MD=m |
@@ -905,32 +976,28 @@ CONFIG_DM_SNAPSHOT=m | |||
905 | CONFIG_DM_MIRROR=m | 976 | CONFIG_DM_MIRROR=m |
906 | CONFIG_DM_ZERO=m | 977 | CONFIG_DM_ZERO=m |
907 | CONFIG_DM_MULTIPATH=m | 978 | CONFIG_DM_MULTIPATH=m |
908 | CONFIG_DM_MULTIPATH_EMC=m | ||
909 | CONFIG_DM_MULTIPATH_RDAC=m | ||
910 | # CONFIG_DM_DELAY is not set | 979 | # CONFIG_DM_DELAY is not set |
980 | # CONFIG_DM_UEVENT is not set | ||
981 | # CONFIG_FUSION is not set | ||
911 | 982 | ||
912 | # | 983 | # |
913 | # Fusion MPT device support | 984 | # IEEE 1394 (FireWire) support |
914 | # | 985 | # |
915 | # CONFIG_FUSION is not set | ||
916 | # CONFIG_FUSION_SPI is not set | ||
917 | # CONFIG_FUSION_FC is not set | ||
918 | # CONFIG_FUSION_SAS is not set | ||
919 | 986 | ||
920 | # | 987 | # |
921 | # IEEE 1394 (FireWire) support | 988 | # Enable only one of the two stacks, unless you know what you are doing |
922 | # | 989 | # |
923 | # CONFIG_FIREWIRE is not set | 990 | # CONFIG_FIREWIRE is not set |
924 | # CONFIG_IEEE1394 is not set | 991 | # CONFIG_IEEE1394 is not set |
925 | # CONFIG_I2O is not set | 992 | # CONFIG_I2O is not set |
926 | CONFIG_NETDEVICES=y | 993 | CONFIG_NETDEVICES=y |
927 | CONFIG_NETDEVICES_MULTIQUEUE=y | ||
928 | CONFIG_IFB=m | 994 | CONFIG_IFB=m |
929 | CONFIG_DUMMY=m | 995 | CONFIG_DUMMY=m |
930 | CONFIG_BONDING=m | 996 | CONFIG_BONDING=m |
931 | CONFIG_MACVLAN=m | 997 | CONFIG_MACVLAN=m |
932 | CONFIG_EQUALIZER=m | 998 | CONFIG_EQUALIZER=m |
933 | CONFIG_TUN=m | 999 | CONFIG_TUN=m |
1000 | CONFIG_VETH=m | ||
934 | # CONFIG_ARCNET is not set | 1001 | # CONFIG_ARCNET is not set |
935 | CONFIG_PHYLIB=m | 1002 | CONFIG_PHYLIB=m |
936 | 1003 | ||
@@ -946,26 +1013,34 @@ CONFIG_VITESSE_PHY=m | |||
946 | CONFIG_SMSC_PHY=m | 1013 | CONFIG_SMSC_PHY=m |
947 | CONFIG_BROADCOM_PHY=m | 1014 | CONFIG_BROADCOM_PHY=m |
948 | CONFIG_ICPLUS_PHY=m | 1015 | CONFIG_ICPLUS_PHY=m |
949 | # CONFIG_FIXED_PHY is not set | 1016 | CONFIG_REALTEK_PHY=m |
1017 | CONFIG_MDIO_BITBANG=m | ||
950 | CONFIG_NET_ETHERNET=y | 1018 | CONFIG_NET_ETHERNET=y |
951 | CONFIG_MII=y | 1019 | CONFIG_MII=y |
952 | CONFIG_AX88796=m | 1020 | CONFIG_AX88796=m |
1021 | # CONFIG_AX88796_93CX6 is not set | ||
953 | # CONFIG_HAPPYMEAL is not set | 1022 | # CONFIG_HAPPYMEAL is not set |
954 | # CONFIG_SUNGEM is not set | 1023 | # CONFIG_SUNGEM is not set |
955 | # CONFIG_CASSINI is not set | 1024 | # CONFIG_CASSINI is not set |
956 | # CONFIG_NET_VENDOR_3COM is not set | 1025 | # CONFIG_NET_VENDOR_3COM is not set |
1026 | # CONFIG_SMC91X is not set | ||
957 | # CONFIG_DM9000 is not set | 1027 | # CONFIG_DM9000 is not set |
958 | # CONFIG_NET_TULIP is not set | 1028 | # CONFIG_NET_TULIP is not set |
959 | # CONFIG_HP100 is not set | 1029 | # CONFIG_HP100 is not set |
1030 | # CONFIG_IBM_NEW_EMAC_ZMII is not set | ||
1031 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | ||
1032 | # CONFIG_IBM_NEW_EMAC_TAH is not set | ||
1033 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set | ||
1034 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | ||
1035 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | ||
1036 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | ||
960 | CONFIG_NET_PCI=y | 1037 | CONFIG_NET_PCI=y |
961 | CONFIG_PCNET32=y | 1038 | CONFIG_PCNET32=y |
962 | # CONFIG_PCNET32_NAPI is not set | ||
963 | # CONFIG_AMD8111_ETH is not set | 1039 | # CONFIG_AMD8111_ETH is not set |
964 | # CONFIG_ADAPTEC_STARFIRE is not set | 1040 | # CONFIG_ADAPTEC_STARFIRE is not set |
965 | # CONFIG_B44 is not set | 1041 | # CONFIG_B44 is not set |
966 | # CONFIG_FORCEDETH is not set | 1042 | # CONFIG_FORCEDETH is not set |
967 | CONFIG_TC35815=m | 1043 | CONFIG_TC35815=m |
968 | # CONFIG_DGRS is not set | ||
969 | # CONFIG_EEPRO100 is not set | 1044 | # CONFIG_EEPRO100 is not set |
970 | # CONFIG_E100 is not set | 1045 | # CONFIG_E100 is not set |
971 | # CONFIG_FEALNX is not set | 1046 | # CONFIG_FEALNX is not set |
@@ -973,16 +1048,21 @@ CONFIG_TC35815=m | |||
973 | # CONFIG_NE2K_PCI is not set | 1048 | # CONFIG_NE2K_PCI is not set |
974 | # CONFIG_8139CP is not set | 1049 | # CONFIG_8139CP is not set |
975 | # CONFIG_8139TOO is not set | 1050 | # CONFIG_8139TOO is not set |
1051 | # CONFIG_R6040 is not set | ||
976 | # CONFIG_SIS900 is not set | 1052 | # CONFIG_SIS900 is not set |
977 | # CONFIG_EPIC100 is not set | 1053 | # CONFIG_EPIC100 is not set |
978 | # CONFIG_SUNDANCE is not set | 1054 | # CONFIG_SUNDANCE is not set |
979 | # CONFIG_TLAN is not set | 1055 | # CONFIG_TLAN is not set |
980 | # CONFIG_VIA_RHINE is not set | 1056 | # CONFIG_VIA_RHINE is not set |
981 | # CONFIG_SC92031 is not set | 1057 | # CONFIG_SC92031 is not set |
1058 | # CONFIG_ATL2 is not set | ||
982 | CONFIG_NETDEV_1000=y | 1059 | CONFIG_NETDEV_1000=y |
983 | # CONFIG_ACENIC is not set | 1060 | # CONFIG_ACENIC is not set |
984 | # CONFIG_DL2K is not set | 1061 | # CONFIG_DL2K is not set |
985 | # CONFIG_E1000 is not set | 1062 | # CONFIG_E1000 is not set |
1063 | # CONFIG_E1000E is not set | ||
1064 | # CONFIG_IP1000 is not set | ||
1065 | # CONFIG_IGB is not set | ||
986 | # CONFIG_NS83820 is not set | 1066 | # CONFIG_NS83820 is not set |
987 | # CONFIG_HAMACHI is not set | 1067 | # CONFIG_HAMACHI is not set |
988 | # CONFIG_YELLOWFIN is not set | 1068 | # CONFIG_YELLOWFIN is not set |
@@ -995,14 +1075,24 @@ CONFIG_NETDEV_1000=y | |||
995 | # CONFIG_BNX2 is not set | 1075 | # CONFIG_BNX2 is not set |
996 | # CONFIG_QLA3XXX is not set | 1076 | # CONFIG_QLA3XXX is not set |
997 | # CONFIG_ATL1 is not set | 1077 | # CONFIG_ATL1 is not set |
1078 | # CONFIG_ATL1E is not set | ||
1079 | # CONFIG_JME is not set | ||
998 | CONFIG_NETDEV_10000=y | 1080 | CONFIG_NETDEV_10000=y |
999 | # CONFIG_CHELSIO_T1 is not set | 1081 | # CONFIG_CHELSIO_T1 is not set |
1000 | CONFIG_CHELSIO_T3=m | 1082 | CONFIG_CHELSIO_T3=m |
1083 | # CONFIG_ENIC is not set | ||
1084 | # CONFIG_IXGBE is not set | ||
1001 | # CONFIG_IXGB is not set | 1085 | # CONFIG_IXGB is not set |
1002 | # CONFIG_S2IO is not set | 1086 | # CONFIG_S2IO is not set |
1003 | # CONFIG_MYRI10GE is not set | 1087 | # CONFIG_MYRI10GE is not set |
1004 | CONFIG_NETXEN_NIC=m | 1088 | CONFIG_NETXEN_NIC=m |
1089 | # CONFIG_NIU is not set | ||
1090 | # CONFIG_MLX4_EN is not set | ||
1005 | # CONFIG_MLX4_CORE is not set | 1091 | # CONFIG_MLX4_CORE is not set |
1092 | # CONFIG_TEHUTI is not set | ||
1093 | # CONFIG_BNX2X is not set | ||
1094 | # CONFIG_QLGE is not set | ||
1095 | # CONFIG_SFC is not set | ||
1006 | # CONFIG_TR is not set | 1096 | # CONFIG_TR is not set |
1007 | 1097 | ||
1008 | # | 1098 | # |
@@ -1022,6 +1112,7 @@ CONFIG_IPW2200_QOS=y | |||
1022 | # CONFIG_IPW2200_DEBUG is not set | 1112 | # CONFIG_IPW2200_DEBUG is not set |
1023 | CONFIG_LIBERTAS=m | 1113 | CONFIG_LIBERTAS=m |
1024 | # CONFIG_LIBERTAS_DEBUG is not set | 1114 | # CONFIG_LIBERTAS_DEBUG is not set |
1115 | # CONFIG_LIBERTAS_THINFIRM is not set | ||
1025 | CONFIG_HERMES=m | 1116 | CONFIG_HERMES=m |
1026 | CONFIG_PLX_HERMES=m | 1117 | CONFIG_PLX_HERMES=m |
1027 | CONFIG_TMD_HERMES=m | 1118 | CONFIG_TMD_HERMES=m |
@@ -1030,25 +1121,30 @@ CONFIG_PCI_HERMES=m | |||
1030 | CONFIG_ATMEL=m | 1121 | CONFIG_ATMEL=m |
1031 | CONFIG_PCI_ATMEL=m | 1122 | CONFIG_PCI_ATMEL=m |
1032 | CONFIG_PRISM54=m | 1123 | CONFIG_PRISM54=m |
1124 | # CONFIG_RTL8180 is not set | ||
1125 | # CONFIG_ADM8211 is not set | ||
1126 | # CONFIG_MAC80211_HWSIM is not set | ||
1127 | # CONFIG_P54_COMMON is not set | ||
1128 | # CONFIG_ATH5K is not set | ||
1129 | # CONFIG_ATH9K is not set | ||
1130 | # CONFIG_IWLCORE is not set | ||
1131 | # CONFIG_IWLWIFI_LEDS is not set | ||
1132 | # CONFIG_IWLAGN is not set | ||
1133 | # CONFIG_IWL3945 is not set | ||
1033 | CONFIG_HOSTAP=m | 1134 | CONFIG_HOSTAP=m |
1034 | CONFIG_HOSTAP_FIRMWARE=y | 1135 | CONFIG_HOSTAP_FIRMWARE=y |
1035 | CONFIG_HOSTAP_FIRMWARE_NVRAM=y | 1136 | CONFIG_HOSTAP_FIRMWARE_NVRAM=y |
1036 | CONFIG_HOSTAP_PLX=m | 1137 | CONFIG_HOSTAP_PLX=m |
1037 | CONFIG_HOSTAP_PCI=m | 1138 | CONFIG_HOSTAP_PCI=m |
1038 | CONFIG_BCM43XX=m | 1139 | # CONFIG_B43 is not set |
1039 | CONFIG_BCM43XX_DEBUG=y | 1140 | # CONFIG_B43LEGACY is not set |
1040 | CONFIG_BCM43XX_DMA=y | 1141 | # CONFIG_RT2X00 is not set |
1041 | CONFIG_BCM43XX_PIO=y | ||
1042 | CONFIG_BCM43XX_DMA_AND_PIO_MODE=y | ||
1043 | # CONFIG_BCM43XX_DMA_MODE is not set | ||
1044 | # CONFIG_BCM43XX_PIO_MODE is not set | ||
1045 | # CONFIG_WAN is not set | 1142 | # CONFIG_WAN is not set |
1046 | # CONFIG_FDDI is not set | 1143 | # CONFIG_FDDI is not set |
1047 | # CONFIG_HIPPI is not set | 1144 | # CONFIG_HIPPI is not set |
1048 | # CONFIG_PPP is not set | 1145 | # CONFIG_PPP is not set |
1049 | # CONFIG_SLIP is not set | 1146 | # CONFIG_SLIP is not set |
1050 | # CONFIG_NET_FC is not set | 1147 | # CONFIG_NET_FC is not set |
1051 | # CONFIG_SHAPER is not set | ||
1052 | # CONFIG_NETCONSOLE is not set | 1148 | # CONFIG_NETCONSOLE is not set |
1053 | # CONFIG_NETPOLL is not set | 1149 | # CONFIG_NETPOLL is not set |
1054 | # CONFIG_NET_POLL_CONTROLLER is not set | 1150 | # CONFIG_NET_POLL_CONTROLLER is not set |
@@ -1070,7 +1166,6 @@ CONFIG_INPUT_MOUSEDEV_PSAUX=y | |||
1070 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | 1166 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 |
1071 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | 1167 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 |
1072 | # CONFIG_INPUT_JOYDEV is not set | 1168 | # CONFIG_INPUT_JOYDEV is not set |
1073 | # CONFIG_INPUT_TSDEV is not set | ||
1074 | # CONFIG_INPUT_EVDEV is not set | 1169 | # CONFIG_INPUT_EVDEV is not set |
1075 | # CONFIG_INPUT_EVBUG is not set | 1170 | # CONFIG_INPUT_EVBUG is not set |
1076 | 1171 | ||
@@ -1099,10 +1194,13 @@ CONFIG_SERIO_SERPORT=y | |||
1099 | # Character devices | 1194 | # Character devices |
1100 | # | 1195 | # |
1101 | CONFIG_VT=y | 1196 | CONFIG_VT=y |
1197 | CONFIG_CONSOLE_TRANSLATIONS=y | ||
1102 | CONFIG_VT_CONSOLE=y | 1198 | CONFIG_VT_CONSOLE=y |
1103 | CONFIG_HW_CONSOLE=y | 1199 | CONFIG_HW_CONSOLE=y |
1104 | CONFIG_VT_HW_CONSOLE_BINDING=y | 1200 | CONFIG_VT_HW_CONSOLE_BINDING=y |
1201 | CONFIG_DEVKMEM=y | ||
1105 | # CONFIG_SERIAL_NONSTANDARD is not set | 1202 | # CONFIG_SERIAL_NONSTANDARD is not set |
1203 | # CONFIG_NOZOMI is not set | ||
1106 | 1204 | ||
1107 | # | 1205 | # |
1108 | # Serial drivers | 1206 | # Serial drivers |
@@ -1124,101 +1222,165 @@ CONFIG_UNIX98_PTYS=y | |||
1124 | CONFIG_LEGACY_PTYS=y | 1222 | CONFIG_LEGACY_PTYS=y |
1125 | CONFIG_LEGACY_PTY_COUNT=256 | 1223 | CONFIG_LEGACY_PTY_COUNT=256 |
1126 | # CONFIG_IPMI_HANDLER is not set | 1224 | # CONFIG_IPMI_HANDLER is not set |
1127 | # CONFIG_WATCHDOG is not set | ||
1128 | CONFIG_HW_RANDOM=m | 1225 | CONFIG_HW_RANDOM=m |
1129 | CONFIG_RTC=y | ||
1130 | # CONFIG_R3964 is not set | 1226 | # CONFIG_R3964 is not set |
1131 | # CONFIG_APPLICOM is not set | 1227 | # CONFIG_APPLICOM is not set |
1132 | # CONFIG_DRM is not set | ||
1133 | # CONFIG_RAW_DRIVER is not set | 1228 | # CONFIG_RAW_DRIVER is not set |
1134 | # CONFIG_TCG_TPM is not set | 1229 | # CONFIG_TCG_TPM is not set |
1135 | CONFIG_DEVPORT=y | 1230 | CONFIG_DEVPORT=y |
1136 | # CONFIG_I2C is not set | 1231 | # CONFIG_I2C is not set |
1137 | |||
1138 | # | ||
1139 | # SPI support | ||
1140 | # | ||
1141 | # CONFIG_SPI is not set | 1232 | # CONFIG_SPI is not set |
1142 | # CONFIG_SPI_MASTER is not set | ||
1143 | # CONFIG_W1 is not set | 1233 | # CONFIG_W1 is not set |
1144 | # CONFIG_POWER_SUPPLY is not set | 1234 | # CONFIG_POWER_SUPPLY is not set |
1145 | # CONFIG_HWMON is not set | 1235 | # CONFIG_HWMON is not set |
1236 | # CONFIG_THERMAL is not set | ||
1237 | # CONFIG_THERMAL_HWMON is not set | ||
1238 | # CONFIG_WATCHDOG is not set | ||
1239 | CONFIG_SSB_POSSIBLE=y | ||
1240 | |||
1241 | # | ||
1242 | # Sonics Silicon Backplane | ||
1243 | # | ||
1244 | # CONFIG_SSB is not set | ||
1146 | 1245 | ||
1147 | # | 1246 | # |
1148 | # Multifunction device drivers | 1247 | # Multifunction device drivers |
1149 | # | 1248 | # |
1249 | # CONFIG_MFD_CORE is not set | ||
1150 | # CONFIG_MFD_SM501 is not set | 1250 | # CONFIG_MFD_SM501 is not set |
1251 | # CONFIG_HTC_PASIC3 is not set | ||
1252 | # CONFIG_MFD_TMIO is not set | ||
1253 | # CONFIG_REGULATOR is not set | ||
1151 | 1254 | ||
1152 | # | 1255 | # |
1153 | # Multimedia devices | 1256 | # Multimedia devices |
1154 | # | 1257 | # |
1258 | |||
1259 | # | ||
1260 | # Multimedia core support | ||
1261 | # | ||
1155 | # CONFIG_VIDEO_DEV is not set | 1262 | # CONFIG_VIDEO_DEV is not set |
1156 | # CONFIG_DVB_CORE is not set | 1263 | # CONFIG_DVB_CORE is not set |
1264 | # CONFIG_VIDEO_MEDIA is not set | ||
1265 | |||
1266 | # | ||
1267 | # Multimedia drivers | ||
1268 | # | ||
1157 | # CONFIG_DAB is not set | 1269 | # CONFIG_DAB is not set |
1158 | 1270 | ||
1159 | # | 1271 | # |
1160 | # Graphics support | 1272 | # Graphics support |
1161 | # | 1273 | # |
1274 | # CONFIG_DRM is not set | ||
1275 | # CONFIG_VGASTATE is not set | ||
1276 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | ||
1277 | # CONFIG_FB is not set | ||
1162 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | 1278 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set |
1163 | 1279 | ||
1164 | # | 1280 | # |
1165 | # Display device support | 1281 | # Display device support |
1166 | # | 1282 | # |
1167 | # CONFIG_DISPLAY_SUPPORT is not set | 1283 | # CONFIG_DISPLAY_SUPPORT is not set |
1168 | # CONFIG_VGASTATE is not set | ||
1169 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | ||
1170 | # CONFIG_FB is not set | ||
1171 | 1284 | ||
1172 | # | 1285 | # |
1173 | # Console display driver support | 1286 | # Console display driver support |
1174 | # | 1287 | # |
1175 | # CONFIG_VGA_CONSOLE is not set | 1288 | # CONFIG_VGA_CONSOLE is not set |
1176 | CONFIG_DUMMY_CONSOLE=y | 1289 | CONFIG_DUMMY_CONSOLE=y |
1177 | |||
1178 | # | ||
1179 | # Sound | ||
1180 | # | ||
1181 | # CONFIG_SOUND is not set | 1290 | # CONFIG_SOUND is not set |
1182 | CONFIG_HID_SUPPORT=y | 1291 | CONFIG_HID_SUPPORT=y |
1183 | CONFIG_HID=m | 1292 | CONFIG_HID=m |
1184 | # CONFIG_HID_DEBUG is not set | 1293 | # CONFIG_HID_DEBUG is not set |
1294 | # CONFIG_HIDRAW is not set | ||
1295 | # CONFIG_HID_PID is not set | ||
1296 | |||
1297 | # | ||
1298 | # Special HID drivers | ||
1299 | # | ||
1300 | CONFIG_HID_COMPAT=y | ||
1185 | CONFIG_USB_SUPPORT=y | 1301 | CONFIG_USB_SUPPORT=y |
1186 | CONFIG_USB_ARCH_HAS_HCD=y | 1302 | CONFIG_USB_ARCH_HAS_HCD=y |
1187 | CONFIG_USB_ARCH_HAS_OHCI=y | 1303 | CONFIG_USB_ARCH_HAS_OHCI=y |
1188 | CONFIG_USB_ARCH_HAS_EHCI=y | 1304 | CONFIG_USB_ARCH_HAS_EHCI=y |
1189 | # CONFIG_USB is not set | 1305 | # CONFIG_USB is not set |
1306 | # CONFIG_USB_OTG_WHITELIST is not set | ||
1307 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set | ||
1190 | 1308 | ||
1191 | # | 1309 | # |
1192 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | 1310 | # Enable Host or Gadget support to see Inventra options |
1193 | # | 1311 | # |
1194 | 1312 | ||
1195 | # | 1313 | # |
1196 | # USB Gadget Support | 1314 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed; |
1197 | # | 1315 | # |
1198 | # CONFIG_USB_GADGET is not set | 1316 | # CONFIG_USB_GADGET is not set |
1317 | # CONFIG_UWB is not set | ||
1199 | # CONFIG_MMC is not set | 1318 | # CONFIG_MMC is not set |
1200 | # CONFIG_NEW_LEDS is not set | 1319 | # CONFIG_MEMSTICK is not set |
1320 | CONFIG_NEW_LEDS=y | ||
1321 | CONFIG_LEDS_CLASS=m | ||
1322 | |||
1323 | # | ||
1324 | # LED drivers | ||
1325 | # | ||
1326 | |||
1327 | # | ||
1328 | # LED Triggers | ||
1329 | # | ||
1330 | CONFIG_LEDS_TRIGGERS=y | ||
1331 | CONFIG_LEDS_TRIGGER_TIMER=m | ||
1332 | CONFIG_LEDS_TRIGGER_IDE_DISK=y | ||
1333 | CONFIG_LEDS_TRIGGER_HEARTBEAT=m | ||
1334 | CONFIG_LEDS_TRIGGER_BACKLIGHT=m | ||
1335 | CONFIG_LEDS_TRIGGER_DEFAULT_ON=m | ||
1336 | # CONFIG_ACCESSIBILITY is not set | ||
1201 | # CONFIG_INFINIBAND is not set | 1337 | # CONFIG_INFINIBAND is not set |
1202 | # CONFIG_RTC_CLASS is not set | 1338 | CONFIG_RTC_LIB=y |
1339 | CONFIG_RTC_CLASS=y | ||
1340 | CONFIG_RTC_HCTOSYS=y | ||
1341 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | ||
1342 | # CONFIG_RTC_DEBUG is not set | ||
1203 | 1343 | ||
1204 | # | 1344 | # |
1205 | # DMA Engine support | 1345 | # RTC interfaces |
1206 | # | 1346 | # |
1207 | # CONFIG_DMA_ENGINE is not set | 1347 | CONFIG_RTC_INTF_SYSFS=y |
1348 | CONFIG_RTC_INTF_PROC=y | ||
1349 | CONFIG_RTC_INTF_DEV=y | ||
1350 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | ||
1351 | # CONFIG_RTC_DRV_TEST is not set | ||
1208 | 1352 | ||
1209 | # | 1353 | # |
1210 | # DMA Clients | 1354 | # SPI RTC drivers |
1211 | # | 1355 | # |
1212 | 1356 | ||
1213 | # | 1357 | # |
1214 | # DMA Devices | 1358 | # Platform RTC drivers |
1215 | # | 1359 | # |
1360 | CONFIG_RTC_DRV_CMOS=y | ||
1361 | # CONFIG_RTC_DRV_DS1286 is not set | ||
1362 | # CONFIG_RTC_DRV_DS1511 is not set | ||
1363 | # CONFIG_RTC_DRV_DS1553 is not set | ||
1364 | # CONFIG_RTC_DRV_DS1742 is not set | ||
1365 | # CONFIG_RTC_DRV_STK17TA8 is not set | ||
1366 | # CONFIG_RTC_DRV_M48T86 is not set | ||
1367 | # CONFIG_RTC_DRV_M48T35 is not set | ||
1368 | # CONFIG_RTC_DRV_M48T59 is not set | ||
1369 | # CONFIG_RTC_DRV_BQ4802 is not set | ||
1370 | # CONFIG_RTC_DRV_V3020 is not set | ||
1216 | 1371 | ||
1217 | # | 1372 | # |
1218 | # Userspace I/O | 1373 | # on-CPU RTC drivers |
1219 | # | 1374 | # |
1375 | # CONFIG_DMADEVICES is not set | ||
1220 | CONFIG_UIO=m | 1376 | CONFIG_UIO=m |
1221 | CONFIG_UIO_CIF=m | 1377 | CONFIG_UIO_CIF=m |
1378 | # CONFIG_UIO_PDRV is not set | ||
1379 | # CONFIG_UIO_PDRV_GENIRQ is not set | ||
1380 | # CONFIG_UIO_SMX is not set | ||
1381 | # CONFIG_UIO_SERCOS3 is not set | ||
1382 | # CONFIG_STAGING is not set | ||
1383 | CONFIG_STAGING_EXCLUDE_BUILD=y | ||
1222 | 1384 | ||
1223 | # | 1385 | # |
1224 | # File systems | 1386 | # File systems |
@@ -1230,9 +1392,8 @@ CONFIG_EXT3_FS=y | |||
1230 | CONFIG_EXT3_FS_XATTR=y | 1392 | CONFIG_EXT3_FS_XATTR=y |
1231 | # CONFIG_EXT3_FS_POSIX_ACL is not set | 1393 | # CONFIG_EXT3_FS_POSIX_ACL is not set |
1232 | # CONFIG_EXT3_FS_SECURITY is not set | 1394 | # CONFIG_EXT3_FS_SECURITY is not set |
1233 | # CONFIG_EXT4DEV_FS is not set | 1395 | # CONFIG_EXT4_FS is not set |
1234 | CONFIG_JBD=y | 1396 | CONFIG_JBD=y |
1235 | # CONFIG_JBD_DEBUG is not set | ||
1236 | CONFIG_FS_MBCACHE=y | 1397 | CONFIG_FS_MBCACHE=y |
1237 | CONFIG_REISERFS_FS=m | 1398 | CONFIG_REISERFS_FS=m |
1238 | # CONFIG_REISERFS_CHECK is not set | 1399 | # CONFIG_REISERFS_CHECK is not set |
@@ -1246,22 +1407,22 @@ CONFIG_JFS_SECURITY=y | |||
1246 | # CONFIG_JFS_DEBUG is not set | 1407 | # CONFIG_JFS_DEBUG is not set |
1247 | # CONFIG_JFS_STATISTICS is not set | 1408 | # CONFIG_JFS_STATISTICS is not set |
1248 | CONFIG_FS_POSIX_ACL=y | 1409 | CONFIG_FS_POSIX_ACL=y |
1410 | CONFIG_FILE_LOCKING=y | ||
1249 | CONFIG_XFS_FS=m | 1411 | CONFIG_XFS_FS=m |
1250 | CONFIG_XFS_QUOTA=y | 1412 | CONFIG_XFS_QUOTA=y |
1251 | CONFIG_XFS_SECURITY=y | ||
1252 | CONFIG_XFS_POSIX_ACL=y | 1413 | CONFIG_XFS_POSIX_ACL=y |
1253 | # CONFIG_XFS_RT is not set | 1414 | # CONFIG_XFS_RT is not set |
1254 | # CONFIG_GFS2_FS is not set | 1415 | # CONFIG_XFS_DEBUG is not set |
1255 | # CONFIG_OCFS2_FS is not set | 1416 | # CONFIG_OCFS2_FS is not set |
1256 | CONFIG_MINIX_FS=m | 1417 | CONFIG_DNOTIFY=y |
1257 | CONFIG_ROMFS_FS=m | ||
1258 | CONFIG_INOTIFY=y | 1418 | CONFIG_INOTIFY=y |
1259 | CONFIG_INOTIFY_USER=y | 1419 | CONFIG_INOTIFY_USER=y |
1260 | CONFIG_QUOTA=y | 1420 | CONFIG_QUOTA=y |
1421 | # CONFIG_QUOTA_NETLINK_INTERFACE is not set | ||
1422 | CONFIG_PRINT_QUOTA_WARNING=y | ||
1261 | # CONFIG_QFMT_V1 is not set | 1423 | # CONFIG_QFMT_V1 is not set |
1262 | CONFIG_QFMT_V2=y | 1424 | CONFIG_QFMT_V2=y |
1263 | CONFIG_QUOTACTL=y | 1425 | CONFIG_QUOTACTL=y |
1264 | CONFIG_DNOTIFY=y | ||
1265 | CONFIG_AUTOFS_FS=y | 1426 | CONFIG_AUTOFS_FS=y |
1266 | # CONFIG_AUTOFS4_FS is not set | 1427 | # CONFIG_AUTOFS4_FS is not set |
1267 | CONFIG_FUSE_FS=m | 1428 | CONFIG_FUSE_FS=m |
@@ -1291,11 +1452,11 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | |||
1291 | CONFIG_PROC_FS=y | 1452 | CONFIG_PROC_FS=y |
1292 | CONFIG_PROC_KCORE=y | 1453 | CONFIG_PROC_KCORE=y |
1293 | CONFIG_PROC_SYSCTL=y | 1454 | CONFIG_PROC_SYSCTL=y |
1455 | CONFIG_PROC_PAGE_MONITOR=y | ||
1294 | CONFIG_SYSFS=y | 1456 | CONFIG_SYSFS=y |
1295 | CONFIG_TMPFS=y | 1457 | CONFIG_TMPFS=y |
1296 | # CONFIG_TMPFS_POSIX_ACL is not set | 1458 | # CONFIG_TMPFS_POSIX_ACL is not set |
1297 | # CONFIG_HUGETLB_PAGE is not set | 1459 | # CONFIG_HUGETLB_PAGE is not set |
1298 | CONFIG_RAMFS=y | ||
1299 | # CONFIG_CONFIGFS_FS is not set | 1460 | # CONFIG_CONFIGFS_FS is not set |
1300 | 1461 | ||
1301 | # | 1462 | # |
@@ -1312,46 +1473,48 @@ CONFIG_EFS_FS=m | |||
1312 | CONFIG_JFFS2_FS=m | 1473 | CONFIG_JFFS2_FS=m |
1313 | CONFIG_JFFS2_FS_DEBUG=0 | 1474 | CONFIG_JFFS2_FS_DEBUG=0 |
1314 | CONFIG_JFFS2_FS_WRITEBUFFER=y | 1475 | CONFIG_JFFS2_FS_WRITEBUFFER=y |
1476 | # CONFIG_JFFS2_FS_WBUF_VERIFY is not set | ||
1315 | # CONFIG_JFFS2_SUMMARY is not set | 1477 | # CONFIG_JFFS2_SUMMARY is not set |
1316 | CONFIG_JFFS2_FS_XATTR=y | 1478 | CONFIG_JFFS2_FS_XATTR=y |
1317 | CONFIG_JFFS2_FS_POSIX_ACL=y | 1479 | CONFIG_JFFS2_FS_POSIX_ACL=y |
1318 | CONFIG_JFFS2_FS_SECURITY=y | 1480 | CONFIG_JFFS2_FS_SECURITY=y |
1319 | CONFIG_JFFS2_COMPRESSION_OPTIONS=y | 1481 | CONFIG_JFFS2_COMPRESSION_OPTIONS=y |
1320 | CONFIG_JFFS2_ZLIB=y | 1482 | CONFIG_JFFS2_ZLIB=y |
1483 | # CONFIG_JFFS2_LZO is not set | ||
1321 | CONFIG_JFFS2_RTIME=y | 1484 | CONFIG_JFFS2_RTIME=y |
1322 | CONFIG_JFFS2_RUBIN=y | 1485 | CONFIG_JFFS2_RUBIN=y |
1323 | # CONFIG_JFFS2_CMODE_NONE is not set | 1486 | # CONFIG_JFFS2_CMODE_NONE is not set |
1324 | CONFIG_JFFS2_CMODE_PRIORITY=y | 1487 | CONFIG_JFFS2_CMODE_PRIORITY=y |
1325 | # CONFIG_JFFS2_CMODE_SIZE is not set | 1488 | # CONFIG_JFFS2_CMODE_SIZE is not set |
1489 | # CONFIG_JFFS2_CMODE_FAVOURLZO is not set | ||
1490 | # CONFIG_UBIFS_FS is not set | ||
1326 | CONFIG_CRAMFS=m | 1491 | CONFIG_CRAMFS=m |
1327 | CONFIG_VXFS_FS=m | 1492 | CONFIG_VXFS_FS=m |
1493 | CONFIG_MINIX_FS=m | ||
1494 | # CONFIG_OMFS_FS is not set | ||
1328 | # CONFIG_HPFS_FS is not set | 1495 | # CONFIG_HPFS_FS is not set |
1329 | # CONFIG_QNX4FS_FS is not set | 1496 | # CONFIG_QNX4FS_FS is not set |
1497 | CONFIG_ROMFS_FS=m | ||
1330 | CONFIG_SYSV_FS=m | 1498 | CONFIG_SYSV_FS=m |
1331 | CONFIG_UFS_FS=m | 1499 | CONFIG_UFS_FS=m |
1332 | # CONFIG_UFS_FS_WRITE is not set | 1500 | # CONFIG_UFS_FS_WRITE is not set |
1333 | # CONFIG_UFS_DEBUG is not set | 1501 | # CONFIG_UFS_DEBUG is not set |
1334 | 1502 | CONFIG_NETWORK_FILESYSTEMS=y | |
1335 | # | ||
1336 | # Network File Systems | ||
1337 | # | ||
1338 | CONFIG_NFS_FS=y | 1503 | CONFIG_NFS_FS=y |
1339 | CONFIG_NFS_V3=y | 1504 | CONFIG_NFS_V3=y |
1340 | # CONFIG_NFS_V3_ACL is not set | 1505 | # CONFIG_NFS_V3_ACL is not set |
1341 | # CONFIG_NFS_V4 is not set | 1506 | # CONFIG_NFS_V4 is not set |
1342 | # CONFIG_NFS_DIRECTIO is not set | 1507 | CONFIG_ROOT_NFS=y |
1343 | CONFIG_NFSD=y | 1508 | CONFIG_NFSD=y |
1344 | CONFIG_NFSD_V3=y | 1509 | CONFIG_NFSD_V3=y |
1345 | # CONFIG_NFSD_V3_ACL is not set | 1510 | # CONFIG_NFSD_V3_ACL is not set |
1346 | # CONFIG_NFSD_V4 is not set | 1511 | # CONFIG_NFSD_V4 is not set |
1347 | # CONFIG_NFSD_TCP is not set | ||
1348 | CONFIG_ROOT_NFS=y | ||
1349 | CONFIG_LOCKD=y | 1512 | CONFIG_LOCKD=y |
1350 | CONFIG_LOCKD_V4=y | 1513 | CONFIG_LOCKD_V4=y |
1351 | CONFIG_EXPORTFS=y | 1514 | CONFIG_EXPORTFS=y |
1352 | CONFIG_NFS_COMMON=y | 1515 | CONFIG_NFS_COMMON=y |
1353 | CONFIG_SUNRPC=y | 1516 | CONFIG_SUNRPC=y |
1354 | # CONFIG_SUNRPC_BIND34 is not set | 1517 | # CONFIG_SUNRPC_REGISTER_V4 is not set |
1355 | # CONFIG_RPCSEC_GSS_KRB5 is not set | 1518 | # CONFIG_RPCSEC_GSS_KRB5 is not set |
1356 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | 1519 | # CONFIG_RPCSEC_GSS_SPKM3 is not set |
1357 | # CONFIG_SMB_FS is not set | 1520 | # CONFIG_SMB_FS is not set |
@@ -1365,10 +1528,6 @@ CONFIG_SUNRPC=y | |||
1365 | # | 1528 | # |
1366 | # CONFIG_PARTITION_ADVANCED is not set | 1529 | # CONFIG_PARTITION_ADVANCED is not set |
1367 | CONFIG_MSDOS_PARTITION=y | 1530 | CONFIG_MSDOS_PARTITION=y |
1368 | |||
1369 | # | ||
1370 | # Native Language Support | ||
1371 | # | ||
1372 | CONFIG_NLS=m | 1531 | CONFIG_NLS=m |
1373 | CONFIG_NLS_DEFAULT="iso8859-1" | 1532 | CONFIG_NLS_DEFAULT="iso8859-1" |
1374 | CONFIG_NLS_CODEPAGE_437=m | 1533 | CONFIG_NLS_CODEPAGE_437=m |
@@ -1409,29 +1568,30 @@ CONFIG_NLS_ISO8859_15=m | |||
1409 | CONFIG_NLS_KOI8_R=m | 1568 | CONFIG_NLS_KOI8_R=m |
1410 | CONFIG_NLS_KOI8_U=m | 1569 | CONFIG_NLS_KOI8_U=m |
1411 | CONFIG_NLS_UTF8=m | 1570 | CONFIG_NLS_UTF8=m |
1412 | |||
1413 | # | ||
1414 | # Distributed Lock Manager | ||
1415 | # | ||
1416 | # CONFIG_DLM is not set | 1571 | # CONFIG_DLM is not set |
1417 | 1572 | ||
1418 | # | 1573 | # |
1419 | # Profiling support | ||
1420 | # | ||
1421 | # CONFIG_PROFILING is not set | ||
1422 | |||
1423 | # | ||
1424 | # Kernel hacking | 1574 | # Kernel hacking |
1425 | # | 1575 | # |
1426 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | 1576 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y |
1427 | # CONFIG_PRINTK_TIME is not set | 1577 | # CONFIG_PRINTK_TIME is not set |
1578 | CONFIG_ENABLE_WARN_DEPRECATED=y | ||
1428 | CONFIG_ENABLE_MUST_CHECK=y | 1579 | CONFIG_ENABLE_MUST_CHECK=y |
1580 | CONFIG_FRAME_WARN=1024 | ||
1429 | # CONFIG_MAGIC_SYSRQ is not set | 1581 | # CONFIG_MAGIC_SYSRQ is not set |
1430 | # CONFIG_UNUSED_SYMBOLS is not set | 1582 | # CONFIG_UNUSED_SYMBOLS is not set |
1431 | # CONFIG_DEBUG_FS is not set | 1583 | # CONFIG_DEBUG_FS is not set |
1432 | # CONFIG_HEADERS_CHECK is not set | 1584 | # CONFIG_HEADERS_CHECK is not set |
1433 | # CONFIG_DEBUG_KERNEL is not set | 1585 | # CONFIG_DEBUG_KERNEL is not set |
1434 | CONFIG_CROSSCOMPILE=y | 1586 | # CONFIG_DEBUG_MEMORY_INIT is not set |
1587 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set | ||
1588 | |||
1589 | # | ||
1590 | # Tracers | ||
1591 | # | ||
1592 | # CONFIG_DYNAMIC_PRINTK_DEBUG is not set | ||
1593 | # CONFIG_SAMPLES is not set | ||
1594 | CONFIG_HAVE_ARCH_KGDB=y | ||
1435 | CONFIG_CMDLINE="" | 1595 | CONFIG_CMDLINE="" |
1436 | 1596 | ||
1437 | # | 1597 | # |
@@ -1439,51 +1599,103 @@ CONFIG_CMDLINE="" | |||
1439 | # | 1599 | # |
1440 | # CONFIG_KEYS is not set | 1600 | # CONFIG_KEYS is not set |
1441 | # CONFIG_SECURITY is not set | 1601 | # CONFIG_SECURITY is not set |
1602 | # CONFIG_SECURITYFS is not set | ||
1603 | # CONFIG_SECURITY_FILE_CAPABILITIES is not set | ||
1442 | CONFIG_XOR_BLOCKS=m | 1604 | CONFIG_XOR_BLOCKS=m |
1443 | CONFIG_ASYNC_CORE=m | 1605 | CONFIG_ASYNC_CORE=m |
1444 | CONFIG_ASYNC_MEMCPY=m | 1606 | CONFIG_ASYNC_MEMCPY=m |
1445 | CONFIG_ASYNC_XOR=m | 1607 | CONFIG_ASYNC_XOR=m |
1446 | CONFIG_CRYPTO=y | 1608 | CONFIG_CRYPTO=y |
1609 | |||
1610 | # | ||
1611 | # Crypto core or helper | ||
1612 | # | ||
1613 | # CONFIG_CRYPTO_FIPS is not set | ||
1447 | CONFIG_CRYPTO_ALGAPI=y | 1614 | CONFIG_CRYPTO_ALGAPI=y |
1448 | CONFIG_CRYPTO_ABLKCIPHER=m | 1615 | CONFIG_CRYPTO_AEAD=y |
1449 | CONFIG_CRYPTO_BLKCIPHER=m | 1616 | CONFIG_CRYPTO_BLKCIPHER=y |
1450 | CONFIG_CRYPTO_HASH=y | 1617 | CONFIG_CRYPTO_HASH=y |
1618 | CONFIG_CRYPTO_RNG=y | ||
1451 | CONFIG_CRYPTO_MANAGER=y | 1619 | CONFIG_CRYPTO_MANAGER=y |
1620 | CONFIG_CRYPTO_GF128MUL=m | ||
1621 | CONFIG_CRYPTO_NULL=m | ||
1622 | CONFIG_CRYPTO_CRYPTD=m | ||
1623 | CONFIG_CRYPTO_AUTHENC=m | ||
1624 | # CONFIG_CRYPTO_TEST is not set | ||
1625 | |||
1626 | # | ||
1627 | # Authenticated Encryption with Associated Data | ||
1628 | # | ||
1629 | # CONFIG_CRYPTO_CCM is not set | ||
1630 | # CONFIG_CRYPTO_GCM is not set | ||
1631 | # CONFIG_CRYPTO_SEQIV is not set | ||
1632 | |||
1633 | # | ||
1634 | # Block modes | ||
1635 | # | ||
1636 | CONFIG_CRYPTO_CBC=m | ||
1637 | # CONFIG_CRYPTO_CTR is not set | ||
1638 | # CONFIG_CRYPTO_CTS is not set | ||
1639 | CONFIG_CRYPTO_ECB=m | ||
1640 | CONFIG_CRYPTO_LRW=m | ||
1641 | CONFIG_CRYPTO_PCBC=m | ||
1642 | # CONFIG_CRYPTO_XTS is not set | ||
1643 | |||
1644 | # | ||
1645 | # Hash modes | ||
1646 | # | ||
1452 | CONFIG_CRYPTO_HMAC=y | 1647 | CONFIG_CRYPTO_HMAC=y |
1453 | CONFIG_CRYPTO_XCBC=m | 1648 | CONFIG_CRYPTO_XCBC=m |
1454 | CONFIG_CRYPTO_NULL=m | 1649 | |
1650 | # | ||
1651 | # Digest | ||
1652 | # | ||
1653 | CONFIG_CRYPTO_CRC32C=m | ||
1455 | CONFIG_CRYPTO_MD4=m | 1654 | CONFIG_CRYPTO_MD4=m |
1456 | CONFIG_CRYPTO_MD5=y | 1655 | CONFIG_CRYPTO_MD5=y |
1656 | CONFIG_CRYPTO_MICHAEL_MIC=m | ||
1657 | # CONFIG_CRYPTO_RMD128 is not set | ||
1658 | # CONFIG_CRYPTO_RMD160 is not set | ||
1659 | # CONFIG_CRYPTO_RMD256 is not set | ||
1660 | # CONFIG_CRYPTO_RMD320 is not set | ||
1457 | CONFIG_CRYPTO_SHA1=m | 1661 | CONFIG_CRYPTO_SHA1=m |
1458 | CONFIG_CRYPTO_SHA256=m | 1662 | CONFIG_CRYPTO_SHA256=m |
1459 | CONFIG_CRYPTO_SHA512=m | 1663 | CONFIG_CRYPTO_SHA512=m |
1460 | CONFIG_CRYPTO_WP512=m | ||
1461 | CONFIG_CRYPTO_TGR192=m | 1664 | CONFIG_CRYPTO_TGR192=m |
1462 | CONFIG_CRYPTO_GF128MUL=m | 1665 | CONFIG_CRYPTO_WP512=m |
1463 | CONFIG_CRYPTO_ECB=m | 1666 | |
1464 | CONFIG_CRYPTO_CBC=m | 1667 | # |
1465 | CONFIG_CRYPTO_PCBC=m | 1668 | # Ciphers |
1466 | CONFIG_CRYPTO_LRW=m | 1669 | # |
1467 | CONFIG_CRYPTO_CRYPTD=m | ||
1468 | CONFIG_CRYPTO_DES=m | ||
1469 | CONFIG_CRYPTO_FCRYPT=m | ||
1470 | CONFIG_CRYPTO_BLOWFISH=m | ||
1471 | CONFIG_CRYPTO_TWOFISH=m | ||
1472 | CONFIG_CRYPTO_TWOFISH_COMMON=m | ||
1473 | CONFIG_CRYPTO_SERPENT=m | ||
1474 | CONFIG_CRYPTO_AES=m | 1670 | CONFIG_CRYPTO_AES=m |
1671 | CONFIG_CRYPTO_ANUBIS=m | ||
1672 | CONFIG_CRYPTO_ARC4=m | ||
1673 | CONFIG_CRYPTO_BLOWFISH=m | ||
1674 | CONFIG_CRYPTO_CAMELLIA=m | ||
1475 | CONFIG_CRYPTO_CAST5=m | 1675 | CONFIG_CRYPTO_CAST5=m |
1476 | CONFIG_CRYPTO_CAST6=m | 1676 | CONFIG_CRYPTO_CAST6=m |
1477 | CONFIG_CRYPTO_TEA=m | 1677 | CONFIG_CRYPTO_DES=m |
1478 | CONFIG_CRYPTO_ARC4=m | 1678 | CONFIG_CRYPTO_FCRYPT=m |
1479 | CONFIG_CRYPTO_KHAZAD=m | 1679 | CONFIG_CRYPTO_KHAZAD=m |
1480 | CONFIG_CRYPTO_ANUBIS=m | 1680 | # CONFIG_CRYPTO_SALSA20 is not set |
1681 | # CONFIG_CRYPTO_SEED is not set | ||
1682 | CONFIG_CRYPTO_SERPENT=m | ||
1683 | CONFIG_CRYPTO_TEA=m | ||
1684 | CONFIG_CRYPTO_TWOFISH=m | ||
1685 | CONFIG_CRYPTO_TWOFISH_COMMON=m | ||
1686 | |||
1687 | # | ||
1688 | # Compression | ||
1689 | # | ||
1481 | CONFIG_CRYPTO_DEFLATE=m | 1690 | CONFIG_CRYPTO_DEFLATE=m |
1482 | CONFIG_CRYPTO_MICHAEL_MIC=m | 1691 | # CONFIG_CRYPTO_LZO is not set |
1483 | CONFIG_CRYPTO_CRC32C=m | 1692 | |
1484 | CONFIG_CRYPTO_CAMELLIA=m | 1693 | # |
1485 | # CONFIG_CRYPTO_TEST is not set | 1694 | # Random Number Generation |
1695 | # | ||
1696 | # CONFIG_CRYPTO_ANSI_CPRNG is not set | ||
1486 | CONFIG_CRYPTO_HW=y | 1697 | CONFIG_CRYPTO_HW=y |
1698 | # CONFIG_CRYPTO_DEV_HIFN_795X is not set | ||
1487 | 1699 | ||
1488 | # | 1700 | # |
1489 | # Library routines | 1701 | # Library routines |
@@ -1491,7 +1703,8 @@ CONFIG_CRYPTO_HW=y | |||
1491 | CONFIG_BITREVERSE=y | 1703 | CONFIG_BITREVERSE=y |
1492 | # CONFIG_CRC_CCITT is not set | 1704 | # CONFIG_CRC_CCITT is not set |
1493 | CONFIG_CRC16=m | 1705 | CONFIG_CRC16=m |
1494 | # CONFIG_CRC_ITU_T is not set | 1706 | # CONFIG_CRC_T10DIF is not set |
1707 | CONFIG_CRC_ITU_T=m | ||
1495 | CONFIG_CRC32=y | 1708 | CONFIG_CRC32=y |
1496 | # CONFIG_CRC7 is not set | 1709 | # CONFIG_CRC7 is not set |
1497 | CONFIG_LIBCRC32C=m | 1710 | CONFIG_LIBCRC32C=m |
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/kernel/scall32-o32.S b/arch/mips/kernel/scall32-o32.S index 759f68066b5d..d0916a55cd77 100644 --- a/arch/mips/kernel/scall32-o32.S +++ b/arch/mips/kernel/scall32-o32.S | |||
@@ -262,14 +262,11 @@ bad_alignment: | |||
262 | LEAF(sys_syscall) | 262 | LEAF(sys_syscall) |
263 | subu t0, a0, __NR_O32_Linux # check syscall number | 263 | subu t0, a0, __NR_O32_Linux # check syscall number |
264 | sltiu v0, t0, __NR_O32_Linux_syscalls + 1 | 264 | sltiu v0, t0, __NR_O32_Linux_syscalls + 1 |
265 | beqz t0, einval # do not recurse | ||
265 | sll t1, t0, 3 | 266 | sll t1, t0, 3 |
266 | beqz v0, einval | 267 | beqz v0, einval |
267 | |||
268 | lw t2, sys_call_table(t1) # syscall routine | 268 | lw t2, sys_call_table(t1) # syscall routine |
269 | 269 | ||
270 | li v1, 4000 - __NR_O32_Linux # index of sys_syscall | ||
271 | beq t0, v1, einval # do not recurse | ||
272 | |||
273 | /* Some syscalls like execve get their arguments from struct pt_regs | 270 | /* Some syscalls like execve get their arguments from struct pt_regs |
274 | and claim zero arguments in the syscall table. Thus we have to | 271 | and claim zero arguments in the syscall table. Thus we have to |
275 | assume the worst case and shuffle around all potential arguments. | 272 | assume the worst case and shuffle around all potential arguments. |
@@ -627,7 +624,7 @@ einval: li v0, -ENOSYS | |||
627 | sys sys_pselect6 6 | 624 | sys sys_pselect6 6 |
628 | sys sys_ppoll 5 | 625 | sys sys_ppoll 5 |
629 | sys sys_unshare 1 | 626 | sys sys_unshare 1 |
630 | sys sys_splice 4 | 627 | sys sys_splice 6 |
631 | sys sys_sync_file_range 7 /* 4305 */ | 628 | sys sys_sync_file_range 7 /* 4305 */ |
632 | sys sys_tee 4 | 629 | sys sys_tee 4 |
633 | sys sys_vmsplice 4 | 630 | sys sys_vmsplice 4 |
diff --git a/arch/mips/kernel/scall64-n32.S b/arch/mips/kernel/scall64-n32.S index e266b3aa6560..30f3b6317a83 100644 --- a/arch/mips/kernel/scall64-n32.S +++ b/arch/mips/kernel/scall64-n32.S | |||
@@ -390,7 +390,7 @@ EXPORT(sysn32_call_table) | |||
390 | PTR sys_splice | 390 | PTR sys_splice |
391 | PTR sys_sync_file_range | 391 | PTR sys_sync_file_range |
392 | PTR sys_tee | 392 | PTR sys_tee |
393 | PTR sys_vmsplice /* 6270 */ | 393 | PTR compat_sys_vmsplice /* 6270 */ |
394 | PTR sys_move_pages | 394 | PTR sys_move_pages |
395 | PTR compat_sys_set_robust_list | 395 | PTR compat_sys_set_robust_list |
396 | PTR compat_sys_get_robust_list | 396 | PTR compat_sys_get_robust_list |
diff --git a/arch/mips/kernel/scall64-o32.S b/arch/mips/kernel/scall64-o32.S index 6c7ef8313ebd..fefef4af8595 100644 --- a/arch/mips/kernel/scall64-o32.S +++ b/arch/mips/kernel/scall64-o32.S | |||
@@ -174,14 +174,12 @@ not_o32_scall: | |||
174 | END(handle_sys) | 174 | END(handle_sys) |
175 | 175 | ||
176 | LEAF(sys32_syscall) | 176 | LEAF(sys32_syscall) |
177 | sltu v0, a0, __NR_O32_Linux + __NR_O32_Linux_syscalls + 1 | 177 | subu t0, a0, __NR_O32_Linux # check syscall number |
178 | sltiu v0, t0, __NR_O32_Linux_syscalls + 1 | ||
179 | beqz t0, einval # do not recurse | ||
180 | dsll t1, t0, 3 | ||
178 | beqz v0, einval | 181 | beqz v0, einval |
179 | 182 | ld t2, sys_call_table(t1) # syscall routine | |
180 | dsll v0, a0, 3 | ||
181 | ld t2, (sys_call_table - (__NR_O32_Linux * 8))(v0) | ||
182 | |||
183 | li v1, 4000 # indirect syscall number | ||
184 | beq a0, v1, einval # do not recurse | ||
185 | 183 | ||
186 | move a0, a1 # shift argument registers | 184 | move a0, a1 # shift argument registers |
187 | move a1, a2 | 185 | move a1, a2 |
@@ -198,7 +196,7 @@ LEAF(sys32_syscall) | |||
198 | jr t2 | 196 | jr t2 |
199 | /* Unreached */ | 197 | /* Unreached */ |
200 | 198 | ||
201 | einval: li v0, -EINVAL | 199 | einval: li v0, -ENOSYS |
202 | jr ra | 200 | jr ra |
203 | END(sys32_syscall) | 201 | END(sys32_syscall) |
204 | 202 | ||
@@ -512,7 +510,7 @@ sys_call_table: | |||
512 | PTR sys_splice | 510 | PTR sys_splice |
513 | PTR sys32_sync_file_range /* 4305 */ | 511 | PTR sys32_sync_file_range /* 4305 */ |
514 | PTR sys_tee | 512 | PTR sys_tee |
515 | PTR sys_vmsplice | 513 | PTR compat_sys_vmsplice |
516 | PTR compat_sys_move_pages | 514 | PTR compat_sys_move_pages |
517 | PTR compat_sys_set_robust_list | 515 | PTR compat_sys_set_robust_list |
518 | PTR compat_sys_get_robust_list /* 4310 */ | 516 | PTR compat_sys_get_robust_list /* 4310 */ |
diff --git a/arch/mips/kernel/vpe.c b/arch/mips/kernel/vpe.c index 972b2d2b8401..a1b3da6bad5c 100644 --- a/arch/mips/kernel/vpe.c +++ b/arch/mips/kernel/vpe.c | |||
@@ -1134,7 +1134,7 @@ static int vpe_release(struct inode *inode, struct file *filp) | |||
1134 | 1134 | ||
1135 | /* It's good to be able to run the SP and if it chokes have a look at | 1135 | /* It's good to be able to run the SP and if it chokes have a look at |
1136 | the /dev/rt?. But if we reset the pointer to the shared struct we | 1136 | the /dev/rt?. But if we reset the pointer to the shared struct we |
1137 | loose what has happened. So perhaps if garbage is sent to the vpe | 1137 | lose what has happened. So perhaps if garbage is sent to the vpe |
1138 | device, use it as a trigger for the reset. Hopefully a nice | 1138 | device, use it as a trigger for the reset. Hopefully a nice |
1139 | executable will be along shortly. */ | 1139 | executable will be along shortly. */ |
1140 | if (ret < 0) | 1140 | if (ret < 0) |
diff --git a/arch/mips/mti-malta/Makefile b/arch/mips/mti-malta/Makefile index cef2db8d2225..32e847808df1 100644 --- a/arch/mips/mti-malta/Makefile +++ b/arch/mips/mti-malta/Makefile | |||
@@ -7,9 +7,8 @@ | |||
7 | # | 7 | # |
8 | obj-y := malta-amon.o malta-cmdline.o \ | 8 | obj-y := malta-amon.o malta-cmdline.o \ |
9 | malta-display.o malta-init.o malta-int.o \ | 9 | malta-display.o malta-init.o malta-int.o \ |
10 | malta-memory.o malta-mtd.o \ | 10 | malta-memory.o malta-platform.o \ |
11 | malta-platform.o malta-reset.o \ | 11 | malta-reset.o malta-setup.o malta-time.o |
12 | malta-setup.o malta-time.o | ||
13 | 12 | ||
14 | obj-$(CONFIG_EARLY_PRINTK) += malta-console.o | 13 | obj-$(CONFIG_EARLY_PRINTK) += malta-console.o |
15 | obj-$(CONFIG_PCI) += malta-pci.o | 14 | obj-$(CONFIG_PCI) += malta-pci.o |
diff --git a/arch/mips/mti-malta/malta-mtd.c b/arch/mips/mti-malta/malta-mtd.c deleted file mode 100644 index 8ad9bdf25dce..000000000000 --- a/arch/mips/mti-malta/malta-mtd.c +++ /dev/null | |||
@@ -1,63 +0,0 @@ | |||
1 | /* | ||
2 | * This file is subject to the terms and conditions of the GNU General Public | ||
3 | * License. See the file "COPYING" in the main directory of this archive | ||
4 | * for more details. | ||
5 | * | ||
6 | * Copyright (C) 2006 MIPS Technologies, Inc. | ||
7 | * written by Ralf Baechle <ralf@linux-mips.org> | ||
8 | */ | ||
9 | |||
10 | #include <linux/init.h> | ||
11 | #include <linux/platform_device.h> | ||
12 | #include <linux/mtd/partitions.h> | ||
13 | #include <linux/mtd/physmap.h> | ||
14 | #include <mtd/mtd-abi.h> | ||
15 | |||
16 | static struct mtd_partition malta_mtd_partitions[] = { | ||
17 | { | ||
18 | .name = "YAMON", | ||
19 | .offset = 0x0, | ||
20 | .size = 0x100000, | ||
21 | .mask_flags = MTD_WRITEABLE | ||
22 | }, { | ||
23 | .name = "User FS", | ||
24 | .offset = 0x100000, | ||
25 | .size = 0x2e0000 | ||
26 | }, { | ||
27 | .name = "Board Config", | ||
28 | .offset = 0x3e0000, | ||
29 | .size = 0x020000, | ||
30 | .mask_flags = MTD_WRITEABLE | ||
31 | } | ||
32 | }; | ||
33 | |||
34 | static struct physmap_flash_data malta_flash_data = { | ||
35 | .width = 4, | ||
36 | .nr_parts = ARRAY_SIZE(malta_mtd_partitions), | ||
37 | .parts = malta_mtd_partitions | ||
38 | }; | ||
39 | |||
40 | static struct resource malta_flash_resource = { | ||
41 | .start = 0x1e000000, | ||
42 | .end = 0x1e3fffff, | ||
43 | .flags = IORESOURCE_MEM | ||
44 | }; | ||
45 | |||
46 | static struct platform_device malta_flash = { | ||
47 | .name = "physmap-flash", | ||
48 | .id = 0, | ||
49 | .dev = { | ||
50 | .platform_data = &malta_flash_data, | ||
51 | }, | ||
52 | .num_resources = 1, | ||
53 | .resource = &malta_flash_resource, | ||
54 | }; | ||
55 | |||
56 | static int __init malta_mtd_init(void) | ||
57 | { | ||
58 | platform_device_register(&malta_flash); | ||
59 | |||
60 | return 0; | ||
61 | } | ||
62 | |||
63 | module_init(malta_mtd_init) | ||
diff --git a/arch/mips/mti-malta/malta-platform.c b/arch/mips/mti-malta/malta-platform.c index 83b9bab3cd3f..72e32a7715be 100644 --- a/arch/mips/mti-malta/malta-platform.c +++ b/arch/mips/mti-malta/malta-platform.c | |||
@@ -3,10 +3,14 @@ | |||
3 | * License. See the file "COPYING" in the main directory of this archive | 3 | * License. See the file "COPYING" in the main directory of this archive |
4 | * for more details. | 4 | * for more details. |
5 | * | 5 | * |
6 | * Copyright (C) 2007 MIPS Technologies, Inc. | 6 | * Copyright (C) 2006, 07 MIPS Technologies, Inc. |
7 | * written by Ralf Baechle (ralf@linux-mips.org) | 7 | * written by Ralf Baechle (ralf@linux-mips.org) |
8 | * written by Ralf Baechle <ralf@linux-mips.org> | ||
8 | * | 9 | * |
9 | * Probe driver for the Malta's UART ports: | 10 | * Copyright (C) 2008 Wind River Systems, Inc. |
11 | * updated by Tiejun Chen <tiejun.chen@windriver.com> | ||
12 | * | ||
13 | * 1. Probe driver for the Malta's UART ports: | ||
10 | * | 14 | * |
11 | * o 2 ports in the SMC SuperIO | 15 | * o 2 ports in the SMC SuperIO |
12 | * o 1 port in the CBUS UART, a discrete 16550 which normally is only used | 16 | * o 1 port in the CBUS UART, a discrete 16550 which normally is only used |
@@ -14,10 +18,17 @@ | |||
14 | * | 18 | * |
15 | * We don't use 8250_platform.c on Malta as it would result in the CBUS | 19 | * We don't use 8250_platform.c on Malta as it would result in the CBUS |
16 | * UART becoming ttyS0. | 20 | * UART becoming ttyS0. |
21 | * | ||
22 | * 2. Register RTC-CMOS platform device on Malta. | ||
17 | */ | 23 | */ |
18 | #include <linux/module.h> | ||
19 | #include <linux/init.h> | 24 | #include <linux/init.h> |
20 | #include <linux/serial_8250.h> | 25 | #include <linux/serial_8250.h> |
26 | #include <linux/mc146818rtc.h> | ||
27 | #include <linux/module.h> | ||
28 | #include <linux/mtd/partitions.h> | ||
29 | #include <linux/mtd/physmap.h> | ||
30 | #include <linux/platform_device.h> | ||
31 | #include <mtd/mtd-abi.h> | ||
21 | 32 | ||
22 | #define SMC_PORT(base, int) \ | 33 | #define SMC_PORT(base, int) \ |
23 | { \ | 34 | { \ |
@@ -45,21 +56,93 @@ static struct plat_serial8250_port uart8250_data[] = { | |||
45 | { }, | 56 | { }, |
46 | }; | 57 | }; |
47 | 58 | ||
48 | static struct platform_device uart8250_device = { | 59 | static struct platform_device malta_uart8250_device = { |
49 | .name = "serial8250", | 60 | .name = "serial8250", |
50 | .id = PLAT8250_DEV_PLATFORM2, | 61 | .id = PLAT8250_DEV_PLATFORM, |
51 | .dev = { | 62 | .dev = { |
52 | .platform_data = uart8250_data, | 63 | .platform_data = uart8250_data, |
53 | }, | 64 | }, |
54 | }; | 65 | }; |
55 | 66 | ||
56 | static int __init uart8250_init(void) | 67 | struct resource malta_rtc_resources[] = { |
68 | { | ||
69 | .start = RTC_PORT(0), | ||
70 | .end = RTC_PORT(7), | ||
71 | .flags = IORESOURCE_IO, | ||
72 | }, { | ||
73 | .start = RTC_IRQ, | ||
74 | .end = RTC_IRQ, | ||
75 | .flags = IORESOURCE_IRQ, | ||
76 | } | ||
77 | }; | ||
78 | |||
79 | static struct platform_device malta_rtc_device = { | ||
80 | .name = "rtc_cmos", | ||
81 | .id = -1, | ||
82 | .resource = malta_rtc_resources, | ||
83 | .num_resources = ARRAY_SIZE(malta_rtc_resources), | ||
84 | }; | ||
85 | |||
86 | static struct mtd_partition malta_mtd_partitions[] = { | ||
87 | { | ||
88 | .name = "YAMON", | ||
89 | .offset = 0x0, | ||
90 | .size = 0x100000, | ||
91 | .mask_flags = MTD_WRITEABLE | ||
92 | }, { | ||
93 | .name = "User FS", | ||
94 | .offset = 0x100000, | ||
95 | .size = 0x2e0000 | ||
96 | }, { | ||
97 | .name = "Board Config", | ||
98 | .offset = 0x3e0000, | ||
99 | .size = 0x020000, | ||
100 | .mask_flags = MTD_WRITEABLE | ||
101 | } | ||
102 | }; | ||
103 | |||
104 | static struct physmap_flash_data malta_flash_data = { | ||
105 | .width = 4, | ||
106 | .nr_parts = ARRAY_SIZE(malta_mtd_partitions), | ||
107 | .parts = malta_mtd_partitions | ||
108 | }; | ||
109 | |||
110 | static struct resource malta_flash_resource = { | ||
111 | .start = 0x1e000000, | ||
112 | .end = 0x1e3fffff, | ||
113 | .flags = IORESOURCE_MEM | ||
114 | }; | ||
115 | |||
116 | static struct platform_device malta_flash_device = { | ||
117 | .name = "physmap-flash", | ||
118 | .id = 0, | ||
119 | .dev = { | ||
120 | .platform_data = &malta_flash_data, | ||
121 | }, | ||
122 | .num_resources = 1, | ||
123 | .resource = &malta_flash_resource, | ||
124 | }; | ||
125 | |||
126 | static struct platform_device *malta_devices[] __initdata = { | ||
127 | &malta_uart8250_device, | ||
128 | &malta_rtc_device, | ||
129 | &malta_flash_device, | ||
130 | }; | ||
131 | |||
132 | static int __init malta_add_devices(void) | ||
57 | { | 133 | { |
58 | return platform_device_register(&uart8250_device); | 134 | int err; |
59 | } | ||
60 | 135 | ||
61 | module_init(uart8250_init); | 136 | err = platform_add_devices(malta_devices, ARRAY_SIZE(malta_devices)); |
137 | if (err) | ||
138 | return err; | ||
139 | |||
140 | /* | ||
141 | * Set RTC to BCD mode to support current alarm code. | ||
142 | */ | ||
143 | CMOS_WRITE(CMOS_READ(RTC_CONTROL) & ~RTC_DM_BINARY, RTC_CONTROL); | ||
144 | |||
145 | return 0; | ||
146 | } | ||
62 | 147 | ||
63 | MODULE_AUTHOR("Ralf Baechle <ralf@linux-mips.org>"); | 148 | device_initcall(malta_add_devices); |
64 | MODULE_LICENSE("GPL"); | ||
65 | MODULE_DESCRIPTION("8250 UART probe driver for the Malta CBUS UART"); | ||
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/gdb-io-serial.c b/arch/mn10300/kernel/gdb-io-serial.c index 9a6d4e8ebe73..11584c51acd9 100644 --- a/arch/mn10300/kernel/gdb-io-serial.c +++ b/arch/mn10300/kernel/gdb-io-serial.c | |||
@@ -99,6 +99,7 @@ int gdbstub_io_rx_char(unsigned char *_ch, int nonblock) | |||
99 | try_again: | 99 | try_again: |
100 | /* pull chars out of the buffer */ | 100 | /* pull chars out of the buffer */ |
101 | ix = gdbstub_rx_outp; | 101 | ix = gdbstub_rx_outp; |
102 | barrier(); | ||
102 | if (ix == gdbstub_rx_inp) { | 103 | if (ix == gdbstub_rx_inp) { |
103 | if (nonblock) | 104 | if (nonblock) |
104 | return -EAGAIN; | 105 | return -EAGAIN; |
@@ -110,6 +111,7 @@ int gdbstub_io_rx_char(unsigned char *_ch, int nonblock) | |||
110 | 111 | ||
111 | ch = gdbstub_rx_buffer[ix++]; | 112 | ch = gdbstub_rx_buffer[ix++]; |
112 | st = gdbstub_rx_buffer[ix++]; | 113 | st = gdbstub_rx_buffer[ix++]; |
114 | barrier(); | ||
113 | gdbstub_rx_outp = ix & 0x00000fff; | 115 | gdbstub_rx_outp = ix & 0x00000fff; |
114 | 116 | ||
115 | if (st & UART_LSR_BI) { | 117 | if (st & UART_LSR_BI) { |
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/configs/83xx/mpc834x_itx_defconfig b/arch/powerpc/configs/83xx/mpc834x_itx_defconfig index e55ff7c47a36..07a674f5344e 100644 --- a/arch/powerpc/configs/83xx/mpc834x_itx_defconfig +++ b/arch/powerpc/configs/83xx/mpc834x_itx_defconfig | |||
@@ -723,7 +723,7 @@ CONFIG_CICADA_PHY=y | |||
723 | # CONFIG_BROADCOM_PHY is not set | 723 | # CONFIG_BROADCOM_PHY is not set |
724 | # CONFIG_ICPLUS_PHY is not set | 724 | # CONFIG_ICPLUS_PHY is not set |
725 | # CONFIG_REALTEK_PHY is not set | 725 | # CONFIG_REALTEK_PHY is not set |
726 | # CONFIG_FIXED_PHY is not set | 726 | CONFIG_FIXED_PHY=y |
727 | # CONFIG_MDIO_BITBANG is not set | 727 | # CONFIG_MDIO_BITBANG is not set |
728 | # CONFIG_NET_ETHERNET is not set | 728 | # CONFIG_NET_ETHERNET is not set |
729 | CONFIG_NETDEV_1000=y | 729 | CONFIG_NETDEV_1000=y |
diff --git a/arch/powerpc/configs/mpc83xx_defconfig b/arch/powerpc/configs/mpc83xx_defconfig index 15eb30c9b3f9..d582014b0a38 100644 --- a/arch/powerpc/configs/mpc83xx_defconfig +++ b/arch/powerpc/configs/mpc83xx_defconfig | |||
@@ -682,7 +682,7 @@ CONFIG_VITESSE_PHY=y | |||
682 | # CONFIG_BROADCOM_PHY is not set | 682 | # CONFIG_BROADCOM_PHY is not set |
683 | CONFIG_ICPLUS_PHY=y | 683 | CONFIG_ICPLUS_PHY=y |
684 | # CONFIG_REALTEK_PHY is not set | 684 | # CONFIG_REALTEK_PHY is not set |
685 | # CONFIG_FIXED_PHY is not set | 685 | CONFIG_FIXED_PHY=y |
686 | # CONFIG_MDIO_BITBANG is not set | 686 | # CONFIG_MDIO_BITBANG is not set |
687 | CONFIG_NET_ETHERNET=y | 687 | CONFIG_NET_ETHERNET=y |
688 | CONFIG_MII=y | 688 | CONFIG_MII=y |
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/s390/kernel/topology.c b/arch/s390/kernel/topology.c index a947899dcba1..bf96f1b5c6ec 100644 --- a/arch/s390/kernel/topology.c +++ b/arch/s390/kernel/topology.c | |||
@@ -212,7 +212,7 @@ static void update_cpu_core_map(void) | |||
212 | cpu_core_map[cpu] = cpu_coregroup_map(cpu); | 212 | cpu_core_map[cpu] = cpu_coregroup_map(cpu); |
213 | } | 213 | } |
214 | 214 | ||
215 | void arch_update_cpu_topology(void) | 215 | int arch_update_cpu_topology(void) |
216 | { | 216 | { |
217 | struct tl_info *info = tl_info; | 217 | struct tl_info *info = tl_info; |
218 | struct sys_device *sysdev; | 218 | struct sys_device *sysdev; |
@@ -221,7 +221,7 @@ void arch_update_cpu_topology(void) | |||
221 | if (!machine_has_topology) { | 221 | if (!machine_has_topology) { |
222 | update_cpu_core_map(); | 222 | update_cpu_core_map(); |
223 | topology_update_polarization_simple(); | 223 | topology_update_polarization_simple(); |
224 | return; | 224 | return 0; |
225 | } | 225 | } |
226 | stsi(info, 15, 1, 2); | 226 | stsi(info, 15, 1, 2); |
227 | tl_to_cores(info); | 227 | tl_to_cores(info); |
@@ -230,6 +230,7 @@ void arch_update_cpu_topology(void) | |||
230 | sysdev = get_cpu_sysdev(cpu); | 230 | sysdev = get_cpu_sysdev(cpu); |
231 | kobject_uevent(&sysdev->kobj, KOBJ_CHANGE); | 231 | kobject_uevent(&sysdev->kobj, KOBJ_CHANGE); |
232 | } | 232 | } |
233 | return 1; | ||
233 | } | 234 | } |
234 | 235 | ||
235 | static void topology_work_fn(struct work_struct *work) | 236 | static void topology_work_fn(struct work_struct *work) |
diff --git a/arch/sparc/include/asm/bitops_32.h b/arch/sparc/include/asm/bitops_32.h index 68b98a7e6454..9cf4ae0cd7ba 100644 --- a/arch/sparc/include/asm/bitops_32.h +++ b/arch/sparc/include/asm/bitops_32.h | |||
@@ -98,6 +98,7 @@ static inline void change_bit(unsigned long nr, volatile unsigned long *addr) | |||
98 | #include <asm-generic/bitops/sched.h> | 98 | #include <asm-generic/bitops/sched.h> |
99 | #include <asm-generic/bitops/ffs.h> | 99 | #include <asm-generic/bitops/ffs.h> |
100 | #include <asm-generic/bitops/fls.h> | 100 | #include <asm-generic/bitops/fls.h> |
101 | #include <asm-generic/bitops/__fls.h> | ||
101 | #include <asm-generic/bitops/fls64.h> | 102 | #include <asm-generic/bitops/fls64.h> |
102 | #include <asm-generic/bitops/hweight.h> | 103 | #include <asm-generic/bitops/hweight.h> |
103 | #include <asm-generic/bitops/lock.h> | 104 | #include <asm-generic/bitops/lock.h> |
diff --git a/arch/sparc64/kernel/ptrace.c b/arch/sparc64/kernel/ptrace.c index f43adbc773ca..a941c610e7ce 100644 --- a/arch/sparc64/kernel/ptrace.c +++ b/arch/sparc64/kernel/ptrace.c | |||
@@ -1014,7 +1014,7 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) | |||
1014 | break; | 1014 | break; |
1015 | 1015 | ||
1016 | case PTRACE_SETFPREGS64: | 1016 | case PTRACE_SETFPREGS64: |
1017 | ret = copy_regset_to_user(child, view, REGSET_FP, | 1017 | ret = copy_regset_from_user(child, view, REGSET_FP, |
1018 | 0 * sizeof(u64), | 1018 | 0 * sizeof(u64), |
1019 | 33 * sizeof(u64), | 1019 | 33 * sizeof(u64), |
1020 | fps); | 1020 | fps); |
diff --git a/arch/sparc64/kernel/visemul.c b/arch/sparc64/kernel/visemul.c index 9e05cb5cb855..b956fd71c131 100644 --- a/arch/sparc64/kernel/visemul.c +++ b/arch/sparc64/kernel/visemul.c | |||
@@ -131,7 +131,7 @@ | |||
131 | #define VIS_OPF_SHIFT 5 | 131 | #define VIS_OPF_SHIFT 5 |
132 | #define VIS_OPF_MASK (0x1ff << VIS_OPF_SHIFT) | 132 | #define VIS_OPF_MASK (0x1ff << VIS_OPF_SHIFT) |
133 | 133 | ||
134 | #define RS1(INSN) (((INSN) >> 24) & 0x1f) | 134 | #define RS1(INSN) (((INSN) >> 14) & 0x1f) |
135 | #define RS2(INSN) (((INSN) >> 0) & 0x1f) | 135 | #define RS2(INSN) (((INSN) >> 0) & 0x1f) |
136 | #define RD(INSN) (((INSN) >> 25) & 0x1f) | 136 | #define RD(INSN) (((INSN) >> 25) & 0x1f) |
137 | 137 | ||
@@ -445,7 +445,7 @@ static void pdist(struct pt_regs *regs, unsigned int insn) | |||
445 | unsigned long i; | 445 | unsigned long i; |
446 | 446 | ||
447 | rs1 = fpd_regval(f, RS1(insn)); | 447 | rs1 = fpd_regval(f, RS1(insn)); |
448 | rs2 = fpd_regval(f, RS1(insn)); | 448 | rs2 = fpd_regval(f, RS2(insn)); |
449 | rd = fpd_regaddr(f, RD(insn)); | 449 | rd = fpd_regaddr(f, RD(insn)); |
450 | 450 | ||
451 | rd_val = *rd; | 451 | rd_val = *rd; |
@@ -807,6 +807,8 @@ int vis_emul(struct pt_regs *regs, unsigned int insn) | |||
807 | if (get_user(insn, (u32 __user *) pc)) | 807 | if (get_user(insn, (u32 __user *) pc)) |
808 | return -EFAULT; | 808 | return -EFAULT; |
809 | 809 | ||
810 | save_and_clear_fpu(); | ||
811 | |||
810 | opf = (insn & VIS_OPF_MASK) >> VIS_OPF_SHIFT; | 812 | opf = (insn & VIS_OPF_MASK) >> VIS_OPF_SHIFT; |
811 | switch (opf) { | 813 | switch (opf) { |
812 | default: | 814 | default: |
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/amd_iommu_types.h b/arch/x86/include/asm/amd_iommu_types.h index 1a30c0440c6b..ac302a2fa339 100644 --- a/arch/x86/include/asm/amd_iommu_types.h +++ b/arch/x86/include/asm/amd_iommu_types.h | |||
@@ -251,13 +251,6 @@ struct amd_iommu { | |||
251 | /* Pointer to PCI device of this IOMMU */ | 251 | /* Pointer to PCI device of this IOMMU */ |
252 | struct pci_dev *dev; | 252 | struct pci_dev *dev; |
253 | 253 | ||
254 | /* | ||
255 | * Capability pointer. There could be more than one IOMMU per PCI | ||
256 | * device function if there are more than one AMD IOMMU capability | ||
257 | * pointers. | ||
258 | */ | ||
259 | u16 cap_ptr; | ||
260 | |||
261 | /* physical address of MMIO space */ | 254 | /* physical address of MMIO space */ |
262 | u64 mmio_phys; | 255 | u64 mmio_phys; |
263 | /* virtual address of MMIO space */ | 256 | /* virtual address of MMIO space */ |
@@ -266,6 +259,13 @@ struct amd_iommu { | |||
266 | /* capabilities of that IOMMU read from ACPI */ | 259 | /* capabilities of that IOMMU read from ACPI */ |
267 | u32 cap; | 260 | u32 cap; |
268 | 261 | ||
262 | /* | ||
263 | * Capability pointer. There could be more than one IOMMU per PCI | ||
264 | * device function if there are more than one AMD IOMMU capability | ||
265 | * pointers. | ||
266 | */ | ||
267 | u16 cap_ptr; | ||
268 | |||
269 | /* pci domain of this IOMMU */ | 269 | /* pci domain of this IOMMU */ |
270 | u16 pci_seg; | 270 | u16 pci_seg; |
271 | 271 | ||
@@ -284,19 +284,19 @@ struct amd_iommu { | |||
284 | /* size of command buffer */ | 284 | /* size of command buffer */ |
285 | u32 cmd_buf_size; | 285 | u32 cmd_buf_size; |
286 | 286 | ||
287 | /* event buffer virtual address */ | ||
288 | u8 *evt_buf; | ||
289 | /* size of event buffer */ | 287 | /* size of event buffer */ |
290 | u32 evt_buf_size; | 288 | u32 evt_buf_size; |
289 | /* event buffer virtual address */ | ||
290 | u8 *evt_buf; | ||
291 | /* MSI number for event interrupt */ | 291 | /* MSI number for event interrupt */ |
292 | u16 evt_msi_num; | 292 | u16 evt_msi_num; |
293 | 293 | ||
294 | /* if one, we need to send a completion wait command */ | ||
295 | int need_sync; | ||
296 | |||
297 | /* true if interrupts for this IOMMU are already enabled */ | 294 | /* true if interrupts for this IOMMU are already enabled */ |
298 | bool int_enabled; | 295 | bool int_enabled; |
299 | 296 | ||
297 | /* if one, we need to send a completion wait command */ | ||
298 | int need_sync; | ||
299 | |||
300 | /* default dma_ops domain for that IOMMU */ | 300 | /* default dma_ops domain for that IOMMU */ |
301 | struct dma_ops_domain *default_dom; | 301 | struct dma_ops_domain *default_dom; |
302 | }; | 302 | }; |
diff --git a/arch/x86/include/asm/dma-mapping.h b/arch/x86/include/asm/dma-mapping.h index 7f225a4b2a26..097794ff6b79 100644 --- a/arch/x86/include/asm/dma-mapping.h +++ b/arch/x86/include/asm/dma-mapping.h | |||
@@ -71,15 +71,13 @@ static inline struct dma_mapping_ops *get_dma_ops(struct device *dev) | |||
71 | /* Make sure we keep the same behaviour */ | 71 | /* Make sure we keep the same behaviour */ |
72 | static inline int dma_mapping_error(struct device *dev, dma_addr_t dma_addr) | 72 | static inline int dma_mapping_error(struct device *dev, dma_addr_t dma_addr) |
73 | { | 73 | { |
74 | #ifdef CONFIG_X86_32 | 74 | #ifdef CONFIG_X86_64 |
75 | return 0; | ||
76 | #else | ||
77 | struct dma_mapping_ops *ops = get_dma_ops(dev); | 75 | struct dma_mapping_ops *ops = get_dma_ops(dev); |
78 | if (ops->mapping_error) | 76 | if (ops->mapping_error) |
79 | return ops->mapping_error(dev, dma_addr); | 77 | return ops->mapping_error(dev, dma_addr); |
80 | 78 | ||
81 | return (dma_addr == bad_dma_address); | ||
82 | #endif | 79 | #endif |
80 | return (dma_addr == bad_dma_address); | ||
83 | } | 81 | } |
84 | 82 | ||
85 | #define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f) | 83 | #define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f) |
diff --git a/arch/x86/include/asm/topology.h b/arch/x86/include/asm/topology.h index 4850e4b02b61..ff386ff50ed7 100644 --- a/arch/x86/include/asm/topology.h +++ b/arch/x86/include/asm/topology.h | |||
@@ -239,7 +239,7 @@ struct pci_bus; | |||
239 | void set_pci_bus_resources_arch_default(struct pci_bus *b); | 239 | void set_pci_bus_resources_arch_default(struct pci_bus *b); |
240 | 240 | ||
241 | #ifdef CONFIG_SMP | 241 | #ifdef CONFIG_SMP |
242 | #define mc_capable() (boot_cpu_data.x86_max_cores > 1) | 242 | #define mc_capable() (cpus_weight(per_cpu(cpu_core_map, 0)) != nr_cpu_ids) |
243 | #define smt_capable() (smp_num_siblings > 1) | 243 | #define smt_capable() (smp_num_siblings > 1) |
244 | #endif | 244 | #endif |
245 | 245 | ||
diff --git a/arch/x86/kernel/amd_iommu.c b/arch/x86/kernel/amd_iommu.c index e4899e0e8787..a7b6dec6fc3f 100644 --- a/arch/x86/kernel/amd_iommu.c +++ b/arch/x86/kernel/amd_iommu.c | |||
@@ -187,6 +187,8 @@ static int iommu_queue_command(struct amd_iommu *iommu, struct iommu_cmd *cmd) | |||
187 | 187 | ||
188 | spin_lock_irqsave(&iommu->lock, flags); | 188 | spin_lock_irqsave(&iommu->lock, flags); |
189 | ret = __iommu_queue_command(iommu, cmd); | 189 | ret = __iommu_queue_command(iommu, cmd); |
190 | if (!ret) | ||
191 | iommu->need_sync = 1; | ||
190 | spin_unlock_irqrestore(&iommu->lock, flags); | 192 | spin_unlock_irqrestore(&iommu->lock, flags); |
191 | 193 | ||
192 | return ret; | 194 | return ret; |
@@ -210,10 +212,13 @@ static int iommu_completion_wait(struct amd_iommu *iommu) | |||
210 | cmd.data[0] = CMD_COMPL_WAIT_INT_MASK; | 212 | cmd.data[0] = CMD_COMPL_WAIT_INT_MASK; |
211 | CMD_SET_TYPE(&cmd, CMD_COMPL_WAIT); | 213 | CMD_SET_TYPE(&cmd, CMD_COMPL_WAIT); |
212 | 214 | ||
213 | iommu->need_sync = 0; | ||
214 | |||
215 | spin_lock_irqsave(&iommu->lock, flags); | 215 | spin_lock_irqsave(&iommu->lock, flags); |
216 | 216 | ||
217 | if (!iommu->need_sync) | ||
218 | goto out; | ||
219 | |||
220 | iommu->need_sync = 0; | ||
221 | |||
217 | ret = __iommu_queue_command(iommu, &cmd); | 222 | ret = __iommu_queue_command(iommu, &cmd); |
218 | 223 | ||
219 | if (ret) | 224 | if (ret) |
@@ -254,8 +259,6 @@ static int iommu_queue_inv_dev_entry(struct amd_iommu *iommu, u16 devid) | |||
254 | 259 | ||
255 | ret = iommu_queue_command(iommu, &cmd); | 260 | ret = iommu_queue_command(iommu, &cmd); |
256 | 261 | ||
257 | iommu->need_sync = 1; | ||
258 | |||
259 | return ret; | 262 | return ret; |
260 | } | 263 | } |
261 | 264 | ||
@@ -281,8 +284,6 @@ static int iommu_queue_inv_iommu_pages(struct amd_iommu *iommu, | |||
281 | 284 | ||
282 | ret = iommu_queue_command(iommu, &cmd); | 285 | ret = iommu_queue_command(iommu, &cmd); |
283 | 286 | ||
284 | iommu->need_sync = 1; | ||
285 | |||
286 | return ret; | 287 | return ret; |
287 | } | 288 | } |
288 | 289 | ||
@@ -343,7 +344,7 @@ static int iommu_map(struct protection_domain *dom, | |||
343 | u64 __pte, *pte, *page; | 344 | u64 __pte, *pte, *page; |
344 | 345 | ||
345 | bus_addr = PAGE_ALIGN(bus_addr); | 346 | bus_addr = PAGE_ALIGN(bus_addr); |
346 | phys_addr = PAGE_ALIGN(bus_addr); | 347 | phys_addr = PAGE_ALIGN(phys_addr); |
347 | 348 | ||
348 | /* only support 512GB address spaces for now */ | 349 | /* only support 512GB address spaces for now */ |
349 | if (bus_addr > IOMMU_MAP_SIZE_L3 || !(prot & IOMMU_PROT_MASK)) | 350 | if (bus_addr > IOMMU_MAP_SIZE_L3 || !(prot & IOMMU_PROT_MASK)) |
@@ -599,7 +600,7 @@ static void dma_ops_free_pagetable(struct dma_ops_domain *dma_dom) | |||
599 | continue; | 600 | continue; |
600 | 601 | ||
601 | p2 = IOMMU_PTE_PAGE(p1[i]); | 602 | p2 = IOMMU_PTE_PAGE(p1[i]); |
602 | for (j = 0; j < 512; ++i) { | 603 | for (j = 0; j < 512; ++j) { |
603 | if (!IOMMU_PTE_PRESENT(p2[j])) | 604 | if (!IOMMU_PTE_PRESENT(p2[j])) |
604 | continue; | 605 | continue; |
605 | p3 = IOMMU_PTE_PAGE(p2[j]); | 606 | p3 = IOMMU_PTE_PAGE(p2[j]); |
@@ -762,8 +763,6 @@ static void set_device_domain(struct amd_iommu *iommu, | |||
762 | write_unlock_irqrestore(&amd_iommu_devtable_lock, flags); | 763 | write_unlock_irqrestore(&amd_iommu_devtable_lock, flags); |
763 | 764 | ||
764 | iommu_queue_inv_dev_entry(iommu, devid); | 765 | iommu_queue_inv_dev_entry(iommu, devid); |
765 | |||
766 | iommu->need_sync = 1; | ||
767 | } | 766 | } |
768 | 767 | ||
769 | /***************************************************************************** | 768 | /***************************************************************************** |
@@ -858,6 +857,9 @@ static int get_device_resources(struct device *dev, | |||
858 | print_devid(_bdf, 1); | 857 | print_devid(_bdf, 1); |
859 | } | 858 | } |
860 | 859 | ||
860 | if (domain_for_device(_bdf) == NULL) | ||
861 | set_device_domain(*iommu, *domain, _bdf); | ||
862 | |||
861 | return 1; | 863 | return 1; |
862 | } | 864 | } |
863 | 865 | ||
@@ -908,7 +910,7 @@ static void dma_ops_domain_unmap(struct amd_iommu *iommu, | |||
908 | if (address >= dom->aperture_size) | 910 | if (address >= dom->aperture_size) |
909 | return; | 911 | return; |
910 | 912 | ||
911 | WARN_ON(address & 0xfffULL || address > dom->aperture_size); | 913 | WARN_ON(address & ~PAGE_MASK || address >= dom->aperture_size); |
912 | 914 | ||
913 | pte = dom->pte_pages[IOMMU_PTE_L1_INDEX(address)]; | 915 | pte = dom->pte_pages[IOMMU_PTE_L1_INDEX(address)]; |
914 | pte += IOMMU_PTE_L0_INDEX(address); | 916 | pte += IOMMU_PTE_L0_INDEX(address); |
@@ -920,8 +922,8 @@ static void dma_ops_domain_unmap(struct amd_iommu *iommu, | |||
920 | 922 | ||
921 | /* | 923 | /* |
922 | * This function contains common code for mapping of a physically | 924 | * This function contains common code for mapping of a physically |
923 | * 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 |
924 | * mapping functions provided by this IOMMU driver. | 926 | * mapping functions provided with this IOMMU driver. |
925 | * Must be called with the domain lock held. | 927 | * Must be called with the domain lock held. |
926 | */ | 928 | */ |
927 | static dma_addr_t __map_single(struct device *dev, | 929 | static dma_addr_t __map_single(struct device *dev, |
@@ -981,7 +983,8 @@ static void __unmap_single(struct amd_iommu *iommu, | |||
981 | dma_addr_t i, start; | 983 | dma_addr_t i, start; |
982 | unsigned int pages; | 984 | unsigned int pages; |
983 | 985 | ||
984 | 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)) | ||
985 | return; | 988 | return; |
986 | 989 | ||
987 | pages = iommu_num_pages(dma_addr, size, PAGE_SIZE); | 990 | pages = iommu_num_pages(dma_addr, size, PAGE_SIZE); |
@@ -1031,8 +1034,7 @@ static dma_addr_t map_single(struct device *dev, phys_addr_t paddr, | |||
1031 | if (addr == bad_dma_address) | 1034 | if (addr == bad_dma_address) |
1032 | goto out; | 1035 | goto out; |
1033 | 1036 | ||
1034 | if (unlikely(iommu->need_sync)) | 1037 | iommu_completion_wait(iommu); |
1035 | iommu_completion_wait(iommu); | ||
1036 | 1038 | ||
1037 | out: | 1039 | out: |
1038 | spin_unlock_irqrestore(&domain->lock, flags); | 1040 | spin_unlock_irqrestore(&domain->lock, flags); |
@@ -1060,8 +1062,7 @@ static void unmap_single(struct device *dev, dma_addr_t dma_addr, | |||
1060 | 1062 | ||
1061 | __unmap_single(iommu, domain->priv, dma_addr, size, dir); | 1063 | __unmap_single(iommu, domain->priv, dma_addr, size, dir); |
1062 | 1064 | ||
1063 | if (unlikely(iommu->need_sync)) | 1065 | iommu_completion_wait(iommu); |
1064 | iommu_completion_wait(iommu); | ||
1065 | 1066 | ||
1066 | spin_unlock_irqrestore(&domain->lock, flags); | 1067 | spin_unlock_irqrestore(&domain->lock, flags); |
1067 | } | 1068 | } |
@@ -1127,8 +1128,7 @@ static int map_sg(struct device *dev, struct scatterlist *sglist, | |||
1127 | goto unmap; | 1128 | goto unmap; |
1128 | } | 1129 | } |
1129 | 1130 | ||
1130 | if (unlikely(iommu->need_sync)) | 1131 | iommu_completion_wait(iommu); |
1131 | iommu_completion_wait(iommu); | ||
1132 | 1132 | ||
1133 | out: | 1133 | out: |
1134 | spin_unlock_irqrestore(&domain->lock, flags); | 1134 | spin_unlock_irqrestore(&domain->lock, flags); |
@@ -1173,8 +1173,7 @@ static void unmap_sg(struct device *dev, struct scatterlist *sglist, | |||
1173 | s->dma_address = s->dma_length = 0; | 1173 | s->dma_address = s->dma_length = 0; |
1174 | } | 1174 | } |
1175 | 1175 | ||
1176 | if (unlikely(iommu->need_sync)) | 1176 | iommu_completion_wait(iommu); |
1177 | iommu_completion_wait(iommu); | ||
1178 | 1177 | ||
1179 | spin_unlock_irqrestore(&domain->lock, flags); | 1178 | spin_unlock_irqrestore(&domain->lock, flags); |
1180 | } | 1179 | } |
@@ -1225,8 +1224,7 @@ static void *alloc_coherent(struct device *dev, size_t size, | |||
1225 | goto out; | 1224 | goto out; |
1226 | } | 1225 | } |
1227 | 1226 | ||
1228 | if (unlikely(iommu->need_sync)) | 1227 | iommu_completion_wait(iommu); |
1229 | iommu_completion_wait(iommu); | ||
1230 | 1228 | ||
1231 | out: | 1229 | out: |
1232 | spin_unlock_irqrestore(&domain->lock, flags); | 1230 | spin_unlock_irqrestore(&domain->lock, flags); |
@@ -1257,8 +1255,7 @@ static void free_coherent(struct device *dev, size_t size, | |||
1257 | 1255 | ||
1258 | __unmap_single(iommu, domain->priv, dma_addr, size, DMA_BIDIRECTIONAL); | 1256 | __unmap_single(iommu, domain->priv, dma_addr, size, DMA_BIDIRECTIONAL); |
1259 | 1257 | ||
1260 | if (unlikely(iommu->need_sync)) | 1258 | iommu_completion_wait(iommu); |
1261 | iommu_completion_wait(iommu); | ||
1262 | 1259 | ||
1263 | spin_unlock_irqrestore(&domain->lock, flags); | 1260 | spin_unlock_irqrestore(&domain->lock, flags); |
1264 | 1261 | ||
diff --git a/arch/x86/kernel/mpparse.c b/arch/x86/kernel/mpparse.c index f98f4e1dba09..0f4c1fd5a1f4 100644 --- a/arch/x86/kernel/mpparse.c +++ b/arch/x86/kernel/mpparse.c | |||
@@ -604,6 +604,9 @@ static void __init __get_smp_config(unsigned int early) | |||
604 | printk(KERN_INFO "Using ACPI for processor (LAPIC) " | 604 | printk(KERN_INFO "Using ACPI for processor (LAPIC) " |
605 | "configuration information\n"); | 605 | "configuration information\n"); |
606 | 606 | ||
607 | if (!mpf) | ||
608 | return; | ||
609 | |||
607 | printk(KERN_INFO "Intel MultiProcessor Specification v1.%d\n", | 610 | printk(KERN_INFO "Intel MultiProcessor Specification v1.%d\n", |
608 | mpf->mpf_specification); | 611 | mpf->mpf_specification); |
609 | #if defined(CONFIG_X86_LOCAL_APIC) && defined(CONFIG_X86_32) | 612 | #if defined(CONFIG_X86_LOCAL_APIC) && defined(CONFIG_X86_32) |
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/pci-gart_64.c b/arch/x86/kernel/pci-gart_64.c index a42b02b4df68..ba7ad83e20a8 100644 --- a/arch/x86/kernel/pci-gart_64.c +++ b/arch/x86/kernel/pci-gart_64.c | |||
@@ -123,6 +123,8 @@ static void free_iommu(unsigned long offset, int size) | |||
123 | 123 | ||
124 | spin_lock_irqsave(&iommu_bitmap_lock, flags); | 124 | spin_lock_irqsave(&iommu_bitmap_lock, flags); |
125 | iommu_area_free(iommu_gart_bitmap, offset, size); | 125 | iommu_area_free(iommu_gart_bitmap, offset, size); |
126 | if (offset >= next_bit) | ||
127 | next_bit = offset + size; | ||
126 | spin_unlock_irqrestore(&iommu_bitmap_lock, flags); | 128 | spin_unlock_irqrestore(&iommu_bitmap_lock, flags); |
127 | } | 129 | } |
128 | 130 | ||
diff --git a/arch/x86/oprofile/nmi_int.c b/arch/x86/oprofile/nmi_int.c index 022cd41ea9b4..202864ad49a7 100644 --- a/arch/x86/oprofile/nmi_int.c +++ b/arch/x86/oprofile/nmi_int.c | |||
@@ -401,14 +401,13 @@ static int __init ppro_init(char **cpu_type) | |||
401 | *cpu_type = "i386/pii"; | 401 | *cpu_type = "i386/pii"; |
402 | break; | 402 | break; |
403 | case 6 ... 8: | 403 | case 6 ... 8: |
404 | case 10 ... 11: | ||
404 | *cpu_type = "i386/piii"; | 405 | *cpu_type = "i386/piii"; |
405 | break; | 406 | break; |
406 | case 9: | 407 | case 9: |
408 | case 13: | ||
407 | *cpu_type = "i386/p6_mobile"; | 409 | *cpu_type = "i386/p6_mobile"; |
408 | break; | 410 | break; |
409 | case 10 ... 13: | ||
410 | *cpu_type = "i386/p6"; | ||
411 | break; | ||
412 | case 14: | 411 | case 14: |
413 | *cpu_type = "i386/core"; | 412 | *cpu_type = "i386/core"; |
414 | break; | 413 | break; |
diff --git a/arch/x86/oprofile/op_model_ppro.c b/arch/x86/oprofile/op_model_ppro.c index 716d26f0e5d4..e9f80c744cf3 100644 --- a/arch/x86/oprofile/op_model_ppro.c +++ b/arch/x86/oprofile/op_model_ppro.c | |||
@@ -156,6 +156,8 @@ static void ppro_start(struct op_msrs const * const msrs) | |||
156 | unsigned int low, high; | 156 | unsigned int low, high; |
157 | int i; | 157 | int i; |
158 | 158 | ||
159 | if (!reset_value) | ||
160 | return; | ||
159 | for (i = 0; i < num_counters; ++i) { | 161 | for (i = 0; i < num_counters; ++i) { |
160 | if (reset_value[i]) { | 162 | if (reset_value[i]) { |
161 | CTRL_READ(low, high, msrs, i); | 163 | CTRL_READ(low, high, msrs, i); |
@@ -171,6 +173,8 @@ static void ppro_stop(struct op_msrs const * const msrs) | |||
171 | unsigned int low, high; | 173 | unsigned int low, high; |
172 | int i; | 174 | int i; |
173 | 175 | ||
176 | if (!reset_value) | ||
177 | return; | ||
174 | for (i = 0; i < num_counters; ++i) { | 178 | for (i = 0; i < num_counters; ++i) { |
175 | if (!reset_value[i]) | 179 | if (!reset_value[i]) |
176 | continue; | 180 | continue; |
diff --git a/block/bsg.c b/block/bsg.c index e8bd2475682a..e73e50daf3d0 100644 --- a/block/bsg.c +++ b/block/bsg.c | |||
@@ -202,6 +202,8 @@ static int blk_fill_sgv4_hdr_rq(struct request_queue *q, struct request *rq, | |||
202 | rq->timeout = q->sg_timeout; | 202 | rq->timeout = q->sg_timeout; |
203 | if (!rq->timeout) | 203 | if (!rq->timeout) |
204 | rq->timeout = BLK_DEFAULT_SG_TIMEOUT; | 204 | rq->timeout = BLK_DEFAULT_SG_TIMEOUT; |
205 | if (rq->timeout < BLK_MIN_SG_TIMEOUT) | ||
206 | rq->timeout = BLK_MIN_SG_TIMEOUT; | ||
205 | 207 | ||
206 | return 0; | 208 | return 0; |
207 | } | 209 | } |
diff --git a/block/compat_ioctl.c b/block/compat_ioctl.c index 3d3e7a46f38c..67eb93cff699 100644 --- a/block/compat_ioctl.c +++ b/block/compat_ioctl.c | |||
@@ -677,6 +677,29 @@ static int compat_blkdev_driver_ioctl(struct block_device *bdev, fmode_t mode, | |||
677 | case DVD_WRITE_STRUCT: | 677 | case DVD_WRITE_STRUCT: |
678 | case DVD_AUTH: | 678 | case DVD_AUTH: |
679 | arg = (unsigned long)compat_ptr(arg); | 679 | arg = (unsigned long)compat_ptr(arg); |
680 | /* These intepret arg as an unsigned long, not as a pointer, | ||
681 | * so we must not do compat_ptr() conversion. */ | ||
682 | case HDIO_SET_MULTCOUNT: | ||
683 | case HDIO_SET_UNMASKINTR: | ||
684 | case HDIO_SET_KEEPSETTINGS: | ||
685 | case HDIO_SET_32BIT: | ||
686 | case HDIO_SET_NOWERR: | ||
687 | case HDIO_SET_DMA: | ||
688 | case HDIO_SET_PIO_MODE: | ||
689 | case HDIO_SET_NICE: | ||
690 | case HDIO_SET_WCACHE: | ||
691 | case HDIO_SET_ACOUSTIC: | ||
692 | case HDIO_SET_BUSSTATE: | ||
693 | case HDIO_SET_ADDRESS: | ||
694 | case CDROMEJECT_SW: | ||
695 | case CDROM_SET_OPTIONS: | ||
696 | case CDROM_CLEAR_OPTIONS: | ||
697 | case CDROM_SELECT_SPEED: | ||
698 | case CDROM_SELECT_DISC: | ||
699 | case CDROM_MEDIA_CHANGED: | ||
700 | case CDROM_DRIVE_STATUS: | ||
701 | case CDROM_LOCKDOOR: | ||
702 | case CDROM_DEBUG: | ||
680 | break; | 703 | break; |
681 | default: | 704 | default: |
682 | /* unknown ioctl number */ | 705 | /* unknown ioctl number */ |
@@ -699,8 +722,14 @@ long compat_blkdev_ioctl(struct file *file, unsigned cmd, unsigned long arg) | |||
699 | struct backing_dev_info *bdi; | 722 | struct backing_dev_info *bdi; |
700 | loff_t size; | 723 | loff_t size; |
701 | 724 | ||
725 | /* | ||
726 | * O_NDELAY can be altered using fcntl(.., F_SETFL, ..), so we have | ||
727 | * to updated it before every ioctl. | ||
728 | */ | ||
702 | if (file->f_flags & O_NDELAY) | 729 | if (file->f_flags & O_NDELAY) |
703 | mode |= FMODE_NDELAY_NOW; | 730 | mode |= FMODE_NDELAY; |
731 | else | ||
732 | mode &= ~FMODE_NDELAY; | ||
704 | 733 | ||
705 | switch (cmd) { | 734 | switch (cmd) { |
706 | case HDIO_GETGEO: | 735 | case HDIO_GETGEO: |
diff --git a/block/scsi_ioctl.c b/block/scsi_ioctl.c index 5963cf91a3a0..d0bb92cbefb9 100644 --- a/block/scsi_ioctl.c +++ b/block/scsi_ioctl.c | |||
@@ -208,6 +208,8 @@ static int blk_fill_sghdr_rq(struct request_queue *q, struct request *rq, | |||
208 | rq->timeout = q->sg_timeout; | 208 | rq->timeout = q->sg_timeout; |
209 | if (!rq->timeout) | 209 | if (!rq->timeout) |
210 | rq->timeout = BLK_DEFAULT_SG_TIMEOUT; | 210 | rq->timeout = BLK_DEFAULT_SG_TIMEOUT; |
211 | if (rq->timeout < BLK_MIN_SG_TIMEOUT) | ||
212 | rq->timeout = BLK_MIN_SG_TIMEOUT; | ||
211 | 213 | ||
212 | return 0; | 214 | return 0; |
213 | } | 215 | } |
diff --git a/crypto/Kconfig b/crypto/Kconfig index 39dbd8e4dde1..dc20a34ba5ef 100644 --- a/crypto/Kconfig +++ b/crypto/Kconfig | |||
@@ -31,35 +31,63 @@ config CRYPTO_FIPS | |||
31 | 31 | ||
32 | config CRYPTO_ALGAPI | 32 | config CRYPTO_ALGAPI |
33 | tristate | 33 | tristate |
34 | select CRYPTO_ALGAPI2 | ||
34 | help | 35 | help |
35 | This option provides the API for cryptographic algorithms. | 36 | This option provides the API for cryptographic algorithms. |
36 | 37 | ||
38 | config CRYPTO_ALGAPI2 | ||
39 | tristate | ||
40 | |||
37 | config CRYPTO_AEAD | 41 | config CRYPTO_AEAD |
38 | tristate | 42 | tristate |
43 | select CRYPTO_AEAD2 | ||
39 | select CRYPTO_ALGAPI | 44 | select CRYPTO_ALGAPI |
40 | 45 | ||
46 | config CRYPTO_AEAD2 | ||
47 | tristate | ||
48 | select CRYPTO_ALGAPI2 | ||
49 | |||
41 | config CRYPTO_BLKCIPHER | 50 | config CRYPTO_BLKCIPHER |
42 | tristate | 51 | tristate |
52 | select CRYPTO_BLKCIPHER2 | ||
43 | select CRYPTO_ALGAPI | 53 | select CRYPTO_ALGAPI |
44 | select CRYPTO_RNG | 54 | |
55 | config CRYPTO_BLKCIPHER2 | ||
56 | tristate | ||
57 | select CRYPTO_ALGAPI2 | ||
58 | select CRYPTO_RNG2 | ||
45 | 59 | ||
46 | config CRYPTO_HASH | 60 | config CRYPTO_HASH |
47 | tristate | 61 | tristate |
62 | select CRYPTO_HASH2 | ||
48 | select CRYPTO_ALGAPI | 63 | select CRYPTO_ALGAPI |
49 | 64 | ||
65 | config CRYPTO_HASH2 | ||
66 | tristate | ||
67 | select CRYPTO_ALGAPI2 | ||
68 | |||
50 | config CRYPTO_RNG | 69 | config CRYPTO_RNG |
51 | tristate | 70 | tristate |
71 | select CRYPTO_RNG2 | ||
52 | select CRYPTO_ALGAPI | 72 | select CRYPTO_ALGAPI |
53 | 73 | ||
74 | config CRYPTO_RNG2 | ||
75 | tristate | ||
76 | select CRYPTO_ALGAPI2 | ||
77 | |||
54 | config CRYPTO_MANAGER | 78 | config CRYPTO_MANAGER |
55 | tristate "Cryptographic algorithm manager" | 79 | tristate "Cryptographic algorithm manager" |
56 | select CRYPTO_AEAD | 80 | select CRYPTO_MANAGER2 |
57 | select CRYPTO_HASH | ||
58 | select CRYPTO_BLKCIPHER | ||
59 | help | 81 | help |
60 | Create default cryptographic template instantiations such as | 82 | Create default cryptographic template instantiations such as |
61 | cbc(aes). | 83 | cbc(aes). |
62 | 84 | ||
85 | config CRYPTO_MANAGER2 | ||
86 | def_tristate CRYPTO_MANAGER || (CRYPTO_MANAGER!=n && CRYPTO_ALGAPI=y) | ||
87 | select CRYPTO_AEAD2 | ||
88 | select CRYPTO_HASH2 | ||
89 | select CRYPTO_BLKCIPHER2 | ||
90 | |||
63 | config CRYPTO_GF128MUL | 91 | config CRYPTO_GF128MUL |
64 | tristate "GF(2^128) multiplication functions (EXPERIMENTAL)" | 92 | tristate "GF(2^128) multiplication functions (EXPERIMENTAL)" |
65 | depends on EXPERIMENTAL | 93 | depends on EXPERIMENTAL |
diff --git a/crypto/Makefile b/crypto/Makefile index 5862b807334e..cd4a4ed078ff 100644 --- a/crypto/Makefile +++ b/crypto/Makefile | |||
@@ -9,24 +9,24 @@ obj-$(CONFIG_CRYPTO_FIPS) += fips.o | |||
9 | 9 | ||
10 | crypto_algapi-$(CONFIG_PROC_FS) += proc.o | 10 | crypto_algapi-$(CONFIG_PROC_FS) += proc.o |
11 | crypto_algapi-objs := algapi.o scatterwalk.o $(crypto_algapi-y) | 11 | crypto_algapi-objs := algapi.o scatterwalk.o $(crypto_algapi-y) |
12 | obj-$(CONFIG_CRYPTO_ALGAPI) += crypto_algapi.o | 12 | obj-$(CONFIG_CRYPTO_ALGAPI2) += crypto_algapi.o |
13 | 13 | ||
14 | obj-$(CONFIG_CRYPTO_AEAD) += aead.o | 14 | obj-$(CONFIG_CRYPTO_AEAD2) += aead.o |
15 | 15 | ||
16 | crypto_blkcipher-objs := ablkcipher.o | 16 | crypto_blkcipher-objs := ablkcipher.o |
17 | crypto_blkcipher-objs += blkcipher.o | 17 | crypto_blkcipher-objs += blkcipher.o |
18 | obj-$(CONFIG_CRYPTO_BLKCIPHER) += crypto_blkcipher.o | 18 | obj-$(CONFIG_CRYPTO_BLKCIPHER2) += crypto_blkcipher.o |
19 | obj-$(CONFIG_CRYPTO_BLKCIPHER) += chainiv.o | 19 | obj-$(CONFIG_CRYPTO_BLKCIPHER2) += chainiv.o |
20 | obj-$(CONFIG_CRYPTO_BLKCIPHER) += eseqiv.o | 20 | obj-$(CONFIG_CRYPTO_BLKCIPHER2) += eseqiv.o |
21 | obj-$(CONFIG_CRYPTO_SEQIV) += seqiv.o | 21 | obj-$(CONFIG_CRYPTO_SEQIV) += seqiv.o |
22 | 22 | ||
23 | crypto_hash-objs := hash.o | 23 | crypto_hash-objs := hash.o |
24 | crypto_hash-objs += ahash.o | 24 | crypto_hash-objs += ahash.o |
25 | obj-$(CONFIG_CRYPTO_HASH) += crypto_hash.o | 25 | obj-$(CONFIG_CRYPTO_HASH2) += crypto_hash.o |
26 | 26 | ||
27 | cryptomgr-objs := algboss.o testmgr.o | 27 | cryptomgr-objs := algboss.o testmgr.o |
28 | 28 | ||
29 | obj-$(CONFIG_CRYPTO_MANAGER) += cryptomgr.o | 29 | obj-$(CONFIG_CRYPTO_MANAGER2) += cryptomgr.o |
30 | obj-$(CONFIG_CRYPTO_HMAC) += hmac.o | 30 | obj-$(CONFIG_CRYPTO_HMAC) += hmac.o |
31 | obj-$(CONFIG_CRYPTO_XCBC) += xcbc.o | 31 | obj-$(CONFIG_CRYPTO_XCBC) += xcbc.o |
32 | obj-$(CONFIG_CRYPTO_NULL) += crypto_null.o | 32 | obj-$(CONFIG_CRYPTO_NULL) += crypto_null.o |
@@ -73,8 +73,8 @@ obj-$(CONFIG_CRYPTO_MICHAEL_MIC) += michael_mic.o | |||
73 | obj-$(CONFIG_CRYPTO_CRC32C) += crc32c.o | 73 | obj-$(CONFIG_CRYPTO_CRC32C) += crc32c.o |
74 | obj-$(CONFIG_CRYPTO_AUTHENC) += authenc.o | 74 | obj-$(CONFIG_CRYPTO_AUTHENC) += authenc.o |
75 | obj-$(CONFIG_CRYPTO_LZO) += lzo.o | 75 | obj-$(CONFIG_CRYPTO_LZO) += lzo.o |
76 | obj-$(CONFIG_CRYPTO_RNG) += rng.o | 76 | obj-$(CONFIG_CRYPTO_RNG2) += rng.o |
77 | obj-$(CONFIG_CRYPTO_RNG) += krng.o | 77 | obj-$(CONFIG_CRYPTO_RNG2) += krng.o |
78 | obj-$(CONFIG_CRYPTO_ANSI_CPRNG) += ansi_cprng.o | 78 | obj-$(CONFIG_CRYPTO_ANSI_CPRNG) += ansi_cprng.o |
79 | obj-$(CONFIG_CRYPTO_TEST) += tcrypt.o | 79 | obj-$(CONFIG_CRYPTO_TEST) += tcrypt.o |
80 | 80 | ||
diff --git a/drivers/acpi/battery.c b/drivers/acpi/battery.c index a0a178dd189c..1423b0c0cd2e 100644 --- a/drivers/acpi/battery.c +++ b/drivers/acpi/battery.c | |||
@@ -174,15 +174,6 @@ static int acpi_battery_get_property(struct power_supply *psy, | |||
174 | break; | 174 | break; |
175 | case POWER_SUPPLY_PROP_CURRENT_NOW: | 175 | case POWER_SUPPLY_PROP_CURRENT_NOW: |
176 | val->intval = battery->current_now * 1000; | 176 | val->intval = battery->current_now * 1000; |
177 | /* if power units are mW, convert to mA by | ||
178 | dividing by current voltage (mV/1000) */ | ||
179 | if (!battery->power_unit) { | ||
180 | if (battery->voltage_now) { | ||
181 | val->intval /= battery->voltage_now; | ||
182 | val->intval *= 1000; | ||
183 | } else | ||
184 | val->intval = -1; | ||
185 | } | ||
186 | break; | 177 | break; |
187 | case POWER_SUPPLY_PROP_CHARGE_FULL_DESIGN: | 178 | case POWER_SUPPLY_PROP_CHARGE_FULL_DESIGN: |
188 | case POWER_SUPPLY_PROP_ENERGY_FULL_DESIGN: | 179 | case POWER_SUPPLY_PROP_ENERGY_FULL_DESIGN: |
diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig index 78fbec8ceda0..421b7c71e72d 100644 --- a/drivers/ata/Kconfig +++ b/drivers/ata/Kconfig | |||
@@ -153,7 +153,7 @@ config SATA_PROMISE | |||
153 | If unsure, say N. | 153 | If unsure, say N. |
154 | 154 | ||
155 | config SATA_SX4 | 155 | config SATA_SX4 |
156 | tristate "Promise SATA SX4 support" | 156 | tristate "Promise SATA SX4 support (Experimental)" |
157 | depends on PCI && EXPERIMENTAL | 157 | depends on PCI && EXPERIMENTAL |
158 | help | 158 | help |
159 | This option enables support for Promise Serial ATA SX4. | 159 | This option enables support for Promise Serial ATA SX4. |
@@ -219,8 +219,8 @@ config PATA_ACPI | |||
219 | otherwise unsupported hardware. | 219 | otherwise unsupported hardware. |
220 | 220 | ||
221 | config PATA_ALI | 221 | config PATA_ALI |
222 | tristate "ALi PATA support (Experimental)" | 222 | tristate "ALi PATA support" |
223 | depends on PCI && EXPERIMENTAL | 223 | depends on PCI |
224 | help | 224 | help |
225 | This option enables support for the ALi ATA interfaces | 225 | This option enables support for the ALi ATA interfaces |
226 | found on the many ALi chipsets. | 226 | found on the many ALi chipsets. |
@@ -263,7 +263,7 @@ config PATA_ATIIXP | |||
263 | If unsure, say N. | 263 | If unsure, say N. |
264 | 264 | ||
265 | config PATA_CMD640_PCI | 265 | config PATA_CMD640_PCI |
266 | tristate "CMD640 PCI PATA support (Very Experimental)" | 266 | tristate "CMD640 PCI PATA support (Experimental)" |
267 | depends on PCI && EXPERIMENTAL | 267 | depends on PCI && EXPERIMENTAL |
268 | help | 268 | help |
269 | This option enables support for the CMD640 PCI IDE | 269 | This option enables support for the CMD640 PCI IDE |
@@ -291,8 +291,8 @@ config PATA_CS5520 | |||
291 | If unsure, say N. | 291 | If unsure, say N. |
292 | 292 | ||
293 | config PATA_CS5530 | 293 | config PATA_CS5530 |
294 | tristate "CS5530 PATA support (Experimental)" | 294 | tristate "CS5530 PATA support" |
295 | depends on PCI && EXPERIMENTAL | 295 | depends on PCI |
296 | help | 296 | help |
297 | This option enables support for the Cyrix/NatSemi/AMD CS5530 | 297 | This option enables support for the Cyrix/NatSemi/AMD CS5530 |
298 | companion chip used with the MediaGX/Geode processor family. | 298 | companion chip used with the MediaGX/Geode processor family. |
@@ -309,8 +309,8 @@ config PATA_CS5535 | |||
309 | If unsure, say N. | 309 | If unsure, say N. |
310 | 310 | ||
311 | config PATA_CS5536 | 311 | config PATA_CS5536 |
312 | tristate "CS5536 PATA support (Experimental)" | 312 | tristate "CS5536 PATA support" |
313 | depends on PCI && X86 && !X86_64 && EXPERIMENTAL | 313 | depends on PCI && X86 && !X86_64 |
314 | help | 314 | help |
315 | This option enables support for the AMD CS5536 | 315 | This option enables support for the AMD CS5536 |
316 | companion chip used with the Geode LX processor family. | 316 | companion chip used with the Geode LX processor family. |
@@ -363,7 +363,7 @@ config PATA_HPT37X | |||
363 | If unsure, say N. | 363 | If unsure, say N. |
364 | 364 | ||
365 | config PATA_HPT3X2N | 365 | config PATA_HPT3X2N |
366 | tristate "HPT 372N/302N PATA support (Very Experimental)" | 366 | tristate "HPT 372N/302N PATA support (Experimental)" |
367 | depends on PCI && EXPERIMENTAL | 367 | depends on PCI && EXPERIMENTAL |
368 | help | 368 | help |
369 | This option enables support for the N variant HPT PATA | 369 | This option enables support for the N variant HPT PATA |
@@ -389,8 +389,8 @@ config PATA_HPT3X3_DMA | |||
389 | problems with DMA on this chipset. | 389 | problems with DMA on this chipset. |
390 | 390 | ||
391 | config PATA_ISAPNP | 391 | config PATA_ISAPNP |
392 | tristate "ISA Plug and Play PATA support (Experimental)" | 392 | tristate "ISA Plug and Play PATA support" |
393 | depends on EXPERIMENTAL && ISAPNP | 393 | depends on ISAPNP |
394 | help | 394 | help |
395 | This option enables support for ISA plug & play ATA | 395 | This option enables support for ISA plug & play ATA |
396 | controllers such as those found on old soundcards. | 396 | controllers such as those found on old soundcards. |
@@ -498,8 +498,8 @@ config PATA_NINJA32 | |||
498 | If unsure, say N. | 498 | If unsure, say N. |
499 | 499 | ||
500 | config PATA_NS87410 | 500 | config PATA_NS87410 |
501 | tristate "Nat Semi NS87410 PATA support (Experimental)" | 501 | tristate "Nat Semi NS87410 PATA support" |
502 | depends on PCI && EXPERIMENTAL | 502 | depends on PCI |
503 | help | 503 | help |
504 | This option enables support for the National Semiconductor | 504 | This option enables support for the National Semiconductor |
505 | NS87410 PCI-IDE controller. | 505 | NS87410 PCI-IDE controller. |
@@ -507,8 +507,8 @@ config PATA_NS87410 | |||
507 | If unsure, say N. | 507 | If unsure, say N. |
508 | 508 | ||
509 | config PATA_NS87415 | 509 | config PATA_NS87415 |
510 | tristate "Nat Semi NS87415 PATA support (Experimental)" | 510 | tristate "Nat Semi NS87415 PATA support" |
511 | depends on PCI && EXPERIMENTAL | 511 | depends on PCI |
512 | help | 512 | help |
513 | This option enables support for the National Semiconductor | 513 | This option enables support for the National Semiconductor |
514 | NS87415 PCI-IDE controller. | 514 | NS87415 PCI-IDE controller. |
@@ -544,8 +544,8 @@ config PATA_PCMCIA | |||
544 | If unsure, say N. | 544 | If unsure, say N. |
545 | 545 | ||
546 | config PATA_PDC_OLD | 546 | config PATA_PDC_OLD |
547 | tristate "Older Promise PATA controller support (Experimental)" | 547 | tristate "Older Promise PATA controller support" |
548 | depends on PCI && EXPERIMENTAL | 548 | depends on PCI |
549 | help | 549 | help |
550 | This option enables support for the Promise 20246, 20262, 20263, | 550 | This option enables support for the Promise 20246, 20262, 20263, |
551 | 20265 and 20267 adapters. | 551 | 20265 and 20267 adapters. |
@@ -559,7 +559,7 @@ config PATA_QDI | |||
559 | Support for QDI 6500 and 6580 PATA controllers on VESA local bus. | 559 | Support for QDI 6500 and 6580 PATA controllers on VESA local bus. |
560 | 560 | ||
561 | config PATA_RADISYS | 561 | config PATA_RADISYS |
562 | tristate "RADISYS 82600 PATA support (Very Experimental)" | 562 | tristate "RADISYS 82600 PATA support (Experimental)" |
563 | depends on PCI && EXPERIMENTAL | 563 | depends on PCI && EXPERIMENTAL |
564 | help | 564 | help |
565 | This option enables support for the RADISYS 82600 | 565 | This option enables support for the RADISYS 82600 |
@@ -586,8 +586,8 @@ config PATA_RZ1000 | |||
586 | If unsure, say N. | 586 | If unsure, say N. |
587 | 587 | ||
588 | config PATA_SC1200 | 588 | config PATA_SC1200 |
589 | tristate "SC1200 PATA support (Very Experimental)" | 589 | tristate "SC1200 PATA support" |
590 | depends on PCI && EXPERIMENTAL | 590 | depends on PCI |
591 | help | 591 | help |
592 | This option enables support for the NatSemi/AMD SC1200 SoC | 592 | This option enables support for the NatSemi/AMD SC1200 SoC |
593 | companion chip used with the Geode processor family. | 593 | companion chip used with the Geode processor family. |
@@ -620,8 +620,8 @@ config PATA_SIL680 | |||
620 | If unsure, say N. | 620 | If unsure, say N. |
621 | 621 | ||
622 | config PATA_SIS | 622 | config PATA_SIS |
623 | tristate "SiS PATA support (Experimental)" | 623 | tristate "SiS PATA support" |
624 | depends on PCI && EXPERIMENTAL | 624 | depends on PCI |
625 | help | 625 | help |
626 | This option enables support for SiS PATA controllers | 626 | This option enables support for SiS PATA controllers |
627 | 627 | ||
diff --git a/drivers/ata/ata_piix.c b/drivers/ata/ata_piix.c index d6d97d8f3fa4..c11936e13dd3 100644 --- a/drivers/ata/ata_piix.c +++ b/drivers/ata/ata_piix.c | |||
@@ -1072,7 +1072,14 @@ static int piix_broken_suspend(void) | |||
1072 | * matching is necessary because dmi_system_id.matches is | 1072 | * matching is necessary because dmi_system_id.matches is |
1073 | * limited to four entries. | 1073 | * limited to four entries. |
1074 | */ | 1074 | */ |
1075 | if (!strcmp(dmi_get_system_info(DMI_SYS_VENDOR), "TOSHIBA") && | 1075 | if (dmi_get_system_info(DMI_SYS_VENDOR) && |
1076 | dmi_get_system_info(DMI_PRODUCT_NAME) && | ||
1077 | dmi_get_system_info(DMI_PRODUCT_VERSION) && | ||
1078 | dmi_get_system_info(DMI_PRODUCT_SERIAL) && | ||
1079 | dmi_get_system_info(DMI_BOARD_VENDOR) && | ||
1080 | dmi_get_system_info(DMI_BOARD_NAME) && | ||
1081 | dmi_get_system_info(DMI_BOARD_VERSION) && | ||
1082 | !strcmp(dmi_get_system_info(DMI_SYS_VENDOR), "TOSHIBA") && | ||
1076 | !strcmp(dmi_get_system_info(DMI_PRODUCT_NAME), "000000") && | 1083 | !strcmp(dmi_get_system_info(DMI_PRODUCT_NAME), "000000") && |
1077 | !strcmp(dmi_get_system_info(DMI_PRODUCT_VERSION), "000000") && | 1084 | !strcmp(dmi_get_system_info(DMI_PRODUCT_VERSION), "000000") && |
1078 | !strcmp(dmi_get_system_info(DMI_PRODUCT_SERIAL), "000000") && | 1085 | !strcmp(dmi_get_system_info(DMI_PRODUCT_SERIAL), "000000") && |
diff --git a/drivers/ata/pata_hpt366.c b/drivers/ata/pata_hpt366.c index f2b83eabc7c7..a098ba8eaab6 100644 --- a/drivers/ata/pata_hpt366.c +++ b/drivers/ata/pata_hpt366.c | |||
@@ -382,10 +382,10 @@ static int hpt36x_init_one(struct pci_dev *dev, const struct pci_device_id *id) | |||
382 | /* PCI clocking determines the ATA timing values to use */ | 382 | /* PCI clocking determines the ATA timing values to use */ |
383 | /* info_hpt366 is safe against re-entry so we can scribble on it */ | 383 | /* info_hpt366 is safe against re-entry so we can scribble on it */ |
384 | switch((reg1 & 0x700) >> 8) { | 384 | switch((reg1 & 0x700) >> 8) { |
385 | case 5: | 385 | case 9: |
386 | hpriv = &hpt366_40; | 386 | hpriv = &hpt366_40; |
387 | break; | 387 | break; |
388 | case 9: | 388 | case 5: |
389 | hpriv = &hpt366_25; | 389 | hpriv = &hpt366_25; |
390 | break; | 390 | break; |
391 | default: | 391 | default: |
diff --git a/drivers/ata/pata_ninja32.c b/drivers/ata/pata_ninja32.c index 4e466eae8b46..4dd9a3b031e4 100644 --- a/drivers/ata/pata_ninja32.c +++ b/drivers/ata/pata_ninja32.c | |||
@@ -44,7 +44,7 @@ | |||
44 | #include <linux/libata.h> | 44 | #include <linux/libata.h> |
45 | 45 | ||
46 | #define DRV_NAME "pata_ninja32" | 46 | #define DRV_NAME "pata_ninja32" |
47 | #define DRV_VERSION "0.1.1" | 47 | #define DRV_VERSION "0.1.3" |
48 | 48 | ||
49 | 49 | ||
50 | /** | 50 | /** |
@@ -130,7 +130,8 @@ static int ninja32_init_one(struct pci_dev *dev, const struct pci_device_id *id) | |||
130 | return rc; | 130 | return rc; |
131 | pci_set_master(dev); | 131 | pci_set_master(dev); |
132 | 132 | ||
133 | /* Set up the register mappings */ | 133 | /* Set up the register mappings. We use the I/O mapping as only the |
134 | older chips also have MMIO on BAR 1 */ | ||
134 | base = host->iomap[0]; | 135 | base = host->iomap[0]; |
135 | if (!base) | 136 | if (!base) |
136 | return -ENOMEM; | 137 | return -ENOMEM; |
@@ -167,8 +168,12 @@ static int ninja32_reinit_one(struct pci_dev *pdev) | |||
167 | #endif | 168 | #endif |
168 | 169 | ||
169 | static const struct pci_device_id ninja32[] = { | 170 | static const struct pci_device_id ninja32[] = { |
171 | { 0x10FC, 0x0003, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, | ||
172 | { 0x1145, 0x8008, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, | ||
173 | { 0x1145, 0xf008, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, | ||
170 | { 0x1145, 0xf021, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, | 174 | { 0x1145, 0xf021, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, |
171 | { 0x1145, 0xf024, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, | 175 | { 0x1145, 0xf024, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, |
176 | { 0x1145, 0xf02C, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, | ||
172 | { }, | 177 | { }, |
173 | }; | 178 | }; |
174 | 179 | ||
diff --git a/drivers/ata/pata_sis.c b/drivers/ata/pata_sis.c index d34236611752..e4be55e047f6 100644 --- a/drivers/ata/pata_sis.c +++ b/drivers/ata/pata_sis.c | |||
@@ -56,7 +56,6 @@ static const struct sis_laptop sis_laptop[] = { | |||
56 | { 0x5513, 0x1043, 0x1107 }, /* ASUS A6K */ | 56 | { 0x5513, 0x1043, 0x1107 }, /* ASUS A6K */ |
57 | { 0x5513, 0x1734, 0x105F }, /* FSC Amilo A1630 */ | 57 | { 0x5513, 0x1734, 0x105F }, /* FSC Amilo A1630 */ |
58 | { 0x5513, 0x1071, 0x8640 }, /* EasyNote K5305 */ | 58 | { 0x5513, 0x1071, 0x8640 }, /* EasyNote K5305 */ |
59 | { 0x5513, 0x1039, 0x5513 }, /* Targa Visionary 1000 */ | ||
60 | /* end marker */ | 59 | /* end marker */ |
61 | { 0, } | 60 | { 0, } |
62 | }; | 61 | }; |
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c index f20bf359b84f..dc7a8c352da2 100644 --- a/drivers/block/pktcdvd.c +++ b/drivers/block/pktcdvd.c | |||
@@ -302,7 +302,7 @@ static struct kobj_type kobj_pkt_type_wqueue = { | |||
302 | static void pkt_sysfs_dev_new(struct pktcdvd_device *pd) | 302 | static void pkt_sysfs_dev_new(struct pktcdvd_device *pd) |
303 | { | 303 | { |
304 | if (class_pktcdvd) { | 304 | if (class_pktcdvd) { |
305 | pd->dev = device_create(class_pktcdvd, NULL, pd->pkt_dev, NULL, | 305 | pd->dev = device_create(class_pktcdvd, NULL, MKDEV(0, 0), NULL, |
306 | "%s", pd->name); | 306 | "%s", pd->name); |
307 | if (IS_ERR(pd->dev)) | 307 | if (IS_ERR(pd->dev)) |
308 | pd->dev = NULL; | 308 | pd->dev = NULL; |
@@ -2790,7 +2790,7 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev) | |||
2790 | return 0; | 2790 | return 0; |
2791 | 2791 | ||
2792 | out_mem: | 2792 | out_mem: |
2793 | blkdev_put(bdev, FMODE_READ|FMODE_WRITE); | 2793 | blkdev_put(bdev, FMODE_READ | FMODE_NDELAY); |
2794 | /* This is safe: open() is still holding a reference. */ | 2794 | /* This is safe: open() is still holding a reference. */ |
2795 | module_put(THIS_MODULE); | 2795 | module_put(THIS_MODULE); |
2796 | return ret; | 2796 | return ret; |
@@ -2975,7 +2975,7 @@ static int pkt_remove_dev(dev_t pkt_dev) | |||
2975 | pkt_debugfs_dev_remove(pd); | 2975 | pkt_debugfs_dev_remove(pd); |
2976 | pkt_sysfs_dev_remove(pd); | 2976 | pkt_sysfs_dev_remove(pd); |
2977 | 2977 | ||
2978 | blkdev_put(pd->bdev, FMODE_READ|FMODE_WRITE); | 2978 | blkdev_put(pd->bdev, FMODE_READ | FMODE_NDELAY); |
2979 | 2979 | ||
2980 | remove_proc_entry(pd->name, pkt_proc); | 2980 | remove_proc_entry(pd->name, pkt_proc); |
2981 | DPRINTK(DRIVER_NAME": writer %s unmapped\n", pd->name); | 2981 | DPRINTK(DRIVER_NAME": writer %s unmapped\n", pd->name); |
diff --git a/drivers/char/serial167.c b/drivers/char/serial167.c index 3b23270eaa65..a8f15e6be594 100644 --- a/drivers/char/serial167.c +++ b/drivers/char/serial167.c | |||
@@ -418,7 +418,7 @@ static irqreturn_t cd2401_rxerr_interrupt(int irq, void *dev_id) | |||
418 | TTY_OVERRUN); | 418 | TTY_OVERRUN); |
419 | /* | 419 | /* |
420 | If the flip buffer itself is | 420 | If the flip buffer itself is |
421 | overflowing, we still loose | 421 | overflowing, we still lose |
422 | the next incoming character. | 422 | the next incoming character. |
423 | */ | 423 | */ |
424 | if (tty_buffer_request_room(tty, 1) != | 424 | if (tty_buffer_request_room(tty, 1) != |
diff --git a/drivers/firewire/fw-ohci.c b/drivers/firewire/fw-ohci.c index 46610b090415..ab9c01e462ef 100644 --- a/drivers/firewire/fw-ohci.c +++ b/drivers/firewire/fw-ohci.c | |||
@@ -974,6 +974,7 @@ at_context_queue_packet(struct context *ctx, struct fw_packet *packet) | |||
974 | packet->ack = RCODE_SEND_ERROR; | 974 | packet->ack = RCODE_SEND_ERROR; |
975 | return -1; | 975 | return -1; |
976 | } | 976 | } |
977 | packet->payload_bus = payload_bus; | ||
977 | 978 | ||
978 | d[2].req_count = cpu_to_le16(packet->payload_length); | 979 | d[2].req_count = cpu_to_le16(packet->payload_length); |
979 | d[2].data_address = cpu_to_le32(payload_bus); | 980 | d[2].data_address = cpu_to_le32(payload_bus); |
@@ -1025,7 +1026,6 @@ static int handle_at_packet(struct context *context, | |||
1025 | struct driver_data *driver_data; | 1026 | struct driver_data *driver_data; |
1026 | struct fw_packet *packet; | 1027 | struct fw_packet *packet; |
1027 | struct fw_ohci *ohci = context->ohci; | 1028 | struct fw_ohci *ohci = context->ohci; |
1028 | dma_addr_t payload_bus; | ||
1029 | int evt; | 1029 | int evt; |
1030 | 1030 | ||
1031 | if (last->transfer_status == 0) | 1031 | if (last->transfer_status == 0) |
@@ -1038,9 +1038,8 @@ static int handle_at_packet(struct context *context, | |||
1038 | /* This packet was cancelled, just continue. */ | 1038 | /* This packet was cancelled, just continue. */ |
1039 | return 1; | 1039 | return 1; |
1040 | 1040 | ||
1041 | payload_bus = le32_to_cpu(last->data_address); | 1041 | if (packet->payload_bus) |
1042 | if (payload_bus != 0) | 1042 | dma_unmap_single(ohci->card.device, packet->payload_bus, |
1043 | dma_unmap_single(ohci->card.device, payload_bus, | ||
1044 | packet->payload_length, DMA_TO_DEVICE); | 1043 | packet->payload_length, DMA_TO_DEVICE); |
1045 | 1044 | ||
1046 | evt = le16_to_cpu(last->transfer_status) & 0x1f; | 1045 | evt = le16_to_cpu(last->transfer_status) & 0x1f; |
@@ -1697,6 +1696,10 @@ static int ohci_cancel_packet(struct fw_card *card, struct fw_packet *packet) | |||
1697 | if (packet->ack != 0) | 1696 | if (packet->ack != 0) |
1698 | goto out; | 1697 | goto out; |
1699 | 1698 | ||
1699 | if (packet->payload_bus) | ||
1700 | dma_unmap_single(ohci->card.device, packet->payload_bus, | ||
1701 | packet->payload_length, DMA_TO_DEVICE); | ||
1702 | |||
1700 | log_ar_at_event('T', packet->speed, packet->header, 0x20); | 1703 | log_ar_at_event('T', packet->speed, packet->header, 0x20); |
1701 | driver_data->packet = NULL; | 1704 | driver_data->packet = NULL; |
1702 | packet->ack = RCODE_CANCELLED; | 1705 | packet->ack = RCODE_CANCELLED; |
diff --git a/drivers/firewire/fw-transaction.c b/drivers/firewire/fw-transaction.c index 022ac4fabb67..2884f876397b 100644 --- a/drivers/firewire/fw-transaction.c +++ b/drivers/firewire/fw-transaction.c | |||
@@ -207,6 +207,7 @@ fw_fill_request(struct fw_packet *packet, int tcode, int tlabel, | |||
207 | packet->speed = speed; | 207 | packet->speed = speed; |
208 | packet->generation = generation; | 208 | packet->generation = generation; |
209 | packet->ack = 0; | 209 | packet->ack = 0; |
210 | packet->payload_bus = 0; | ||
210 | } | 211 | } |
211 | 212 | ||
212 | /** | 213 | /** |
@@ -581,6 +582,8 @@ fw_fill_response(struct fw_packet *response, u32 *request_header, | |||
581 | BUG(); | 582 | BUG(); |
582 | return; | 583 | return; |
583 | } | 584 | } |
585 | |||
586 | response->payload_bus = 0; | ||
584 | } | 587 | } |
585 | EXPORT_SYMBOL(fw_fill_response); | 588 | EXPORT_SYMBOL(fw_fill_response); |
586 | 589 | ||
diff --git a/drivers/firewire/fw-transaction.h b/drivers/firewire/fw-transaction.h index aed7dbb17cda..839466f0a795 100644 --- a/drivers/firewire/fw-transaction.h +++ b/drivers/firewire/fw-transaction.h | |||
@@ -27,6 +27,7 @@ | |||
27 | #include <linux/list.h> | 27 | #include <linux/list.h> |
28 | #include <linux/spinlock_types.h> | 28 | #include <linux/spinlock_types.h> |
29 | #include <linux/timer.h> | 29 | #include <linux/timer.h> |
30 | #include <linux/types.h> | ||
30 | #include <linux/workqueue.h> | 31 | #include <linux/workqueue.h> |
31 | 32 | ||
32 | #define TCODE_IS_READ_REQUEST(tcode) (((tcode) & ~1) == 4) | 33 | #define TCODE_IS_READ_REQUEST(tcode) (((tcode) & ~1) == 4) |
@@ -153,6 +154,7 @@ struct fw_packet { | |||
153 | size_t header_length; | 154 | size_t header_length; |
154 | void *payload; | 155 | void *payload; |
155 | size_t payload_length; | 156 | size_t payload_length; |
157 | dma_addr_t payload_bus; | ||
156 | u32 timestamp; | 158 | u32 timestamp; |
157 | 159 | ||
158 | /* | 160 | /* |
diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c index ba89b42f790a..553dd4bc3075 100644 --- a/drivers/gpu/drm/i915/i915_dma.c +++ b/drivers/gpu/drm/i915/i915_dma.c | |||
@@ -847,9 +847,10 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags) | |||
847 | * and the registers being closely associated. | 847 | * and the registers being closely associated. |
848 | * | 848 | * |
849 | * According to chipset errata, on the 965GM, MSI interrupts may | 849 | * According to chipset errata, on the 965GM, MSI interrupts may |
850 | * be lost or delayed | 850 | * be lost or delayed, but we use them anyways to avoid |
851 | * stuck interrupts on some machines. | ||
851 | */ | 852 | */ |
852 | if (!IS_I945G(dev) && !IS_I945GM(dev) && !IS_I965GM(dev)) | 853 | if (!IS_I945G(dev) && !IS_I945GM(dev)) |
853 | pci_enable_msi(dev->pdev); | 854 | pci_enable_msi(dev->pdev); |
854 | 855 | ||
855 | intel_opregion_init(dev); | 856 | intel_opregion_init(dev); |
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h index 0a4f39b9a0ec..adc972cc6bfc 100644 --- a/drivers/gpu/drm/i915/i915_drv.h +++ b/drivers/gpu/drm/i915/i915_drv.h | |||
@@ -244,6 +244,10 @@ typedef struct drm_i915_private { | |||
244 | * List of objects currently involved in rendering from the | 244 | * List of objects currently involved in rendering from the |
245 | * ringbuffer. | 245 | * ringbuffer. |
246 | * | 246 | * |
247 | * Includes buffers having the contents of their GPU caches | ||
248 | * flushed, not necessarily primitives. last_rendering_seqno | ||
249 | * represents when the rendering involved will be completed. | ||
250 | * | ||
247 | * A reference is held on the buffer while on this list. | 251 | * A reference is held on the buffer while on this list. |
248 | */ | 252 | */ |
249 | struct list_head active_list; | 253 | struct list_head active_list; |
@@ -253,6 +257,8 @@ typedef struct drm_i915_private { | |||
253 | * still have a write_domain which needs to be flushed before | 257 | * still have a write_domain which needs to be flushed before |
254 | * unbinding. | 258 | * unbinding. |
255 | * | 259 | * |
260 | * last_rendering_seqno is 0 while an object is in this list. | ||
261 | * | ||
256 | * A reference is held on the buffer while on this list. | 262 | * A reference is held on the buffer while on this list. |
257 | */ | 263 | */ |
258 | struct list_head flushing_list; | 264 | struct list_head flushing_list; |
@@ -261,6 +267,8 @@ typedef struct drm_i915_private { | |||
261 | * LRU list of objects which are not in the ringbuffer and | 267 | * LRU list of objects which are not in the ringbuffer and |
262 | * are ready to unbind, but are still in the GTT. | 268 | * are ready to unbind, but are still in the GTT. |
263 | * | 269 | * |
270 | * last_rendering_seqno is 0 while an object is in this list. | ||
271 | * | ||
264 | * A reference is not held on the buffer while on this list, | 272 | * A reference is not held on the buffer while on this list, |
265 | * as merely being GTT-bound shouldn't prevent its being | 273 | * as merely being GTT-bound shouldn't prevent its being |
266 | * freed, and we'll pull it off the list in the free path. | 274 | * freed, and we'll pull it off the list in the free path. |
@@ -371,8 +379,8 @@ struct drm_i915_gem_object { | |||
371 | uint32_t agp_type; | 379 | uint32_t agp_type; |
372 | 380 | ||
373 | /** | 381 | /** |
374 | * Flagging of which individual pages are valid in GEM_DOMAIN_CPU when | 382 | * If present, while GEM_DOMAIN_CPU is in the read domain this array |
375 | * GEM_DOMAIN_CPU is not in the object's read domain. | 383 | * flags which individual pages are valid. |
376 | */ | 384 | */ |
377 | uint8_t *page_cpu_valid; | 385 | uint8_t *page_cpu_valid; |
378 | }; | 386 | }; |
@@ -394,9 +402,6 @@ struct drm_i915_gem_request { | |||
394 | /** Time at which this request was emitted, in jiffies. */ | 402 | /** Time at which this request was emitted, in jiffies. */ |
395 | unsigned long emitted_jiffies; | 403 | unsigned long emitted_jiffies; |
396 | 404 | ||
397 | /** Cache domains that were flushed at the start of the request. */ | ||
398 | uint32_t flush_domains; | ||
399 | |||
400 | struct list_head list; | 405 | struct list_head list; |
401 | }; | 406 | }; |
402 | 407 | ||
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c index d58ddef468f8..ad672d854828 100644 --- a/drivers/gpu/drm/i915/i915_gem.c +++ b/drivers/gpu/drm/i915/i915_gem.c | |||
@@ -33,21 +33,21 @@ | |||
33 | 33 | ||
34 | #define I915_GEM_GPU_DOMAINS (~(I915_GEM_DOMAIN_CPU | I915_GEM_DOMAIN_GTT)) | 34 | #define I915_GEM_GPU_DOMAINS (~(I915_GEM_DOMAIN_CPU | I915_GEM_DOMAIN_GTT)) |
35 | 35 | ||
36 | static int | 36 | static void |
37 | i915_gem_object_set_domain(struct drm_gem_object *obj, | 37 | i915_gem_object_set_to_gpu_domain(struct drm_gem_object *obj, |
38 | uint32_t read_domains, | 38 | uint32_t read_domains, |
39 | uint32_t write_domain); | 39 | uint32_t write_domain); |
40 | static int | 40 | static void i915_gem_object_flush_gpu_write_domain(struct drm_gem_object *obj); |
41 | i915_gem_object_set_domain_range(struct drm_gem_object *obj, | 41 | static void i915_gem_object_flush_gtt_write_domain(struct drm_gem_object *obj); |
42 | uint64_t offset, | 42 | static void i915_gem_object_flush_cpu_write_domain(struct drm_gem_object *obj); |
43 | uint64_t size, | 43 | static int i915_gem_object_set_to_gtt_domain(struct drm_gem_object *obj, |
44 | uint32_t read_domains, | 44 | int write); |
45 | uint32_t write_domain); | 45 | static int i915_gem_object_set_to_cpu_domain(struct drm_gem_object *obj, |
46 | static int | 46 | int write); |
47 | i915_gem_set_domain(struct drm_gem_object *obj, | 47 | static int i915_gem_object_set_cpu_read_domain_range(struct drm_gem_object *obj, |
48 | struct drm_file *file_priv, | 48 | uint64_t offset, |
49 | uint32_t read_domains, | 49 | uint64_t size); |
50 | uint32_t write_domain); | 50 | static void i915_gem_object_set_to_full_cpu_read_domain(struct drm_gem_object *obj); |
51 | static int i915_gem_object_get_page_list(struct drm_gem_object *obj); | 51 | static int i915_gem_object_get_page_list(struct drm_gem_object *obj); |
52 | static void i915_gem_object_free_page_list(struct drm_gem_object *obj); | 52 | static void i915_gem_object_free_page_list(struct drm_gem_object *obj); |
53 | static int i915_gem_object_wait_rendering(struct drm_gem_object *obj); | 53 | static int i915_gem_object_wait_rendering(struct drm_gem_object *obj); |
@@ -162,8 +162,8 @@ i915_gem_pread_ioctl(struct drm_device *dev, void *data, | |||
162 | 162 | ||
163 | mutex_lock(&dev->struct_mutex); | 163 | mutex_lock(&dev->struct_mutex); |
164 | 164 | ||
165 | ret = i915_gem_object_set_domain_range(obj, args->offset, args->size, | 165 | ret = i915_gem_object_set_cpu_read_domain_range(obj, args->offset, |
166 | I915_GEM_DOMAIN_CPU, 0); | 166 | args->size); |
167 | if (ret != 0) { | 167 | if (ret != 0) { |
168 | drm_gem_object_unreference(obj); | 168 | drm_gem_object_unreference(obj); |
169 | mutex_unlock(&dev->struct_mutex); | 169 | mutex_unlock(&dev->struct_mutex); |
@@ -260,8 +260,7 @@ i915_gem_gtt_pwrite(struct drm_device *dev, struct drm_gem_object *obj, | |||
260 | mutex_unlock(&dev->struct_mutex); | 260 | mutex_unlock(&dev->struct_mutex); |
261 | return ret; | 261 | return ret; |
262 | } | 262 | } |
263 | ret = i915_gem_set_domain(obj, file_priv, | 263 | ret = i915_gem_object_set_to_gtt_domain(obj, 1); |
264 | I915_GEM_DOMAIN_GTT, I915_GEM_DOMAIN_GTT); | ||
265 | if (ret) | 264 | if (ret) |
266 | goto fail; | 265 | goto fail; |
267 | 266 | ||
@@ -320,8 +319,7 @@ i915_gem_shmem_pwrite(struct drm_device *dev, struct drm_gem_object *obj, | |||
320 | 319 | ||
321 | mutex_lock(&dev->struct_mutex); | 320 | mutex_lock(&dev->struct_mutex); |
322 | 321 | ||
323 | ret = i915_gem_set_domain(obj, file_priv, | 322 | ret = i915_gem_object_set_to_cpu_domain(obj, 1); |
324 | I915_GEM_DOMAIN_CPU, I915_GEM_DOMAIN_CPU); | ||
325 | if (ret) { | 323 | if (ret) { |
326 | mutex_unlock(&dev->struct_mutex); | 324 | mutex_unlock(&dev->struct_mutex); |
327 | return ret; | 325 | return ret; |
@@ -397,7 +395,8 @@ i915_gem_pwrite_ioctl(struct drm_device *dev, void *data, | |||
397 | } | 395 | } |
398 | 396 | ||
399 | /** | 397 | /** |
400 | * Called when user space prepares to use an object | 398 | * Called when user space prepares to use an object with the CPU, either |
399 | * through the mmap ioctl's mapping or a GTT mapping. | ||
401 | */ | 400 | */ |
402 | int | 401 | int |
403 | i915_gem_set_domain_ioctl(struct drm_device *dev, void *data, | 402 | i915_gem_set_domain_ioctl(struct drm_device *dev, void *data, |
@@ -405,11 +404,26 @@ i915_gem_set_domain_ioctl(struct drm_device *dev, void *data, | |||
405 | { | 404 | { |
406 | struct drm_i915_gem_set_domain *args = data; | 405 | struct drm_i915_gem_set_domain *args = data; |
407 | struct drm_gem_object *obj; | 406 | struct drm_gem_object *obj; |
407 | uint32_t read_domains = args->read_domains; | ||
408 | uint32_t write_domain = args->write_domain; | ||
408 | int ret; | 409 | int ret; |
409 | 410 | ||
410 | if (!(dev->driver->driver_features & DRIVER_GEM)) | 411 | if (!(dev->driver->driver_features & DRIVER_GEM)) |
411 | return -ENODEV; | 412 | return -ENODEV; |
412 | 413 | ||
414 | /* Only handle setting domains to types used by the CPU. */ | ||
415 | if (write_domain & ~(I915_GEM_DOMAIN_CPU | I915_GEM_DOMAIN_GTT)) | ||
416 | return -EINVAL; | ||
417 | |||
418 | if (read_domains & ~(I915_GEM_DOMAIN_CPU | I915_GEM_DOMAIN_GTT)) | ||
419 | return -EINVAL; | ||
420 | |||
421 | /* Having something in the write domain implies it's in the read | ||
422 | * domain, and only that read domain. Enforce that in the request. | ||
423 | */ | ||
424 | if (write_domain != 0 && read_domains != write_domain) | ||
425 | return -EINVAL; | ||
426 | |||
413 | obj = drm_gem_object_lookup(dev, file_priv, args->handle); | 427 | obj = drm_gem_object_lookup(dev, file_priv, args->handle); |
414 | if (obj == NULL) | 428 | if (obj == NULL) |
415 | return -EBADF; | 429 | return -EBADF; |
@@ -417,10 +431,21 @@ i915_gem_set_domain_ioctl(struct drm_device *dev, void *data, | |||
417 | mutex_lock(&dev->struct_mutex); | 431 | mutex_lock(&dev->struct_mutex); |
418 | #if WATCH_BUF | 432 | #if WATCH_BUF |
419 | DRM_INFO("set_domain_ioctl %p(%d), %08x %08x\n", | 433 | DRM_INFO("set_domain_ioctl %p(%d), %08x %08x\n", |
420 | obj, obj->size, args->read_domains, args->write_domain); | 434 | obj, obj->size, read_domains, write_domain); |
421 | #endif | 435 | #endif |
422 | ret = i915_gem_set_domain(obj, file_priv, | 436 | if (read_domains & I915_GEM_DOMAIN_GTT) { |
423 | args->read_domains, args->write_domain); | 437 | ret = i915_gem_object_set_to_gtt_domain(obj, write_domain != 0); |
438 | |||
439 | /* Silently promote "you're not bound, there was nothing to do" | ||
440 | * to success, since the client was just asking us to | ||
441 | * make sure everything was done. | ||
442 | */ | ||
443 | if (ret == -EINVAL) | ||
444 | ret = 0; | ||
445 | } else { | ||
446 | ret = i915_gem_object_set_to_cpu_domain(obj, write_domain != 0); | ||
447 | } | ||
448 | |||
424 | drm_gem_object_unreference(obj); | 449 | drm_gem_object_unreference(obj); |
425 | mutex_unlock(&dev->struct_mutex); | 450 | mutex_unlock(&dev->struct_mutex); |
426 | return ret; | 451 | return ret; |
@@ -455,10 +480,9 @@ i915_gem_sw_finish_ioctl(struct drm_device *dev, void *data, | |||
455 | obj_priv = obj->driver_private; | 480 | obj_priv = obj->driver_private; |
456 | 481 | ||
457 | /* Pinned buffers may be scanout, so flush the cache */ | 482 | /* Pinned buffers may be scanout, so flush the cache */ |
458 | if ((obj->write_domain & I915_GEM_DOMAIN_CPU) && obj_priv->pin_count) { | 483 | if (obj_priv->pin_count) |
459 | i915_gem_clflush_object(obj); | 484 | i915_gem_object_flush_cpu_write_domain(obj); |
460 | drm_agp_chipset_flush(dev); | 485 | |
461 | } | ||
462 | drm_gem_object_unreference(obj); | 486 | drm_gem_object_unreference(obj); |
463 | mutex_unlock(&dev->struct_mutex); | 487 | mutex_unlock(&dev->struct_mutex); |
464 | return ret; | 488 | return ret; |
@@ -532,7 +556,7 @@ i915_gem_object_free_page_list(struct drm_gem_object *obj) | |||
532 | } | 556 | } |
533 | 557 | ||
534 | static void | 558 | static void |
535 | i915_gem_object_move_to_active(struct drm_gem_object *obj) | 559 | i915_gem_object_move_to_active(struct drm_gem_object *obj, uint32_t seqno) |
536 | { | 560 | { |
537 | struct drm_device *dev = obj->dev; | 561 | struct drm_device *dev = obj->dev; |
538 | drm_i915_private_t *dev_priv = dev->dev_private; | 562 | drm_i915_private_t *dev_priv = dev->dev_private; |
@@ -546,8 +570,20 @@ i915_gem_object_move_to_active(struct drm_gem_object *obj) | |||
546 | /* Move from whatever list we were on to the tail of execution. */ | 570 | /* Move from whatever list we were on to the tail of execution. */ |
547 | list_move_tail(&obj_priv->list, | 571 | list_move_tail(&obj_priv->list, |
548 | &dev_priv->mm.active_list); | 572 | &dev_priv->mm.active_list); |
573 | obj_priv->last_rendering_seqno = seqno; | ||
549 | } | 574 | } |
550 | 575 | ||
576 | static void | ||
577 | i915_gem_object_move_to_flushing(struct drm_gem_object *obj) | ||
578 | { | ||
579 | struct drm_device *dev = obj->dev; | ||
580 | drm_i915_private_t *dev_priv = dev->dev_private; | ||
581 | struct drm_i915_gem_object *obj_priv = obj->driver_private; | ||
582 | |||
583 | BUG_ON(!obj_priv->active); | ||
584 | list_move_tail(&obj_priv->list, &dev_priv->mm.flushing_list); | ||
585 | obj_priv->last_rendering_seqno = 0; | ||
586 | } | ||
551 | 587 | ||
552 | static void | 588 | static void |
553 | i915_gem_object_move_to_inactive(struct drm_gem_object *obj) | 589 | i915_gem_object_move_to_inactive(struct drm_gem_object *obj) |
@@ -562,6 +598,7 @@ i915_gem_object_move_to_inactive(struct drm_gem_object *obj) | |||
562 | else | 598 | else |
563 | list_move_tail(&obj_priv->list, &dev_priv->mm.inactive_list); | 599 | list_move_tail(&obj_priv->list, &dev_priv->mm.inactive_list); |
564 | 600 | ||
601 | obj_priv->last_rendering_seqno = 0; | ||
565 | if (obj_priv->active) { | 602 | if (obj_priv->active) { |
566 | obj_priv->active = 0; | 603 | obj_priv->active = 0; |
567 | drm_gem_object_unreference(obj); | 604 | drm_gem_object_unreference(obj); |
@@ -610,10 +647,28 @@ i915_add_request(struct drm_device *dev, uint32_t flush_domains) | |||
610 | 647 | ||
611 | request->seqno = seqno; | 648 | request->seqno = seqno; |
612 | request->emitted_jiffies = jiffies; | 649 | request->emitted_jiffies = jiffies; |
613 | request->flush_domains = flush_domains; | ||
614 | was_empty = list_empty(&dev_priv->mm.request_list); | 650 | was_empty = list_empty(&dev_priv->mm.request_list); |
615 | list_add_tail(&request->list, &dev_priv->mm.request_list); | 651 | list_add_tail(&request->list, &dev_priv->mm.request_list); |
616 | 652 | ||
653 | /* Associate any objects on the flushing list matching the write | ||
654 | * domain we're flushing with our flush. | ||
655 | */ | ||
656 | if (flush_domains != 0) { | ||
657 | struct drm_i915_gem_object *obj_priv, *next; | ||
658 | |||
659 | list_for_each_entry_safe(obj_priv, next, | ||
660 | &dev_priv->mm.flushing_list, list) { | ||
661 | struct drm_gem_object *obj = obj_priv->obj; | ||
662 | |||
663 | if ((obj->write_domain & flush_domains) == | ||
664 | obj->write_domain) { | ||
665 | obj->write_domain = 0; | ||
666 | i915_gem_object_move_to_active(obj, seqno); | ||
667 | } | ||
668 | } | ||
669 | |||
670 | } | ||
671 | |||
617 | if (was_empty && !dev_priv->mm.suspended) | 672 | if (was_empty && !dev_priv->mm.suspended) |
618 | schedule_delayed_work(&dev_priv->mm.retire_work, HZ); | 673 | schedule_delayed_work(&dev_priv->mm.retire_work, HZ); |
619 | return seqno; | 674 | return seqno; |
@@ -676,30 +731,10 @@ i915_gem_retire_request(struct drm_device *dev, | |||
676 | __func__, request->seqno, obj); | 731 | __func__, request->seqno, obj); |
677 | #endif | 732 | #endif |
678 | 733 | ||
679 | if (obj->write_domain != 0) { | 734 | if (obj->write_domain != 0) |
680 | list_move_tail(&obj_priv->list, | 735 | i915_gem_object_move_to_flushing(obj); |
681 | &dev_priv->mm.flushing_list); | 736 | else |
682 | } else { | ||
683 | i915_gem_object_move_to_inactive(obj); | 737 | i915_gem_object_move_to_inactive(obj); |
684 | } | ||
685 | } | ||
686 | |||
687 | if (request->flush_domains != 0) { | ||
688 | struct drm_i915_gem_object *obj_priv, *next; | ||
689 | |||
690 | /* Clear the write domain and activity from any buffers | ||
691 | * that are just waiting for a flush matching the one retired. | ||
692 | */ | ||
693 | list_for_each_entry_safe(obj_priv, next, | ||
694 | &dev_priv->mm.flushing_list, list) { | ||
695 | struct drm_gem_object *obj = obj_priv->obj; | ||
696 | |||
697 | if (obj->write_domain & request->flush_domains) { | ||
698 | obj->write_domain = 0; | ||
699 | i915_gem_object_move_to_inactive(obj); | ||
700 | } | ||
701 | } | ||
702 | |||
703 | } | 738 | } |
704 | } | 739 | } |
705 | 740 | ||
@@ -892,25 +927,10 @@ i915_gem_object_wait_rendering(struct drm_gem_object *obj) | |||
892 | struct drm_i915_gem_object *obj_priv = obj->driver_private; | 927 | struct drm_i915_gem_object *obj_priv = obj->driver_private; |
893 | int ret; | 928 | int ret; |
894 | 929 | ||
895 | /* If there are writes queued to the buffer, flush and | 930 | /* This function only exists to support waiting for existing rendering, |
896 | * create a new seqno to wait for. | 931 | * not for emitting required flushes. |
897 | */ | 932 | */ |
898 | if (obj->write_domain & ~(I915_GEM_DOMAIN_CPU|I915_GEM_DOMAIN_GTT)) { | 933 | BUG_ON((obj->write_domain & I915_GEM_GPU_DOMAINS) != 0); |
899 | uint32_t write_domain = obj->write_domain; | ||
900 | #if WATCH_BUF | ||
901 | DRM_INFO("%s: flushing object %p from write domain %08x\n", | ||
902 | __func__, obj, write_domain); | ||
903 | #endif | ||
904 | i915_gem_flush(dev, 0, write_domain); | ||
905 | |||
906 | i915_gem_object_move_to_active(obj); | ||
907 | obj_priv->last_rendering_seqno = i915_add_request(dev, | ||
908 | write_domain); | ||
909 | BUG_ON(obj_priv->last_rendering_seqno == 0); | ||
910 | #if WATCH_LRU | ||
911 | DRM_INFO("%s: flush moves to exec list %p\n", __func__, obj); | ||
912 | #endif | ||
913 | } | ||
914 | 934 | ||
915 | /* If there is rendering queued on the buffer being evicted, wait for | 935 | /* If there is rendering queued on the buffer being evicted, wait for |
916 | * it. | 936 | * it. |
@@ -950,24 +970,16 @@ i915_gem_object_unbind(struct drm_gem_object *obj) | |||
950 | return -EINVAL; | 970 | return -EINVAL; |
951 | } | 971 | } |
952 | 972 | ||
953 | /* Wait for any rendering to complete | ||
954 | */ | ||
955 | ret = i915_gem_object_wait_rendering(obj); | ||
956 | if (ret) { | ||
957 | DRM_ERROR("wait_rendering failed: %d\n", ret); | ||
958 | return ret; | ||
959 | } | ||
960 | |||
961 | /* Move the object to the CPU domain to ensure that | 973 | /* Move the object to the CPU domain to ensure that |
962 | * any possible CPU writes while it's not in the GTT | 974 | * any possible CPU writes while it's not in the GTT |
963 | * are flushed when we go to remap it. This will | 975 | * are flushed when we go to remap it. This will |
964 | * also ensure that all pending GPU writes are finished | 976 | * also ensure that all pending GPU writes are finished |
965 | * before we unbind. | 977 | * before we unbind. |
966 | */ | 978 | */ |
967 | ret = i915_gem_object_set_domain(obj, I915_GEM_DOMAIN_CPU, | 979 | ret = i915_gem_object_set_to_cpu_domain(obj, 1); |
968 | I915_GEM_DOMAIN_CPU); | ||
969 | if (ret) { | 980 | if (ret) { |
970 | DRM_ERROR("set_domain failed: %d\n", ret); | 981 | if (ret != -ERESTARTSYS) |
982 | DRM_ERROR("set_domain failed: %d\n", ret); | ||
971 | return ret; | 983 | return ret; |
972 | } | 984 | } |
973 | 985 | ||
@@ -1083,6 +1095,21 @@ i915_gem_evict_something(struct drm_device *dev) | |||
1083 | } | 1095 | } |
1084 | 1096 | ||
1085 | static int | 1097 | static int |
1098 | i915_gem_evict_everything(struct drm_device *dev) | ||
1099 | { | ||
1100 | int ret; | ||
1101 | |||
1102 | for (;;) { | ||
1103 | ret = i915_gem_evict_something(dev); | ||
1104 | if (ret != 0) | ||
1105 | break; | ||
1106 | } | ||
1107 | if (ret == -ENOMEM) | ||
1108 | return 0; | ||
1109 | return ret; | ||
1110 | } | ||
1111 | |||
1112 | static int | ||
1086 | i915_gem_object_get_page_list(struct drm_gem_object *obj) | 1113 | i915_gem_object_get_page_list(struct drm_gem_object *obj) |
1087 | { | 1114 | { |
1088 | struct drm_i915_gem_object *obj_priv = obj->driver_private; | 1115 | struct drm_i915_gem_object *obj_priv = obj->driver_private; |
@@ -1168,7 +1195,8 @@ i915_gem_object_bind_to_gtt(struct drm_gem_object *obj, unsigned alignment) | |||
1168 | 1195 | ||
1169 | ret = i915_gem_evict_something(dev); | 1196 | ret = i915_gem_evict_something(dev); |
1170 | if (ret != 0) { | 1197 | if (ret != 0) { |
1171 | DRM_ERROR("Failed to evict a buffer %d\n", ret); | 1198 | if (ret != -ERESTARTSYS) |
1199 | DRM_ERROR("Failed to evict a buffer %d\n", ret); | ||
1172 | return ret; | 1200 | return ret; |
1173 | } | 1201 | } |
1174 | goto search_free; | 1202 | goto search_free; |
@@ -1228,6 +1256,143 @@ i915_gem_clflush_object(struct drm_gem_object *obj) | |||
1228 | drm_clflush_pages(obj_priv->page_list, obj->size / PAGE_SIZE); | 1256 | drm_clflush_pages(obj_priv->page_list, obj->size / PAGE_SIZE); |
1229 | } | 1257 | } |
1230 | 1258 | ||
1259 | /** Flushes any GPU write domain for the object if it's dirty. */ | ||
1260 | static void | ||
1261 | i915_gem_object_flush_gpu_write_domain(struct drm_gem_object *obj) | ||
1262 | { | ||
1263 | struct drm_device *dev = obj->dev; | ||
1264 | uint32_t seqno; | ||
1265 | |||
1266 | if ((obj->write_domain & I915_GEM_GPU_DOMAINS) == 0) | ||
1267 | return; | ||
1268 | |||
1269 | /* Queue the GPU write cache flushing we need. */ | ||
1270 | i915_gem_flush(dev, 0, obj->write_domain); | ||
1271 | seqno = i915_add_request(dev, obj->write_domain); | ||
1272 | obj->write_domain = 0; | ||
1273 | i915_gem_object_move_to_active(obj, seqno); | ||
1274 | } | ||
1275 | |||
1276 | /** Flushes the GTT write domain for the object if it's dirty. */ | ||
1277 | static void | ||
1278 | i915_gem_object_flush_gtt_write_domain(struct drm_gem_object *obj) | ||
1279 | { | ||
1280 | if (obj->write_domain != I915_GEM_DOMAIN_GTT) | ||
1281 | return; | ||
1282 | |||
1283 | /* No actual flushing is required for the GTT write domain. Writes | ||
1284 | * to it immediately go to main memory as far as we know, so there's | ||
1285 | * no chipset flush. It also doesn't land in render cache. | ||
1286 | */ | ||
1287 | obj->write_domain = 0; | ||
1288 | } | ||
1289 | |||
1290 | /** Flushes the CPU write domain for the object if it's dirty. */ | ||
1291 | static void | ||
1292 | i915_gem_object_flush_cpu_write_domain(struct drm_gem_object *obj) | ||
1293 | { | ||
1294 | struct drm_device *dev = obj->dev; | ||
1295 | |||
1296 | if (obj->write_domain != I915_GEM_DOMAIN_CPU) | ||
1297 | return; | ||
1298 | |||
1299 | i915_gem_clflush_object(obj); | ||
1300 | drm_agp_chipset_flush(dev); | ||
1301 | obj->write_domain = 0; | ||
1302 | } | ||
1303 | |||
1304 | /** | ||
1305 | * Moves a single object to the GTT read, and possibly write domain. | ||
1306 | * | ||
1307 | * This function returns when the move is complete, including waiting on | ||
1308 | * flushes to occur. | ||
1309 | */ | ||
1310 | static int | ||
1311 | i915_gem_object_set_to_gtt_domain(struct drm_gem_object *obj, int write) | ||
1312 | { | ||
1313 | struct drm_i915_gem_object *obj_priv = obj->driver_private; | ||
1314 | int ret; | ||
1315 | |||
1316 | /* Not valid to be called on unbound objects. */ | ||
1317 | if (obj_priv->gtt_space == NULL) | ||
1318 | return -EINVAL; | ||
1319 | |||
1320 | i915_gem_object_flush_gpu_write_domain(obj); | ||
1321 | /* Wait on any GPU rendering and flushing to occur. */ | ||
1322 | ret = i915_gem_object_wait_rendering(obj); | ||
1323 | if (ret != 0) | ||
1324 | return ret; | ||
1325 | |||
1326 | /* If we're writing through the GTT domain, then CPU and GPU caches | ||
1327 | * will need to be invalidated at next use. | ||
1328 | */ | ||
1329 | if (write) | ||
1330 | obj->read_domains &= I915_GEM_DOMAIN_GTT; | ||
1331 | |||
1332 | i915_gem_object_flush_cpu_write_domain(obj); | ||
1333 | |||
1334 | /* It should now be out of any other write domains, and we can update | ||
1335 | * the domain values for our changes. | ||
1336 | */ | ||
1337 | BUG_ON((obj->write_domain & ~I915_GEM_DOMAIN_GTT) != 0); | ||
1338 | obj->read_domains |= I915_GEM_DOMAIN_GTT; | ||
1339 | if (write) { | ||
1340 | obj->write_domain = I915_GEM_DOMAIN_GTT; | ||
1341 | obj_priv->dirty = 1; | ||
1342 | } | ||
1343 | |||
1344 | return 0; | ||
1345 | } | ||
1346 | |||
1347 | /** | ||
1348 | * Moves a single object to the CPU read, and possibly write domain. | ||
1349 | * | ||
1350 | * This function returns when the move is complete, including waiting on | ||
1351 | * flushes to occur. | ||
1352 | */ | ||
1353 | static int | ||
1354 | i915_gem_object_set_to_cpu_domain(struct drm_gem_object *obj, int write) | ||
1355 | { | ||
1356 | struct drm_device *dev = obj->dev; | ||
1357 | int ret; | ||
1358 | |||
1359 | i915_gem_object_flush_gpu_write_domain(obj); | ||
1360 | /* Wait on any GPU rendering and flushing to occur. */ | ||
1361 | ret = i915_gem_object_wait_rendering(obj); | ||
1362 | if (ret != 0) | ||
1363 | return ret; | ||
1364 | |||
1365 | i915_gem_object_flush_gtt_write_domain(obj); | ||
1366 | |||
1367 | /* If we have a partially-valid cache of the object in the CPU, | ||
1368 | * finish invalidating it and free the per-page flags. | ||
1369 | */ | ||
1370 | i915_gem_object_set_to_full_cpu_read_domain(obj); | ||
1371 | |||
1372 | /* Flush the CPU cache if it's still invalid. */ | ||
1373 | if ((obj->read_domains & I915_GEM_DOMAIN_CPU) == 0) { | ||
1374 | i915_gem_clflush_object(obj); | ||
1375 | drm_agp_chipset_flush(dev); | ||
1376 | |||
1377 | obj->read_domains |= I915_GEM_DOMAIN_CPU; | ||
1378 | } | ||
1379 | |||
1380 | /* It should now be out of any other write domains, and we can update | ||
1381 | * the domain values for our changes. | ||
1382 | */ | ||
1383 | BUG_ON((obj->write_domain & ~I915_GEM_DOMAIN_CPU) != 0); | ||
1384 | |||
1385 | /* If we're writing through the CPU, then the GPU read domains will | ||
1386 | * need to be invalidated at next use. | ||
1387 | */ | ||
1388 | if (write) { | ||
1389 | obj->read_domains &= I915_GEM_DOMAIN_CPU; | ||
1390 | obj->write_domain = I915_GEM_DOMAIN_CPU; | ||
1391 | } | ||
1392 | |||
1393 | return 0; | ||
1394 | } | ||
1395 | |||
1231 | /* | 1396 | /* |
1232 | * Set the next domain for the specified object. This | 1397 | * Set the next domain for the specified object. This |
1233 | * may not actually perform the necessary flushing/invaliding though, | 1398 | * may not actually perform the necessary flushing/invaliding though, |
@@ -1339,16 +1504,18 @@ i915_gem_clflush_object(struct drm_gem_object *obj) | |||
1339 | * MI_FLUSH | 1504 | * MI_FLUSH |
1340 | * drm_agp_chipset_flush | 1505 | * drm_agp_chipset_flush |
1341 | */ | 1506 | */ |
1342 | static int | 1507 | static void |
1343 | i915_gem_object_set_domain(struct drm_gem_object *obj, | 1508 | i915_gem_object_set_to_gpu_domain(struct drm_gem_object *obj, |
1344 | uint32_t read_domains, | 1509 | uint32_t read_domains, |
1345 | uint32_t write_domain) | 1510 | uint32_t write_domain) |
1346 | { | 1511 | { |
1347 | struct drm_device *dev = obj->dev; | 1512 | struct drm_device *dev = obj->dev; |
1348 | struct drm_i915_gem_object *obj_priv = obj->driver_private; | 1513 | struct drm_i915_gem_object *obj_priv = obj->driver_private; |
1349 | uint32_t invalidate_domains = 0; | 1514 | uint32_t invalidate_domains = 0; |
1350 | uint32_t flush_domains = 0; | 1515 | uint32_t flush_domains = 0; |
1351 | int ret; | 1516 | |
1517 | BUG_ON(read_domains & I915_GEM_DOMAIN_CPU); | ||
1518 | BUG_ON(write_domain == I915_GEM_DOMAIN_CPU); | ||
1352 | 1519 | ||
1353 | #if WATCH_BUF | 1520 | #if WATCH_BUF |
1354 | DRM_INFO("%s: object %p read %08x -> %08x write %08x -> %08x\n", | 1521 | DRM_INFO("%s: object %p read %08x -> %08x write %08x -> %08x\n", |
@@ -1385,34 +1552,11 @@ i915_gem_object_set_domain(struct drm_gem_object *obj, | |||
1385 | DRM_INFO("%s: CPU domain flush %08x invalidate %08x\n", | 1552 | DRM_INFO("%s: CPU domain flush %08x invalidate %08x\n", |
1386 | __func__, flush_domains, invalidate_domains); | 1553 | __func__, flush_domains, invalidate_domains); |
1387 | #endif | 1554 | #endif |
1388 | /* | ||
1389 | * If we're invaliding the CPU cache and flushing a GPU cache, | ||
1390 | * then pause for rendering so that the GPU caches will be | ||
1391 | * flushed before the cpu cache is invalidated | ||
1392 | */ | ||
1393 | if ((invalidate_domains & I915_GEM_DOMAIN_CPU) && | ||
1394 | (flush_domains & ~(I915_GEM_DOMAIN_CPU | | ||
1395 | I915_GEM_DOMAIN_GTT))) { | ||
1396 | ret = i915_gem_object_wait_rendering(obj); | ||
1397 | if (ret) | ||
1398 | return ret; | ||
1399 | } | ||
1400 | i915_gem_clflush_object(obj); | 1555 | i915_gem_clflush_object(obj); |
1401 | } | 1556 | } |
1402 | 1557 | ||
1403 | if ((write_domain | flush_domains) != 0) | 1558 | if ((write_domain | flush_domains) != 0) |
1404 | obj->write_domain = write_domain; | 1559 | obj->write_domain = write_domain; |
1405 | |||
1406 | /* If we're invalidating the CPU domain, clear the per-page CPU | ||
1407 | * domain list as well. | ||
1408 | */ | ||
1409 | if (obj_priv->page_cpu_valid != NULL && | ||
1410 | (write_domain != 0 || | ||
1411 | read_domains & I915_GEM_DOMAIN_CPU)) { | ||
1412 | drm_free(obj_priv->page_cpu_valid, obj->size / PAGE_SIZE, | ||
1413 | DRM_MEM_DRIVER); | ||
1414 | obj_priv->page_cpu_valid = NULL; | ||
1415 | } | ||
1416 | obj->read_domains = read_domains; | 1560 | obj->read_domains = read_domains; |
1417 | 1561 | ||
1418 | dev->invalidate_domains |= invalidate_domains; | 1562 | dev->invalidate_domains |= invalidate_domains; |
@@ -1423,47 +1567,94 @@ i915_gem_object_set_domain(struct drm_gem_object *obj, | |||
1423 | obj->read_domains, obj->write_domain, | 1567 | obj->read_domains, obj->write_domain, |
1424 | dev->invalidate_domains, dev->flush_domains); | 1568 | dev->invalidate_domains, dev->flush_domains); |
1425 | #endif | 1569 | #endif |
1426 | return 0; | ||
1427 | } | 1570 | } |
1428 | 1571 | ||
1429 | /** | 1572 | /** |
1430 | * Set the read/write domain on a range of the object. | 1573 | * Moves the object from a partially CPU read to a full one. |
1431 | * | 1574 | * |
1432 | * Currently only implemented for CPU reads, otherwise drops to normal | 1575 | * Note that this only resolves i915_gem_object_set_cpu_read_domain_range(), |
1433 | * i915_gem_object_set_domain(). | 1576 | * and doesn't handle transitioning from !(read_domains & I915_GEM_DOMAIN_CPU). |
1434 | */ | 1577 | */ |
1435 | static int | 1578 | static void |
1436 | i915_gem_object_set_domain_range(struct drm_gem_object *obj, | 1579 | i915_gem_object_set_to_full_cpu_read_domain(struct drm_gem_object *obj) |
1437 | uint64_t offset, | ||
1438 | uint64_t size, | ||
1439 | uint32_t read_domains, | ||
1440 | uint32_t write_domain) | ||
1441 | { | 1580 | { |
1581 | struct drm_device *dev = obj->dev; | ||
1442 | struct drm_i915_gem_object *obj_priv = obj->driver_private; | 1582 | struct drm_i915_gem_object *obj_priv = obj->driver_private; |
1443 | int ret, i; | ||
1444 | 1583 | ||
1445 | if (obj->read_domains & I915_GEM_DOMAIN_CPU) | 1584 | if (!obj_priv->page_cpu_valid) |
1446 | return 0; | 1585 | return; |
1447 | 1586 | ||
1448 | if (read_domains != I915_GEM_DOMAIN_CPU || | 1587 | /* If we're partially in the CPU read domain, finish moving it in. |
1449 | write_domain != 0) | 1588 | */ |
1450 | return i915_gem_object_set_domain(obj, | 1589 | if (obj->read_domains & I915_GEM_DOMAIN_CPU) { |
1451 | read_domains, write_domain); | 1590 | int i; |
1452 | 1591 | ||
1453 | /* Wait on any GPU rendering to the object to be flushed. */ | 1592 | for (i = 0; i <= (obj->size - 1) / PAGE_SIZE; i++) { |
1593 | if (obj_priv->page_cpu_valid[i]) | ||
1594 | continue; | ||
1595 | drm_clflush_pages(obj_priv->page_list + i, 1); | ||
1596 | } | ||
1597 | drm_agp_chipset_flush(dev); | ||
1598 | } | ||
1599 | |||
1600 | /* Free the page_cpu_valid mappings which are now stale, whether | ||
1601 | * or not we've got I915_GEM_DOMAIN_CPU. | ||
1602 | */ | ||
1603 | drm_free(obj_priv->page_cpu_valid, obj->size / PAGE_SIZE, | ||
1604 | DRM_MEM_DRIVER); | ||
1605 | obj_priv->page_cpu_valid = NULL; | ||
1606 | } | ||
1607 | |||
1608 | /** | ||
1609 | * Set the CPU read domain on a range of the object. | ||
1610 | * | ||
1611 | * The object ends up with I915_GEM_DOMAIN_CPU in its read flags although it's | ||
1612 | * not entirely valid. The page_cpu_valid member of the object flags which | ||
1613 | * pages have been flushed, and will be respected by | ||
1614 | * i915_gem_object_set_to_cpu_domain() if it's called on to get a valid mapping | ||
1615 | * of the whole object. | ||
1616 | * | ||
1617 | * This function returns when the move is complete, including waiting on | ||
1618 | * flushes to occur. | ||
1619 | */ | ||
1620 | static int | ||
1621 | i915_gem_object_set_cpu_read_domain_range(struct drm_gem_object *obj, | ||
1622 | uint64_t offset, uint64_t size) | ||
1623 | { | ||
1624 | struct drm_i915_gem_object *obj_priv = obj->driver_private; | ||
1625 | int i, ret; | ||
1626 | |||
1627 | if (offset == 0 && size == obj->size) | ||
1628 | return i915_gem_object_set_to_cpu_domain(obj, 0); | ||
1629 | |||
1630 | i915_gem_object_flush_gpu_write_domain(obj); | ||
1631 | /* Wait on any GPU rendering and flushing to occur. */ | ||
1454 | ret = i915_gem_object_wait_rendering(obj); | 1632 | ret = i915_gem_object_wait_rendering(obj); |
1455 | if (ret) | 1633 | if (ret != 0) |
1456 | return ret; | 1634 | return ret; |
1635 | i915_gem_object_flush_gtt_write_domain(obj); | ||
1457 | 1636 | ||
1637 | /* If we're already fully in the CPU read domain, we're done. */ | ||
1638 | if (obj_priv->page_cpu_valid == NULL && | ||
1639 | (obj->read_domains & I915_GEM_DOMAIN_CPU) != 0) | ||
1640 | return 0; | ||
1641 | |||
1642 | /* Otherwise, create/clear the per-page CPU read domain flag if we're | ||
1643 | * newly adding I915_GEM_DOMAIN_CPU | ||
1644 | */ | ||
1458 | if (obj_priv->page_cpu_valid == NULL) { | 1645 | if (obj_priv->page_cpu_valid == NULL) { |
1459 | obj_priv->page_cpu_valid = drm_calloc(1, obj->size / PAGE_SIZE, | 1646 | obj_priv->page_cpu_valid = drm_calloc(1, obj->size / PAGE_SIZE, |
1460 | DRM_MEM_DRIVER); | 1647 | DRM_MEM_DRIVER); |
1461 | } | 1648 | if (obj_priv->page_cpu_valid == NULL) |
1649 | return -ENOMEM; | ||
1650 | } else if ((obj->read_domains & I915_GEM_DOMAIN_CPU) == 0) | ||
1651 | memset(obj_priv->page_cpu_valid, 0, obj->size / PAGE_SIZE); | ||
1462 | 1652 | ||
1463 | /* Flush the cache on any pages that are still invalid from the CPU's | 1653 | /* Flush the cache on any pages that are still invalid from the CPU's |
1464 | * perspective. | 1654 | * perspective. |
1465 | */ | 1655 | */ |
1466 | for (i = offset / PAGE_SIZE; i <= (offset + size - 1) / PAGE_SIZE; i++) { | 1656 | for (i = offset / PAGE_SIZE; i <= (offset + size - 1) / PAGE_SIZE; |
1657 | i++) { | ||
1467 | if (obj_priv->page_cpu_valid[i]) | 1658 | if (obj_priv->page_cpu_valid[i]) |
1468 | continue; | 1659 | continue; |
1469 | 1660 | ||
@@ -1472,39 +1663,14 @@ i915_gem_object_set_domain_range(struct drm_gem_object *obj, | |||
1472 | obj_priv->page_cpu_valid[i] = 1; | 1663 | obj_priv->page_cpu_valid[i] = 1; |
1473 | } | 1664 | } |
1474 | 1665 | ||
1475 | return 0; | 1666 | /* It should now be out of any other write domains, and we can update |
1476 | } | 1667 | * the domain values for our changes. |
1477 | |||
1478 | /** | ||
1479 | * Once all of the objects have been set in the proper domain, | ||
1480 | * perform the necessary flush and invalidate operations. | ||
1481 | * | ||
1482 | * Returns the write domains flushed, for use in flush tracking. | ||
1483 | */ | ||
1484 | static uint32_t | ||
1485 | i915_gem_dev_set_domain(struct drm_device *dev) | ||
1486 | { | ||
1487 | uint32_t flush_domains = dev->flush_domains; | ||
1488 | |||
1489 | /* | ||
1490 | * Now that all the buffers are synced to the proper domains, | ||
1491 | * flush and invalidate the collected domains | ||
1492 | */ | 1668 | */ |
1493 | if (dev->invalidate_domains | dev->flush_domains) { | 1669 | BUG_ON((obj->write_domain & ~I915_GEM_DOMAIN_CPU) != 0); |
1494 | #if WATCH_EXEC | ||
1495 | DRM_INFO("%s: invalidate_domains %08x flush_domains %08x\n", | ||
1496 | __func__, | ||
1497 | dev->invalidate_domains, | ||
1498 | dev->flush_domains); | ||
1499 | #endif | ||
1500 | i915_gem_flush(dev, | ||
1501 | dev->invalidate_domains, | ||
1502 | dev->flush_domains); | ||
1503 | dev->invalidate_domains = 0; | ||
1504 | dev->flush_domains = 0; | ||
1505 | } | ||
1506 | 1670 | ||
1507 | return flush_domains; | 1671 | obj->read_domains |= I915_GEM_DOMAIN_CPU; |
1672 | |||
1673 | return 0; | ||
1508 | } | 1674 | } |
1509 | 1675 | ||
1510 | /** | 1676 | /** |
@@ -1585,6 +1751,18 @@ i915_gem_object_pin_and_relocate(struct drm_gem_object *obj, | |||
1585 | return -EINVAL; | 1751 | return -EINVAL; |
1586 | } | 1752 | } |
1587 | 1753 | ||
1754 | if (reloc.write_domain & I915_GEM_DOMAIN_CPU || | ||
1755 | reloc.read_domains & I915_GEM_DOMAIN_CPU) { | ||
1756 | DRM_ERROR("reloc with read/write CPU domains: " | ||
1757 | "obj %p target %d offset %d " | ||
1758 | "read %08x write %08x", | ||
1759 | obj, reloc.target_handle, | ||
1760 | (int) reloc.offset, | ||
1761 | reloc.read_domains, | ||
1762 | reloc.write_domain); | ||
1763 | return -EINVAL; | ||
1764 | } | ||
1765 | |||
1588 | if (reloc.write_domain && target_obj->pending_write_domain && | 1766 | if (reloc.write_domain && target_obj->pending_write_domain && |
1589 | reloc.write_domain != target_obj->pending_write_domain) { | 1767 | reloc.write_domain != target_obj->pending_write_domain) { |
1590 | DRM_ERROR("Write domain conflict: " | 1768 | DRM_ERROR("Write domain conflict: " |
@@ -1625,19 +1803,11 @@ i915_gem_object_pin_and_relocate(struct drm_gem_object *obj, | |||
1625 | continue; | 1803 | continue; |
1626 | } | 1804 | } |
1627 | 1805 | ||
1628 | /* Now that we're going to actually write some data in, | 1806 | ret = i915_gem_object_set_to_gtt_domain(obj, 1); |
1629 | * make sure that any rendering using this buffer's contents | 1807 | if (ret != 0) { |
1630 | * is completed. | 1808 | drm_gem_object_unreference(target_obj); |
1631 | */ | 1809 | i915_gem_object_unpin(obj); |
1632 | i915_gem_object_wait_rendering(obj); | 1810 | return -EINVAL; |
1633 | |||
1634 | /* As we're writing through the gtt, flush | ||
1635 | * any CPU writes before we write the relocations | ||
1636 | */ | ||
1637 | if (obj->write_domain & I915_GEM_DOMAIN_CPU) { | ||
1638 | i915_gem_clflush_object(obj); | ||
1639 | drm_agp_chipset_flush(dev); | ||
1640 | obj->write_domain = 0; | ||
1641 | } | 1811 | } |
1642 | 1812 | ||
1643 | /* Map the page containing the relocation we're going to | 1813 | /* Map the page containing the relocation we're going to |
@@ -1779,6 +1949,7 @@ i915_gem_execbuffer(struct drm_device *dev, void *data, | |||
1779 | int ret, i, pinned = 0; | 1949 | int ret, i, pinned = 0; |
1780 | uint64_t exec_offset; | 1950 | uint64_t exec_offset; |
1781 | uint32_t seqno, flush_domains; | 1951 | uint32_t seqno, flush_domains; |
1952 | int pin_tries; | ||
1782 | 1953 | ||
1783 | #if WATCH_EXEC | 1954 | #if WATCH_EXEC |
1784 | DRM_INFO("buffers_ptr %d buffer_count %d len %08x\n", | 1955 | DRM_INFO("buffers_ptr %d buffer_count %d len %08x\n", |
@@ -1827,14 +1998,7 @@ i915_gem_execbuffer(struct drm_device *dev, void *data, | |||
1827 | return -EBUSY; | 1998 | return -EBUSY; |
1828 | } | 1999 | } |
1829 | 2000 | ||
1830 | /* Zero the gloabl flush/invalidate flags. These | 2001 | /* Look up object handles */ |
1831 | * will be modified as each object is bound to the | ||
1832 | * gtt | ||
1833 | */ | ||
1834 | dev->invalidate_domains = 0; | ||
1835 | dev->flush_domains = 0; | ||
1836 | |||
1837 | /* Look up object handles and perform the relocations */ | ||
1838 | for (i = 0; i < args->buffer_count; i++) { | 2002 | for (i = 0; i < args->buffer_count; i++) { |
1839 | object_list[i] = drm_gem_object_lookup(dev, file_priv, | 2003 | object_list[i] = drm_gem_object_lookup(dev, file_priv, |
1840 | exec_list[i].handle); | 2004 | exec_list[i].handle); |
@@ -1844,17 +2008,39 @@ i915_gem_execbuffer(struct drm_device *dev, void *data, | |||
1844 | ret = -EBADF; | 2008 | ret = -EBADF; |
1845 | goto err; | 2009 | goto err; |
1846 | } | 2010 | } |
2011 | } | ||
1847 | 2012 | ||
1848 | object_list[i]->pending_read_domains = 0; | 2013 | /* Pin and relocate */ |
1849 | object_list[i]->pending_write_domain = 0; | 2014 | for (pin_tries = 0; ; pin_tries++) { |
1850 | ret = i915_gem_object_pin_and_relocate(object_list[i], | 2015 | ret = 0; |
1851 | file_priv, | 2016 | for (i = 0; i < args->buffer_count; i++) { |
1852 | &exec_list[i]); | 2017 | object_list[i]->pending_read_domains = 0; |
1853 | if (ret) { | 2018 | object_list[i]->pending_write_domain = 0; |
1854 | DRM_ERROR("object bind and relocate failed %d\n", ret); | 2019 | ret = i915_gem_object_pin_and_relocate(object_list[i], |
2020 | file_priv, | ||
2021 | &exec_list[i]); | ||
2022 | if (ret) | ||
2023 | break; | ||
2024 | pinned = i + 1; | ||
2025 | } | ||
2026 | /* success */ | ||
2027 | if (ret == 0) | ||
2028 | break; | ||
2029 | |||
2030 | /* error other than GTT full, or we've already tried again */ | ||
2031 | if (ret != -ENOMEM || pin_tries >= 1) { | ||
2032 | DRM_ERROR("Failed to pin buffers %d\n", ret); | ||
1855 | goto err; | 2033 | goto err; |
1856 | } | 2034 | } |
1857 | pinned = i + 1; | 2035 | |
2036 | /* unpin all of our buffers */ | ||
2037 | for (i = 0; i < pinned; i++) | ||
2038 | i915_gem_object_unpin(object_list[i]); | ||
2039 | |||
2040 | /* evict everyone we can from the aperture */ | ||
2041 | ret = i915_gem_evict_everything(dev); | ||
2042 | if (ret) | ||
2043 | goto err; | ||
1858 | } | 2044 | } |
1859 | 2045 | ||
1860 | /* Set the pending read domains for the batch buffer to COMMAND */ | 2046 | /* Set the pending read domains for the batch buffer to COMMAND */ |
@@ -1864,21 +2050,37 @@ i915_gem_execbuffer(struct drm_device *dev, void *data, | |||
1864 | 2050 | ||
1865 | i915_verify_inactive(dev, __FILE__, __LINE__); | 2051 | i915_verify_inactive(dev, __FILE__, __LINE__); |
1866 | 2052 | ||
2053 | /* Zero the global flush/invalidate flags. These | ||
2054 | * will be modified as new domains are computed | ||
2055 | * for each object | ||
2056 | */ | ||
2057 | dev->invalidate_domains = 0; | ||
2058 | dev->flush_domains = 0; | ||
2059 | |||
1867 | for (i = 0; i < args->buffer_count; i++) { | 2060 | for (i = 0; i < args->buffer_count; i++) { |
1868 | struct drm_gem_object *obj = object_list[i]; | 2061 | struct drm_gem_object *obj = object_list[i]; |
1869 | 2062 | ||
1870 | /* make sure all previous memory operations have passed */ | 2063 | /* Compute new gpu domains and update invalidate/flush */ |
1871 | ret = i915_gem_object_set_domain(obj, | 2064 | i915_gem_object_set_to_gpu_domain(obj, |
1872 | obj->pending_read_domains, | 2065 | obj->pending_read_domains, |
1873 | obj->pending_write_domain); | 2066 | obj->pending_write_domain); |
1874 | if (ret) | ||
1875 | goto err; | ||
1876 | } | 2067 | } |
1877 | 2068 | ||
1878 | i915_verify_inactive(dev, __FILE__, __LINE__); | 2069 | i915_verify_inactive(dev, __FILE__, __LINE__); |
1879 | 2070 | ||
1880 | /* Flush/invalidate caches and chipset buffer */ | 2071 | if (dev->invalidate_domains | dev->flush_domains) { |
1881 | flush_domains = i915_gem_dev_set_domain(dev); | 2072 | #if WATCH_EXEC |
2073 | DRM_INFO("%s: invalidate_domains %08x flush_domains %08x\n", | ||
2074 | __func__, | ||
2075 | dev->invalidate_domains, | ||
2076 | dev->flush_domains); | ||
2077 | #endif | ||
2078 | i915_gem_flush(dev, | ||
2079 | dev->invalidate_domains, | ||
2080 | dev->flush_domains); | ||
2081 | if (dev->flush_domains) | ||
2082 | (void)i915_add_request(dev, dev->flush_domains); | ||
2083 | } | ||
1882 | 2084 | ||
1883 | i915_verify_inactive(dev, __FILE__, __LINE__); | 2085 | i915_verify_inactive(dev, __FILE__, __LINE__); |
1884 | 2086 | ||
@@ -1898,8 +2100,6 @@ i915_gem_execbuffer(struct drm_device *dev, void *data, | |||
1898 | ~0); | 2100 | ~0); |
1899 | #endif | 2101 | #endif |
1900 | 2102 | ||
1901 | (void)i915_add_request(dev, flush_domains); | ||
1902 | |||
1903 | /* Exec the batchbuffer */ | 2103 | /* Exec the batchbuffer */ |
1904 | ret = i915_dispatch_gem_execbuffer(dev, args, exec_offset); | 2104 | ret = i915_dispatch_gem_execbuffer(dev, args, exec_offset); |
1905 | if (ret) { | 2105 | if (ret) { |
@@ -1927,10 +2127,8 @@ i915_gem_execbuffer(struct drm_device *dev, void *data, | |||
1927 | i915_file_priv->mm.last_gem_seqno = seqno; | 2127 | i915_file_priv->mm.last_gem_seqno = seqno; |
1928 | for (i = 0; i < args->buffer_count; i++) { | 2128 | for (i = 0; i < args->buffer_count; i++) { |
1929 | struct drm_gem_object *obj = object_list[i]; | 2129 | struct drm_gem_object *obj = object_list[i]; |
1930 | struct drm_i915_gem_object *obj_priv = obj->driver_private; | ||
1931 | 2130 | ||
1932 | i915_gem_object_move_to_active(obj); | 2131 | i915_gem_object_move_to_active(obj, seqno); |
1933 | obj_priv->last_rendering_seqno = seqno; | ||
1934 | #if WATCH_LRU | 2132 | #if WATCH_LRU |
1935 | DRM_INFO("%s: move to exec list %p\n", __func__, obj); | 2133 | DRM_INFO("%s: move to exec list %p\n", __func__, obj); |
1936 | #endif | 2134 | #endif |
@@ -2061,11 +2259,7 @@ i915_gem_pin_ioctl(struct drm_device *dev, void *data, | |||
2061 | /* XXX - flush the CPU caches for pinned objects | 2259 | /* XXX - flush the CPU caches for pinned objects |
2062 | * as the X server doesn't manage domains yet | 2260 | * as the X server doesn't manage domains yet |
2063 | */ | 2261 | */ |
2064 | if (obj->write_domain & I915_GEM_DOMAIN_CPU) { | 2262 | i915_gem_object_flush_cpu_write_domain(obj); |
2065 | i915_gem_clflush_object(obj); | ||
2066 | drm_agp_chipset_flush(dev); | ||
2067 | obj->write_domain = 0; | ||
2068 | } | ||
2069 | args->offset = obj_priv->gtt_offset; | 2263 | args->offset = obj_priv->gtt_offset; |
2070 | drm_gem_object_unreference(obj); | 2264 | drm_gem_object_unreference(obj); |
2071 | mutex_unlock(&dev->struct_mutex); | 2265 | mutex_unlock(&dev->struct_mutex); |
@@ -2167,29 +2361,6 @@ void i915_gem_free_object(struct drm_gem_object *obj) | |||
2167 | drm_free(obj->driver_private, 1, DRM_MEM_DRIVER); | 2361 | drm_free(obj->driver_private, 1, DRM_MEM_DRIVER); |
2168 | } | 2362 | } |
2169 | 2363 | ||
2170 | static int | ||
2171 | i915_gem_set_domain(struct drm_gem_object *obj, | ||
2172 | struct drm_file *file_priv, | ||
2173 | uint32_t read_domains, | ||
2174 | uint32_t write_domain) | ||
2175 | { | ||
2176 | struct drm_device *dev = obj->dev; | ||
2177 | int ret; | ||
2178 | uint32_t flush_domains; | ||
2179 | |||
2180 | BUG_ON(!mutex_is_locked(&dev->struct_mutex)); | ||
2181 | |||
2182 | ret = i915_gem_object_set_domain(obj, read_domains, write_domain); | ||
2183 | if (ret) | ||
2184 | return ret; | ||
2185 | flush_domains = i915_gem_dev_set_domain(obj->dev); | ||
2186 | |||
2187 | if (flush_domains & ~(I915_GEM_DOMAIN_CPU|I915_GEM_DOMAIN_GTT)) | ||
2188 | (void) i915_add_request(dev, flush_domains); | ||
2189 | |||
2190 | return 0; | ||
2191 | } | ||
2192 | |||
2193 | /** Unbinds all objects that are on the given buffer list. */ | 2364 | /** Unbinds all objects that are on the given buffer list. */ |
2194 | static int | 2365 | static int |
2195 | i915_gem_evict_from_list(struct drm_device *dev, struct list_head *head) | 2366 | i915_gem_evict_from_list(struct drm_device *dev, struct list_head *head) |
diff --git a/drivers/gpu/drm/i915/i915_gem_proc.c b/drivers/gpu/drm/i915/i915_gem_proc.c index 93de15b4c9a7..e8d5abe1250e 100644 --- a/drivers/gpu/drm/i915/i915_gem_proc.c +++ b/drivers/gpu/drm/i915/i915_gem_proc.c | |||
@@ -166,10 +166,9 @@ static int i915_gem_request_info(char *buf, char **start, off_t offset, | |||
166 | list_for_each_entry(gem_request, &dev_priv->mm.request_list, | 166 | list_for_each_entry(gem_request, &dev_priv->mm.request_list, |
167 | list) | 167 | list) |
168 | { | 168 | { |
169 | DRM_PROC_PRINT(" %d @ %d %08x\n", | 169 | DRM_PROC_PRINT(" %d @ %d\n", |
170 | gem_request->seqno, | 170 | gem_request->seqno, |
171 | (int) (jiffies - gem_request->emitted_jiffies), | 171 | (int) (jiffies - gem_request->emitted_jiffies)); |
172 | gem_request->flush_domains); | ||
173 | } | 172 | } |
174 | if (len > request + offset) | 173 | if (len > request + offset) |
175 | return request; | 174 | return request; |
diff --git a/drivers/gpu/drm/i915/i915_gem_tiling.c b/drivers/gpu/drm/i915/i915_gem_tiling.c index e8b85ac4ca04..a8cb69469c64 100644 --- a/drivers/gpu/drm/i915/i915_gem_tiling.c +++ b/drivers/gpu/drm/i915/i915_gem_tiling.c | |||
@@ -119,9 +119,10 @@ i915_gem_detect_bit_6_swizzle(struct drm_device *dev) | |||
119 | dcc & DCC_CHANNEL_XOR_DISABLE) { | 119 | dcc & DCC_CHANNEL_XOR_DISABLE) { |
120 | swizzle_x = I915_BIT_6_SWIZZLE_9_10; | 120 | swizzle_x = I915_BIT_6_SWIZZLE_9_10; |
121 | swizzle_y = I915_BIT_6_SWIZZLE_9; | 121 | swizzle_y = I915_BIT_6_SWIZZLE_9; |
122 | } else if (IS_I965GM(dev) || IS_GM45(dev)) { | 122 | } else if ((IS_I965GM(dev) || IS_GM45(dev)) && |
123 | /* GM965 only does bit 11-based channel | 123 | (dcc & DCC_CHANNEL_XOR_BIT_17) == 0) { |
124 | * randomization | 124 | /* GM965/GM45 does either bit 11 or bit 17 |
125 | * swizzling. | ||
125 | */ | 126 | */ |
126 | swizzle_x = I915_BIT_6_SWIZZLE_9_10_11; | 127 | swizzle_x = I915_BIT_6_SWIZZLE_9_10_11; |
127 | swizzle_y = I915_BIT_6_SWIZZLE_9_11; | 128 | swizzle_y = I915_BIT_6_SWIZZLE_9_11; |
diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h index 0e476eba36e6..9d24aaeb8a45 100644 --- a/drivers/gpu/drm/i915/i915_reg.h +++ b/drivers/gpu/drm/i915/i915_reg.h | |||
@@ -522,6 +522,7 @@ | |||
522 | #define DCC_ADDRESSING_MODE_DUAL_CHANNEL_INTERLEAVED (2 << 0) | 522 | #define DCC_ADDRESSING_MODE_DUAL_CHANNEL_INTERLEAVED (2 << 0) |
523 | #define DCC_ADDRESSING_MODE_MASK (3 << 0) | 523 | #define DCC_ADDRESSING_MODE_MASK (3 << 0) |
524 | #define DCC_CHANNEL_XOR_DISABLE (1 << 10) | 524 | #define DCC_CHANNEL_XOR_DISABLE (1 << 10) |
525 | #define DCC_CHANNEL_XOR_BIT_17 (1 << 9) | ||
525 | 526 | ||
526 | /** 965 MCH register controlling DRAM channel configuration */ | 527 | /** 965 MCH register controlling DRAM channel configuration */ |
527 | #define C0DRB3 0x10206 | 528 | #define C0DRB3 0x10206 |
diff --git a/drivers/gpu/drm/radeon/radeon_drv.h b/drivers/gpu/drm/radeon/radeon_drv.h index 7a183789be97..3bbb871b25d5 100644 --- a/drivers/gpu/drm/radeon/radeon_drv.h +++ b/drivers/gpu/drm/radeon/radeon_drv.h | |||
@@ -299,7 +299,6 @@ typedef struct drm_radeon_private { | |||
299 | atomic_t swi_emitted; | 299 | atomic_t swi_emitted; |
300 | int vblank_crtc; | 300 | int vblank_crtc; |
301 | uint32_t irq_enable_reg; | 301 | uint32_t irq_enable_reg; |
302 | int irq_enabled; | ||
303 | uint32_t r500_disp_irq_reg; | 302 | uint32_t r500_disp_irq_reg; |
304 | 303 | ||
305 | struct radeon_surface surfaces[RADEON_MAX_SURFACES]; | 304 | struct radeon_surface surfaces[RADEON_MAX_SURFACES]; |
diff --git a/drivers/gpu/drm/radeon/radeon_irq.c b/drivers/gpu/drm/radeon/radeon_irq.c index 97c0599fdb1e..99be11418ac2 100644 --- a/drivers/gpu/drm/radeon/radeon_irq.c +++ b/drivers/gpu/drm/radeon/radeon_irq.c | |||
@@ -44,7 +44,8 @@ void radeon_irq_set_state(struct drm_device *dev, u32 mask, int state) | |||
44 | else | 44 | else |
45 | dev_priv->irq_enable_reg &= ~mask; | 45 | dev_priv->irq_enable_reg &= ~mask; |
46 | 46 | ||
47 | RADEON_WRITE(RADEON_GEN_INT_CNTL, dev_priv->irq_enable_reg); | 47 | if (!dev->irq_enabled) |
48 | RADEON_WRITE(RADEON_GEN_INT_CNTL, dev_priv->irq_enable_reg); | ||
48 | } | 49 | } |
49 | 50 | ||
50 | static void r500_vbl_irq_set_state(struct drm_device *dev, u32 mask, int state) | 51 | static void r500_vbl_irq_set_state(struct drm_device *dev, u32 mask, int state) |
@@ -56,7 +57,8 @@ static void r500_vbl_irq_set_state(struct drm_device *dev, u32 mask, int state) | |||
56 | else | 57 | else |
57 | dev_priv->r500_disp_irq_reg &= ~mask; | 58 | dev_priv->r500_disp_irq_reg &= ~mask; |
58 | 59 | ||
59 | RADEON_WRITE(R500_DxMODE_INT_MASK, dev_priv->r500_disp_irq_reg); | 60 | if (!dev->irq_enabled) |
61 | RADEON_WRITE(R500_DxMODE_INT_MASK, dev_priv->r500_disp_irq_reg); | ||
60 | } | 62 | } |
61 | 63 | ||
62 | int radeon_enable_vblank(struct drm_device *dev, int crtc) | 64 | int radeon_enable_vblank(struct drm_device *dev, int crtc) |
@@ -355,8 +357,6 @@ void radeon_driver_irq_uninstall(struct drm_device * dev) | |||
355 | if (!dev_priv) | 357 | if (!dev_priv) |
356 | return; | 358 | return; |
357 | 359 | ||
358 | dev_priv->irq_enabled = 0; | ||
359 | |||
360 | if ((dev_priv->flags & RADEON_FAMILY_MASK) >= CHIP_RS690) | 360 | if ((dev_priv->flags & RADEON_FAMILY_MASK) >= CHIP_RS690) |
361 | RADEON_WRITE(R500_DxMODE_INT_MASK, 0); | 361 | RADEON_WRITE(R500_DxMODE_INT_MASK, 0); |
362 | /* Disable *all* interrupts */ | 362 | /* Disable *all* interrupts */ |
diff --git a/drivers/ide/Kconfig b/drivers/ide/Kconfig index 6d7401772a8f..e6857e01d1ba 100644 --- a/drivers/ide/Kconfig +++ b/drivers/ide/Kconfig | |||
@@ -669,10 +669,12 @@ config BLK_DEV_CELLEB | |||
669 | 669 | ||
670 | endif | 670 | endif |
671 | 671 | ||
672 | # TODO: BLK_DEV_IDEDMA_PCI -> BLK_DEV_IDEDMA_SFF | ||
672 | config BLK_DEV_IDE_PMAC | 673 | config BLK_DEV_IDE_PMAC |
673 | tristate "PowerMac on-board IDE support" | 674 | tristate "PowerMac on-board IDE support" |
674 | depends on PPC_PMAC && IDE=y | 675 | depends on PPC_PMAC && IDE=y |
675 | select IDE_TIMINGS | 676 | select IDE_TIMINGS |
677 | select BLK_DEV_IDEDMA_PCI | ||
676 | help | 678 | help |
677 | This driver provides support for the on-board IDE controller on | 679 | This driver provides support for the on-board IDE controller on |
678 | most of the recent Apple Power Macintoshes and PowerBooks. | 680 | most of the recent Apple Power Macintoshes and PowerBooks. |
@@ -689,16 +691,6 @@ config BLK_DEV_IDE_PMAC_ATA100FIRST | |||
689 | CD-ROM on hda. This option changes this to more natural hda for | 691 | CD-ROM on hda. This option changes this to more natural hda for |
690 | hard disk and hdc for CD-ROM. | 692 | hard disk and hdc for CD-ROM. |
691 | 693 | ||
692 | config BLK_DEV_IDEDMA_PMAC | ||
693 | bool "PowerMac IDE DMA support" | ||
694 | depends on BLK_DEV_IDE_PMAC | ||
695 | select BLK_DEV_IDEDMA_PCI | ||
696 | help | ||
697 | This option allows the driver for the on-board IDE controller on | ||
698 | Power Macintoshes and PowerBooks to use DMA (direct memory access) | ||
699 | to transfer data to and from memory. Saying Y is safe and improves | ||
700 | performance. | ||
701 | |||
702 | config BLK_DEV_IDE_AU1XXX | 694 | config BLK_DEV_IDE_AU1XXX |
703 | bool "IDE for AMD Alchemy Au1200" | 695 | bool "IDE for AMD Alchemy Au1200" |
704 | depends on SOC_AU1200 | 696 | depends on SOC_AU1200 |
@@ -912,7 +904,7 @@ config BLK_DEV_UMC8672 | |||
912 | endif | 904 | endif |
913 | 905 | ||
914 | config BLK_DEV_IDEDMA | 906 | config BLK_DEV_IDEDMA |
915 | def_bool BLK_DEV_IDEDMA_SFF || BLK_DEV_IDEDMA_PMAC || \ | 907 | def_bool BLK_DEV_IDEDMA_SFF || \ |
916 | BLK_DEV_IDEDMA_ICS || BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA | 908 | BLK_DEV_IDEDMA_ICS || BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA |
917 | 909 | ||
918 | endif # IDE | 910 | endif # IDE |
diff --git a/drivers/ide/ide-io.c b/drivers/ide/ide-io.c index 7d275b2af3eb..cc35d6dbd410 100644 --- a/drivers/ide/ide-io.c +++ b/drivers/ide/ide-io.c | |||
@@ -208,8 +208,10 @@ static ide_startstop_t ide_start_power_step(ide_drive_t *drive, struct request * | |||
208 | */ | 208 | */ |
209 | if (drive->hwif->dma_ops == NULL) | 209 | if (drive->hwif->dma_ops == NULL) |
210 | break; | 210 | break; |
211 | if (drive->dev_flags & IDE_DFLAG_USING_DMA) | 211 | /* |
212 | ide_set_dma(drive); | 212 | * TODO: respect IDE_DFLAG_USING_DMA |
213 | */ | ||
214 | ide_set_dma(drive); | ||
213 | break; | 215 | break; |
214 | } | 216 | } |
215 | 217 | ||
diff --git a/drivers/ide/pmac.c b/drivers/ide/pmac.c index 2e19d6298536..7c481bb56fab 100644 --- a/drivers/ide/pmac.c +++ b/drivers/ide/pmac.c | |||
@@ -66,7 +66,6 @@ typedef struct pmac_ide_hwif { | |||
66 | struct macio_dev *mdev; | 66 | struct macio_dev *mdev; |
67 | u32 timings[4]; | 67 | u32 timings[4]; |
68 | volatile u32 __iomem * *kauai_fcr; | 68 | volatile u32 __iomem * *kauai_fcr; |
69 | #ifdef CONFIG_BLK_DEV_IDEDMA_PMAC | ||
70 | /* Those fields are duplicating what is in hwif. We currently | 69 | /* Those fields are duplicating what is in hwif. We currently |
71 | * can't use the hwif ones because of some assumptions that are | 70 | * can't use the hwif ones because of some assumptions that are |
72 | * beeing done by the generic code about the kind of dma controller | 71 | * beeing done by the generic code about the kind of dma controller |
@@ -74,8 +73,6 @@ typedef struct pmac_ide_hwif { | |||
74 | */ | 73 | */ |
75 | volatile struct dbdma_regs __iomem * dma_regs; | 74 | volatile struct dbdma_regs __iomem * dma_regs; |
76 | struct dbdma_cmd* dma_table_cpu; | 75 | struct dbdma_cmd* dma_table_cpu; |
77 | #endif | ||
78 | |||
79 | } pmac_ide_hwif_t; | 76 | } pmac_ide_hwif_t; |
80 | 77 | ||
81 | enum { | 78 | enum { |
@@ -222,8 +219,6 @@ static const char* model_name[] = { | |||
222 | #define KAUAI_FCR_UATA_RESET_N 0x00000002 | 219 | #define KAUAI_FCR_UATA_RESET_N 0x00000002 |
223 | #define KAUAI_FCR_UATA_ENABLE 0x00000001 | 220 | #define KAUAI_FCR_UATA_ENABLE 0x00000001 |
224 | 221 | ||
225 | #ifdef CONFIG_BLK_DEV_IDEDMA_PMAC | ||
226 | |||
227 | /* Rounded Multiword DMA timings | 222 | /* Rounded Multiword DMA timings |
228 | * | 223 | * |
229 | * I gave up finding a generic formula for all controller | 224 | * I gave up finding a generic formula for all controller |
@@ -413,8 +408,6 @@ static int pmac_ide_build_dmatable(ide_drive_t *drive, struct request *rq); | |||
413 | static void pmac_ide_selectproc(ide_drive_t *drive); | 408 | static void pmac_ide_selectproc(ide_drive_t *drive); |
414 | static void pmac_ide_kauai_selectproc(ide_drive_t *drive); | 409 | static void pmac_ide_kauai_selectproc(ide_drive_t *drive); |
415 | 410 | ||
416 | #endif /* CONFIG_BLK_DEV_IDEDMA_PMAC */ | ||
417 | |||
418 | #define PMAC_IDE_REG(x) \ | 411 | #define PMAC_IDE_REG(x) \ |
419 | ((void __iomem *)((drive)->hwif->io_ports.data_addr + (x))) | 412 | ((void __iomem *)((drive)->hwif->io_ports.data_addr + (x))) |
420 | 413 | ||
@@ -584,8 +577,6 @@ pmac_ide_set_pio_mode(ide_drive_t *drive, const u8 pio) | |||
584 | pmac_ide_do_update_timings(drive); | 577 | pmac_ide_do_update_timings(drive); |
585 | } | 578 | } |
586 | 579 | ||
587 | #ifdef CONFIG_BLK_DEV_IDEDMA_PMAC | ||
588 | |||
589 | /* | 580 | /* |
590 | * Calculate KeyLargo ATA/66 UDMA timings | 581 | * Calculate KeyLargo ATA/66 UDMA timings |
591 | */ | 582 | */ |
@@ -786,7 +777,6 @@ set_timings_mdma(ide_drive_t *drive, int intf_type, u32 *timings, u32 *timings2, | |||
786 | drive->name, speed & 0xf, *timings); | 777 | drive->name, speed & 0xf, *timings); |
787 | #endif | 778 | #endif |
788 | } | 779 | } |
789 | #endif /* #ifdef CONFIG_BLK_DEV_IDEDMA_PMAC */ | ||
790 | 780 | ||
791 | static void pmac_ide_set_dma_mode(ide_drive_t *drive, const u8 speed) | 781 | static void pmac_ide_set_dma_mode(ide_drive_t *drive, const u8 speed) |
792 | { | 782 | { |
@@ -804,7 +794,6 @@ static void pmac_ide_set_dma_mode(ide_drive_t *drive, const u8 speed) | |||
804 | tl[0] = *timings; | 794 | tl[0] = *timings; |
805 | tl[1] = *timings2; | 795 | tl[1] = *timings2; |
806 | 796 | ||
807 | #ifdef CONFIG_BLK_DEV_IDEDMA_PMAC | ||
808 | if (speed >= XFER_UDMA_0) { | 797 | if (speed >= XFER_UDMA_0) { |
809 | if (pmif->kind == controller_kl_ata4) | 798 | if (pmif->kind == controller_kl_ata4) |
810 | ret = set_timings_udma_ata4(&tl[0], speed); | 799 | ret = set_timings_udma_ata4(&tl[0], speed); |
@@ -817,7 +806,7 @@ static void pmac_ide_set_dma_mode(ide_drive_t *drive, const u8 speed) | |||
817 | ret = -1; | 806 | ret = -1; |
818 | } else | 807 | } else |
819 | set_timings_mdma(drive, pmif->kind, &tl[0], &tl[1], speed); | 808 | set_timings_mdma(drive, pmif->kind, &tl[0], &tl[1], speed); |
820 | #endif /* CONFIG_BLK_DEV_IDEDMA_PMAC */ | 809 | |
821 | if (ret) | 810 | if (ret) |
822 | return; | 811 | return; |
823 | 812 | ||
@@ -1008,9 +997,7 @@ static const struct ide_port_info pmac_port_info = { | |||
1008 | .chipset = ide_pmac, | 997 | .chipset = ide_pmac, |
1009 | .tp_ops = &pmac_tp_ops, | 998 | .tp_ops = &pmac_tp_ops, |
1010 | .port_ops = &pmac_ide_port_ops, | 999 | .port_ops = &pmac_ide_port_ops, |
1011 | #ifdef CONFIG_BLK_DEV_IDEDMA_PMAC | ||
1012 | .dma_ops = &pmac_dma_ops, | 1000 | .dma_ops = &pmac_dma_ops, |
1013 | #endif | ||
1014 | .host_flags = IDE_HFLAG_SET_PIO_MODE_KEEP_DMA | | 1001 | .host_flags = IDE_HFLAG_SET_PIO_MODE_KEEP_DMA | |
1015 | IDE_HFLAG_POST_SET_MODE | | 1002 | IDE_HFLAG_POST_SET_MODE | |
1016 | IDE_HFLAG_MMIO | | 1003 | IDE_HFLAG_MMIO | |
@@ -1182,7 +1169,7 @@ pmac_ide_macio_attach(struct macio_dev *mdev, const struct of_device_id *match) | |||
1182 | pmif->regbase = regbase; | 1169 | pmif->regbase = regbase; |
1183 | pmif->irq = irq; | 1170 | pmif->irq = irq; |
1184 | pmif->kauai_fcr = NULL; | 1171 | pmif->kauai_fcr = NULL; |
1185 | #ifdef CONFIG_BLK_DEV_IDEDMA_PMAC | 1172 | |
1186 | if (macio_resource_count(mdev) >= 2) { | 1173 | if (macio_resource_count(mdev) >= 2) { |
1187 | if (macio_request_resource(mdev, 1, "ide-pmac (dma)")) | 1174 | if (macio_request_resource(mdev, 1, "ide-pmac (dma)")) |
1188 | printk(KERN_WARNING "ide-pmac: can't request DMA " | 1175 | printk(KERN_WARNING "ide-pmac: can't request DMA " |
@@ -1192,7 +1179,7 @@ pmac_ide_macio_attach(struct macio_dev *mdev, const struct of_device_id *match) | |||
1192 | pmif->dma_regs = ioremap(macio_resource_start(mdev, 1), 0x1000); | 1179 | pmif->dma_regs = ioremap(macio_resource_start(mdev, 1), 0x1000); |
1193 | } else | 1180 | } else |
1194 | pmif->dma_regs = NULL; | 1181 | pmif->dma_regs = NULL; |
1195 | #endif /* CONFIG_BLK_DEV_IDEDMA_PMAC */ | 1182 | |
1196 | dev_set_drvdata(&mdev->ofdev.dev, pmif); | 1183 | dev_set_drvdata(&mdev->ofdev.dev, pmif); |
1197 | 1184 | ||
1198 | memset(&hw, 0, sizeof(hw)); | 1185 | memset(&hw, 0, sizeof(hw)); |
@@ -1300,9 +1287,7 @@ pmac_ide_pci_attach(struct pci_dev *pdev, const struct pci_device_id *id) | |||
1300 | 1287 | ||
1301 | base = ioremap(rbase, rlen); | 1288 | base = ioremap(rbase, rlen); |
1302 | pmif->regbase = (unsigned long) base + 0x2000; | 1289 | pmif->regbase = (unsigned long) base + 0x2000; |
1303 | #ifdef CONFIG_BLK_DEV_IDEDMA_PMAC | ||
1304 | pmif->dma_regs = base + 0x1000; | 1290 | pmif->dma_regs = base + 0x1000; |
1305 | #endif /* CONFIG_BLK_DEV_IDEDMA_PMAC */ | ||
1306 | pmif->kauai_fcr = base; | 1291 | pmif->kauai_fcr = base; |
1307 | pmif->irq = pdev->irq; | 1292 | pmif->irq = pdev->irq; |
1308 | 1293 | ||
@@ -1434,8 +1419,6 @@ out: | |||
1434 | return error; | 1419 | return error; |
1435 | } | 1420 | } |
1436 | 1421 | ||
1437 | #ifdef CONFIG_BLK_DEV_IDEDMA_PMAC | ||
1438 | |||
1439 | /* | 1422 | /* |
1440 | * pmac_ide_build_dmatable builds the DBDMA command list | 1423 | * pmac_ide_build_dmatable builds the DBDMA command list |
1441 | * for a transfer and sets the DBDMA channel to point to it. | 1424 | * for a transfer and sets the DBDMA channel to point to it. |
@@ -1723,13 +1706,6 @@ static int __devinit pmac_ide_init_dma(ide_hwif_t *hwif, | |||
1723 | 1706 | ||
1724 | return 0; | 1707 | return 0; |
1725 | } | 1708 | } |
1726 | #else | ||
1727 | static int __devinit pmac_ide_init_dma(ide_hwif_t *hwif, | ||
1728 | const struct ide_port_info *d) | ||
1729 | { | ||
1730 | return -EOPNOTSUPP; | ||
1731 | } | ||
1732 | #endif /* CONFIG_BLK_DEV_IDEDMA_PMAC */ | ||
1733 | 1709 | ||
1734 | module_init(pmac_ide_probe); | 1710 | module_init(pmac_ide_probe); |
1735 | 1711 | ||
diff --git a/drivers/ide/sgiioc4.c b/drivers/ide/sgiioc4.c index 7defa0ae2014..a687a7dfea6f 100644 --- a/drivers/ide/sgiioc4.c +++ b/drivers/ide/sgiioc4.c | |||
@@ -550,7 +550,7 @@ static const struct ide_dma_ops sgiioc4_dma_ops = { | |||
550 | .dma_timeout = ide_dma_timeout, | 550 | .dma_timeout = ide_dma_timeout, |
551 | }; | 551 | }; |
552 | 552 | ||
553 | static const struct ide_port_info sgiioc4_port_info __devinitdata = { | 553 | static const struct ide_port_info sgiioc4_port_info __devinitconst = { |
554 | .name = DRV_NAME, | 554 | .name = DRV_NAME, |
555 | .chipset = ide_pci, | 555 | .chipset = ide_pci, |
556 | .init_dma = ide_dma_sgiioc4, | 556 | .init_dma = ide_dma_sgiioc4, |
@@ -633,7 +633,7 @@ out: | |||
633 | return ret; | 633 | return ret; |
634 | } | 634 | } |
635 | 635 | ||
636 | int | 636 | int __devinit |
637 | ioc4_ide_attach_one(struct ioc4_driver_data *idd) | 637 | ioc4_ide_attach_one(struct ioc4_driver_data *idd) |
638 | { | 638 | { |
639 | /* PCI-RT does not bring out IDE connection. | 639 | /* PCI-RT does not bring out IDE connection. |
@@ -645,7 +645,7 @@ ioc4_ide_attach_one(struct ioc4_driver_data *idd) | |||
645 | return pci_init_sgiioc4(idd->idd_pdev); | 645 | return pci_init_sgiioc4(idd->idd_pdev); |
646 | } | 646 | } |
647 | 647 | ||
648 | static struct ioc4_submodule ioc4_ide_submodule = { | 648 | static struct ioc4_submodule __devinitdata ioc4_ide_submodule = { |
649 | .is_name = "IOC4_ide", | 649 | .is_name = "IOC4_ide", |
650 | .is_owner = THIS_MODULE, | 650 | .is_owner = THIS_MODULE, |
651 | .is_probe = ioc4_ide_attach_one, | 651 | .is_probe = ioc4_ide_attach_one, |
diff --git a/drivers/ieee1394/nodemgr.c b/drivers/ieee1394/nodemgr.c index 9e39f73282ee..d333ae22459c 100644 --- a/drivers/ieee1394/nodemgr.c +++ b/drivers/ieee1394/nodemgr.c | |||
@@ -1685,6 +1685,7 @@ static int nodemgr_host_thread(void *data) | |||
1685 | g = get_hpsb_generation(host); | 1685 | g = get_hpsb_generation(host); |
1686 | for (i = 0; i < 4 ; i++) { | 1686 | for (i = 0; i < 4 ; i++) { |
1687 | msleep_interruptible(63); | 1687 | msleep_interruptible(63); |
1688 | try_to_freeze(); | ||
1688 | if (kthread_should_stop()) | 1689 | if (kthread_should_stop()) |
1689 | goto exit; | 1690 | goto exit; |
1690 | 1691 | ||
@@ -1725,6 +1726,7 @@ static int nodemgr_host_thread(void *data) | |||
1725 | /* Sleep 3 seconds */ | 1726 | /* Sleep 3 seconds */ |
1726 | for (i = 3000/200; i; i--) { | 1727 | for (i = 3000/200; i; i--) { |
1727 | msleep_interruptible(200); | 1728 | msleep_interruptible(200); |
1729 | try_to_freeze(); | ||
1728 | if (kthread_should_stop()) | 1730 | if (kthread_should_stop()) |
1729 | goto exit; | 1731 | goto exit; |
1730 | 1732 | ||
diff --git a/drivers/isdn/hardware/avm/b1isa.c b/drivers/isdn/hardware/avm/b1isa.c index 1e288eeb5e2a..6461a32bc838 100644 --- a/drivers/isdn/hardware/avm/b1isa.c +++ b/drivers/isdn/hardware/avm/b1isa.c | |||
@@ -233,10 +233,8 @@ static void __exit b1isa_exit(void) | |||
233 | int i; | 233 | int i; |
234 | 234 | ||
235 | for (i = 0; i < MAX_CARDS; i++) { | 235 | for (i = 0; i < MAX_CARDS; i++) { |
236 | if (!io[i]) | 236 | if (isa_dev[i].resource[0].start) |
237 | break; | 237 | b1isa_remove(&isa_dev[i]); |
238 | |||
239 | b1isa_remove(&isa_dev[i]); | ||
240 | } | 238 | } |
241 | unregister_capi_driver(&capi_driver_b1isa); | 239 | unregister_capi_driver(&capi_driver_b1isa); |
242 | } | 240 | } |
diff --git a/drivers/isdn/hysdn/hysdn_net.c b/drivers/isdn/hysdn/hysdn_net.c index cfa8fa5e44ab..3f2a0a20c19b 100644 --- a/drivers/isdn/hysdn/hysdn_net.c +++ b/drivers/isdn/hysdn/hysdn_net.c | |||
@@ -83,12 +83,12 @@ net_open(struct net_device *dev) | |||
83 | 83 | ||
84 | /* Fill in the MAC-level header (if not already set) */ | 84 | /* Fill in the MAC-level header (if not already set) */ |
85 | if (!card->mac_addr[0]) { | 85 | if (!card->mac_addr[0]) { |
86 | for (i = 0; i < ETH_ALEN - sizeof(unsigned long); i++) | 86 | for (i = 0; i < ETH_ALEN; i++) |
87 | dev->dev_addr[i] = 0xfc; | 87 | dev->dev_addr[i] = 0xfc; |
88 | if ((in_dev = dev->ip_ptr) != NULL) { | 88 | if ((in_dev = dev->ip_ptr) != NULL) { |
89 | struct in_ifaddr *ifa = in_dev->ifa_list; | 89 | struct in_ifaddr *ifa = in_dev->ifa_list; |
90 | if (ifa != NULL) | 90 | if (ifa != NULL) |
91 | memcpy(dev->dev_addr + (ETH_ALEN - sizeof(unsigned long)), &ifa->ifa_local, sizeof(unsigned long)); | 91 | memcpy(dev->dev_addr + (ETH_ALEN - sizeof(ifa->ifa_local)), &ifa->ifa_local, sizeof(ifa->ifa_local)); |
92 | } | 92 | } |
93 | } else | 93 | } else |
94 | memcpy(dev->dev_addr, card->mac_addr, ETH_ALEN); | 94 | memcpy(dev->dev_addr, card->mac_addr, ETH_ALEN); |
diff --git a/drivers/message/i2o/i2o_block.c b/drivers/message/i2o/i2o_block.c index 84bdc2ee69e6..a443e136dc41 100644 --- a/drivers/message/i2o/i2o_block.c +++ b/drivers/message/i2o/i2o_block.c | |||
@@ -354,7 +354,7 @@ static inline void i2o_block_sglist_free(struct i2o_block_request *ireq) | |||
354 | * @req: the request to prepare | 354 | * @req: the request to prepare |
355 | * | 355 | * |
356 | * Allocate the necessary i2o_block_request struct and connect it to | 356 | * Allocate the necessary i2o_block_request struct and connect it to |
357 | * the request. This is needed that we not loose the SG list later on. | 357 | * the request. This is needed that we not lose the SG list later on. |
358 | * | 358 | * |
359 | * Returns BLKPREP_OK on success or BLKPREP_DEFER on failure. | 359 | * Returns BLKPREP_OK on success or BLKPREP_DEFER on failure. |
360 | */ | 360 | */ |
diff --git a/drivers/message/i2o/iop.c b/drivers/message/i2o/iop.c index be2b5926d26c..6e53a30bfd38 100644 --- a/drivers/message/i2o/iop.c +++ b/drivers/message/i2o/iop.c | |||
@@ -49,7 +49,6 @@ static int i2o_hrt_get(struct i2o_controller *c); | |||
49 | /** | 49 | /** |
50 | * i2o_msg_get_wait - obtain an I2O message from the IOP | 50 | * i2o_msg_get_wait - obtain an I2O message from the IOP |
51 | * @c: I2O controller | 51 | * @c: I2O controller |
52 | * @msg: pointer to a I2O message pointer | ||
53 | * @wait: how long to wait until timeout | 52 | * @wait: how long to wait until timeout |
54 | * | 53 | * |
55 | * This function waits up to wait seconds for a message slot to be | 54 | * This function waits up to wait seconds for a message slot to be |
diff --git a/drivers/misc/sgi-gru/grufault.c b/drivers/misc/sgi-gru/grufault.c index 8c389d606c30..3ee698ad8599 100644 --- a/drivers/misc/sgi-gru/grufault.c +++ b/drivers/misc/sgi-gru/grufault.c | |||
@@ -254,7 +254,11 @@ static int atomic_pte_lookup(struct vm_area_struct *vma, unsigned long vaddr, | |||
254 | return 1; | 254 | return 1; |
255 | 255 | ||
256 | *paddr = pte_pfn(pte) << PAGE_SHIFT; | 256 | *paddr = pte_pfn(pte) << PAGE_SHIFT; |
257 | #ifdef CONFIG_HUGETLB_PAGE | ||
257 | *pageshift = is_vm_hugetlb_page(vma) ? HPAGE_SHIFT : PAGE_SHIFT; | 258 | *pageshift = is_vm_hugetlb_page(vma) ? HPAGE_SHIFT : PAGE_SHIFT; |
259 | #else | ||
260 | *pageshift = PAGE_SHIFT; | ||
261 | #endif | ||
258 | return 0; | 262 | return 0; |
259 | 263 | ||
260 | err: | 264 | err: |
diff --git a/drivers/mtd/devices/m25p80.c b/drivers/mtd/devices/m25p80.c index 76a76751da36..6659b2275c0c 100644 --- a/drivers/mtd/devices/m25p80.c +++ b/drivers/mtd/devices/m25p80.c | |||
@@ -37,9 +37,9 @@ | |||
37 | #define OPCODE_NORM_READ 0x03 /* Read data bytes (low frequency) */ | 37 | #define OPCODE_NORM_READ 0x03 /* Read data bytes (low frequency) */ |
38 | #define OPCODE_FAST_READ 0x0b /* Read data bytes (high frequency) */ | 38 | #define OPCODE_FAST_READ 0x0b /* Read data bytes (high frequency) */ |
39 | #define OPCODE_PP 0x02 /* Page program (up to 256 bytes) */ | 39 | #define OPCODE_PP 0x02 /* Page program (up to 256 bytes) */ |
40 | #define OPCODE_BE_4K 0x20 /* Erase 4KiB block */ | 40 | #define OPCODE_BE_4K 0x20 /* Erase 4KiB block */ |
41 | #define OPCODE_BE_32K 0x52 /* Erase 32KiB block */ | 41 | #define OPCODE_BE_32K 0x52 /* Erase 32KiB block */ |
42 | #define OPCODE_BE 0xc7 /* Erase whole flash block */ | 42 | #define OPCODE_CHIP_ERASE 0xc7 /* Erase whole flash chip */ |
43 | #define OPCODE_SE 0xd8 /* Sector erase (usually 64KiB) */ | 43 | #define OPCODE_SE 0xd8 /* Sector erase (usually 64KiB) */ |
44 | #define OPCODE_RDID 0x9f /* Read JEDEC ID */ | 44 | #define OPCODE_RDID 0x9f /* Read JEDEC ID */ |
45 | 45 | ||
@@ -167,7 +167,7 @@ static int wait_till_ready(struct m25p *flash) | |||
167 | * | 167 | * |
168 | * Returns 0 if successful, non-zero otherwise. | 168 | * Returns 0 if successful, non-zero otherwise. |
169 | */ | 169 | */ |
170 | static int erase_block(struct m25p *flash) | 170 | static int erase_chip(struct m25p *flash) |
171 | { | 171 | { |
172 | DEBUG(MTD_DEBUG_LEVEL3, "%s: %s %dKiB\n", | 172 | DEBUG(MTD_DEBUG_LEVEL3, "%s: %s %dKiB\n", |
173 | flash->spi->dev.bus_id, __func__, | 173 | flash->spi->dev.bus_id, __func__, |
@@ -181,7 +181,7 @@ static int erase_block(struct m25p *flash) | |||
181 | write_enable(flash); | 181 | write_enable(flash); |
182 | 182 | ||
183 | /* Set up command buffer. */ | 183 | /* Set up command buffer. */ |
184 | flash->command[0] = OPCODE_BE; | 184 | flash->command[0] = OPCODE_CHIP_ERASE; |
185 | 185 | ||
186 | spi_write(flash->spi, flash->command, 1); | 186 | spi_write(flash->spi, flash->command, 1); |
187 | 187 | ||
@@ -250,15 +250,18 @@ static int m25p80_erase(struct mtd_info *mtd, struct erase_info *instr) | |||
250 | 250 | ||
251 | mutex_lock(&flash->lock); | 251 | mutex_lock(&flash->lock); |
252 | 252 | ||
253 | /* REVISIT in some cases we could speed up erasing large regions | 253 | /* whole-chip erase? */ |
254 | * by using OPCODE_SE instead of OPCODE_BE_4K | 254 | if (len == flash->mtd.size && erase_chip(flash)) { |
255 | */ | ||
256 | |||
257 | /* now erase those sectors */ | ||
258 | if (len == flash->mtd.size && erase_block(flash)) { | ||
259 | instr->state = MTD_ERASE_FAILED; | 255 | instr->state = MTD_ERASE_FAILED; |
260 | mutex_unlock(&flash->lock); | 256 | mutex_unlock(&flash->lock); |
261 | return -EIO; | 257 | return -EIO; |
258 | |||
259 | /* REVISIT in some cases we could speed up erasing large regions | ||
260 | * by using OPCODE_SE instead of OPCODE_BE_4K. We may have set up | ||
261 | * to use "small sector erase", but that's not always optimal. | ||
262 | */ | ||
263 | |||
264 | /* "sector"-at-a-time erase */ | ||
262 | } else { | 265 | } else { |
263 | while (len) { | 266 | while (len) { |
264 | if (erase_sector(flash, addr)) { | 267 | if (erase_sector(flash, addr)) { |
@@ -574,10 +577,11 @@ static struct flash_info *__devinit jedec_probe(struct spi_device *spi) | |||
574 | for (tmp = 0, info = m25p_data; | 577 | for (tmp = 0, info = m25p_data; |
575 | tmp < ARRAY_SIZE(m25p_data); | 578 | tmp < ARRAY_SIZE(m25p_data); |
576 | tmp++, info++) { | 579 | tmp++, info++) { |
577 | if (info->jedec_id == jedec) | 580 | if (info->jedec_id == jedec) { |
578 | if (ext_jedec != 0 && info->ext_id != ext_jedec) | 581 | if (info->ext_id != 0 && info->ext_id != ext_jedec) |
579 | continue; | 582 | continue; |
580 | return info; | 583 | return info; |
584 | } | ||
581 | } | 585 | } |
582 | dev_err(&spi->dev, "unrecognized JEDEC id %06x\n", jedec); | 586 | dev_err(&spi->dev, "unrecognized JEDEC id %06x\n", jedec); |
583 | return NULL; | 587 | return NULL; |
diff --git a/drivers/mtd/maps/physmap.c b/drivers/mtd/maps/physmap.c index 42d844f8f6bf..dfbf3f270cea 100644 --- a/drivers/mtd/maps/physmap.c +++ b/drivers/mtd/maps/physmap.c | |||
@@ -19,7 +19,7 @@ | |||
19 | #include <linux/mtd/partitions.h> | 19 | #include <linux/mtd/partitions.h> |
20 | #include <linux/mtd/physmap.h> | 20 | #include <linux/mtd/physmap.h> |
21 | #include <linux/mtd/concat.h> | 21 | #include <linux/mtd/concat.h> |
22 | #include <asm/io.h> | 22 | #include <linux/io.h> |
23 | 23 | ||
24 | #define MAX_RESOURCES 4 | 24 | #define MAX_RESOURCES 4 |
25 | 25 | ||
@@ -27,7 +27,6 @@ struct physmap_flash_info { | |||
27 | struct mtd_info *mtd[MAX_RESOURCES]; | 27 | struct mtd_info *mtd[MAX_RESOURCES]; |
28 | struct mtd_info *cmtd; | 28 | struct mtd_info *cmtd; |
29 | struct map_info map[MAX_RESOURCES]; | 29 | struct map_info map[MAX_RESOURCES]; |
30 | struct resource *res; | ||
31 | #ifdef CONFIG_MTD_PARTITIONS | 30 | #ifdef CONFIG_MTD_PARTITIONS |
32 | int nr_parts; | 31 | int nr_parts; |
33 | struct mtd_partition *parts; | 32 | struct mtd_partition *parts; |
@@ -70,16 +69,7 @@ static int physmap_flash_remove(struct platform_device *dev) | |||
70 | #endif | 69 | #endif |
71 | map_destroy(info->mtd[i]); | 70 | map_destroy(info->mtd[i]); |
72 | } | 71 | } |
73 | |||
74 | if (info->map[i].virt != NULL) | ||
75 | iounmap(info->map[i].virt); | ||
76 | } | ||
77 | |||
78 | if (info->res != NULL) { | ||
79 | release_resource(info->res); | ||
80 | kfree(info->res); | ||
81 | } | 72 | } |
82 | |||
83 | return 0; | 73 | return 0; |
84 | } | 74 | } |
85 | 75 | ||
@@ -101,7 +91,8 @@ static int physmap_flash_probe(struct platform_device *dev) | |||
101 | if (physmap_data == NULL) | 91 | if (physmap_data == NULL) |
102 | return -ENODEV; | 92 | return -ENODEV; |
103 | 93 | ||
104 | info = kzalloc(sizeof(struct physmap_flash_info), GFP_KERNEL); | 94 | info = devm_kzalloc(&dev->dev, sizeof(struct physmap_flash_info), |
95 | GFP_KERNEL); | ||
105 | if (info == NULL) { | 96 | if (info == NULL) { |
106 | err = -ENOMEM; | 97 | err = -ENOMEM; |
107 | goto err_out; | 98 | goto err_out; |
@@ -114,10 +105,10 @@ static int physmap_flash_probe(struct platform_device *dev) | |||
114 | (unsigned long long)(dev->resource[i].end - dev->resource[i].start + 1), | 105 | (unsigned long long)(dev->resource[i].end - dev->resource[i].start + 1), |
115 | (unsigned long long)dev->resource[i].start); | 106 | (unsigned long long)dev->resource[i].start); |
116 | 107 | ||
117 | info->res = request_mem_region(dev->resource[i].start, | 108 | if (!devm_request_mem_region(&dev->dev, |
118 | dev->resource[i].end - dev->resource[i].start + 1, | 109 | dev->resource[i].start, |
119 | dev->dev.bus_id); | 110 | dev->resource[i].end - dev->resource[i].start + 1, |
120 | if (info->res == NULL) { | 111 | dev->dev.bus_id)) { |
121 | dev_err(&dev->dev, "Could not reserve memory region\n"); | 112 | dev_err(&dev->dev, "Could not reserve memory region\n"); |
122 | err = -ENOMEM; | 113 | err = -ENOMEM; |
123 | goto err_out; | 114 | goto err_out; |
@@ -129,7 +120,8 @@ static int physmap_flash_probe(struct platform_device *dev) | |||
129 | info->map[i].bankwidth = physmap_data->width; | 120 | info->map[i].bankwidth = physmap_data->width; |
130 | info->map[i].set_vpp = physmap_data->set_vpp; | 121 | info->map[i].set_vpp = physmap_data->set_vpp; |
131 | 122 | ||
132 | info->map[i].virt = ioremap(info->map[i].phys, info->map[i].size); | 123 | info->map[i].virt = devm_ioremap(&dev->dev, info->map[i].phys, |
124 | info->map[i].size); | ||
133 | if (info->map[i].virt == NULL) { | 125 | if (info->map[i].virt == NULL) { |
134 | dev_err(&dev->dev, "Failed to ioremap flash region\n"); | 126 | dev_err(&dev->dev, "Failed to ioremap flash region\n"); |
135 | err = EIO; | 127 | err = EIO; |
diff --git a/drivers/mtd/nand/fsl_upm.c b/drivers/mtd/nand/fsl_upm.c index 024e3fffd4bb..a83192f80eba 100644 --- a/drivers/mtd/nand/fsl_upm.c +++ b/drivers/mtd/nand/fsl_upm.c | |||
@@ -163,9 +163,11 @@ static int __devinit fun_chip_init(struct fsl_upm_nand *fun, | |||
163 | ret = parse_mtd_partitions(&fun->mtd, part_types, &fun->parts, 0); | 163 | ret = parse_mtd_partitions(&fun->mtd, part_types, &fun->parts, 0); |
164 | 164 | ||
165 | #ifdef CONFIG_MTD_OF_PARTS | 165 | #ifdef CONFIG_MTD_OF_PARTS |
166 | if (ret == 0) | 166 | if (ret == 0) { |
167 | ret = of_mtd_parse_partitions(fun->dev, &fun->mtd, | 167 | ret = of_mtd_parse_partitions(fun->dev, flash_np, &fun->parts); |
168 | flash_np, &fun->parts); | 168 | if (ret < 0) |
169 | goto err; | ||
170 | } | ||
169 | #endif | 171 | #endif |
170 | if (ret > 0) | 172 | if (ret > 0) |
171 | ret = add_mtd_partitions(&fun->mtd, fun->parts, ret); | 173 | ret = add_mtd_partitions(&fun->mtd, fun->parts, ret); |
diff --git a/drivers/mtd/nand/pasemi_nand.c b/drivers/mtd/nand/pasemi_nand.c index 75c899039023..9bd6c9ac8443 100644 --- a/drivers/mtd/nand/pasemi_nand.c +++ b/drivers/mtd/nand/pasemi_nand.c | |||
@@ -141,6 +141,7 @@ static int __devinit pasemi_nand_probe(struct of_device *ofdev, | |||
141 | } | 141 | } |
142 | 142 | ||
143 | lpcctl = pci_resource_start(pdev, 0); | 143 | lpcctl = pci_resource_start(pdev, 0); |
144 | pci_dev_put(pdev); | ||
144 | 145 | ||
145 | if (!request_region(lpcctl, 4, driver_name)) { | 146 | if (!request_region(lpcctl, 4, driver_name)) { |
146 | err = -EBUSY; | 147 | err = -EBUSY; |
diff --git a/drivers/mtd/nand/pxa3xx_nand.c b/drivers/mtd/nand/pxa3xx_nand.c index c0fa9c9edf08..15f0a26730ae 100644 --- a/drivers/mtd/nand/pxa3xx_nand.c +++ b/drivers/mtd/nand/pxa3xx_nand.c | |||
@@ -269,6 +269,7 @@ static struct pxa3xx_nand_timing stm2GbX16_timing = { | |||
269 | 269 | ||
270 | static struct pxa3xx_nand_flash stm2GbX16 = { | 270 | static struct pxa3xx_nand_flash stm2GbX16 = { |
271 | .timing = &stm2GbX16_timing, | 271 | .timing = &stm2GbX16_timing, |
272 | .cmdset = &largepage_cmdset, | ||
272 | .page_per_block = 64, | 273 | .page_per_block = 64, |
273 | .page_size = 2048, | 274 | .page_size = 2048, |
274 | .flash_width = 16, | 275 | .flash_width = 16, |
diff --git a/drivers/mtd/onenand/omap2.c b/drivers/mtd/onenand/omap2.c index e39b21d3e168..a7e4d985f5ef 100644 --- a/drivers/mtd/onenand/omap2.c +++ b/drivers/mtd/onenand/omap2.c | |||
@@ -32,19 +32,18 @@ | |||
32 | #include <linux/platform_device.h> | 32 | #include <linux/platform_device.h> |
33 | #include <linux/interrupt.h> | 33 | #include <linux/interrupt.h> |
34 | #include <linux/delay.h> | 34 | #include <linux/delay.h> |
35 | #include <linux/dma-mapping.h> | ||
36 | #include <linux/io.h> | ||
35 | 37 | ||
36 | #include <asm/io.h> | ||
37 | #include <asm/mach/flash.h> | 38 | #include <asm/mach/flash.h> |
38 | #include <asm/arch/gpmc.h> | 39 | #include <mach/gpmc.h> |
39 | #include <asm/arch/onenand.h> | 40 | #include <mach/onenand.h> |
40 | #include <asm/arch/gpio.h> | 41 | #include <mach/gpio.h> |
41 | #include <asm/arch/pm.h> | 42 | #include <mach/pm.h> |
42 | 43 | ||
43 | #include <linux/dma-mapping.h> | 44 | #include <mach/dma.h> |
44 | #include <asm/dma-mapping.h> | ||
45 | #include <asm/arch/dma.h> | ||
46 | 45 | ||
47 | #include <asm/arch/board.h> | 46 | #include <mach/board.h> |
48 | 47 | ||
49 | #define DRIVER_NAME "omap2-onenand" | 48 | #define DRIVER_NAME "omap2-onenand" |
50 | 49 | ||
diff --git a/drivers/net/bnx2.c b/drivers/net/bnx2.c index d07e3f148951..a1a3d0e5d2b4 100644 --- a/drivers/net/bnx2.c +++ b/drivers/net/bnx2.c | |||
@@ -3144,6 +3144,28 @@ bnx2_has_work(struct bnx2_napi *bnapi) | |||
3144 | return 0; | 3144 | return 0; |
3145 | } | 3145 | } |
3146 | 3146 | ||
3147 | static void | ||
3148 | bnx2_chk_missed_msi(struct bnx2 *bp) | ||
3149 | { | ||
3150 | struct bnx2_napi *bnapi = &bp->bnx2_napi[0]; | ||
3151 | u32 msi_ctrl; | ||
3152 | |||
3153 | if (bnx2_has_work(bnapi)) { | ||
3154 | msi_ctrl = REG_RD(bp, BNX2_PCICFG_MSI_CONTROL); | ||
3155 | if (!(msi_ctrl & BNX2_PCICFG_MSI_CONTROL_ENABLE)) | ||
3156 | return; | ||
3157 | |||
3158 | if (bnapi->last_status_idx == bp->idle_chk_status_idx) { | ||
3159 | REG_WR(bp, BNX2_PCICFG_MSI_CONTROL, msi_ctrl & | ||
3160 | ~BNX2_PCICFG_MSI_CONTROL_ENABLE); | ||
3161 | REG_WR(bp, BNX2_PCICFG_MSI_CONTROL, msi_ctrl); | ||
3162 | bnx2_msi(bp->irq_tbl[0].vector, bnapi); | ||
3163 | } | ||
3164 | } | ||
3165 | |||
3166 | bp->idle_chk_status_idx = bnapi->last_status_idx; | ||
3167 | } | ||
3168 | |||
3147 | static void bnx2_poll_link(struct bnx2 *bp, struct bnx2_napi *bnapi) | 3169 | static void bnx2_poll_link(struct bnx2 *bp, struct bnx2_napi *bnapi) |
3148 | { | 3170 | { |
3149 | struct status_block *sblk = bnapi->status_blk.msi; | 3171 | struct status_block *sblk = bnapi->status_blk.msi; |
@@ -3218,14 +3240,15 @@ static int bnx2_poll(struct napi_struct *napi, int budget) | |||
3218 | 3240 | ||
3219 | work_done = bnx2_poll_work(bp, bnapi, work_done, budget); | 3241 | work_done = bnx2_poll_work(bp, bnapi, work_done, budget); |
3220 | 3242 | ||
3221 | if (unlikely(work_done >= budget)) | ||
3222 | break; | ||
3223 | |||
3224 | /* bnapi->last_status_idx is used below to tell the hw how | 3243 | /* bnapi->last_status_idx is used below to tell the hw how |
3225 | * much work has been processed, so we must read it before | 3244 | * much work has been processed, so we must read it before |
3226 | * checking for more work. | 3245 | * checking for more work. |
3227 | */ | 3246 | */ |
3228 | bnapi->last_status_idx = sblk->status_idx; | 3247 | bnapi->last_status_idx = sblk->status_idx; |
3248 | |||
3249 | if (unlikely(work_done >= budget)) | ||
3250 | break; | ||
3251 | |||
3229 | rmb(); | 3252 | rmb(); |
3230 | if (likely(!bnx2_has_work(bnapi))) { | 3253 | if (likely(!bnx2_has_work(bnapi))) { |
3231 | netif_rx_complete(bp->dev, napi); | 3254 | netif_rx_complete(bp->dev, napi); |
@@ -4570,6 +4593,8 @@ bnx2_init_chip(struct bnx2 *bp) | |||
4570 | for (i = 0; i < BNX2_MAX_MSIX_VEC; i++) | 4593 | for (i = 0; i < BNX2_MAX_MSIX_VEC; i++) |
4571 | bp->bnx2_napi[i].last_status_idx = 0; | 4594 | bp->bnx2_napi[i].last_status_idx = 0; |
4572 | 4595 | ||
4596 | bp->idle_chk_status_idx = 0xffff; | ||
4597 | |||
4573 | bp->rx_mode = BNX2_EMAC_RX_MODE_SORT_MODE; | 4598 | bp->rx_mode = BNX2_EMAC_RX_MODE_SORT_MODE; |
4574 | 4599 | ||
4575 | /* Set up how to generate a link change interrupt. */ | 4600 | /* Set up how to generate a link change interrupt. */ |
@@ -5718,6 +5743,10 @@ bnx2_timer(unsigned long data) | |||
5718 | if (atomic_read(&bp->intr_sem) != 0) | 5743 | if (atomic_read(&bp->intr_sem) != 0) |
5719 | goto bnx2_restart_timer; | 5744 | goto bnx2_restart_timer; |
5720 | 5745 | ||
5746 | if ((bp->flags & (BNX2_FLAG_USING_MSI | BNX2_FLAG_ONE_SHOT_MSI)) == | ||
5747 | BNX2_FLAG_USING_MSI) | ||
5748 | bnx2_chk_missed_msi(bp); | ||
5749 | |||
5721 | bnx2_send_heart_beat(bp); | 5750 | bnx2_send_heart_beat(bp); |
5722 | 5751 | ||
5723 | bp->stats_blk->stat_FwRxDrop = | 5752 | bp->stats_blk->stat_FwRxDrop = |
diff --git a/drivers/net/bnx2.h b/drivers/net/bnx2.h index 617d95340160..0b032c3c7b61 100644 --- a/drivers/net/bnx2.h +++ b/drivers/net/bnx2.h | |||
@@ -378,6 +378,9 @@ struct l2_fhdr { | |||
378 | * pci_config_l definition | 378 | * pci_config_l definition |
379 | * offset: 0000 | 379 | * offset: 0000 |
380 | */ | 380 | */ |
381 | #define BNX2_PCICFG_MSI_CONTROL 0x00000058 | ||
382 | #define BNX2_PCICFG_MSI_CONTROL_ENABLE (1L<<16) | ||
383 | |||
381 | #define BNX2_PCICFG_MISC_CONFIG 0x00000068 | 384 | #define BNX2_PCICFG_MISC_CONFIG 0x00000068 |
382 | #define BNX2_PCICFG_MISC_CONFIG_TARGET_BYTE_SWAP (1L<<2) | 385 | #define BNX2_PCICFG_MISC_CONFIG_TARGET_BYTE_SWAP (1L<<2) |
383 | #define BNX2_PCICFG_MISC_CONFIG_TARGET_MB_WORD_SWAP (1L<<3) | 386 | #define BNX2_PCICFG_MISC_CONFIG_TARGET_MB_WORD_SWAP (1L<<3) |
@@ -6863,6 +6866,9 @@ struct bnx2 { | |||
6863 | 6866 | ||
6864 | u8 num_tx_rings; | 6867 | u8 num_tx_rings; |
6865 | u8 num_rx_rings; | 6868 | u8 num_rx_rings; |
6869 | |||
6870 | u32 idle_chk_status_idx; | ||
6871 | |||
6866 | }; | 6872 | }; |
6867 | 6873 | ||
6868 | #define REG_RD(bp, offset) \ | 6874 | #define REG_RD(bp, offset) \ |
diff --git a/drivers/net/enc28j60.c b/drivers/net/enc28j60.c index e1b441effbbe..c414554ac321 100644 --- a/drivers/net/enc28j60.c +++ b/drivers/net/enc28j60.c | |||
@@ -568,6 +568,17 @@ static u16 erxrdpt_workaround(u16 next_packet_ptr, u16 start, u16 end) | |||
568 | return erxrdpt; | 568 | return erxrdpt; |
569 | } | 569 | } |
570 | 570 | ||
571 | /* | ||
572 | * Calculate wrap around when reading beyond the end of the RX buffer | ||
573 | */ | ||
574 | static u16 rx_packet_start(u16 ptr) | ||
575 | { | ||
576 | if (ptr + RSV_SIZE > RXEND_INIT) | ||
577 | return (ptr + RSV_SIZE) - (RXEND_INIT - RXSTART_INIT + 1); | ||
578 | else | ||
579 | return ptr + RSV_SIZE; | ||
580 | } | ||
581 | |||
571 | static void nolock_rxfifo_init(struct enc28j60_net *priv, u16 start, u16 end) | 582 | static void nolock_rxfifo_init(struct enc28j60_net *priv, u16 start, u16 end) |
572 | { | 583 | { |
573 | u16 erxrdpt; | 584 | u16 erxrdpt; |
@@ -938,8 +949,9 @@ static void enc28j60_hw_rx(struct net_device *ndev) | |||
938 | skb->dev = ndev; | 949 | skb->dev = ndev; |
939 | skb_reserve(skb, NET_IP_ALIGN); | 950 | skb_reserve(skb, NET_IP_ALIGN); |
940 | /* copy the packet from the receive buffer */ | 951 | /* copy the packet from the receive buffer */ |
941 | enc28j60_mem_read(priv, priv->next_pk_ptr + sizeof(rsv), | 952 | enc28j60_mem_read(priv, |
942 | len, skb_put(skb, len)); | 953 | rx_packet_start(priv->next_pk_ptr), |
954 | len, skb_put(skb, len)); | ||
943 | if (netif_msg_pktdata(priv)) | 955 | if (netif_msg_pktdata(priv)) |
944 | dump_packet(__func__, skb->len, skb->data); | 956 | dump_packet(__func__, skb->len, skb->data); |
945 | skb->protocol = eth_type_trans(skb, ndev); | 957 | skb->protocol = eth_type_trans(skb, ndev); |
diff --git a/drivers/net/netx-eth.c b/drivers/net/netx-eth.c index b9bed82e1d21..b289a0a2b945 100644 --- a/drivers/net/netx-eth.c +++ b/drivers/net/netx-eth.c | |||
@@ -401,6 +401,8 @@ static int netx_eth_drv_probe(struct platform_device *pdev) | |||
401 | priv->xmac_base = priv->xc->xmac_base; | 401 | priv->xmac_base = priv->xc->xmac_base; |
402 | priv->sram_base = priv->xc->sram_base; | 402 | priv->sram_base = priv->xc->sram_base; |
403 | 403 | ||
404 | spin_lock_init(&priv->lock); | ||
405 | |||
404 | ret = pfifo_request(PFIFO_MASK(priv->id)); | 406 | ret = pfifo_request(PFIFO_MASK(priv->id)); |
405 | if (ret) { | 407 | if (ret) { |
406 | printk("unable to request PFIFO\n"); | 408 | printk("unable to request PFIFO\n"); |
diff --git a/drivers/net/wireless/ipw2200.c b/drivers/net/wireless/ipw2200.c index dcce3542d5a7..7a9f901d4ff6 100644 --- a/drivers/net/wireless/ipw2200.c +++ b/drivers/net/wireless/ipw2200.c | |||
@@ -3897,6 +3897,7 @@ static int ipw_disassociate(void *data) | |||
3897 | if (!(priv->status & (STATUS_ASSOCIATED | STATUS_ASSOCIATING))) | 3897 | if (!(priv->status & (STATUS_ASSOCIATED | STATUS_ASSOCIATING))) |
3898 | return 0; | 3898 | return 0; |
3899 | ipw_send_disassociate(data, 0); | 3899 | ipw_send_disassociate(data, 0); |
3900 | netif_carrier_off(priv->net_dev); | ||
3900 | return 1; | 3901 | return 1; |
3901 | } | 3902 | } |
3902 | 3903 | ||
@@ -10190,6 +10191,9 @@ static int ipw_tx_skb(struct ipw_priv *priv, struct ieee80211_txb *txb, | |||
10190 | u16 remaining_bytes; | 10191 | u16 remaining_bytes; |
10191 | int fc; | 10192 | int fc; |
10192 | 10193 | ||
10194 | if (!(priv->status & STATUS_ASSOCIATED)) | ||
10195 | goto drop; | ||
10196 | |||
10193 | hdr_len = ieee80211_get_hdrlen(le16_to_cpu(hdr->frame_ctl)); | 10197 | hdr_len = ieee80211_get_hdrlen(le16_to_cpu(hdr->frame_ctl)); |
10194 | switch (priv->ieee->iw_mode) { | 10198 | switch (priv->ieee->iw_mode) { |
10195 | case IW_MODE_ADHOC: | 10199 | case IW_MODE_ADHOC: |
diff --git a/drivers/net/wireless/iwlwifi/iwl-core.c b/drivers/net/wireless/iwlwifi/iwl-core.c index 4c312c55f90c..01a845851338 100644 --- a/drivers/net/wireless/iwlwifi/iwl-core.c +++ b/drivers/net/wireless/iwlwifi/iwl-core.c | |||
@@ -290,6 +290,9 @@ void iwl_clear_stations_table(struct iwl_priv *priv) | |||
290 | priv->num_stations = 0; | 290 | priv->num_stations = 0; |
291 | memset(priv->stations, 0, sizeof(priv->stations)); | 291 | memset(priv->stations, 0, sizeof(priv->stations)); |
292 | 292 | ||
293 | /* clean ucode key table bit map */ | ||
294 | priv->ucode_key_table = 0; | ||
295 | |||
293 | spin_unlock_irqrestore(&priv->sta_lock, flags); | 296 | spin_unlock_irqrestore(&priv->sta_lock, flags); |
294 | } | 297 | } |
295 | EXPORT_SYMBOL(iwl_clear_stations_table); | 298 | EXPORT_SYMBOL(iwl_clear_stations_table); |
diff --git a/drivers/net/wireless/iwlwifi/iwl-sta.c b/drivers/net/wireless/iwlwifi/iwl-sta.c index 61797f3f8d5c..26f7084d3011 100644 --- a/drivers/net/wireless/iwlwifi/iwl-sta.c +++ b/drivers/net/wireless/iwlwifi/iwl-sta.c | |||
@@ -475,7 +475,7 @@ static int iwl_get_free_ucode_key_index(struct iwl_priv *priv) | |||
475 | if (!test_and_set_bit(i, &priv->ucode_key_table)) | 475 | if (!test_and_set_bit(i, &priv->ucode_key_table)) |
476 | return i; | 476 | return i; |
477 | 477 | ||
478 | return -1; | 478 | return WEP_INVALID_OFFSET; |
479 | } | 479 | } |
480 | 480 | ||
481 | int iwl_send_static_wepkey_cmd(struct iwl_priv *priv, u8 send_if_empty) | 481 | int iwl_send_static_wepkey_cmd(struct iwl_priv *priv, u8 send_if_empty) |
@@ -620,6 +620,9 @@ static int iwl_set_wep_dynamic_key_info(struct iwl_priv *priv, | |||
620 | /* else, we are overriding an existing key => no need to allocated room | 620 | /* else, we are overriding an existing key => no need to allocated room |
621 | * in uCode. */ | 621 | * in uCode. */ |
622 | 622 | ||
623 | WARN(priv->stations[sta_id].sta.key.key_offset == WEP_INVALID_OFFSET, | ||
624 | "no space for new kew"); | ||
625 | |||
623 | priv->stations[sta_id].sta.key.key_flags = key_flags; | 626 | priv->stations[sta_id].sta.key.key_flags = key_flags; |
624 | priv->stations[sta_id].sta.sta.modify_mask = STA_MODIFY_KEY_MASK; | 627 | priv->stations[sta_id].sta.sta.modify_mask = STA_MODIFY_KEY_MASK; |
625 | priv->stations[sta_id].sta.mode = STA_CONTROL_MODIFY_MSK; | 628 | priv->stations[sta_id].sta.mode = STA_CONTROL_MODIFY_MSK; |
@@ -637,6 +640,7 @@ static int iwl_set_ccmp_dynamic_key_info(struct iwl_priv *priv, | |||
637 | { | 640 | { |
638 | unsigned long flags; | 641 | unsigned long flags; |
639 | __le16 key_flags = 0; | 642 | __le16 key_flags = 0; |
643 | int ret; | ||
640 | 644 | ||
641 | key_flags |= (STA_KEY_FLG_CCMP | STA_KEY_FLG_MAP_KEY_MSK); | 645 | key_flags |= (STA_KEY_FLG_CCMP | STA_KEY_FLG_MAP_KEY_MSK); |
642 | key_flags |= cpu_to_le16(keyconf->keyidx << STA_KEY_FLG_KEYID_POS); | 646 | key_flags |= cpu_to_le16(keyconf->keyidx << STA_KEY_FLG_KEYID_POS); |
@@ -664,14 +668,18 @@ static int iwl_set_ccmp_dynamic_key_info(struct iwl_priv *priv, | |||
664 | /* else, we are overriding an existing key => no need to allocated room | 668 | /* else, we are overriding an existing key => no need to allocated room |
665 | * in uCode. */ | 669 | * in uCode. */ |
666 | 670 | ||
671 | WARN(priv->stations[sta_id].sta.key.key_offset == WEP_INVALID_OFFSET, | ||
672 | "no space for new kew"); | ||
673 | |||
667 | priv->stations[sta_id].sta.key.key_flags = key_flags; | 674 | priv->stations[sta_id].sta.key.key_flags = key_flags; |
668 | priv->stations[sta_id].sta.sta.modify_mask = STA_MODIFY_KEY_MASK; | 675 | priv->stations[sta_id].sta.sta.modify_mask = STA_MODIFY_KEY_MASK; |
669 | priv->stations[sta_id].sta.mode = STA_CONTROL_MODIFY_MSK; | 676 | priv->stations[sta_id].sta.mode = STA_CONTROL_MODIFY_MSK; |
670 | 677 | ||
678 | ret = iwl_send_add_sta(priv, &priv->stations[sta_id].sta, CMD_ASYNC); | ||
679 | |||
671 | spin_unlock_irqrestore(&priv->sta_lock, flags); | 680 | spin_unlock_irqrestore(&priv->sta_lock, flags); |
672 | 681 | ||
673 | IWL_DEBUG_INFO("hwcrypto: modify ucode station key info\n"); | 682 | return ret; |
674 | return iwl_send_add_sta(priv, &priv->stations[sta_id].sta, CMD_ASYNC); | ||
675 | } | 683 | } |
676 | 684 | ||
677 | static int iwl_set_tkip_dynamic_key_info(struct iwl_priv *priv, | 685 | static int iwl_set_tkip_dynamic_key_info(struct iwl_priv *priv, |
@@ -696,6 +704,9 @@ static int iwl_set_tkip_dynamic_key_info(struct iwl_priv *priv, | |||
696 | /* else, we are overriding an existing key => no need to allocated room | 704 | /* else, we are overriding an existing key => no need to allocated room |
697 | * in uCode. */ | 705 | * in uCode. */ |
698 | 706 | ||
707 | WARN(priv->stations[sta_id].sta.key.key_offset == WEP_INVALID_OFFSET, | ||
708 | "no space for new kew"); | ||
709 | |||
699 | /* This copy is acutally not needed: we get the key with each TX */ | 710 | /* This copy is acutally not needed: we get the key with each TX */ |
700 | memcpy(priv->stations[sta_id].keyinfo.key, keyconf->key, 16); | 711 | memcpy(priv->stations[sta_id].keyinfo.key, keyconf->key, 16); |
701 | 712 | ||
@@ -734,6 +745,13 @@ int iwl_remove_dynamic_key(struct iwl_priv *priv, | |||
734 | return 0; | 745 | return 0; |
735 | } | 746 | } |
736 | 747 | ||
748 | if (priv->stations[sta_id].sta.key.key_offset == WEP_INVALID_OFFSET) { | ||
749 | IWL_WARNING("Removing wrong key %d 0x%x\n", | ||
750 | keyconf->keyidx, key_flags); | ||
751 | spin_unlock_irqrestore(&priv->sta_lock, flags); | ||
752 | return 0; | ||
753 | } | ||
754 | |||
737 | if (!test_and_clear_bit(priv->stations[sta_id].sta.key.key_offset, | 755 | if (!test_and_clear_bit(priv->stations[sta_id].sta.key.key_offset, |
738 | &priv->ucode_key_table)) | 756 | &priv->ucode_key_table)) |
739 | IWL_ERROR("index %d not used in uCode key table.\n", | 757 | IWL_ERROR("index %d not used in uCode key table.\n", |
diff --git a/drivers/net/wireless/zd1211rw/zd_mac.c b/drivers/net/wireless/zd1211rw/zd_mac.c index fe1867b25ff7..cac732f4047f 100644 --- a/drivers/net/wireless/zd1211rw/zd_mac.c +++ b/drivers/net/wireless/zd1211rw/zd_mac.c | |||
@@ -615,7 +615,7 @@ static int filter_ack(struct ieee80211_hw *hw, struct ieee80211_hdr *rx_hdr, | |||
615 | struct ieee80211_hdr *tx_hdr; | 615 | struct ieee80211_hdr *tx_hdr; |
616 | 616 | ||
617 | tx_hdr = (struct ieee80211_hdr *)skb->data; | 617 | tx_hdr = (struct ieee80211_hdr *)skb->data; |
618 | if (likely(!compare_ether_addr(tx_hdr->addr2, rx_hdr->addr1))) | 618 | if (likely(!memcmp(tx_hdr->addr2, rx_hdr->addr1, ETH_ALEN))) |
619 | { | 619 | { |
620 | __skb_unlink(skb, q); | 620 | __skb_unlink(skb, q); |
621 | tx_status(hw, skb, IEEE80211_TX_STAT_ACK, stats->signal, 1); | 621 | tx_status(hw, skb, IEEE80211_TX_STAT_ACK, stats->signal, 1); |
diff --git a/drivers/pci/pcie/aspm.c b/drivers/pci/pcie/aspm.c index 8f63f4c6b85f..9aad608bcf3f 100644 --- a/drivers/pci/pcie/aspm.c +++ b/drivers/pci/pcie/aspm.c | |||
@@ -16,6 +16,7 @@ | |||
16 | #include <linux/pm.h> | 16 | #include <linux/pm.h> |
17 | #include <linux/init.h> | 17 | #include <linux/init.h> |
18 | #include <linux/slab.h> | 18 | #include <linux/slab.h> |
19 | #include <linux/jiffies.h> | ||
19 | #include <linux/pci-aspm.h> | 20 | #include <linux/pci-aspm.h> |
20 | #include "../pci.h" | 21 | #include "../pci.h" |
21 | 22 | ||
@@ -161,11 +162,12 @@ static void pcie_check_clock_pm(struct pci_dev *pdev) | |||
161 | */ | 162 | */ |
162 | static void pcie_aspm_configure_common_clock(struct pci_dev *pdev) | 163 | static void pcie_aspm_configure_common_clock(struct pci_dev *pdev) |
163 | { | 164 | { |
164 | int pos, child_pos; | 165 | int pos, child_pos, i = 0; |
165 | u16 reg16 = 0; | 166 | u16 reg16 = 0; |
166 | struct pci_dev *child_dev; | 167 | struct pci_dev *child_dev; |
167 | int same_clock = 1; | 168 | int same_clock = 1; |
168 | 169 | unsigned long start_jiffies; | |
170 | u16 child_regs[8], parent_reg; | ||
169 | /* | 171 | /* |
170 | * all functions of a slot should have the same Slot Clock | 172 | * all functions of a slot should have the same Slot Clock |
171 | * Configuration, so just check one function | 173 | * Configuration, so just check one function |
@@ -191,16 +193,19 @@ static void pcie_aspm_configure_common_clock(struct pci_dev *pdev) | |||
191 | child_pos = pci_find_capability(child_dev, PCI_CAP_ID_EXP); | 193 | child_pos = pci_find_capability(child_dev, PCI_CAP_ID_EXP); |
192 | pci_read_config_word(child_dev, child_pos + PCI_EXP_LNKCTL, | 194 | pci_read_config_word(child_dev, child_pos + PCI_EXP_LNKCTL, |
193 | ®16); | 195 | ®16); |
196 | child_regs[i] = reg16; | ||
194 | if (same_clock) | 197 | if (same_clock) |
195 | reg16 |= PCI_EXP_LNKCTL_CCC; | 198 | reg16 |= PCI_EXP_LNKCTL_CCC; |
196 | else | 199 | else |
197 | reg16 &= ~PCI_EXP_LNKCTL_CCC; | 200 | reg16 &= ~PCI_EXP_LNKCTL_CCC; |
198 | pci_write_config_word(child_dev, child_pos + PCI_EXP_LNKCTL, | 201 | pci_write_config_word(child_dev, child_pos + PCI_EXP_LNKCTL, |
199 | reg16); | 202 | reg16); |
203 | i++; | ||
200 | } | 204 | } |
201 | 205 | ||
202 | /* Configure upstream component */ | 206 | /* Configure upstream component */ |
203 | pci_read_config_word(pdev, pos + PCI_EXP_LNKCTL, ®16); | 207 | pci_read_config_word(pdev, pos + PCI_EXP_LNKCTL, ®16); |
208 | parent_reg = reg16; | ||
204 | if (same_clock) | 209 | if (same_clock) |
205 | reg16 |= PCI_EXP_LNKCTL_CCC; | 210 | reg16 |= PCI_EXP_LNKCTL_CCC; |
206 | else | 211 | else |
@@ -212,12 +217,30 @@ static void pcie_aspm_configure_common_clock(struct pci_dev *pdev) | |||
212 | pci_write_config_word(pdev, pos + PCI_EXP_LNKCTL, reg16); | 217 | pci_write_config_word(pdev, pos + PCI_EXP_LNKCTL, reg16); |
213 | 218 | ||
214 | /* Wait for link training end */ | 219 | /* Wait for link training end */ |
215 | while (1) { | 220 | /* break out after waiting for 1 second */ |
221 | start_jiffies = jiffies; | ||
222 | while ((jiffies - start_jiffies) < HZ) { | ||
216 | pci_read_config_word(pdev, pos + PCI_EXP_LNKSTA, ®16); | 223 | pci_read_config_word(pdev, pos + PCI_EXP_LNKSTA, ®16); |
217 | if (!(reg16 & PCI_EXP_LNKSTA_LT)) | 224 | if (!(reg16 & PCI_EXP_LNKSTA_LT)) |
218 | break; | 225 | break; |
219 | cpu_relax(); | 226 | cpu_relax(); |
220 | } | 227 | } |
228 | /* training failed -> recover */ | ||
229 | if ((jiffies - start_jiffies) >= HZ) { | ||
230 | dev_printk (KERN_ERR, &pdev->dev, "ASPM: Could not configure" | ||
231 | " common clock\n"); | ||
232 | i = 0; | ||
233 | list_for_each_entry(child_dev, &pdev->subordinate->devices, | ||
234 | bus_list) { | ||
235 | child_pos = pci_find_capability(child_dev, | ||
236 | PCI_CAP_ID_EXP); | ||
237 | pci_write_config_word(child_dev, | ||
238 | child_pos + PCI_EXP_LNKCTL, | ||
239 | child_regs[i]); | ||
240 | i++; | ||
241 | } | ||
242 | pci_write_config_word(pdev, pos + PCI_EXP_LNKCTL, parent_reg); | ||
243 | } | ||
221 | } | 244 | } |
222 | 245 | ||
223 | /* | 246 | /* |
diff --git a/drivers/pci/slot.c b/drivers/pci/slot.c index 4dd1c3e157ae..5a8ccb4f604d 100644 --- a/drivers/pci/slot.c +++ b/drivers/pci/slot.c | |||
@@ -253,6 +253,7 @@ placeholder: | |||
253 | __func__, pci_domain_nr(parent), parent->number, slot_nr); | 253 | __func__, pci_domain_nr(parent), parent->number, slot_nr); |
254 | 254 | ||
255 | out: | 255 | out: |
256 | kfree(slot_name); | ||
256 | up_write(&pci_bus_sem); | 257 | up_write(&pci_bus_sem); |
257 | return slot; | 258 | return slot; |
258 | err: | 259 | err: |
diff --git a/drivers/rtc/rtc-ds1672.c b/drivers/rtc/rtc-ds1672.c index 341d7a5b45a2..4e91419e8911 100644 --- a/drivers/rtc/rtc-ds1672.c +++ b/drivers/rtc/rtc-ds1672.c | |||
@@ -209,12 +209,18 @@ static int ds1672_probe(struct i2c_client *client, | |||
209 | return err; | 209 | return err; |
210 | } | 210 | } |
211 | 211 | ||
212 | static struct i2c_device_id ds1672_id[] = { | ||
213 | { "ds1672", 0 }, | ||
214 | { } | ||
215 | }; | ||
216 | |||
212 | static struct i2c_driver ds1672_driver = { | 217 | static struct i2c_driver ds1672_driver = { |
213 | .driver = { | 218 | .driver = { |
214 | .name = "rtc-ds1672", | 219 | .name = "rtc-ds1672", |
215 | }, | 220 | }, |
216 | .probe = &ds1672_probe, | 221 | .probe = &ds1672_probe, |
217 | .remove = &ds1672_remove, | 222 | .remove = &ds1672_remove, |
223 | .id_table = ds1672_id, | ||
218 | }; | 224 | }; |
219 | 225 | ||
220 | static int __init ds1672_init(void) | 226 | static int __init ds1672_init(void) |
diff --git a/drivers/rtc/rtc-max6900.c b/drivers/rtc/rtc-max6900.c index 80782798763f..a4f6665ab3c5 100644 --- a/drivers/rtc/rtc-max6900.c +++ b/drivers/rtc/rtc-max6900.c | |||
@@ -247,12 +247,18 @@ max6900_probe(struct i2c_client *client, const struct i2c_device_id *id) | |||
247 | return 0; | 247 | return 0; |
248 | } | 248 | } |
249 | 249 | ||
250 | static struct i2c_device_id max6900_id[] = { | ||
251 | { "max6900", 0 }, | ||
252 | { } | ||
253 | }; | ||
254 | |||
250 | static struct i2c_driver max6900_driver = { | 255 | static struct i2c_driver max6900_driver = { |
251 | .driver = { | 256 | .driver = { |
252 | .name = "rtc-max6900", | 257 | .name = "rtc-max6900", |
253 | }, | 258 | }, |
254 | .probe = max6900_probe, | 259 | .probe = max6900_probe, |
255 | .remove = max6900_remove, | 260 | .remove = max6900_remove, |
261 | .id_table = max6900_id, | ||
256 | }; | 262 | }; |
257 | 263 | ||
258 | static int __init max6900_init(void) | 264 | static int __init max6900_init(void) |
diff --git a/drivers/rtc/rtc-twl4030.c b/drivers/rtc/rtc-twl4030.c index abe87a4d2665..01d8da9afdc8 100644 --- a/drivers/rtc/rtc-twl4030.c +++ b/drivers/rtc/rtc-twl4030.c | |||
@@ -337,7 +337,7 @@ static int twl4030_rtc_ioctl(struct device *dev, unsigned int cmd, | |||
337 | } | 337 | } |
338 | 338 | ||
339 | #else | 339 | #else |
340 | #define omap_rtc_ioctl NULL | 340 | #define twl4030_rtc_ioctl NULL |
341 | #endif | 341 | #endif |
342 | 342 | ||
343 | static irqreturn_t twl4030_rtc_interrupt(int irq, void *rtc) | 343 | static irqreturn_t twl4030_rtc_interrupt(int irq, void *rtc) |
diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c index c9e1242eaf25..5081b3981d3c 100644 --- a/drivers/scsi/sd.c +++ b/drivers/scsi/sd.c | |||
@@ -757,7 +757,7 @@ static int sd_ioctl(struct block_device *bdev, fmode_t mode, | |||
757 | * access to the device is prohibited. | 757 | * access to the device is prohibited. |
758 | */ | 758 | */ |
759 | error = scsi_nonblockable_ioctl(sdp, cmd, p, | 759 | error = scsi_nonblockable_ioctl(sdp, cmd, p, |
760 | (mode & FMODE_NDELAY_NOW) != 0); | 760 | (mode & FMODE_NDELAY) != 0); |
761 | if (!scsi_block_when_processing_errors(sdp) || !error) | 761 | if (!scsi_block_when_processing_errors(sdp) || !error) |
762 | return error; | 762 | return error; |
763 | 763 | ||
diff --git a/drivers/scsi/sr.c b/drivers/scsi/sr.c index 62b6633e3a97..45b66b98a516 100644 --- a/drivers/scsi/sr.c +++ b/drivers/scsi/sr.c | |||
@@ -521,7 +521,7 @@ static int sr_block_ioctl(struct block_device *bdev, fmode_t mode, unsigned cmd, | |||
521 | * if it doesn't recognise the ioctl | 521 | * if it doesn't recognise the ioctl |
522 | */ | 522 | */ |
523 | ret = scsi_nonblockable_ioctl(sdev, cmd, argp, | 523 | ret = scsi_nonblockable_ioctl(sdev, cmd, argp, |
524 | (mode & FMODE_NDELAY_NOW) != 0); | 524 | (mode & FMODE_NDELAY) != 0); |
525 | if (ret != -ENODEV) | 525 | if (ret != -ENODEV) |
526 | return ret; | 526 | return ret; |
527 | return scsi_ioctl(sdev, cmd, argp); | 527 | return scsi_ioctl(sdev, cmd, argp); |
diff --git a/drivers/serial/ioc3_serial.c b/drivers/serial/ioc3_serial.c index 6dd98f9fb89c..ae3699d77dd0 100644 --- a/drivers/serial/ioc3_serial.c +++ b/drivers/serial/ioc3_serial.c | |||
@@ -2149,7 +2149,7 @@ out4: | |||
2149 | return ret; | 2149 | return ret; |
2150 | } | 2150 | } |
2151 | 2151 | ||
2152 | static struct ioc3_submodule ioc3uart_submodule = { | 2152 | static struct ioc3_submodule ioc3uart_ops = { |
2153 | .name = "IOC3uart", | 2153 | .name = "IOC3uart", |
2154 | .probe = ioc3uart_probe, | 2154 | .probe = ioc3uart_probe, |
2155 | .remove = ioc3uart_remove, | 2155 | .remove = ioc3uart_remove, |
@@ -2173,7 +2173,7 @@ static int __devinit ioc3uart_init(void) | |||
2173 | __func__); | 2173 | __func__); |
2174 | return ret; | 2174 | return ret; |
2175 | } | 2175 | } |
2176 | ret = ioc3_register_submodule(&ioc3uart_submodule); | 2176 | ret = ioc3_register_submodule(&ioc3uart_ops); |
2177 | if (ret) | 2177 | if (ret) |
2178 | uart_unregister_driver(&ioc3_uart); | 2178 | uart_unregister_driver(&ioc3_uart); |
2179 | return ret; | 2179 | return ret; |
@@ -2181,7 +2181,7 @@ static int __devinit ioc3uart_init(void) | |||
2181 | 2181 | ||
2182 | static void __devexit ioc3uart_exit(void) | 2182 | static void __devexit ioc3uart_exit(void) |
2183 | { | 2183 | { |
2184 | ioc3_unregister_submodule(&ioc3uart_submodule); | 2184 | ioc3_unregister_submodule(&ioc3uart_ops); |
2185 | uart_unregister_driver(&ioc3_uart); | 2185 | uart_unregister_driver(&ioc3_uart); |
2186 | } | 2186 | } |
2187 | 2187 | ||
diff --git a/drivers/serial/mpc52xx_uart.c b/drivers/serial/mpc52xx_uart.c index 6117d3db0b66..28c00c3d58f5 100644 --- a/drivers/serial/mpc52xx_uart.c +++ b/drivers/serial/mpc52xx_uart.c | |||
@@ -591,8 +591,8 @@ mpc52xx_uart_set_termios(struct uart_port *port, struct ktermios *new, | |||
591 | /* Update the per-port timeout */ | 591 | /* Update the per-port timeout */ |
592 | uart_update_timeout(port, new->c_cflag, baud); | 592 | uart_update_timeout(port, new->c_cflag, baud); |
593 | 593 | ||
594 | /* Do our best to flush TX & RX, so we don't loose anything */ | 594 | /* Do our best to flush TX & RX, so we don't lose anything */ |
595 | /* But we don't wait indefinitly ! */ | 595 | /* But we don't wait indefinitely ! */ |
596 | j = 5000000; /* Maximum wait */ | 596 | j = 5000000; /* Maximum wait */ |
597 | /* FIXME Can't receive chars since set_termios might be called at early | 597 | /* FIXME Can't receive chars since set_termios might be called at early |
598 | * boot for the console, all stuff is not yet ready to receive at that | 598 | * boot for the console, all stuff is not yet ready to receive at that |
diff --git a/drivers/serial/s3c2440.c b/drivers/serial/s3c2440.c index 317d239ab740..29cbb0afef8e 100644 --- a/drivers/serial/s3c2440.c +++ b/drivers/serial/s3c2440.c | |||
@@ -177,5 +177,5 @@ module_exit(s3c2440_serial_exit); | |||
177 | 177 | ||
178 | MODULE_DESCRIPTION("Samsung S3C2440,S3C2442 SoC Serial port driver"); | 178 | MODULE_DESCRIPTION("Samsung S3C2440,S3C2442 SoC Serial port driver"); |
179 | MODULE_AUTHOR("Ben Dooks <ben@simtec.co.uk>"); | 179 | MODULE_AUTHOR("Ben Dooks <ben@simtec.co.uk>"); |
180 | MODULE_LICENSE("GPLi v2"); | 180 | MODULE_LICENSE("GPL v2"); |
181 | MODULE_ALIAS("platform:s3c2440-uart"); | 181 | MODULE_ALIAS("platform:s3c2440-uart"); |
diff --git a/drivers/usb/serial/ftdi_sio.c b/drivers/usb/serial/ftdi_sio.c index 51d7bdea2869..aad1359a3eb1 100644 --- a/drivers/usb/serial/ftdi_sio.c +++ b/drivers/usb/serial/ftdi_sio.c | |||
@@ -1498,7 +1498,7 @@ static int ftdi_open(struct tty_struct *tty, | |||
1498 | priv->interface, buf, 0, WDR_TIMEOUT); | 1498 | priv->interface, buf, 0, WDR_TIMEOUT); |
1499 | 1499 | ||
1500 | /* Termios defaults are set by usb_serial_init. We don't change | 1500 | /* Termios defaults are set by usb_serial_init. We don't change |
1501 | port->tty->termios - this would loose speed settings, etc. | 1501 | port->tty->termios - this would lose speed settings, etc. |
1502 | This is same behaviour as serial.c/rs_open() - Kuba */ | 1502 | This is same behaviour as serial.c/rs_open() - Kuba */ |
1503 | 1503 | ||
1504 | /* ftdi_set_termios will send usb control messages */ | 1504 | /* ftdi_set_termios will send usb control messages */ |
diff --git a/drivers/video/aty/radeon_accel.c b/drivers/video/aty/radeon_accel.c index a547e5d4c8bf..8da5e5ab8547 100644 --- a/drivers/video/aty/radeon_accel.c +++ b/drivers/video/aty/radeon_accel.c | |||
@@ -256,7 +256,8 @@ void radeonfb_imageblit(struct fb_info *info, const struct fb_image *image) | |||
256 | return; | 256 | return; |
257 | 257 | ||
258 | /* We only do 1 bpp color expansion for now */ | 258 | /* We only do 1 bpp color expansion for now */ |
259 | if (info->flags & FBINFO_HWACCEL_DISABLED || image->depth != 1) | 259 | if (!accel_cexp || |
260 | (info->flags & FBINFO_HWACCEL_DISABLED) || image->depth != 1) | ||
260 | goto fallback; | 261 | goto fallback; |
261 | 262 | ||
262 | /* Fallback if running out of the screen. We may do clipping | 263 | /* Fallback if running out of the screen. We may do clipping |
diff --git a/drivers/video/aty/radeon_base.c b/drivers/video/aty/radeon_base.c index b3ffe8205d2b..d5b27f9d374d 100644 --- a/drivers/video/aty/radeon_base.c +++ b/drivers/video/aty/radeon_base.c | |||
@@ -282,6 +282,8 @@ static int backlight = 1; | |||
282 | static int backlight = 0; | 282 | static int backlight = 0; |
283 | #endif | 283 | #endif |
284 | 284 | ||
285 | int accel_cexp = 0; | ||
286 | |||
285 | /* | 287 | /* |
286 | * prototypes | 288 | * prototypes |
287 | */ | 289 | */ |
@@ -2520,6 +2522,8 @@ static int __init radeonfb_setup (char *options) | |||
2520 | } else if (!strncmp(this_opt, "ignore_devlist", 14)) { | 2522 | } else if (!strncmp(this_opt, "ignore_devlist", 14)) { |
2521 | ignore_devlist = 1; | 2523 | ignore_devlist = 1; |
2522 | #endif | 2524 | #endif |
2525 | } else if (!strncmp(this_opt, "accel_cexp", 12)) { | ||
2526 | accel_cexp = 1; | ||
2523 | } else | 2527 | } else |
2524 | mode_option = this_opt; | 2528 | mode_option = this_opt; |
2525 | } | 2529 | } |
@@ -2567,6 +2571,8 @@ module_param(monitor_layout, charp, 0); | |||
2567 | MODULE_PARM_DESC(monitor_layout, "Specify monitor mapping (like XFree86)"); | 2571 | MODULE_PARM_DESC(monitor_layout, "Specify monitor mapping (like XFree86)"); |
2568 | module_param(force_measure_pll, bool, 0); | 2572 | module_param(force_measure_pll, bool, 0); |
2569 | MODULE_PARM_DESC(force_measure_pll, "Force measurement of PLL (debug)"); | 2573 | MODULE_PARM_DESC(force_measure_pll, "Force measurement of PLL (debug)"); |
2574 | module_param(accel_cexp, bool, 0); | ||
2575 | MODULE_PARM_DESC(accel_cexp, "Use acceleration engine for color expansion"); | ||
2570 | #ifdef CONFIG_MTRR | 2576 | #ifdef CONFIG_MTRR |
2571 | module_param(nomtrr, bool, 0); | 2577 | module_param(nomtrr, bool, 0); |
2572 | MODULE_PARM_DESC(nomtrr, "bool: disable use of MTRR registers"); | 2578 | MODULE_PARM_DESC(nomtrr, "bool: disable use of MTRR registers"); |
diff --git a/drivers/video/aty/radeonfb.h b/drivers/video/aty/radeonfb.h index ea0b5b47acaf..974ca6d86540 100644 --- a/drivers/video/aty/radeonfb.h +++ b/drivers/video/aty/radeonfb.h | |||
@@ -638,4 +638,6 @@ static inline void radeonfb_bl_init(struct radeonfb_info *rinfo) {} | |||
638 | static inline void radeonfb_bl_exit(struct radeonfb_info *rinfo) {} | 638 | static inline void radeonfb_bl_exit(struct radeonfb_info *rinfo) {} |
639 | #endif | 639 | #endif |
640 | 640 | ||
641 | extern int accel_cexp; | ||
642 | |||
641 | #endif /* __RADEONFB_H__ */ | 643 | #endif /* __RADEONFB_H__ */ |
diff --git a/drivers/video/console/fbcon.c b/drivers/video/console/fbcon.c index 67ff370d80af..0b2adefe9e3d 100644 --- a/drivers/video/console/fbcon.c +++ b/drivers/video/console/fbcon.c | |||
@@ -3531,12 +3531,18 @@ static void fbcon_exit(void) | |||
3531 | softback_buf = 0UL; | 3531 | softback_buf = 0UL; |
3532 | 3532 | ||
3533 | for (i = 0; i < FB_MAX; i++) { | 3533 | for (i = 0; i < FB_MAX; i++) { |
3534 | int pending; | ||
3535 | |||
3534 | mapped = 0; | 3536 | mapped = 0; |
3535 | info = registered_fb[i]; | 3537 | info = registered_fb[i]; |
3536 | 3538 | ||
3537 | if (info == NULL) | 3539 | if (info == NULL) |
3538 | continue; | 3540 | continue; |
3539 | 3541 | ||
3542 | pending = cancel_work_sync(&info->queue); | ||
3543 | DPRINTK("fbcon: %s pending work\n", (pending ? "canceled" : | ||
3544 | "no")); | ||
3545 | |||
3540 | for (j = first_fb_vc; j <= last_fb_vc; j++) { | 3546 | for (j = first_fb_vc; j <= last_fb_vc; j++) { |
3541 | if (con2fb_map[j] == i) | 3547 | if (con2fb_map[j] == i) |
3542 | mapped = 1; | 3548 | mapped = 1; |
diff --git a/drivers/video/mb862xx/mb862xxfb.c b/drivers/video/mb862xx/mb862xxfb.c index 38718d95fbb9..fb64234a3825 100644 --- a/drivers/video/mb862xx/mb862xxfb.c +++ b/drivers/video/mb862xx/mb862xxfb.c | |||
@@ -927,9 +927,9 @@ static int __devinit mb862xx_pci_probe(struct pci_dev *pdev, | |||
927 | } | 927 | } |
928 | 928 | ||
929 | dev_dbg(dev, "fb phys 0x%llx 0x%lx\n", | 929 | dev_dbg(dev, "fb phys 0x%llx 0x%lx\n", |
930 | (u64)par->fb_base_phys, (ulong)par->mapped_vram); | 930 | (unsigned long long)par->fb_base_phys, (ulong)par->mapped_vram); |
931 | dev_dbg(dev, "mmio phys 0x%llx 0x%lx\n", | 931 | dev_dbg(dev, "mmio phys 0x%llx 0x%lx\n", |
932 | (u64)par->mmio_base_phys, (ulong)par->mmio_len); | 932 | (unsigned long long)par->mmio_base_phys, (ulong)par->mmio_len); |
933 | 933 | ||
934 | if (mb862xx_pci_gdc_init(par)) | 934 | if (mb862xx_pci_gdc_init(par)) |
935 | goto io_unmap; | 935 | goto io_unmap; |
diff --git a/drivers/video/omap/omapfb_main.c b/drivers/video/omap/omapfb_main.c index 5a5e407dc45f..1a49519dafa4 100644 --- a/drivers/video/omap/omapfb_main.c +++ b/drivers/video/omap/omapfb_main.c | |||
@@ -392,7 +392,7 @@ static void set_fb_fix(struct fb_info *fbi) | |||
392 | int bpp; | 392 | int bpp; |
393 | 393 | ||
394 | rg = &plane->fbdev->mem_desc.region[plane->idx]; | 394 | rg = &plane->fbdev->mem_desc.region[plane->idx]; |
395 | fbi->screen_base = (char __iomem *)rg->vaddr; | 395 | fbi->screen_base = rg->vaddr; |
396 | fix->smem_start = rg->paddr; | 396 | fix->smem_start = rg->paddr; |
397 | fix->smem_len = rg->size; | 397 | fix->smem_len = rg->size; |
398 | 398 | ||
diff --git a/fs/block_dev.c b/fs/block_dev.c index db831efbdbbd..99e0ae1a4c78 100644 --- a/fs/block_dev.c +++ b/fs/block_dev.c | |||
@@ -1135,12 +1135,15 @@ static int blkdev_open(struct inode * inode, struct file * filp) | |||
1135 | if (res) | 1135 | if (res) |
1136 | return res; | 1136 | return res; |
1137 | 1137 | ||
1138 | if (!(filp->f_mode & FMODE_EXCL)) | 1138 | if (filp->f_mode & FMODE_EXCL) { |
1139 | return 0; | 1139 | res = bd_claim(bdev, filp); |
1140 | if (res) | ||
1141 | goto out_blkdev_put; | ||
1142 | } | ||
1140 | 1143 | ||
1141 | if (!(res = bd_claim(bdev, filp))) | 1144 | return 0; |
1142 | return 0; | ||
1143 | 1145 | ||
1146 | out_blkdev_put: | ||
1144 | blkdev_put(bdev, filp->f_mode); | 1147 | blkdev_put(bdev, filp->f_mode); |
1145 | return res; | 1148 | return res; |
1146 | } | 1149 | } |
@@ -1203,8 +1206,16 @@ static long block_ioctl(struct file *file, unsigned cmd, unsigned long arg) | |||
1203 | { | 1206 | { |
1204 | struct block_device *bdev = I_BDEV(file->f_mapping->host); | 1207 | struct block_device *bdev = I_BDEV(file->f_mapping->host); |
1205 | fmode_t mode = file->f_mode; | 1208 | fmode_t mode = file->f_mode; |
1209 | |||
1210 | /* | ||
1211 | * O_NDELAY can be altered using fcntl(.., F_SETFL, ..), so we have | ||
1212 | * to updated it before every ioctl. | ||
1213 | */ | ||
1206 | if (file->f_flags & O_NDELAY) | 1214 | if (file->f_flags & O_NDELAY) |
1207 | mode |= FMODE_NDELAY_NOW; | 1215 | mode |= FMODE_NDELAY; |
1216 | else | ||
1217 | mode &= ~FMODE_NDELAY; | ||
1218 | |||
1208 | return blkdev_ioctl(bdev, mode, cmd, arg); | 1219 | return blkdev_ioctl(bdev, mode, cmd, arg); |
1209 | } | 1220 | } |
1210 | 1221 | ||
@@ -1159,6 +1159,7 @@ EXPORT_SYMBOL(remove_arg_zero); | |||
1159 | */ | 1159 | */ |
1160 | int search_binary_handler(struct linux_binprm *bprm,struct pt_regs *regs) | 1160 | int search_binary_handler(struct linux_binprm *bprm,struct pt_regs *regs) |
1161 | { | 1161 | { |
1162 | unsigned int depth = bprm->recursion_depth; | ||
1162 | int try,retval; | 1163 | int try,retval; |
1163 | struct linux_binfmt *fmt; | 1164 | struct linux_binfmt *fmt; |
1164 | #ifdef __alpha__ | 1165 | #ifdef __alpha__ |
@@ -1219,8 +1220,15 @@ int search_binary_handler(struct linux_binprm *bprm,struct pt_regs *regs) | |||
1219 | continue; | 1220 | continue; |
1220 | read_unlock(&binfmt_lock); | 1221 | read_unlock(&binfmt_lock); |
1221 | retval = fn(bprm, regs); | 1222 | retval = fn(bprm, regs); |
1223 | /* | ||
1224 | * Restore the depth counter to its starting value | ||
1225 | * in this call, so we don't have to rely on every | ||
1226 | * load_binary function to restore it on return. | ||
1227 | */ | ||
1228 | bprm->recursion_depth = depth; | ||
1222 | if (retval >= 0) { | 1229 | if (retval >= 0) { |
1223 | tracehook_report_exec(fmt, bprm, regs); | 1230 | if (depth == 0) |
1231 | tracehook_report_exec(fmt, bprm, regs); | ||
1224 | put_binfmt(fmt); | 1232 | put_binfmt(fmt); |
1225 | allow_write_access(bprm->file); | 1233 | allow_write_access(bprm->file); |
1226 | if (bprm->file) | 1234 | if (bprm->file) |
diff --git a/fs/exportfs/expfs.c b/fs/exportfs/expfs.c index 80246bad1b7f..890e01828817 100644 --- a/fs/exportfs/expfs.c +++ b/fs/exportfs/expfs.c | |||
@@ -367,6 +367,8 @@ struct dentry *exportfs_decode_fh(struct vfsmount *mnt, struct fid *fid, | |||
367 | * Try to get any dentry for the given file handle from the filesystem. | 367 | * Try to get any dentry for the given file handle from the filesystem. |
368 | */ | 368 | */ |
369 | result = nop->fh_to_dentry(mnt->mnt_sb, fid, fh_len, fileid_type); | 369 | result = nop->fh_to_dentry(mnt->mnt_sb, fid, fh_len, fileid_type); |
370 | if (!result) | ||
371 | result = ERR_PTR(-ESTALE); | ||
370 | if (IS_ERR(result)) | 372 | if (IS_ERR(result)) |
371 | return result; | 373 | return result; |
372 | 374 | ||
@@ -420,6 +422,8 @@ struct dentry *exportfs_decode_fh(struct vfsmount *mnt, struct fid *fid, | |||
420 | 422 | ||
421 | target_dir = nop->fh_to_parent(mnt->mnt_sb, fid, | 423 | target_dir = nop->fh_to_parent(mnt->mnt_sb, fid, |
422 | fh_len, fileid_type); | 424 | fh_len, fileid_type); |
425 | if (!target_dir) | ||
426 | goto err_result; | ||
423 | err = PTR_ERR(target_dir); | 427 | err = PTR_ERR(target_dir); |
424 | if (IS_ERR(target_dir)) | 428 | if (IS_ERR(target_dir)) |
425 | goto err_result; | 429 | goto err_result; |
diff --git a/fs/ext4/balloc.c b/fs/ext4/balloc.c index d2003cdc36aa..db35cfdb3c8b 100644 --- a/fs/ext4/balloc.c +++ b/fs/ext4/balloc.c | |||
@@ -609,8 +609,8 @@ int ext4_has_free_blocks(struct ext4_sb_info *sbi, s64 nblocks) | |||
609 | 609 | ||
610 | if (free_blocks - (nblocks + root_blocks + dirty_blocks) < | 610 | if (free_blocks - (nblocks + root_blocks + dirty_blocks) < |
611 | EXT4_FREEBLOCKS_WATERMARK) { | 611 | EXT4_FREEBLOCKS_WATERMARK) { |
612 | free_blocks = percpu_counter_sum(fbc); | 612 | free_blocks = percpu_counter_sum_positive(fbc); |
613 | dirty_blocks = percpu_counter_sum(dbc); | 613 | dirty_blocks = percpu_counter_sum_positive(dbc); |
614 | if (dirty_blocks < 0) { | 614 | if (dirty_blocks < 0) { |
615 | printk(KERN_CRIT "Dirty block accounting " | 615 | printk(KERN_CRIT "Dirty block accounting " |
616 | "went wrong %lld\n", | 616 | "went wrong %lld\n", |
diff --git a/fs/fcntl.c b/fs/fcntl.c index ac4f7db9f134..549daf8005fb 100644 --- a/fs/fcntl.c +++ b/fs/fcntl.c | |||
@@ -19,6 +19,7 @@ | |||
19 | #include <linux/signal.h> | 19 | #include <linux/signal.h> |
20 | #include <linux/rcupdate.h> | 20 | #include <linux/rcupdate.h> |
21 | #include <linux/pid_namespace.h> | 21 | #include <linux/pid_namespace.h> |
22 | #include <linux/smp_lock.h> | ||
22 | 23 | ||
23 | #include <asm/poll.h> | 24 | #include <asm/poll.h> |
24 | #include <asm/siginfo.h> | 25 | #include <asm/siginfo.h> |
@@ -175,6 +176,11 @@ static int setfl(int fd, struct file * filp, unsigned long arg) | |||
175 | if (error) | 176 | if (error) |
176 | return error; | 177 | return error; |
177 | 178 | ||
179 | /* | ||
180 | * We still need a lock here for now to keep multiple FASYNC calls | ||
181 | * from racing with each other. | ||
182 | */ | ||
183 | lock_kernel(); | ||
178 | if ((arg ^ filp->f_flags) & FASYNC) { | 184 | if ((arg ^ filp->f_flags) & FASYNC) { |
179 | if (filp->f_op && filp->f_op->fasync) { | 185 | if (filp->f_op && filp->f_op->fasync) { |
180 | error = filp->f_op->fasync(fd, filp, (arg & FASYNC) != 0); | 186 | error = filp->f_op->fasync(fd, filp, (arg & FASYNC) != 0); |
@@ -185,6 +191,7 @@ static int setfl(int fd, struct file * filp, unsigned long arg) | |||
185 | 191 | ||
186 | filp->f_flags = (arg & SETFL_MASK) | (filp->f_flags & ~SETFL_MASK); | 192 | filp->f_flags = (arg & SETFL_MASK) | (filp->f_flags & ~SETFL_MASK); |
187 | out: | 193 | out: |
194 | unlock_kernel(); | ||
188 | return error; | 195 | return error; |
189 | } | 196 | } |
190 | 197 | ||
diff --git a/fs/inotify.c b/fs/inotify.c index 7bbed1b89825..dae3f28f30d4 100644 --- a/fs/inotify.c +++ b/fs/inotify.c | |||
@@ -428,11 +428,13 @@ void inotify_unmount_inodes(struct list_head *list) | |||
428 | watches = &inode->inotify_watches; | 428 | watches = &inode->inotify_watches; |
429 | list_for_each_entry_safe(watch, next_w, watches, i_list) { | 429 | list_for_each_entry_safe(watch, next_w, watches, i_list) { |
430 | struct inotify_handle *ih= watch->ih; | 430 | struct inotify_handle *ih= watch->ih; |
431 | get_inotify_watch(watch); | ||
431 | mutex_lock(&ih->mutex); | 432 | mutex_lock(&ih->mutex); |
432 | ih->in_ops->handle_event(watch, watch->wd, IN_UNMOUNT, 0, | 433 | ih->in_ops->handle_event(watch, watch->wd, IN_UNMOUNT, 0, |
433 | NULL, NULL); | 434 | NULL, NULL); |
434 | inotify_remove_watch_locked(ih, watch); | 435 | inotify_remove_watch_locked(ih, watch); |
435 | mutex_unlock(&ih->mutex); | 436 | mutex_unlock(&ih->mutex); |
437 | put_inotify_watch(watch); | ||
436 | } | 438 | } |
437 | mutex_unlock(&inode->inotify_mutex); | 439 | mutex_unlock(&inode->inotify_mutex); |
438 | iput(inode); | 440 | iput(inode); |
diff --git a/fs/ioctl.c b/fs/ioctl.c index d152856c371b..43e8b2c0664b 100644 --- a/fs/ioctl.c +++ b/fs/ioctl.c | |||
@@ -400,11 +400,9 @@ static int ioctl_fioasync(unsigned int fd, struct file *filp, | |||
400 | 400 | ||
401 | /* Did FASYNC state change ? */ | 401 | /* Did FASYNC state change ? */ |
402 | if ((flag ^ filp->f_flags) & FASYNC) { | 402 | if ((flag ^ filp->f_flags) & FASYNC) { |
403 | if (filp->f_op && filp->f_op->fasync) { | 403 | if (filp->f_op && filp->f_op->fasync) |
404 | lock_kernel(); | ||
405 | error = filp->f_op->fasync(fd, filp, on); | 404 | error = filp->f_op->fasync(fd, filp, on); |
406 | unlock_kernel(); | 405 | else |
407 | } else | ||
408 | error = -ENOTTY; | 406 | error = -ENOTTY; |
409 | } | 407 | } |
410 | if (error) | 408 | if (error) |
@@ -440,11 +438,17 @@ int do_vfs_ioctl(struct file *filp, unsigned int fd, unsigned int cmd, | |||
440 | break; | 438 | break; |
441 | 439 | ||
442 | case FIONBIO: | 440 | case FIONBIO: |
441 | /* BKL needed to avoid races tweaking f_flags */ | ||
442 | lock_kernel(); | ||
443 | error = ioctl_fionbio(filp, argp); | 443 | error = ioctl_fionbio(filp, argp); |
444 | unlock_kernel(); | ||
444 | break; | 445 | break; |
445 | 446 | ||
446 | case FIOASYNC: | 447 | case FIOASYNC: |
448 | /* BKL needed to avoid races tweaking f_flags */ | ||
449 | lock_kernel(); | ||
447 | error = ioctl_fioasync(fd, filp, argp); | 450 | error = ioctl_fioasync(fd, filp, argp); |
451 | unlock_kernel(); | ||
448 | break; | 452 | break; |
449 | 453 | ||
450 | case FIOQSIZE: | 454 | case FIOQSIZE: |
diff --git a/fs/proc/base.c b/fs/proc/base.c index 486cf3fe7139..d4677603c889 100644 --- a/fs/proc/base.c +++ b/fs/proc/base.c | |||
@@ -371,7 +371,7 @@ static int lstats_show_proc(struct seq_file *m, void *v) | |||
371 | task->latency_record[i].time, | 371 | task->latency_record[i].time, |
372 | task->latency_record[i].max); | 372 | task->latency_record[i].max); |
373 | for (q = 0; q < LT_BACKTRACEDEPTH; q++) { | 373 | for (q = 0; q < LT_BACKTRACEDEPTH; q++) { |
374 | char sym[KSYM_NAME_LEN]; | 374 | char sym[KSYM_SYMBOL_LEN]; |
375 | char *c; | 375 | char *c; |
376 | if (!task->latency_record[i].backtrace[q]) | 376 | if (!task->latency_record[i].backtrace[q]) |
377 | break; | 377 | break; |
diff --git a/fs/proc/task_mmu.c b/fs/proc/task_mmu.c index b770c095e45c..3a8bdd7f5756 100644 --- a/fs/proc/task_mmu.c +++ b/fs/proc/task_mmu.c | |||
@@ -557,9 +557,9 @@ static u64 swap_pte_to_pagemap_entry(pte_t pte) | |||
557 | return swp_type(e) | (swp_offset(e) << MAX_SWAPFILES_SHIFT); | 557 | return swp_type(e) | (swp_offset(e) << MAX_SWAPFILES_SHIFT); |
558 | } | 558 | } |
559 | 559 | ||
560 | static unsigned long pte_to_pagemap_entry(pte_t pte) | 560 | static u64 pte_to_pagemap_entry(pte_t pte) |
561 | { | 561 | { |
562 | unsigned long pme = 0; | 562 | u64 pme = 0; |
563 | if (is_swap_pte(pte)) | 563 | if (is_swap_pte(pte)) |
564 | pme = PM_PFRAME(swap_pte_to_pagemap_entry(pte)) | 564 | pme = PM_PFRAME(swap_pte_to_pagemap_entry(pte)) |
565 | | PM_PSHIFT(PAGE_SHIFT) | PM_SWAP; | 565 | | PM_PSHIFT(PAGE_SHIFT) | PM_SWAP; |
diff --git a/fs/xfs/xfs_rename.c b/fs/xfs/xfs_rename.c index d700dacdb10e..c903130be7fd 100644 --- a/fs/xfs/xfs_rename.c +++ b/fs/xfs/xfs_rename.c | |||
@@ -212,7 +212,7 @@ xfs_rename( | |||
212 | if (unlikely((target_dp->i_d.di_flags & XFS_DIFLAG_PROJINHERIT) && | 212 | if (unlikely((target_dp->i_d.di_flags & XFS_DIFLAG_PROJINHERIT) && |
213 | (target_dp->i_d.di_projid != src_ip->i_d.di_projid))) { | 213 | (target_dp->i_d.di_projid != src_ip->i_d.di_projid))) { |
214 | error = XFS_ERROR(EXDEV); | 214 | error = XFS_ERROR(EXDEV); |
215 | xfs_rename_unlock4(inodes, XFS_ILOCK_SHARED); | 215 | xfs_rename_unlock4(inodes, XFS_ILOCK_EXCL); |
216 | xfs_trans_cancel(tp, cancel_flags); | 216 | xfs_trans_cancel(tp, cancel_flags); |
217 | goto std_return; | 217 | goto std_return; |
218 | } | 218 | } |
diff --git a/include/asm-generic/atomic.h b/include/asm-generic/atomic.h index 4ec0a296bdec..7abdaa91ccd3 100644 --- a/include/asm-generic/atomic.h +++ b/include/asm-generic/atomic.h | |||
@@ -251,7 +251,7 @@ static inline long atomic_long_add_unless(atomic_long_t *l, long a, long u) | |||
251 | #define atomic_long_cmpxchg(l, old, new) \ | 251 | #define atomic_long_cmpxchg(l, old, new) \ |
252 | (atomic_cmpxchg((atomic_t *)(l), (old), (new))) | 252 | (atomic_cmpxchg((atomic_t *)(l), (old), (new))) |
253 | #define atomic_long_xchg(v, new) \ | 253 | #define atomic_long_xchg(v, new) \ |
254 | (atomic_xchg((atomic_t *)(l), (new))) | 254 | (atomic_xchg((atomic_t *)(v), (new))) |
255 | 255 | ||
256 | #endif /* BITS_PER_LONG == 64 */ | 256 | #endif /* BITS_PER_LONG == 64 */ |
257 | 257 | ||
diff --git a/include/asm-generic/audit_write.h b/include/asm-generic/audit_write.h index f10d367fb2a5..c5f1c2c920e2 100644 --- a/include/asm-generic/audit_write.h +++ b/include/asm-generic/audit_write.h | |||
@@ -1,6 +1,8 @@ | |||
1 | #include <asm-generic/audit_dir_write.h> | 1 | #include <asm-generic/audit_dir_write.h> |
2 | __NR_acct, | 2 | __NR_acct, |
3 | #ifdef __NR_swapon | ||
3 | __NR_swapon, | 4 | __NR_swapon, |
5 | #endif | ||
4 | __NR_quotactl, | 6 | __NR_quotactl, |
5 | __NR_truncate, | 7 | __NR_truncate, |
6 | #ifdef __NR_truncate64 | 8 | #ifdef __NR_truncate64 |
diff --git a/include/asm-mn10300/uaccess.h b/include/asm-mn10300/uaccess.h index 46b9b647f3c3..8a3a4dd55763 100644 --- a/include/asm-mn10300/uaccess.h +++ b/include/asm-mn10300/uaccess.h | |||
@@ -266,7 +266,7 @@ extern int __get_user_unknown(void); | |||
266 | " .section .fixup,\"ax\" \n" \ | 266 | " .section .fixup,\"ax\" \n" \ |
267 | "4: \n" \ | 267 | "4: \n" \ |
268 | " mov %5,%0 \n" \ | 268 | " mov %5,%0 \n" \ |
269 | " jmp 2b \n" \ | 269 | " jmp 3b \n" \ |
270 | " .previous \n" \ | 270 | " .previous \n" \ |
271 | " .section __ex_table,\"a\"\n" \ | 271 | " .section __ex_table,\"a\"\n" \ |
272 | " .balign 4 \n" \ | 272 | " .balign 4 \n" \ |
diff --git a/include/linux/audit.h b/include/linux/audit.h index 6272a395d43c..8f0672d13eb1 100644 --- a/include/linux/audit.h +++ b/include/linux/audit.h | |||
@@ -391,6 +391,7 @@ extern int audit_classify_arch(int arch); | |||
391 | #ifdef CONFIG_AUDITSYSCALL | 391 | #ifdef CONFIG_AUDITSYSCALL |
392 | /* These are defined in auditsc.c */ | 392 | /* These are defined in auditsc.c */ |
393 | /* Public API */ | 393 | /* Public API */ |
394 | extern void audit_finish_fork(struct task_struct *child); | ||
394 | extern int audit_alloc(struct task_struct *task); | 395 | extern int audit_alloc(struct task_struct *task); |
395 | extern void audit_free(struct task_struct *task); | 396 | extern void audit_free(struct task_struct *task); |
396 | extern void audit_syscall_entry(int arch, | 397 | extern void audit_syscall_entry(int arch, |
@@ -434,7 +435,7 @@ static inline void audit_ptrace(struct task_struct *t) | |||
434 | 435 | ||
435 | /* Private API (for audit.c only) */ | 436 | /* Private API (for audit.c only) */ |
436 | extern unsigned int audit_serial(void); | 437 | extern unsigned int audit_serial(void); |
437 | extern void auditsc_get_stamp(struct audit_context *ctx, | 438 | extern int auditsc_get_stamp(struct audit_context *ctx, |
438 | struct timespec *t, unsigned int *serial); | 439 | struct timespec *t, unsigned int *serial); |
439 | extern int audit_set_loginuid(struct task_struct *task, uid_t loginuid); | 440 | extern int audit_set_loginuid(struct task_struct *task, uid_t loginuid); |
440 | #define audit_get_loginuid(t) ((t)->loginuid) | 441 | #define audit_get_loginuid(t) ((t)->loginuid) |
@@ -504,6 +505,7 @@ static inline int audit_mq_getsetattr(mqd_t mqdes, struct mq_attr *mqstat) | |||
504 | extern int audit_n_rules; | 505 | extern int audit_n_rules; |
505 | extern int audit_signals; | 506 | extern int audit_signals; |
506 | #else | 507 | #else |
508 | #define audit_finish_fork(t) | ||
507 | #define audit_alloc(t) ({ 0; }) | 509 | #define audit_alloc(t) ({ 0; }) |
508 | #define audit_free(t) do { ; } while (0) | 510 | #define audit_free(t) do { ; } while (0) |
509 | #define audit_syscall_entry(ta,a,b,c,d,e) do { ; } while (0) | 511 | #define audit_syscall_entry(ta,a,b,c,d,e) do { ; } while (0) |
@@ -516,7 +518,7 @@ extern int audit_signals; | |||
516 | #define audit_inode(n,d) do { ; } while (0) | 518 | #define audit_inode(n,d) do { ; } while (0) |
517 | #define audit_inode_child(d,i,p) do { ; } while (0) | 519 | #define audit_inode_child(d,i,p) do { ; } while (0) |
518 | #define audit_core_dumps(i) do { ; } while (0) | 520 | #define audit_core_dumps(i) do { ; } while (0) |
519 | #define auditsc_get_stamp(c,t,s) do { BUG(); } while (0) | 521 | #define auditsc_get_stamp(c,t,s) (0) |
520 | #define audit_get_loginuid(t) (-1) | 522 | #define audit_get_loginuid(t) (-1) |
521 | #define audit_get_sessionid(t) (-1) | 523 | #define audit_get_sessionid(t) (-1) |
522 | #define audit_log_task_context(b) do { ; } while (0) | 524 | #define audit_log_task_context(b) do { ; } while (0) |
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h index 6dcd30d806cd..031a315c0509 100644 --- a/include/linux/blkdev.h +++ b/include/linux/blkdev.h | |||
@@ -662,6 +662,7 @@ extern unsigned long blk_max_low_pfn, blk_max_pfn; | |||
662 | * default timeout for SG_IO if none specified | 662 | * default timeout for SG_IO if none specified |
663 | */ | 663 | */ |
664 | #define BLK_DEFAULT_SG_TIMEOUT (60 * HZ) | 664 | #define BLK_DEFAULT_SG_TIMEOUT (60 * HZ) |
665 | #define BLK_MIN_SG_TIMEOUT (7 * HZ) | ||
665 | 666 | ||
666 | #ifdef CONFIG_BOUNCE | 667 | #ifdef CONFIG_BOUNCE |
667 | extern int init_emergency_isa_pool(void); | 668 | extern int init_emergency_isa_pool(void); |
diff --git a/include/linux/can/core.h b/include/linux/can/core.h index e9ca210ffa5b..f50785ad4781 100644 --- a/include/linux/can/core.h +++ b/include/linux/can/core.h | |||
@@ -19,7 +19,7 @@ | |||
19 | #include <linux/skbuff.h> | 19 | #include <linux/skbuff.h> |
20 | #include <linux/netdevice.h> | 20 | #include <linux/netdevice.h> |
21 | 21 | ||
22 | #define CAN_VERSION "20071116" | 22 | #define CAN_VERSION "20081130" |
23 | 23 | ||
24 | /* increment this number each time you change some user-space interface */ | 24 | /* increment this number each time you change some user-space interface */ |
25 | #define CAN_ABI_VERSION "8" | 25 | #define CAN_ABI_VERSION "8" |
diff --git a/include/linux/fs.h b/include/linux/fs.h index 0dcdd9458f4b..4a853ef6fd35 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h | |||
@@ -63,23 +63,24 @@ extern int dir_notify_enable; | |||
63 | #define MAY_ACCESS 16 | 63 | #define MAY_ACCESS 16 |
64 | #define MAY_OPEN 32 | 64 | #define MAY_OPEN 32 |
65 | 65 | ||
66 | #define FMODE_READ ((__force fmode_t)1) | 66 | /* file is open for reading */ |
67 | #define FMODE_WRITE ((__force fmode_t)2) | 67 | #define FMODE_READ ((__force fmode_t)1) |
68 | 68 | /* file is open for writing */ | |
69 | /* Internal kernel extensions */ | 69 | #define FMODE_WRITE ((__force fmode_t)2) |
70 | #define FMODE_LSEEK ((__force fmode_t)4) | 70 | /* file is seekable */ |
71 | #define FMODE_PREAD ((__force fmode_t)8) | 71 | #define FMODE_LSEEK ((__force fmode_t)4) |
72 | #define FMODE_PWRITE FMODE_PREAD /* These go hand in hand */ | 72 | /* file can be accessed using pread/pwrite */ |
73 | 73 | #define FMODE_PREAD ((__force fmode_t)8) | |
74 | /* File is being opened for execution. Primary users of this flag are | 74 | #define FMODE_PWRITE FMODE_PREAD /* These go hand in hand */ |
75 | distributed filesystems that can use it to achieve correct ETXTBUSY | 75 | /* File is opened for execution with sys_execve / sys_uselib */ |
76 | behavior for cross-node execution/opening_for_writing of files */ | 76 | #define FMODE_EXEC ((__force fmode_t)16) |
77 | #define FMODE_EXEC ((__force fmode_t)16) | 77 | /* File is opened with O_NDELAY (only set for block devices) */ |
78 | 78 | #define FMODE_NDELAY ((__force fmode_t)32) | |
79 | #define FMODE_NDELAY ((__force fmode_t)32) | 79 | /* File is opened with O_EXCL (only set for block devices) */ |
80 | #define FMODE_EXCL ((__force fmode_t)64) | 80 | #define FMODE_EXCL ((__force fmode_t)64) |
81 | /* File is opened using open(.., 3, ..) and is writeable only for ioctls | ||
82 | (specialy hack for floppy.c) */ | ||
81 | #define FMODE_WRITE_IOCTL ((__force fmode_t)128) | 83 | #define FMODE_WRITE_IOCTL ((__force fmode_t)128) |
82 | #define FMODE_NDELAY_NOW ((__force fmode_t)256) | ||
83 | 84 | ||
84 | #define RW_MASK 1 | 85 | #define RW_MASK 1 |
85 | #define RWA_MASK 2 | 86 | #define RWA_MASK 2 |
diff --git a/include/linux/ftrace.h b/include/linux/ftrace.h index 11cac81eed08..985b28dc2ba9 100644 --- a/include/linux/ftrace.h +++ b/include/linux/ftrace.h | |||
@@ -6,6 +6,7 @@ | |||
6 | #include <linux/ktime.h> | 6 | #include <linux/ktime.h> |
7 | #include <linux/init.h> | 7 | #include <linux/init.h> |
8 | #include <linux/types.h> | 8 | #include <linux/types.h> |
9 | #include <linux/module.h> | ||
9 | #include <linux/kallsyms.h> | 10 | #include <linux/kallsyms.h> |
10 | #include <linux/bitops.h> | 11 | #include <linux/bitops.h> |
11 | #include <linux/sched.h> | 12 | #include <linux/sched.h> |
diff --git a/include/linux/sched.h b/include/linux/sched.h index 423830b6e6e9..4240f6bfa812 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h | |||
@@ -2265,6 +2265,7 @@ extern void normalize_rt_tasks(void); | |||
2265 | extern struct task_group init_task_group; | 2265 | extern struct task_group init_task_group; |
2266 | #ifdef CONFIG_USER_SCHED | 2266 | #ifdef CONFIG_USER_SCHED |
2267 | extern struct task_group root_task_group; | 2267 | extern struct task_group root_task_group; |
2268 | extern void set_tg_uid(struct user_struct *user); | ||
2268 | #endif | 2269 | #endif |
2269 | 2270 | ||
2270 | extern struct task_group *sched_create_group(struct task_group *parent); | 2271 | extern struct task_group *sched_create_group(struct task_group *parent); |
diff --git a/include/linux/topology.h b/include/linux/topology.h index 117f1b7405cf..0c5b5ac36d8e 100644 --- a/include/linux/topology.h +++ b/include/linux/topology.h | |||
@@ -49,7 +49,7 @@ | |||
49 | for_each_online_node(node) \ | 49 | for_each_online_node(node) \ |
50 | if (nr_cpus_node(node)) | 50 | if (nr_cpus_node(node)) |
51 | 51 | ||
52 | void arch_update_cpu_topology(void); | 52 | int arch_update_cpu_topology(void); |
53 | 53 | ||
54 | /* Conform to ACPI 2.0 SLIT distance definitions */ | 54 | /* Conform to ACPI 2.0 SLIT distance definitions */ |
55 | #define LOCAL_DISTANCE 10 | 55 | #define LOCAL_DISTANCE 10 |
diff --git a/kernel/audit.c b/kernel/audit.c index 4414e93d8750..ce6d8ea3131e 100644 --- a/kernel/audit.c +++ b/kernel/audit.c | |||
@@ -61,8 +61,11 @@ | |||
61 | 61 | ||
62 | #include "audit.h" | 62 | #include "audit.h" |
63 | 63 | ||
64 | /* No auditing will take place until audit_initialized != 0. | 64 | /* No auditing will take place until audit_initialized == AUDIT_INITIALIZED. |
65 | * (Initialization happens after skb_init is called.) */ | 65 | * (Initialization happens after skb_init is called.) */ |
66 | #define AUDIT_DISABLED -1 | ||
67 | #define AUDIT_UNINITIALIZED 0 | ||
68 | #define AUDIT_INITIALIZED 1 | ||
66 | static int audit_initialized; | 69 | static int audit_initialized; |
67 | 70 | ||
68 | #define AUDIT_OFF 0 | 71 | #define AUDIT_OFF 0 |
@@ -965,6 +968,9 @@ static int __init audit_init(void) | |||
965 | { | 968 | { |
966 | int i; | 969 | int i; |
967 | 970 | ||
971 | if (audit_initialized == AUDIT_DISABLED) | ||
972 | return 0; | ||
973 | |||
968 | printk(KERN_INFO "audit: initializing netlink socket (%s)\n", | 974 | printk(KERN_INFO "audit: initializing netlink socket (%s)\n", |
969 | audit_default ? "enabled" : "disabled"); | 975 | audit_default ? "enabled" : "disabled"); |
970 | audit_sock = netlink_kernel_create(&init_net, NETLINK_AUDIT, 0, | 976 | audit_sock = netlink_kernel_create(&init_net, NETLINK_AUDIT, 0, |
@@ -976,7 +982,7 @@ static int __init audit_init(void) | |||
976 | 982 | ||
977 | skb_queue_head_init(&audit_skb_queue); | 983 | skb_queue_head_init(&audit_skb_queue); |
978 | skb_queue_head_init(&audit_skb_hold_queue); | 984 | skb_queue_head_init(&audit_skb_hold_queue); |
979 | audit_initialized = 1; | 985 | audit_initialized = AUDIT_INITIALIZED; |
980 | audit_enabled = audit_default; | 986 | audit_enabled = audit_default; |
981 | audit_ever_enabled |= !!audit_default; | 987 | audit_ever_enabled |= !!audit_default; |
982 | 988 | ||
@@ -999,13 +1005,21 @@ __initcall(audit_init); | |||
999 | static int __init audit_enable(char *str) | 1005 | static int __init audit_enable(char *str) |
1000 | { | 1006 | { |
1001 | audit_default = !!simple_strtol(str, NULL, 0); | 1007 | audit_default = !!simple_strtol(str, NULL, 0); |
1002 | printk(KERN_INFO "audit: %s%s\n", | 1008 | if (!audit_default) |
1003 | audit_default ? "enabled" : "disabled", | 1009 | audit_initialized = AUDIT_DISABLED; |
1004 | audit_initialized ? "" : " (after initialization)"); | 1010 | |
1005 | if (audit_initialized) { | 1011 | printk(KERN_INFO "audit: %s", audit_default ? "enabled" : "disabled"); |
1012 | |||
1013 | if (audit_initialized == AUDIT_INITIALIZED) { | ||
1006 | audit_enabled = audit_default; | 1014 | audit_enabled = audit_default; |
1007 | audit_ever_enabled |= !!audit_default; | 1015 | audit_ever_enabled |= !!audit_default; |
1016 | } else if (audit_initialized == AUDIT_UNINITIALIZED) { | ||
1017 | printk(" (after initialization)"); | ||
1018 | } else { | ||
1019 | printk(" (until reboot)"); | ||
1008 | } | 1020 | } |
1021 | printk("\n"); | ||
1022 | |||
1009 | return 1; | 1023 | return 1; |
1010 | } | 1024 | } |
1011 | 1025 | ||
@@ -1107,9 +1121,7 @@ unsigned int audit_serial(void) | |||
1107 | static inline void audit_get_stamp(struct audit_context *ctx, | 1121 | static inline void audit_get_stamp(struct audit_context *ctx, |
1108 | struct timespec *t, unsigned int *serial) | 1122 | struct timespec *t, unsigned int *serial) |
1109 | { | 1123 | { |
1110 | if (ctx) | 1124 | if (!ctx || !auditsc_get_stamp(ctx, t, serial)) { |
1111 | auditsc_get_stamp(ctx, t, serial); | ||
1112 | else { | ||
1113 | *t = CURRENT_TIME; | 1125 | *t = CURRENT_TIME; |
1114 | *serial = audit_serial(); | 1126 | *serial = audit_serial(); |
1115 | } | 1127 | } |
@@ -1146,7 +1158,7 @@ struct audit_buffer *audit_log_start(struct audit_context *ctx, gfp_t gfp_mask, | |||
1146 | int reserve; | 1158 | int reserve; |
1147 | unsigned long timeout_start = jiffies; | 1159 | unsigned long timeout_start = jiffies; |
1148 | 1160 | ||
1149 | if (!audit_initialized) | 1161 | if (audit_initialized != AUDIT_INITIALIZED) |
1150 | return NULL; | 1162 | return NULL; |
1151 | 1163 | ||
1152 | if (unlikely(audit_filter_type(type))) | 1164 | if (unlikely(audit_filter_type(type))) |
diff --git a/kernel/auditsc.c b/kernel/auditsc.c index cf5bc2f5f9c3..2a3f0afc4d2a 100644 --- a/kernel/auditsc.c +++ b/kernel/auditsc.c | |||
@@ -1459,7 +1459,6 @@ void audit_free(struct task_struct *tsk) | |||
1459 | 1459 | ||
1460 | /** | 1460 | /** |
1461 | * audit_syscall_entry - fill in an audit record at syscall entry | 1461 | * audit_syscall_entry - fill in an audit record at syscall entry |
1462 | * @tsk: task being audited | ||
1463 | * @arch: architecture type | 1462 | * @arch: architecture type |
1464 | * @major: major syscall type (function) | 1463 | * @major: major syscall type (function) |
1465 | * @a1: additional syscall register 1 | 1464 | * @a1: additional syscall register 1 |
@@ -1548,9 +1547,25 @@ void audit_syscall_entry(int arch, int major, | |||
1548 | context->ppid = 0; | 1547 | context->ppid = 0; |
1549 | } | 1548 | } |
1550 | 1549 | ||
1550 | void audit_finish_fork(struct task_struct *child) | ||
1551 | { | ||
1552 | struct audit_context *ctx = current->audit_context; | ||
1553 | struct audit_context *p = child->audit_context; | ||
1554 | if (!p || !ctx || !ctx->auditable) | ||
1555 | return; | ||
1556 | p->arch = ctx->arch; | ||
1557 | p->major = ctx->major; | ||
1558 | memcpy(p->argv, ctx->argv, sizeof(ctx->argv)); | ||
1559 | p->ctime = ctx->ctime; | ||
1560 | p->dummy = ctx->dummy; | ||
1561 | p->auditable = ctx->auditable; | ||
1562 | p->in_syscall = ctx->in_syscall; | ||
1563 | p->filterkey = kstrdup(ctx->filterkey, GFP_KERNEL); | ||
1564 | p->ppid = current->pid; | ||
1565 | } | ||
1566 | |||
1551 | /** | 1567 | /** |
1552 | * audit_syscall_exit - deallocate audit context after a system call | 1568 | * audit_syscall_exit - deallocate audit context after a system call |
1553 | * @tsk: task being audited | ||
1554 | * @valid: success/failure flag | 1569 | * @valid: success/failure flag |
1555 | * @return_code: syscall return value | 1570 | * @return_code: syscall return value |
1556 | * | 1571 | * |
@@ -1942,15 +1957,18 @@ EXPORT_SYMBOL_GPL(__audit_inode_child); | |||
1942 | * | 1957 | * |
1943 | * Also sets the context as auditable. | 1958 | * Also sets the context as auditable. |
1944 | */ | 1959 | */ |
1945 | void auditsc_get_stamp(struct audit_context *ctx, | 1960 | int auditsc_get_stamp(struct audit_context *ctx, |
1946 | struct timespec *t, unsigned int *serial) | 1961 | struct timespec *t, unsigned int *serial) |
1947 | { | 1962 | { |
1963 | if (!ctx->in_syscall) | ||
1964 | return 0; | ||
1948 | if (!ctx->serial) | 1965 | if (!ctx->serial) |
1949 | ctx->serial = audit_serial(); | 1966 | ctx->serial = audit_serial(); |
1950 | t->tv_sec = ctx->ctime.tv_sec; | 1967 | t->tv_sec = ctx->ctime.tv_sec; |
1951 | t->tv_nsec = ctx->ctime.tv_nsec; | 1968 | t->tv_nsec = ctx->ctime.tv_nsec; |
1952 | *serial = ctx->serial; | 1969 | *serial = ctx->serial; |
1953 | ctx->auditable = 1; | 1970 | ctx->auditable = 1; |
1971 | return 1; | ||
1954 | } | 1972 | } |
1955 | 1973 | ||
1956 | /* global counter which is incremented every time something logs in */ | 1974 | /* global counter which is incremented every time something logs in */ |
diff --git a/kernel/fork.c b/kernel/fork.c index 7407ab319875..7b93da72d4a2 100644 --- a/kernel/fork.c +++ b/kernel/fork.c | |||
@@ -319,17 +319,20 @@ static int dup_mmap(struct mm_struct *mm, struct mm_struct *oldmm) | |||
319 | file = tmp->vm_file; | 319 | file = tmp->vm_file; |
320 | if (file) { | 320 | if (file) { |
321 | struct inode *inode = file->f_path.dentry->d_inode; | 321 | struct inode *inode = file->f_path.dentry->d_inode; |
322 | struct address_space *mapping = file->f_mapping; | ||
323 | |||
322 | get_file(file); | 324 | get_file(file); |
323 | if (tmp->vm_flags & VM_DENYWRITE) | 325 | if (tmp->vm_flags & VM_DENYWRITE) |
324 | atomic_dec(&inode->i_writecount); | 326 | atomic_dec(&inode->i_writecount); |
325 | 327 | spin_lock(&mapping->i_mmap_lock); | |
326 | /* insert tmp into the share list, just after mpnt */ | 328 | if (tmp->vm_flags & VM_SHARED) |
327 | spin_lock(&file->f_mapping->i_mmap_lock); | 329 | mapping->i_mmap_writable++; |
328 | tmp->vm_truncate_count = mpnt->vm_truncate_count; | 330 | tmp->vm_truncate_count = mpnt->vm_truncate_count; |
329 | flush_dcache_mmap_lock(file->f_mapping); | 331 | flush_dcache_mmap_lock(mapping); |
332 | /* insert tmp into the share list, just after mpnt */ | ||
330 | vma_prio_tree_add(tmp, mpnt); | 333 | vma_prio_tree_add(tmp, mpnt); |
331 | flush_dcache_mmap_unlock(file->f_mapping); | 334 | flush_dcache_mmap_unlock(mapping); |
332 | spin_unlock(&file->f_mapping->i_mmap_lock); | 335 | spin_unlock(&mapping->i_mmap_lock); |
333 | } | 336 | } |
334 | 337 | ||
335 | /* | 338 | /* |
@@ -1406,6 +1409,7 @@ long do_fork(unsigned long clone_flags, | |||
1406 | init_completion(&vfork); | 1409 | init_completion(&vfork); |
1407 | } | 1410 | } |
1408 | 1411 | ||
1412 | audit_finish_fork(p); | ||
1409 | tracehook_report_clone(trace, regs, clone_flags, nr, p); | 1413 | tracehook_report_clone(trace, regs, clone_flags, nr, p); |
1410 | 1414 | ||
1411 | /* | 1415 | /* |
diff --git a/kernel/latencytop.c b/kernel/latencytop.c index 5e7b45c56923..449db466bdbc 100644 --- a/kernel/latencytop.c +++ b/kernel/latencytop.c | |||
@@ -191,7 +191,7 @@ static int lstats_show(struct seq_file *m, void *v) | |||
191 | latency_record[i].time, | 191 | latency_record[i].time, |
192 | latency_record[i].max); | 192 | latency_record[i].max); |
193 | for (q = 0; q < LT_BACKTRACEDEPTH; q++) { | 193 | for (q = 0; q < LT_BACKTRACEDEPTH; q++) { |
194 | char sym[KSYM_NAME_LEN]; | 194 | char sym[KSYM_SYMBOL_LEN]; |
195 | char *c; | 195 | char *c; |
196 | if (!latency_record[i].backtrace[q]) | 196 | if (!latency_record[i].backtrace[q]) |
197 | break; | 197 | break; |
diff --git a/kernel/posix-cpu-timers.c b/kernel/posix-cpu-timers.c index 3f4377e0aa04..157de3a47832 100644 --- a/kernel/posix-cpu-timers.c +++ b/kernel/posix-cpu-timers.c | |||
@@ -311,7 +311,7 @@ static int cpu_clock_sample_group(const clockid_t which_clock, | |||
311 | struct task_cputime cputime; | 311 | struct task_cputime cputime; |
312 | 312 | ||
313 | thread_group_cputime(p, &cputime); | 313 | thread_group_cputime(p, &cputime); |
314 | switch (which_clock) { | 314 | switch (CPUCLOCK_WHICH(which_clock)) { |
315 | default: | 315 | default: |
316 | return -EINVAL; | 316 | return -EINVAL; |
317 | case CPUCLOCK_PROF: | 317 | case CPUCLOCK_PROF: |
diff --git a/kernel/power/swap.c b/kernel/power/swap.c index b7713b53d07a..6da14358537c 100644 --- a/kernel/power/swap.c +++ b/kernel/power/swap.c | |||
@@ -633,7 +633,7 @@ void swsusp_close(fmode_t mode) | |||
633 | return; | 633 | return; |
634 | } | 634 | } |
635 | 635 | ||
636 | blkdev_put(resume_bdev, mode); /* move up */ | 636 | blkdev_put(resume_bdev, mode); |
637 | } | 637 | } |
638 | 638 | ||
639 | static int swsusp_header_init(void) | 639 | static int swsusp_header_init(void) |
diff --git a/kernel/relay.c b/kernel/relay.c index 32b0befdcb6a..09ac2008f77b 100644 --- a/kernel/relay.c +++ b/kernel/relay.c | |||
@@ -1317,12 +1317,9 @@ static ssize_t relay_file_splice_read(struct file *in, | |||
1317 | if (ret < 0) | 1317 | if (ret < 0) |
1318 | break; | 1318 | break; |
1319 | else if (!ret) { | 1319 | else if (!ret) { |
1320 | if (spliced) | 1320 | if (flags & SPLICE_F_NONBLOCK) |
1321 | break; | ||
1322 | if (flags & SPLICE_F_NONBLOCK) { | ||
1323 | ret = -EAGAIN; | 1321 | ret = -EAGAIN; |
1324 | break; | 1322 | break; |
1325 | } | ||
1326 | } | 1323 | } |
1327 | 1324 | ||
1328 | *ppos += ret; | 1325 | *ppos += ret; |
diff --git a/kernel/sched.c b/kernel/sched.c index 4ed9f588faa6..e00c92d22655 100644 --- a/kernel/sched.c +++ b/kernel/sched.c | |||
@@ -267,6 +267,10 @@ struct task_group { | |||
267 | struct cgroup_subsys_state css; | 267 | struct cgroup_subsys_state css; |
268 | #endif | 268 | #endif |
269 | 269 | ||
270 | #ifdef CONFIG_USER_SCHED | ||
271 | uid_t uid; | ||
272 | #endif | ||
273 | |||
270 | #ifdef CONFIG_FAIR_GROUP_SCHED | 274 | #ifdef CONFIG_FAIR_GROUP_SCHED |
271 | /* schedulable entities of this group on each cpu */ | 275 | /* schedulable entities of this group on each cpu */ |
272 | struct sched_entity **se; | 276 | struct sched_entity **se; |
@@ -292,6 +296,12 @@ struct task_group { | |||
292 | 296 | ||
293 | #ifdef CONFIG_USER_SCHED | 297 | #ifdef CONFIG_USER_SCHED |
294 | 298 | ||
299 | /* Helper function to pass uid information to create_sched_user() */ | ||
300 | void set_tg_uid(struct user_struct *user) | ||
301 | { | ||
302 | user->tg->uid = user->uid; | ||
303 | } | ||
304 | |||
295 | /* | 305 | /* |
296 | * Root task group. | 306 | * Root task group. |
297 | * Every UID task group (including init_task_group aka UID-0) will | 307 | * Every UID task group (including init_task_group aka UID-0) will |
@@ -1587,6 +1597,39 @@ static inline void update_shares_locked(struct rq *rq, struct sched_domain *sd) | |||
1587 | 1597 | ||
1588 | #endif | 1598 | #endif |
1589 | 1599 | ||
1600 | /* | ||
1601 | * double_lock_balance - lock the busiest runqueue, this_rq is locked already. | ||
1602 | */ | ||
1603 | static int double_lock_balance(struct rq *this_rq, struct rq *busiest) | ||
1604 | __releases(this_rq->lock) | ||
1605 | __acquires(busiest->lock) | ||
1606 | __acquires(this_rq->lock) | ||
1607 | { | ||
1608 | int ret = 0; | ||
1609 | |||
1610 | if (unlikely(!irqs_disabled())) { | ||
1611 | /* printk() doesn't work good under rq->lock */ | ||
1612 | spin_unlock(&this_rq->lock); | ||
1613 | BUG_ON(1); | ||
1614 | } | ||
1615 | if (unlikely(!spin_trylock(&busiest->lock))) { | ||
1616 | if (busiest < this_rq) { | ||
1617 | spin_unlock(&this_rq->lock); | ||
1618 | spin_lock(&busiest->lock); | ||
1619 | spin_lock_nested(&this_rq->lock, SINGLE_DEPTH_NESTING); | ||
1620 | ret = 1; | ||
1621 | } else | ||
1622 | spin_lock_nested(&busiest->lock, SINGLE_DEPTH_NESTING); | ||
1623 | } | ||
1624 | return ret; | ||
1625 | } | ||
1626 | |||
1627 | static inline void double_unlock_balance(struct rq *this_rq, struct rq *busiest) | ||
1628 | __releases(busiest->lock) | ||
1629 | { | ||
1630 | spin_unlock(&busiest->lock); | ||
1631 | lock_set_subclass(&this_rq->lock.dep_map, 0, _RET_IP_); | ||
1632 | } | ||
1590 | #endif | 1633 | #endif |
1591 | 1634 | ||
1592 | #ifdef CONFIG_FAIR_GROUP_SCHED | 1635 | #ifdef CONFIG_FAIR_GROUP_SCHED |
@@ -2784,40 +2827,6 @@ static void double_rq_unlock(struct rq *rq1, struct rq *rq2) | |||
2784 | } | 2827 | } |
2785 | 2828 | ||
2786 | /* | 2829 | /* |
2787 | * double_lock_balance - lock the busiest runqueue, this_rq is locked already. | ||
2788 | */ | ||
2789 | static int double_lock_balance(struct rq *this_rq, struct rq *busiest) | ||
2790 | __releases(this_rq->lock) | ||
2791 | __acquires(busiest->lock) | ||
2792 | __acquires(this_rq->lock) | ||
2793 | { | ||
2794 | int ret = 0; | ||
2795 | |||
2796 | if (unlikely(!irqs_disabled())) { | ||
2797 | /* printk() doesn't work good under rq->lock */ | ||
2798 | spin_unlock(&this_rq->lock); | ||
2799 | BUG_ON(1); | ||
2800 | } | ||
2801 | if (unlikely(!spin_trylock(&busiest->lock))) { | ||
2802 | if (busiest < this_rq) { | ||
2803 | spin_unlock(&this_rq->lock); | ||
2804 | spin_lock(&busiest->lock); | ||
2805 | spin_lock_nested(&this_rq->lock, SINGLE_DEPTH_NESTING); | ||
2806 | ret = 1; | ||
2807 | } else | ||
2808 | spin_lock_nested(&busiest->lock, SINGLE_DEPTH_NESTING); | ||
2809 | } | ||
2810 | return ret; | ||
2811 | } | ||
2812 | |||
2813 | static inline void double_unlock_balance(struct rq *this_rq, struct rq *busiest) | ||
2814 | __releases(busiest->lock) | ||
2815 | { | ||
2816 | spin_unlock(&busiest->lock); | ||
2817 | lock_set_subclass(&this_rq->lock.dep_map, 0, _RET_IP_); | ||
2818 | } | ||
2819 | |||
2820 | /* | ||
2821 | * If dest_cpu is allowed for this process, migrate the task to it. | 2830 | * If dest_cpu is allowed for this process, migrate the task to it. |
2822 | * This is accomplished by forcing the cpu_allowed mask to only | 2831 | * This is accomplished by forcing the cpu_allowed mask to only |
2823 | * allow dest_cpu, which will force the cpu onto dest_cpu. Then | 2832 | * allow dest_cpu, which will force the cpu onto dest_cpu. Then |
@@ -3676,7 +3685,7 @@ out_balanced: | |||
3676 | static void idle_balance(int this_cpu, struct rq *this_rq) | 3685 | static void idle_balance(int this_cpu, struct rq *this_rq) |
3677 | { | 3686 | { |
3678 | struct sched_domain *sd; | 3687 | struct sched_domain *sd; |
3679 | int pulled_task = -1; | 3688 | int pulled_task = 0; |
3680 | unsigned long next_balance = jiffies + HZ; | 3689 | unsigned long next_balance = jiffies + HZ; |
3681 | cpumask_var_t tmpmask; | 3690 | cpumask_var_t tmpmask; |
3682 | 3691 | ||
@@ -6577,7 +6586,9 @@ migration_call(struct notifier_block *nfb, unsigned long action, void *hcpu) | |||
6577 | req = list_entry(rq->migration_queue.next, | 6586 | req = list_entry(rq->migration_queue.next, |
6578 | struct migration_req, list); | 6587 | struct migration_req, list); |
6579 | list_del_init(&req->list); | 6588 | list_del_init(&req->list); |
6589 | spin_unlock_irq(&rq->lock); | ||
6580 | complete(&req->done); | 6590 | complete(&req->done); |
6591 | spin_lock_irq(&rq->lock); | ||
6581 | } | 6592 | } |
6582 | spin_unlock_irq(&rq->lock); | 6593 | spin_unlock_irq(&rq->lock); |
6583 | break; | 6594 | break; |
@@ -6781,6 +6792,8 @@ sd_parent_degenerate(struct sched_domain *sd, struct sched_domain *parent) | |||
6781 | SD_BALANCE_EXEC | | 6792 | SD_BALANCE_EXEC | |
6782 | SD_SHARE_CPUPOWER | | 6793 | SD_SHARE_CPUPOWER | |
6783 | SD_SHARE_PKG_RESOURCES); | 6794 | SD_SHARE_PKG_RESOURCES); |
6795 | if (nr_node_ids == 1) | ||
6796 | pflags &= ~SD_SERIALIZE; | ||
6784 | } | 6797 | } |
6785 | if (~cflags & pflags) | 6798 | if (~cflags & pflags) |
6786 | return 0; | 6799 | return 0; |
@@ -7716,8 +7729,14 @@ static struct sched_domain_attr *dattr_cur; | |||
7716 | */ | 7729 | */ |
7717 | static cpumask_var_t fallback_doms; | 7730 | static cpumask_var_t fallback_doms; |
7718 | 7731 | ||
7719 | void __attribute__((weak)) arch_update_cpu_topology(void) | 7732 | /* |
7733 | * arch_update_cpu_topology lets virtualized architectures update the | ||
7734 | * cpu core maps. It is supposed to return 1 if the topology changed | ||
7735 | * or 0 if it stayed the same. | ||
7736 | */ | ||
7737 | int __attribute__((weak)) arch_update_cpu_topology(void) | ||
7720 | { | 7738 | { |
7739 | return 0; | ||
7721 | } | 7740 | } |
7722 | 7741 | ||
7723 | /* | 7742 | /* |
@@ -7811,17 +7830,21 @@ void partition_sched_domains(int ndoms_new, struct cpumask *doms_new, | |||
7811 | struct sched_domain_attr *dattr_new) | 7830 | struct sched_domain_attr *dattr_new) |
7812 | { | 7831 | { |
7813 | int i, j, n; | 7832 | int i, j, n; |
7833 | int new_topology; | ||
7814 | 7834 | ||
7815 | mutex_lock(&sched_domains_mutex); | 7835 | mutex_lock(&sched_domains_mutex); |
7816 | 7836 | ||
7817 | /* always unregister in case we don't destroy any domains */ | 7837 | /* always unregister in case we don't destroy any domains */ |
7818 | unregister_sched_domain_sysctl(); | 7838 | unregister_sched_domain_sysctl(); |
7819 | 7839 | ||
7840 | /* Let architecture update cpu core mappings. */ | ||
7841 | new_topology = arch_update_cpu_topology(); | ||
7842 | |||
7820 | n = doms_new ? ndoms_new : 0; | 7843 | n = doms_new ? ndoms_new : 0; |
7821 | 7844 | ||
7822 | /* Destroy deleted domains */ | 7845 | /* Destroy deleted domains */ |
7823 | for (i = 0; i < ndoms_cur; i++) { | 7846 | for (i = 0; i < ndoms_cur; i++) { |
7824 | for (j = 0; j < n; j++) { | 7847 | for (j = 0; j < n && !new_topology; j++) { |
7825 | if (cpumask_equal(&doms_cur[i], &doms_new[j]) | 7848 | if (cpumask_equal(&doms_cur[i], &doms_new[j]) |
7826 | && dattrs_equal(dattr_cur, i, dattr_new, j)) | 7849 | && dattrs_equal(dattr_cur, i, dattr_new, j)) |
7827 | goto match1; | 7850 | goto match1; |
@@ -7841,7 +7864,7 @@ match1: | |||
7841 | 7864 | ||
7842 | /* Build new domains */ | 7865 | /* Build new domains */ |
7843 | for (i = 0; i < ndoms_new; i++) { | 7866 | for (i = 0; i < ndoms_new; i++) { |
7844 | for (j = 0; j < ndoms_cur; j++) { | 7867 | for (j = 0; j < ndoms_cur && !new_topology; j++) { |
7845 | if (cpumask_equal(&doms_new[i], &doms_cur[j]) | 7868 | if (cpumask_equal(&doms_new[i], &doms_cur[j]) |
7846 | && dattrs_equal(dattr_new, i, dattr_cur, j)) | 7869 | && dattrs_equal(dattr_new, i, dattr_cur, j)) |
7847 | goto match2; | 7870 | goto match2; |
diff --git a/kernel/sched_debug.c b/kernel/sched_debug.c index baf2f17af462..4293cfa9681d 100644 --- a/kernel/sched_debug.c +++ b/kernel/sched_debug.c | |||
@@ -160,10 +160,14 @@ void print_cfs_rq(struct seq_file *m, int cpu, struct cfs_rq *cfs_rq) | |||
160 | cgroup_path(tg->css.cgroup, path, sizeof(path)); | 160 | cgroup_path(tg->css.cgroup, path, sizeof(path)); |
161 | 161 | ||
162 | SEQ_printf(m, "\ncfs_rq[%d]:%s\n", cpu, path); | 162 | SEQ_printf(m, "\ncfs_rq[%d]:%s\n", cpu, path); |
163 | #elif defined(CONFIG_USER_SCHED) && defined(CONFIG_FAIR_GROUP_SCHED) | ||
164 | { | ||
165 | uid_t uid = cfs_rq->tg->uid; | ||
166 | SEQ_printf(m, "\ncfs_rq[%d] for UID: %u\n", cpu, uid); | ||
167 | } | ||
163 | #else | 168 | #else |
164 | SEQ_printf(m, "\ncfs_rq[%d]:\n", cpu); | 169 | SEQ_printf(m, "\ncfs_rq[%d]:\n", cpu); |
165 | #endif | 170 | #endif |
166 | |||
167 | SEQ_printf(m, " .%-30s: %Ld.%06ld\n", "exec_clock", | 171 | SEQ_printf(m, " .%-30s: %Ld.%06ld\n", "exec_clock", |
168 | SPLIT_NS(cfs_rq->exec_clock)); | 172 | SPLIT_NS(cfs_rq->exec_clock)); |
169 | 173 | ||
diff --git a/kernel/sched_rt.c b/kernel/sched_rt.c index 94aab72f6a02..1bbd99014011 100644 --- a/kernel/sched_rt.c +++ b/kernel/sched_rt.c | |||
@@ -914,10 +914,6 @@ static void put_prev_task_rt(struct rq *rq, struct task_struct *p) | |||
914 | /* Only try algorithms three times */ | 914 | /* Only try algorithms three times */ |
915 | #define RT_MAX_TRIES 3 | 915 | #define RT_MAX_TRIES 3 |
916 | 916 | ||
917 | static int double_lock_balance(struct rq *this_rq, struct rq *busiest); | ||
918 | static inline void double_unlock_balance(struct rq *this_rq, | ||
919 | struct rq *busiest); | ||
920 | |||
921 | static void deactivate_task(struct rq *rq, struct task_struct *p, int sleep); | 917 | static void deactivate_task(struct rq *rq, struct task_struct *p, int sleep); |
922 | 918 | ||
923 | static int pick_rt_task(struct rq *rq, struct task_struct *p, int cpu) | 919 | static int pick_rt_task(struct rq *rq, struct task_struct *p, int cpu) |
diff --git a/kernel/softlockup.c b/kernel/softlockup.c index 884e6cd2769c..1ab790c67b17 100644 --- a/kernel/softlockup.c +++ b/kernel/softlockup.c | |||
@@ -188,7 +188,7 @@ static void check_hung_task(struct task_struct *t, unsigned long now) | |||
188 | if ((long)(now - t->last_switch_timestamp) < | 188 | if ((long)(now - t->last_switch_timestamp) < |
189 | sysctl_hung_task_timeout_secs) | 189 | sysctl_hung_task_timeout_secs) |
190 | return; | 190 | return; |
191 | if (sysctl_hung_task_warnings < 0) | 191 | if (!sysctl_hung_task_warnings) |
192 | return; | 192 | return; |
193 | sysctl_hung_task_warnings--; | 193 | sysctl_hung_task_warnings--; |
194 | 194 | ||
diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c index e7acfb482a68..fa05e88aa76f 100644 --- a/kernel/time/timekeeping.c +++ b/kernel/time/timekeeping.c | |||
@@ -518,6 +518,28 @@ void update_wall_time(void) | |||
518 | /* correct the clock when NTP error is too big */ | 518 | /* correct the clock when NTP error is too big */ |
519 | clocksource_adjust(offset); | 519 | clocksource_adjust(offset); |
520 | 520 | ||
521 | /* | ||
522 | * Since in the loop above, we accumulate any amount of time | ||
523 | * in xtime_nsec over a second into xtime.tv_sec, its possible for | ||
524 | * xtime_nsec to be fairly small after the loop. Further, if we're | ||
525 | * slightly speeding the clocksource up in clocksource_adjust(), | ||
526 | * its possible the required corrective factor to xtime_nsec could | ||
527 | * cause it to underflow. | ||
528 | * | ||
529 | * Now, we cannot simply roll the accumulated second back, since | ||
530 | * the NTP subsystem has been notified via second_overflow. So | ||
531 | * instead we push xtime_nsec forward by the amount we underflowed, | ||
532 | * and add that amount into the error. | ||
533 | * | ||
534 | * We'll correct this error next time through this function, when | ||
535 | * xtime_nsec is not as small. | ||
536 | */ | ||
537 | if (unlikely((s64)clock->xtime_nsec < 0)) { | ||
538 | s64 neg = -(s64)clock->xtime_nsec; | ||
539 | clock->xtime_nsec = 0; | ||
540 | clock->error += neg << (NTP_SCALE_SHIFT - clock->shift); | ||
541 | } | ||
542 | |||
521 | /* store full nanoseconds into xtime after rounding it up and | 543 | /* store full nanoseconds into xtime after rounding it up and |
522 | * add the remainder to the error difference. | 544 | * add the remainder to the error difference. |
523 | */ | 545 | */ |
diff --git a/kernel/user.c b/kernel/user.c index 39d6159fae43..cec2224bc9f5 100644 --- a/kernel/user.c +++ b/kernel/user.c | |||
@@ -101,6 +101,8 @@ static int sched_create_user(struct user_struct *up) | |||
101 | if (IS_ERR(up->tg)) | 101 | if (IS_ERR(up->tg)) |
102 | rc = -ENOMEM; | 102 | rc = -ENOMEM; |
103 | 103 | ||
104 | set_tg_uid(up); | ||
105 | |||
104 | return rc; | 106 | return rc; |
105 | } | 107 | } |
106 | 108 | ||
@@ -220,8 +220,14 @@ build_up: | |||
220 | */ | 220 | */ |
221 | while ((layers < (MAX_LEVEL - 1)) && (id >= (1 << (layers*IDR_BITS)))) { | 221 | while ((layers < (MAX_LEVEL - 1)) && (id >= (1 << (layers*IDR_BITS)))) { |
222 | layers++; | 222 | layers++; |
223 | if (!p->count) | 223 | if (!p->count) { |
224 | /* special case: if the tree is currently empty, | ||
225 | * then we grow the tree by moving the top node | ||
226 | * upwards. | ||
227 | */ | ||
228 | p->layer++; | ||
224 | continue; | 229 | continue; |
230 | } | ||
225 | if (!(new = get_from_free_list(idp))) { | 231 | if (!(new = get_from_free_list(idp))) { |
226 | /* | 232 | /* |
227 | * The allocation failed. If we built part of | 233 | * The allocation failed. If we built part of |
diff --git a/lib/percpu_counter.c b/lib/percpu_counter.c index a8663890a88c..b255b939bc1b 100644 --- a/lib/percpu_counter.c +++ b/lib/percpu_counter.c | |||
@@ -62,10 +62,7 @@ s64 __percpu_counter_sum(struct percpu_counter *fbc) | |||
62 | for_each_online_cpu(cpu) { | 62 | for_each_online_cpu(cpu) { |
63 | s32 *pcount = per_cpu_ptr(fbc->counters, cpu); | 63 | s32 *pcount = per_cpu_ptr(fbc->counters, cpu); |
64 | ret += *pcount; | 64 | ret += *pcount; |
65 | *pcount = 0; | ||
66 | } | 65 | } |
67 | fbc->count = ret; | ||
68 | |||
69 | spin_unlock(&fbc->lock); | 66 | spin_unlock(&fbc->lock); |
70 | return ret; | 67 | return ret; |
71 | } | 68 | } |
@@ -104,13 +101,13 @@ void percpu_counter_destroy(struct percpu_counter *fbc) | |||
104 | if (!fbc->counters) | 101 | if (!fbc->counters) |
105 | return; | 102 | return; |
106 | 103 | ||
107 | free_percpu(fbc->counters); | ||
108 | fbc->counters = NULL; | ||
109 | #ifdef CONFIG_HOTPLUG_CPU | 104 | #ifdef CONFIG_HOTPLUG_CPU |
110 | mutex_lock(&percpu_counters_lock); | 105 | mutex_lock(&percpu_counters_lock); |
111 | list_del(&fbc->list); | 106 | list_del(&fbc->list); |
112 | mutex_unlock(&percpu_counters_lock); | 107 | mutex_unlock(&percpu_counters_lock); |
113 | #endif | 108 | #endif |
109 | free_percpu(fbc->counters); | ||
110 | fbc->counters = NULL; | ||
114 | } | 111 | } |
115 | EXPORT_SYMBOL(percpu_counter_destroy); | 112 | EXPORT_SYMBOL(percpu_counter_destroy); |
116 | 113 | ||
diff --git a/mm/backing-dev.c b/mm/backing-dev.c index 2a56124dbc28..801c08b046e6 100644 --- a/mm/backing-dev.c +++ b/mm/backing-dev.c | |||
@@ -176,7 +176,7 @@ int bdi_register(struct backing_dev_info *bdi, struct device *parent, | |||
176 | int ret = 0; | 176 | int ret = 0; |
177 | struct device *dev; | 177 | struct device *dev; |
178 | 178 | ||
179 | if (WARN_ON(bdi->dev)) | 179 | if (bdi->dev) /* The driver needs to use separate queues per device */ |
180 | goto exit; | 180 | goto exit; |
181 | 181 | ||
182 | va_start(args, fmt); | 182 | va_start(args, fmt); |
diff --git a/mm/migrate.c b/mm/migrate.c index 1e0d6b237f44..d8f07667fc80 100644 --- a/mm/migrate.c +++ b/mm/migrate.c | |||
@@ -987,25 +987,18 @@ out: | |||
987 | /* | 987 | /* |
988 | * Determine the nodes of an array of pages and store it in an array of status. | 988 | * Determine the nodes of an array of pages and store it in an array of status. |
989 | */ | 989 | */ |
990 | static int do_pages_stat(struct mm_struct *mm, unsigned long nr_pages, | 990 | static void do_pages_stat_array(struct mm_struct *mm, unsigned long nr_pages, |
991 | const void __user * __user *pages, | 991 | const void __user **pages, int *status) |
992 | int __user *status) | ||
993 | { | 992 | { |
994 | unsigned long i; | 993 | unsigned long i; |
995 | int err; | ||
996 | 994 | ||
997 | down_read(&mm->mmap_sem); | 995 | down_read(&mm->mmap_sem); |
998 | 996 | ||
999 | for (i = 0; i < nr_pages; i++) { | 997 | for (i = 0; i < nr_pages; i++) { |
1000 | const void __user *p; | 998 | unsigned long addr = (unsigned long)(*pages); |
1001 | unsigned long addr; | ||
1002 | struct vm_area_struct *vma; | 999 | struct vm_area_struct *vma; |
1003 | struct page *page; | 1000 | struct page *page; |
1004 | 1001 | int err; | |
1005 | err = -EFAULT; | ||
1006 | if (get_user(p, pages+i)) | ||
1007 | goto out; | ||
1008 | addr = (unsigned long) p; | ||
1009 | 1002 | ||
1010 | vma = find_vma(mm, addr); | 1003 | vma = find_vma(mm, addr); |
1011 | if (!vma) | 1004 | if (!vma) |
@@ -1024,12 +1017,52 @@ static int do_pages_stat(struct mm_struct *mm, unsigned long nr_pages, | |||
1024 | 1017 | ||
1025 | err = page_to_nid(page); | 1018 | err = page_to_nid(page); |
1026 | set_status: | 1019 | set_status: |
1027 | put_user(err, status+i); | 1020 | *status = err; |
1021 | |||
1022 | pages++; | ||
1023 | status++; | ||
1024 | } | ||
1025 | |||
1026 | up_read(&mm->mmap_sem); | ||
1027 | } | ||
1028 | |||
1029 | /* | ||
1030 | * Determine the nodes of a user array of pages and store it in | ||
1031 | * a user array of status. | ||
1032 | */ | ||
1033 | static int do_pages_stat(struct mm_struct *mm, unsigned long nr_pages, | ||
1034 | const void __user * __user *pages, | ||
1035 | int __user *status) | ||
1036 | { | ||
1037 | #define DO_PAGES_STAT_CHUNK_NR 16 | ||
1038 | const void __user *chunk_pages[DO_PAGES_STAT_CHUNK_NR]; | ||
1039 | int chunk_status[DO_PAGES_STAT_CHUNK_NR]; | ||
1040 | unsigned long i, chunk_nr = DO_PAGES_STAT_CHUNK_NR; | ||
1041 | int err; | ||
1042 | |||
1043 | for (i = 0; i < nr_pages; i += chunk_nr) { | ||
1044 | if (chunk_nr + i > nr_pages) | ||
1045 | chunk_nr = nr_pages - i; | ||
1046 | |||
1047 | err = copy_from_user(chunk_pages, &pages[i], | ||
1048 | chunk_nr * sizeof(*chunk_pages)); | ||
1049 | if (err) { | ||
1050 | err = -EFAULT; | ||
1051 | goto out; | ||
1052 | } | ||
1053 | |||
1054 | do_pages_stat_array(mm, chunk_nr, chunk_pages, chunk_status); | ||
1055 | |||
1056 | err = copy_to_user(&status[i], chunk_status, | ||
1057 | chunk_nr * sizeof(*chunk_status)); | ||
1058 | if (err) { | ||
1059 | err = -EFAULT; | ||
1060 | goto out; | ||
1061 | } | ||
1028 | } | 1062 | } |
1029 | err = 0; | 1063 | err = 0; |
1030 | 1064 | ||
1031 | out: | 1065 | out: |
1032 | up_read(&mm->mmap_sem); | ||
1033 | return err; | 1066 | return err; |
1034 | } | 1067 | } |
1035 | 1068 | ||
diff --git a/mm/page_cgroup.c b/mm/page_cgroup.c index 0b3cbf090a67..ab27ff750519 100644 --- a/mm/page_cgroup.c +++ b/mm/page_cgroup.c | |||
@@ -49,6 +49,9 @@ static int __init alloc_node_page_cgroup(int nid) | |||
49 | start_pfn = NODE_DATA(nid)->node_start_pfn; | 49 | start_pfn = NODE_DATA(nid)->node_start_pfn; |
50 | nr_pages = NODE_DATA(nid)->node_spanned_pages; | 50 | nr_pages = NODE_DATA(nid)->node_spanned_pages; |
51 | 51 | ||
52 | if (!nr_pages) | ||
53 | return 0; | ||
54 | |||
52 | table_size = sizeof(struct page_cgroup) * nr_pages; | 55 | table_size = sizeof(struct page_cgroup) * nr_pages; |
53 | 56 | ||
54 | base = __alloc_bootmem_node_nopanic(NODE_DATA(nid), | 57 | base = __alloc_bootmem_node_nopanic(NODE_DATA(nid), |
@@ -3597,7 +3597,7 @@ static int list_locations(struct kmem_cache *s, char *buf, | |||
3597 | for (i = 0; i < t.count; i++) { | 3597 | for (i = 0; i < t.count; i++) { |
3598 | struct location *l = &t.loc[i]; | 3598 | struct location *l = &t.loc[i]; |
3599 | 3599 | ||
3600 | if (len > PAGE_SIZE - 100) | 3600 | if (len > PAGE_SIZE - KSYM_SYMBOL_LEN - 100) |
3601 | break; | 3601 | break; |
3602 | len += sprintf(buf + len, "%7ld ", l->count); | 3602 | len += sprintf(buf + len, "%7ld ", l->count); |
3603 | 3603 | ||
@@ -299,7 +299,6 @@ void lru_add_drain(void) | |||
299 | put_cpu(); | 299 | put_cpu(); |
300 | } | 300 | } |
301 | 301 | ||
302 | #if defined(CONFIG_NUMA) || defined(CONFIG_UNEVICTABLE_LRU) | ||
303 | static void lru_add_drain_per_cpu(struct work_struct *dummy) | 302 | static void lru_add_drain_per_cpu(struct work_struct *dummy) |
304 | { | 303 | { |
305 | lru_add_drain(); | 304 | lru_add_drain(); |
@@ -313,18 +312,6 @@ int lru_add_drain_all(void) | |||
313 | return schedule_on_each_cpu(lru_add_drain_per_cpu); | 312 | return schedule_on_each_cpu(lru_add_drain_per_cpu); |
314 | } | 313 | } |
315 | 314 | ||
316 | #else | ||
317 | |||
318 | /* | ||
319 | * Returns 0 for success | ||
320 | */ | ||
321 | int lru_add_drain_all(void) | ||
322 | { | ||
323 | lru_add_drain(); | ||
324 | return 0; | ||
325 | } | ||
326 | #endif | ||
327 | |||
328 | /* | 315 | /* |
329 | * Batched page_cache_release(). Decrement the reference count on all the | 316 | * Batched page_cache_release(). Decrement the reference count on all the |
330 | * passed pages. If it fell to zero then remove the page from the LRU and | 317 | * passed pages. If it fell to zero then remove the page from the LRU and |
diff --git a/mm/vmalloc.c b/mm/vmalloc.c index f3f6e0758562..1ddb77ba3995 100644 --- a/mm/vmalloc.c +++ b/mm/vmalloc.c | |||
@@ -1717,7 +1717,7 @@ static int s_show(struct seq_file *m, void *p) | |||
1717 | v->addr, v->addr + v->size, v->size); | 1717 | v->addr, v->addr + v->size, v->size); |
1718 | 1718 | ||
1719 | if (v->caller) { | 1719 | if (v->caller) { |
1720 | char buff[2 * KSYM_NAME_LEN]; | 1720 | char buff[KSYM_SYMBOL_LEN]; |
1721 | 1721 | ||
1722 | seq_putc(m, ' '); | 1722 | seq_putc(m, ' '); |
1723 | sprint_symbol(buff, (unsigned long)v->caller); | 1723 | sprint_symbol(buff, (unsigned long)v->caller); |
diff --git a/net/atm/svc.c b/net/atm/svc.c index de1e4f2f3a43..8fb54dc870b3 100644 --- a/net/atm/svc.c +++ b/net/atm/svc.c | |||
@@ -293,7 +293,10 @@ static int svc_listen(struct socket *sock,int backlog) | |||
293 | error = -EINVAL; | 293 | error = -EINVAL; |
294 | goto out; | 294 | goto out; |
295 | } | 295 | } |
296 | vcc_insert_socket(sk); | 296 | if (test_bit(ATM_VF_LISTEN, &vcc->flags)) { |
297 | error = -EADDRINUSE; | ||
298 | goto out; | ||
299 | } | ||
297 | set_bit(ATM_VF_WAITING, &vcc->flags); | 300 | set_bit(ATM_VF_WAITING, &vcc->flags); |
298 | prepare_to_wait(sk->sk_sleep, &wait, TASK_UNINTERRUPTIBLE); | 301 | prepare_to_wait(sk->sk_sleep, &wait, TASK_UNINTERRUPTIBLE); |
299 | sigd_enq(vcc,as_listen,NULL,NULL,&vcc->local); | 302 | sigd_enq(vcc,as_listen,NULL,NULL,&vcc->local); |
@@ -307,6 +310,7 @@ static int svc_listen(struct socket *sock,int backlog) | |||
307 | goto out; | 310 | goto out; |
308 | } | 311 | } |
309 | set_bit(ATM_VF_LISTEN,&vcc->flags); | 312 | set_bit(ATM_VF_LISTEN,&vcc->flags); |
313 | vcc_insert_socket(sk); | ||
310 | sk->sk_max_ack_backlog = backlog > 0 ? backlog : ATM_BACKLOG_DEFAULT; | 314 | sk->sk_max_ack_backlog = backlog > 0 ? backlog : ATM_BACKLOG_DEFAULT; |
311 | error = -sk->sk_err; | 315 | error = -sk->sk_err; |
312 | out: | 316 | out: |
diff --git a/net/can/af_can.c b/net/can/af_can.c index 7d4d2b3c137e..3dadb338addd 100644 --- a/net/can/af_can.c +++ b/net/can/af_can.c | |||
@@ -319,23 +319,52 @@ static struct dev_rcv_lists *find_dev_rcv_lists(struct net_device *dev) | |||
319 | return n ? d : NULL; | 319 | return n ? d : NULL; |
320 | } | 320 | } |
321 | 321 | ||
322 | /** | ||
323 | * find_rcv_list - determine optimal filterlist inside device filter struct | ||
324 | * @can_id: pointer to CAN identifier of a given can_filter | ||
325 | * @mask: pointer to CAN mask of a given can_filter | ||
326 | * @d: pointer to the device filter struct | ||
327 | * | ||
328 | * Description: | ||
329 | * Returns the optimal filterlist to reduce the filter handling in the | ||
330 | * receive path. This function is called by service functions that need | ||
331 | * to register or unregister a can_filter in the filter lists. | ||
332 | * | ||
333 | * A filter matches in general, when | ||
334 | * | ||
335 | * <received_can_id> & mask == can_id & mask | ||
336 | * | ||
337 | * so every bit set in the mask (even CAN_EFF_FLAG, CAN_RTR_FLAG) describe | ||
338 | * relevant bits for the filter. | ||
339 | * | ||
340 | * The filter can be inverted (CAN_INV_FILTER bit set in can_id) or it can | ||
341 | * filter for error frames (CAN_ERR_FLAG bit set in mask). For error frames | ||
342 | * there is a special filterlist and a special rx path filter handling. | ||
343 | * | ||
344 | * Return: | ||
345 | * Pointer to optimal filterlist for the given can_id/mask pair. | ||
346 | * Constistency checked mask. | ||
347 | * Reduced can_id to have a preprocessed filter compare value. | ||
348 | */ | ||
322 | static struct hlist_head *find_rcv_list(canid_t *can_id, canid_t *mask, | 349 | static struct hlist_head *find_rcv_list(canid_t *can_id, canid_t *mask, |
323 | struct dev_rcv_lists *d) | 350 | struct dev_rcv_lists *d) |
324 | { | 351 | { |
325 | canid_t inv = *can_id & CAN_INV_FILTER; /* save flag before masking */ | 352 | canid_t inv = *can_id & CAN_INV_FILTER; /* save flag before masking */ |
326 | 353 | ||
327 | /* filter error frames */ | 354 | /* filter for error frames in extra filterlist */ |
328 | if (*mask & CAN_ERR_FLAG) { | 355 | if (*mask & CAN_ERR_FLAG) { |
329 | /* clear CAN_ERR_FLAG in list entry */ | 356 | /* clear CAN_ERR_FLAG in filter entry */ |
330 | *mask &= CAN_ERR_MASK; | 357 | *mask &= CAN_ERR_MASK; |
331 | return &d->rx[RX_ERR]; | 358 | return &d->rx[RX_ERR]; |
332 | } | 359 | } |
333 | 360 | ||
334 | /* ensure valid values in can_mask */ | 361 | /* with cleared CAN_ERR_FLAG we have a simple mask/value filterpair */ |
335 | if (*mask & CAN_EFF_FLAG) | 362 | |
336 | *mask &= (CAN_EFF_MASK | CAN_EFF_FLAG | CAN_RTR_FLAG); | 363 | #define CAN_EFF_RTR_FLAGS (CAN_EFF_FLAG | CAN_RTR_FLAG) |
337 | else | 364 | |
338 | *mask &= (CAN_SFF_MASK | CAN_RTR_FLAG); | 365 | /* ensure valid values in can_mask for 'SFF only' frame filtering */ |
366 | if ((*mask & CAN_EFF_FLAG) && !(*can_id & CAN_EFF_FLAG)) | ||
367 | *mask &= (CAN_SFF_MASK | CAN_EFF_RTR_FLAGS); | ||
339 | 368 | ||
340 | /* reduce condition testing at receive time */ | 369 | /* reduce condition testing at receive time */ |
341 | *can_id &= *mask; | 370 | *can_id &= *mask; |
@@ -348,15 +377,19 @@ static struct hlist_head *find_rcv_list(canid_t *can_id, canid_t *mask, | |||
348 | if (!(*mask)) | 377 | if (!(*mask)) |
349 | return &d->rx[RX_ALL]; | 378 | return &d->rx[RX_ALL]; |
350 | 379 | ||
351 | /* use extra filterset for the subscription of exactly *ONE* can_id */ | 380 | /* extra filterlists for the subscription of a single non-RTR can_id */ |
352 | if (*can_id & CAN_EFF_FLAG) { | 381 | if (((*mask & CAN_EFF_RTR_FLAGS) == CAN_EFF_RTR_FLAGS) |
353 | if (*mask == (CAN_EFF_MASK | CAN_EFF_FLAG)) { | 382 | && !(*can_id & CAN_RTR_FLAG)) { |
354 | /* RFC: a use-case for hash-tables in the future? */ | 383 | |
355 | return &d->rx[RX_EFF]; | 384 | if (*can_id & CAN_EFF_FLAG) { |
385 | if (*mask == (CAN_EFF_MASK | CAN_EFF_RTR_FLAGS)) { | ||
386 | /* RFC: a future use-case for hash-tables? */ | ||
387 | return &d->rx[RX_EFF]; | ||
388 | } | ||
389 | } else { | ||
390 | if (*mask == (CAN_SFF_MASK | CAN_EFF_RTR_FLAGS)) | ||
391 | return &d->rx_sff[*can_id]; | ||
356 | } | 392 | } |
357 | } else { | ||
358 | if (*mask == CAN_SFF_MASK) | ||
359 | return &d->rx_sff[*can_id]; | ||
360 | } | 393 | } |
361 | 394 | ||
362 | /* default: filter via can_id/can_mask */ | 395 | /* default: filter via can_id/can_mask */ |
@@ -589,7 +622,10 @@ static int can_rcv_filter(struct dev_rcv_lists *d, struct sk_buff *skb) | |||
589 | } | 622 | } |
590 | } | 623 | } |
591 | 624 | ||
592 | /* check CAN_ID specific entries */ | 625 | /* check filterlists for single non-RTR can_ids */ |
626 | if (can_id & CAN_RTR_FLAG) | ||
627 | return matches; | ||
628 | |||
593 | if (can_id & CAN_EFF_FLAG) { | 629 | if (can_id & CAN_EFF_FLAG) { |
594 | hlist_for_each_entry_rcu(r, n, &d->rx[RX_EFF], list) { | 630 | hlist_for_each_entry_rcu(r, n, &d->rx[RX_EFF], list) { |
595 | if (r->can_id == can_id) { | 631 | if (r->can_id == can_id) { |
diff --git a/net/can/bcm.c b/net/can/bcm.c index d0dd382001e2..da0d426c0ce4 100644 --- a/net/can/bcm.c +++ b/net/can/bcm.c | |||
@@ -64,10 +64,11 @@ | |||
64 | #define BCM_CAN_DLC_MASK 0x0F /* clean private flags in can_dlc by masking */ | 64 | #define BCM_CAN_DLC_MASK 0x0F /* clean private flags in can_dlc by masking */ |
65 | 65 | ||
66 | /* get best masking value for can_rx_register() for a given single can_id */ | 66 | /* get best masking value for can_rx_register() for a given single can_id */ |
67 | #define REGMASK(id) ((id & CAN_RTR_FLAG) | ((id & CAN_EFF_FLAG) ? \ | 67 | #define REGMASK(id) ((id & CAN_EFF_FLAG) ? \ |
68 | (CAN_EFF_MASK | CAN_EFF_FLAG) : CAN_SFF_MASK)) | 68 | (CAN_EFF_MASK | CAN_EFF_FLAG | CAN_RTR_FLAG) : \ |
69 | (CAN_SFF_MASK | CAN_EFF_FLAG | CAN_RTR_FLAG)) | ||
69 | 70 | ||
70 | #define CAN_BCM_VERSION "20080415" | 71 | #define CAN_BCM_VERSION CAN_VERSION |
71 | static __initdata const char banner[] = KERN_INFO | 72 | static __initdata const char banner[] = KERN_INFO |
72 | "can: broadcast manager protocol (rev " CAN_BCM_VERSION ")\n"; | 73 | "can: broadcast manager protocol (rev " CAN_BCM_VERSION ")\n"; |
73 | 74 | ||
diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c index 85b07eba1879..fe3b4bdfd251 100644 --- a/net/ipv4/tcp_output.c +++ b/net/ipv4/tcp_output.c | |||
@@ -722,8 +722,7 @@ static void tcp_queue_skb(struct sock *sk, struct sk_buff *skb) | |||
722 | static void tcp_set_skb_tso_segs(struct sock *sk, struct sk_buff *skb, | 722 | static void tcp_set_skb_tso_segs(struct sock *sk, struct sk_buff *skb, |
723 | unsigned int mss_now) | 723 | unsigned int mss_now) |
724 | { | 724 | { |
725 | if (skb->len <= mss_now || !sk_can_gso(sk) || | 725 | if (skb->len <= mss_now || !sk_can_gso(sk)) { |
726 | tcp_urg_mode(tcp_sk(sk))) { | ||
727 | /* Avoid the costly divide in the normal | 726 | /* Avoid the costly divide in the normal |
728 | * non-TSO case. | 727 | * non-TSO case. |
729 | */ | 728 | */ |
@@ -1029,10 +1028,6 @@ unsigned int tcp_sync_mss(struct sock *sk, u32 pmtu) | |||
1029 | 1028 | ||
1030 | /* Compute the current effective MSS, taking SACKs and IP options, | 1029 | /* Compute the current effective MSS, taking SACKs and IP options, |
1031 | * and even PMTU discovery events into account. | 1030 | * and even PMTU discovery events into account. |
1032 | * | ||
1033 | * LARGESEND note: !tcp_urg_mode is overkill, only frames up to snd_up | ||
1034 | * cannot be large. However, taking into account rare use of URG, this | ||
1035 | * is not a big flaw. | ||
1036 | */ | 1031 | */ |
1037 | unsigned int tcp_current_mss(struct sock *sk, int large_allowed) | 1032 | unsigned int tcp_current_mss(struct sock *sk, int large_allowed) |
1038 | { | 1033 | { |
@@ -1047,7 +1042,7 @@ unsigned int tcp_current_mss(struct sock *sk, int large_allowed) | |||
1047 | 1042 | ||
1048 | mss_now = tp->mss_cache; | 1043 | mss_now = tp->mss_cache; |
1049 | 1044 | ||
1050 | if (large_allowed && sk_can_gso(sk) && !tcp_urg_mode(tp)) | 1045 | if (large_allowed && sk_can_gso(sk)) |
1051 | doing_tso = 1; | 1046 | doing_tso = 1; |
1052 | 1047 | ||
1053 | if (dst) { | 1048 | if (dst) { |
@@ -1164,9 +1159,7 @@ static int tcp_init_tso_segs(struct sock *sk, struct sk_buff *skb, | |||
1164 | { | 1159 | { |
1165 | int tso_segs = tcp_skb_pcount(skb); | 1160 | int tso_segs = tcp_skb_pcount(skb); |
1166 | 1161 | ||
1167 | if (!tso_segs || | 1162 | if (!tso_segs || (tso_segs > 1 && tcp_skb_mss(skb) != mss_now)) { |
1168 | (tso_segs > 1 && (tcp_skb_mss(skb) != mss_now || | ||
1169 | tcp_urg_mode(tcp_sk(sk))))) { | ||
1170 | tcp_set_skb_tso_segs(sk, skb, mss_now); | 1163 | tcp_set_skb_tso_segs(sk, skb, mss_now); |
1171 | tso_segs = tcp_skb_pcount(skb); | 1164 | tso_segs = tcp_skb_pcount(skb); |
1172 | } | 1165 | } |
@@ -1519,6 +1512,10 @@ static int tcp_mtu_probe(struct sock *sk) | |||
1519 | * send_head. This happens as incoming acks open up the remote | 1512 | * send_head. This happens as incoming acks open up the remote |
1520 | * window for us. | 1513 | * window for us. |
1521 | * | 1514 | * |
1515 | * LARGESEND note: !tcp_urg_mode is overkill, only frames between | ||
1516 | * snd_up-64k-mss .. snd_up cannot be large. However, taking into | ||
1517 | * account rare use of URG, this is not a big flaw. | ||
1518 | * | ||
1522 | * Returns 1, if no segments are in flight and we have queued segments, but | 1519 | * Returns 1, if no segments are in flight and we have queued segments, but |
1523 | * cannot send anything now because of SWS or another problem. | 1520 | * cannot send anything now because of SWS or another problem. |
1524 | */ | 1521 | */ |
@@ -1570,7 +1567,7 @@ static int tcp_write_xmit(struct sock *sk, unsigned int mss_now, int nonagle) | |||
1570 | } | 1567 | } |
1571 | 1568 | ||
1572 | limit = mss_now; | 1569 | limit = mss_now; |
1573 | if (tso_segs > 1) | 1570 | if (tso_segs > 1 && !tcp_urg_mode(tp)) |
1574 | limit = tcp_mss_split_point(sk, skb, mss_now, | 1571 | limit = tcp_mss_split_point(sk, skb, mss_now, |
1575 | cwnd_quota); | 1572 | cwnd_quota); |
1576 | 1573 | ||
@@ -1619,6 +1616,7 @@ void __tcp_push_pending_frames(struct sock *sk, unsigned int cur_mss, | |||
1619 | */ | 1616 | */ |
1620 | void tcp_push_one(struct sock *sk, unsigned int mss_now) | 1617 | void tcp_push_one(struct sock *sk, unsigned int mss_now) |
1621 | { | 1618 | { |
1619 | struct tcp_sock *tp = tcp_sk(sk); | ||
1622 | struct sk_buff *skb = tcp_send_head(sk); | 1620 | struct sk_buff *skb = tcp_send_head(sk); |
1623 | unsigned int tso_segs, cwnd_quota; | 1621 | unsigned int tso_segs, cwnd_quota; |
1624 | 1622 | ||
@@ -1633,7 +1631,7 @@ void tcp_push_one(struct sock *sk, unsigned int mss_now) | |||
1633 | BUG_ON(!tso_segs); | 1631 | BUG_ON(!tso_segs); |
1634 | 1632 | ||
1635 | limit = mss_now; | 1633 | limit = mss_now; |
1636 | if (tso_segs > 1) | 1634 | if (tso_segs > 1 && !tcp_urg_mode(tp)) |
1637 | limit = tcp_mss_split_point(sk, skb, mss_now, | 1635 | limit = tcp_mss_split_point(sk, skb, mss_now, |
1638 | cwnd_quota); | 1636 | cwnd_quota); |
1639 | 1637 | ||
diff --git a/net/ipv4/tcp_vegas.c b/net/ipv4/tcp_vegas.c index 14504dada116..7cd22262de3a 100644 --- a/net/ipv4/tcp_vegas.c +++ b/net/ipv4/tcp_vegas.c | |||
@@ -326,6 +326,8 @@ static void tcp_vegas_cong_avoid(struct sock *sk, u32 ack, u32 in_flight) | |||
326 | tp->snd_cwnd = 2; | 326 | tp->snd_cwnd = 2; |
327 | else if (tp->snd_cwnd > tp->snd_cwnd_clamp) | 327 | else if (tp->snd_cwnd > tp->snd_cwnd_clamp) |
328 | tp->snd_cwnd = tp->snd_cwnd_clamp; | 328 | tp->snd_cwnd = tp->snd_cwnd_clamp; |
329 | |||
330 | tp->snd_ssthresh = tcp_current_ssthresh(sk); | ||
329 | } | 331 | } |
330 | 332 | ||
331 | /* Wipe the slate clean for the next RTT. */ | 333 | /* Wipe the slate clean for the next RTT. */ |
diff --git a/net/mac80211/sta_info.c b/net/mac80211/sta_info.c index 7fef8ea1f5ec..d254446b85b5 100644 --- a/net/mac80211/sta_info.c +++ b/net/mac80211/sta_info.c | |||
@@ -99,7 +99,7 @@ struct sta_info *sta_info_get(struct ieee80211_local *local, const u8 *addr) | |||
99 | 99 | ||
100 | sta = rcu_dereference(local->sta_hash[STA_HASH(addr)]); | 100 | sta = rcu_dereference(local->sta_hash[STA_HASH(addr)]); |
101 | while (sta) { | 101 | while (sta) { |
102 | if (compare_ether_addr(sta->sta.addr, addr) == 0) | 102 | if (memcmp(sta->sta.addr, addr, ETH_ALEN) == 0) |
103 | break; | 103 | break; |
104 | sta = rcu_dereference(sta->hnext); | 104 | sta = rcu_dereference(sta->hnext); |
105 | } | 105 | } |
diff --git a/net/netfilter/xt_socket.c b/net/netfilter/xt_socket.c index 02a8fed21082..1acc089be7e9 100644 --- a/net/netfilter/xt_socket.c +++ b/net/netfilter/xt_socket.c | |||
@@ -141,7 +141,7 @@ socket_mt(const struct sk_buff *skb, const struct xt_match_param *par) | |||
141 | sk = nf_tproxy_get_sock_v4(dev_net(skb->dev), protocol, | 141 | sk = nf_tproxy_get_sock_v4(dev_net(skb->dev), protocol, |
142 | saddr, daddr, sport, dport, par->in, false); | 142 | saddr, daddr, sport, dport, par->in, false); |
143 | if (sk != NULL) { | 143 | if (sk != NULL) { |
144 | bool wildcard = (inet_sk(sk)->rcv_saddr == 0); | 144 | bool wildcard = (sk->sk_state != TCP_TIME_WAIT && inet_sk(sk)->rcv_saddr == 0); |
145 | 145 | ||
146 | nf_tproxy_put_sock(sk); | 146 | nf_tproxy_put_sock(sk); |
147 | if (wildcard) | 147 | if (wildcard) |
diff --git a/net/netlabel/netlabel_unlabeled.c b/net/netlabel/netlabel_unlabeled.c index e8a5c32b0f10..90c8506a0aac 100644 --- a/net/netlabel/netlabel_unlabeled.c +++ b/net/netlabel/netlabel_unlabeled.c | |||
@@ -574,9 +574,10 @@ static int netlbl_unlhsh_remove_addr4(struct net *net, | |||
574 | list_entry = netlbl_af4list_remove(addr->s_addr, mask->s_addr, | 574 | list_entry = netlbl_af4list_remove(addr->s_addr, mask->s_addr, |
575 | &iface->addr4_list); | 575 | &iface->addr4_list); |
576 | spin_unlock(&netlbl_unlhsh_lock); | 576 | spin_unlock(&netlbl_unlhsh_lock); |
577 | if (list_entry == NULL) | 577 | if (list_entry != NULL) |
578 | entry = netlbl_unlhsh_addr4_entry(list_entry); | ||
579 | else | ||
578 | ret_val = -ENOENT; | 580 | ret_val = -ENOENT; |
579 | entry = netlbl_unlhsh_addr4_entry(list_entry); | ||
580 | 581 | ||
581 | audit_buf = netlbl_audit_start_common(AUDIT_MAC_UNLBL_STCDEL, | 582 | audit_buf = netlbl_audit_start_common(AUDIT_MAC_UNLBL_STCDEL, |
582 | audit_info); | 583 | audit_info); |
@@ -634,9 +635,10 @@ static int netlbl_unlhsh_remove_addr6(struct net *net, | |||
634 | spin_lock(&netlbl_unlhsh_lock); | 635 | spin_lock(&netlbl_unlhsh_lock); |
635 | list_entry = netlbl_af6list_remove(addr, mask, &iface->addr6_list); | 636 | list_entry = netlbl_af6list_remove(addr, mask, &iface->addr6_list); |
636 | spin_unlock(&netlbl_unlhsh_lock); | 637 | spin_unlock(&netlbl_unlhsh_lock); |
637 | if (list_entry == NULL) | 638 | if (list_entry != NULL) |
639 | entry = netlbl_unlhsh_addr6_entry(list_entry); | ||
640 | else | ||
638 | ret_val = -ENOENT; | 641 | ret_val = -ENOENT; |
639 | entry = netlbl_unlhsh_addr6_entry(list_entry); | ||
640 | 642 | ||
641 | audit_buf = netlbl_audit_start_common(AUDIT_MAC_UNLBL_STCDEL, | 643 | audit_buf = netlbl_audit_start_common(AUDIT_MAC_UNLBL_STCDEL, |
642 | audit_info); | 644 | audit_info); |
diff --git a/net/phonet/pn_netlink.c b/net/phonet/pn_netlink.c index b1770d66bc8d..242fe8f8c322 100644 --- a/net/phonet/pn_netlink.c +++ b/net/phonet/pn_netlink.c | |||
@@ -123,6 +123,7 @@ nla_put_failure: | |||
123 | 123 | ||
124 | static int getaddr_dumpit(struct sk_buff *skb, struct netlink_callback *cb) | 124 | static int getaddr_dumpit(struct sk_buff *skb, struct netlink_callback *cb) |
125 | { | 125 | { |
126 | struct net *net = sock_net(skb->sk); | ||
126 | struct phonet_device *pnd; | 127 | struct phonet_device *pnd; |
127 | int dev_idx = 0, dev_start_idx = cb->args[0]; | 128 | int dev_idx = 0, dev_start_idx = cb->args[0]; |
128 | int addr_idx = 0, addr_start_idx = cb->args[1]; | 129 | int addr_idx = 0, addr_start_idx = cb->args[1]; |
@@ -131,6 +132,8 @@ static int getaddr_dumpit(struct sk_buff *skb, struct netlink_callback *cb) | |||
131 | list_for_each_entry(pnd, &pndevs.list, list) { | 132 | list_for_each_entry(pnd, &pndevs.list, list) { |
132 | u8 addr; | 133 | u8 addr; |
133 | 134 | ||
135 | if (!net_eq(dev_net(pnd->netdev), net)) | ||
136 | continue; | ||
134 | if (dev_idx > dev_start_idx) | 137 | if (dev_idx > dev_start_idx) |
135 | addr_start_idx = 0; | 138 | addr_start_idx = 0; |
136 | if (dev_idx++ < dev_start_idx) | 139 | if (dev_idx++ < dev_start_idx) |
diff --git a/net/xfrm/xfrm_policy.c b/net/xfrm/xfrm_policy.c index 058f04f54b90..fb216c9adf86 100644 --- a/net/xfrm/xfrm_policy.c +++ b/net/xfrm/xfrm_policy.c | |||
@@ -817,6 +817,7 @@ int xfrm_policy_flush(u8 type, struct xfrm_audit *audit_info) | |||
817 | continue; | 817 | continue; |
818 | hlist_del(&pol->bydst); | 818 | hlist_del(&pol->bydst); |
819 | hlist_del(&pol->byidx); | 819 | hlist_del(&pol->byidx); |
820 | list_del(&pol->walk.all); | ||
820 | write_unlock_bh(&xfrm_policy_lock); | 821 | write_unlock_bh(&xfrm_policy_lock); |
821 | 822 | ||
822 | xfrm_audit_policy_delete(pol, 1, audit_info->loginuid, | 823 | xfrm_audit_policy_delete(pol, 1, audit_info->loginuid, |