--- linux-2.6.34/arch/x86/boot/compressed/Makefile 2010-07-09 19:52:29.104797694 -0700 +++ linux-2.6.34.dna/arch/x86/boot/compressed/Makefile 2010-07-08 18:05:58.598319598 -0700 @@ -1,3 +1,4 @@ +CC=icc # # linux/arch/x86/boot/compressed/Makefile # @@ -6,7 +7,7 @@ targets := vmlinux.lds vmlinux vmlinux.bin vmlinux.bin.gz vmlinux.bin.bz2 vmlinux.bin.lzma vmlinux.bin.lzo head_$(BITS).o misc.o piggy.o -KBUILD_CFLAGS := -m$(BITS) -D__KERNEL__ $(LINUX_INCLUDE) -O2 +KBUILD_CFLAGS := -m$(BITS) -D__KERNEL__ $(LINUX_INCLUDE) -O3 -no-vec KBUILD_CFLAGS += -fno-strict-aliasing -fPIC KBUILD_CFLAGS += -DDISABLE_BRANCH_PROFILING cflags-$(CONFIG_X86_32) := -march=i386 --- linux-2.6.34/arch/x86/boot/compressed/misc.c 2010-07-09 19:52:29.104797694 -0700 +++ linux-2.6.34.dna/arch/x86/boot/compressed/misc.c 2010-07-08 18:05:58.598319598 -0700 @@ -112,6 +112,7 @@ * gzip declarations */ #define STATIC static +#define HANDLE_ICC #undef memset #undef memcpy --- linux-2.6.34/arch/x86/boot/Makefile 2010-07-09 19:52:29.114421326 -0700 +++ linux-2.6.34.dna/arch/x86/boot/Makefile 2010-07-08 18:05:58.602451181 -0700 @@ -59,16 +59,12 @@ # that way we can complain to the user if the CPU is insufficient. KBUILD_CFLAGS := $(LINUXINCLUDE) -g -Os -D_SETUP -D__KERNEL__ \ -DDISABLE_BRANCH_PROFILING \ - -Wall -Wstrict-prototypes \ - -march=i386 -mregparm=3 \ + -m32 -no-multibyte-chars -march=i386 -mregparm=3 \ -include $(srctree)/$(src)/code16gcc.h \ -fno-strict-aliasing -fomit-frame-pointer \ $(call cc-option, -ffreestanding) \ - $(call cc-option, -fno-toplevel-reorder,\ - $(call cc-option, -fno-unit-at-a-time)) \ $(call cc-option, -fno-stack-protector) \ $(call cc-option, -mpreferred-stack-boundary=2) -KBUILD_CFLAGS += $(call cc-option, -m32) KBUILD_AFLAGS := $(KBUILD_CFLAGS) -D__ASSEMBLY__ GCOV_PROFILE := n @@ -198,3 +194,5 @@ install: sh $(srctree)/$(src)/install.sh $(KERNELRELEASE) $(obj)/bzImage \ System.map "$(INSTALL_PATH)" +CFLAGS_printf.o=-O1 -fno-stack-protector +CFLAGS_video.o=-O1 -fno-stack-protector --- linux-2.6.34/arch/x86/include/asm/current.h 2010-07-09 19:52:29.125532204 -0700 +++ linux-2.6.34.dna/arch/x86/include/asm/current.h 2010-07-08 18:05:58.610530801 -0700 @@ -11,7 +11,7 @@ static __always_inline struct task_struct *get_current(void) { - return percpu_read_stable(current_task); + return percpu_read(current_task); } #define current get_current() --- linux-2.6.34/arch/x86/include/asm/delay.h 2010-07-09 19:52:29.137482435 -0700 +++ linux-2.6.34.dna/arch/x86/include/asm/delay.h 2010-07-08 18:05:58.618780835 -0700 @@ -7,10 +7,6 @@ * Delay routines calling functions in arch/x86/lib/delay.c */ -/* Undefined functions to get compile-time errors */ -extern void __bad_udelay(void); -extern void __bad_ndelay(void); - extern void __udelay(unsigned long usecs); extern void __ndelay(unsigned long nsecs); extern void __const_udelay(unsigned long xloops); @@ -18,12 +14,12 @@ /* 0x10c7 is 2**32 / 1000000 (rounded up) */ #define udelay(n) (__builtin_constant_p(n) ? \ - ((n) > 20000 ? __bad_udelay() : __const_udelay((n) * 0x10c7ul)) : \ + ( __const_udelay((n) * 0x10c7ul)) : \ __udelay(n)) /* 0x5 is 2**32 / 1000000000 (rounded up) */ #define ndelay(n) (__builtin_constant_p(n) ? \ - ((n) > 20000 ? __bad_ndelay() : __const_udelay((n) * 5ul)) : \ + ( __const_udelay((n) * 5ul)) : \ __ndelay(n)) void use_tsc_delay(void); --- linux-2.6.34/arch/x86/include/asm/module.h 2010-07-09 19:52:29.147084545 -0700 +++ linux-2.6.34.dna/arch/x86/include/asm/module.h 2010-07-08 21:35:23.944381842 -0700 @@ -17,8 +17,14 @@ #define MODULE_PROC_FAMILY "586MMX " #elif defined CONFIG_MCORE2 #define MODULE_PROC_FAMILY "CORE2 " +#elif defined CONFIG_M45CORE2 +#define MODULE_PROC_FAMILY "45CORE2 " #elif defined CONFIG_MATOM #define MODULE_PROC_FAMILY "ATOM " +#elif defined CONFIG_MNEHALEM +#define MODULE_PROC_FAMILY "NEHALEM " +#elif defined CONFIG_MSANDYBRIDGE +#define MODULE_PROC_FAMILY "SANDYBRIDGE " #elif defined CONFIG_M686 #define MODULE_PROC_FAMILY "686 " #elif defined CONFIG_MPENTIUMII --- linux-2.6.34/arch/x86/include/asm/percpu.h 2010-07-09 19:52:29.156632991 -0700 +++ linux-2.6.34.dna/arch/x86/include/asm/percpu.h 2010-07-08 18:05:58.630371560 -0700 @@ -48,7 +48,7 @@ #define __percpu_arg(x) "%%"__stringify(__percpu_seg)":%P" #x #define __my_cpu_offset percpu_read(this_cpu_off) #else -#define __percpu_arg(x) "%P" #x +#define __percpu_arg(x) "%" #x #endif /* @@ -161,35 +161,36 @@ } \ } while (0) -#define percpu_from_op(op, var, constraint) \ +#define percpu_from_op(op, var) \ ({ \ typeof(var) pfo_ret__; \ switch (sizeof(var)) { \ case 1: \ asm(op "b "__percpu_arg(1)",%0" \ : "=q" (pfo_ret__) \ - : constraint); \ + : "m" (var)); \ break; \ case 2: \ asm(op "w "__percpu_arg(1)",%0" \ : "=r" (pfo_ret__) \ - : constraint); \ + : "m" (var)); \ break; \ case 4: \ asm(op "l "__percpu_arg(1)",%0" \ : "=r" (pfo_ret__) \ - : constraint); \ + : "m" (var)); \ break; \ case 8: \ asm(op "q "__percpu_arg(1)",%0" \ : "=r" (pfo_ret__) \ - : constraint); \ + : "m" (var)); \ break; \ default: __bad_percpu_size(); \ } \ pfo_ret__; \ }) +#define percpu_read(var) percpu_from_op("mov", var) /* * percpu_read() makes gcc load the percpu variable every time it is * accessed while percpu_read_stable() allows the value to be cached. @@ -199,8 +200,6 @@ * per-thread variables implemented as per-cpu variables and thus * stable for the duration of the respective task. */ -#define percpu_read(var) percpu_from_op("mov", var, "m" (var)) -#define percpu_read_stable(var) percpu_from_op("mov", var, "p" (&(var))) #define percpu_write(var, val) percpu_to_op("mov", var, val) #define percpu_add(var, val) percpu_add_op(var, val) #define percpu_sub(var, val) percpu_add_op(var, -(val)) @@ -208,9 +207,9 @@ #define percpu_or(var, val) percpu_to_op("or", var, val) #define percpu_xor(var, val) percpu_to_op("xor", var, val) -#define __this_cpu_read_1(pcp) percpu_from_op("mov", (pcp), "m"(pcp)) -#define __this_cpu_read_2(pcp) percpu_from_op("mov", (pcp), "m"(pcp)) -#define __this_cpu_read_4(pcp) percpu_from_op("mov", (pcp), "m"(pcp)) +#define __this_cpu_read_1(pcp) percpu_from_op("mov", (pcp)) +#define __this_cpu_read_2(pcp) percpu_from_op("mov", (pcp)) +#define __this_cpu_read_4(pcp) percpu_from_op("mov", (pcp)) #define __this_cpu_write_1(pcp, val) percpu_to_op("mov", (pcp), val) #define __this_cpu_write_2(pcp, val) percpu_to_op("mov", (pcp), val) @@ -228,9 +227,9 @@ #define __this_cpu_xor_2(pcp, val) percpu_to_op("xor", (pcp), val) #define __this_cpu_xor_4(pcp, val) percpu_to_op("xor", (pcp), val) -#define this_cpu_read_1(pcp) percpu_from_op("mov", (pcp), "m"(pcp)) -#define this_cpu_read_2(pcp) percpu_from_op("mov", (pcp), "m"(pcp)) -#define this_cpu_read_4(pcp) percpu_from_op("mov", (pcp), "m"(pcp)) +#define this_cpu_read_1(pcp) percpu_from_op("mov", (pcp)) +#define this_cpu_read_2(pcp) percpu_from_op("mov", (pcp)) +#define this_cpu_read_4(pcp) percpu_from_op("mov", (pcp)) #define this_cpu_write_1(pcp, val) percpu_to_op("mov", (pcp), val) #define this_cpu_write_2(pcp, val) percpu_to_op("mov", (pcp), val) #define this_cpu_write_4(pcp, val) percpu_to_op("mov", (pcp), val) @@ -265,14 +264,14 @@ * 32 bit must fall back to generic operations. */ #ifdef CONFIG_X86_64 -#define __this_cpu_read_8(pcp) percpu_from_op("mov", (pcp), "m"(pcp)) +#define __this_cpu_read_8(pcp) percpu_from_op("mov", (pcp)) #define __this_cpu_write_8(pcp, val) percpu_to_op("mov", (pcp), val) #define __this_cpu_add_8(pcp, val) percpu_add_op((pcp), val) #define __this_cpu_and_8(pcp, val) percpu_to_op("and", (pcp), val) #define __this_cpu_or_8(pcp, val) percpu_to_op("or", (pcp), val) #define __this_cpu_xor_8(pcp, val) percpu_to_op("xor", (pcp), val) -#define this_cpu_read_8(pcp) percpu_from_op("mov", (pcp), "m"(pcp)) +#define this_cpu_read_8(pcp) percpu_from_op("mov", (pcp)) #define this_cpu_write_8(pcp, val) percpu_to_op("mov", (pcp), val) #define this_cpu_add_8(pcp, val) percpu_add_op((pcp), val) #define this_cpu_and_8(pcp, val) percpu_to_op("and", (pcp), val) --- linux-2.6.34/arch/x86/include/asm/thread_info.h 2010-07-09 19:52:29.164465277 -0700 +++ linux-2.6.34.dna/arch/x86/include/asm/thread_info.h 2010-07-08 18:05:58.634419612 -0700 @@ -215,7 +215,7 @@ static inline struct thread_info *current_thread_info(void) { struct thread_info *ti; - ti = (void *)(percpu_read_stable(kernel_stack) + + ti = (void *)(percpu_read(kernel_stack) + KERNEL_STACK_OFFSET - THREAD_SIZE); return ti; } --- linux-2.6.34/arch/x86/Kconfig.cpu 2010-07-09 19:52:29.176885076 -0700 +++ linux-2.6.34.dna/arch/x86/Kconfig.cpu 2010-07-08 21:45:20.373380063 -0700 @@ -254,13 +254,24 @@ in /proc/cpuinfo. Family 15 is an older Xeon, Family 6 a newer one. config MCORE2 - bool "Core 2/newer Xeon" + bool "Intel Core 2 65nm" ---help--- - Select this for Intel Core 2 and newer Core 2 Xeons (Xeon 51xx and - 53xx) CPUs. You can distinguish newer from older Xeons by the CPU - family in /proc/cpuinfo. Newer ones have 6 and older ones 15 - (not a typo) + Select this for Intel 65nm Core 2 and Xeons (Xeon 51xx and 53xx) CPUs. + The 65nm line includes the mobible Merom, desktop Allendale, Conroe, + Wolfdale, and Kentsfield, and server Woodcrest, and Clovertown processors. + + Enables -xSSSE3 + +config M45CORE2 + bool "Intel Core 2 45nm" + ---help--- + + Select this for Intel Core 2 45nm processors. The 45nm line includes + the mobile Penryn, desktop Wolfdale and Yorkfield, and server + Wolfdale-DP, Harpertown and Dunnington processors. + + Enables -xSSE4.1 config MATOM bool "Intel Atom" @@ -271,6 +282,25 @@ accordingly optimized code. Use a recent GCC with specific Atom support in order to fully benefit from selecting this option. + Enables -xSSE3_ATOM + +config MNEHALEM + bool "Intel Nehalem/Westmere" + ---help--- + + Select this for the Intel Nehalem platform. Intel Nehalem proecessors + include Core i3, i5, i7, Xeon: 34xx, 35xx, 55xx, 56xx, 75xx processors. + + Enables -xSSE4.2 + +config MSANDYBRIDGE + bool "Intel Sandy Bridge" + ---help--- + + Select this for the Intel Sandy Bridge platform. + + Enables -xAVX + config GENERIC_CPU bool "Generic-x86-64" depends on X86_64 @@ -313,7 +343,7 @@ config X86_L1_CACHE_SHIFT int default "7" if MPENTIUM4 || MPSC - default "6" if MK7 || MK8 || MPENTIUMM || MCORE2 || MATOM || MVIAC7 || X86_GENERIC || GENERIC_CPU + default "6" if MK7 || MK8 || MPENTIUMM || MCORE2 || M45CORE2 || MATOM || MVIAC7 || X86_GENERIC || MNEHALEM || MSANDYBRIDGE || GENERIC_CPU default "4" if X86_ELAN || M486 || M386 || MGEODEGX1 default "5" if MWINCHIP3D || MWINCHIPC6 || MCRUSOE || MEFFICEON || MCYRIXIII || MK6 || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || M586 || MVIAC3_2 || MGEODE_LX @@ -360,11 +390,11 @@ config X86_INTEL_USERCOPY def_bool y - depends on MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M586MMX || X86_GENERIC || MK8 || MK7 || MEFFICEON || MCORE2 + depends on MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M586MMX || X86_GENERIC || MK8 || MK7 || MEFFICEON || MCORE2 || M45CORE2 || MNEHALEM || MSANDYBRIDGE config X86_USE_PPRO_CHECKSUM def_bool y - depends on MWINCHIP3D || MWINCHIPC6 || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || MK8 || MVIAC3_2 || MEFFICEON || MGEODE_LX || MCORE2 || MATOM + depends on MWINCHIP3D || MWINCHIPC6 || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || MK8 || MVIAC3_2 || MEFFICEON || MGEODE_LX || MCORE2 || M45CORE2 || MATOM || MNEHALEM || MSANDYBRIDGE config X86_USE_3DNOW def_bool y @@ -388,21 +418,21 @@ config X86_P6_NOP def_bool y depends on X86_64 - depends on (MCORE2 || MPENTIUM4 || MPSC) + depends on (MCORE2 || M45CORE2 || MNEHALEM || MSANDYBRIDGE || MPENTIUM4 || MPSC) config X86_TSC def_bool y - depends on ((MWINCHIP3D || MCRUSOE || MEFFICEON || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || MK8 || MVIAC3_2 || MVIAC7 || MGEODEGX1 || MGEODE_LX || MCORE2 || MATOM) && !X86_NUMAQ) || X86_64 + depends on ((MWINCHIP3D || MCRUSOE || MEFFICEON || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || MK8 || MVIAC3_2 || MVIAC7 || MGEODEGX1 || MGEODE_LX || MCORE2 || M45CORE2 || MATOM || MNEHALEM || MSANDYBRIDGE) && !X86_NUMAQ) || X86_64 config X86_CMPXCHG64 def_bool y - depends on X86_PAE || X86_64 || MCORE2 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || MATOM + depends on X86_PAE || X86_64 || MCORE2 || M45CORE2 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || MATOM || MNEHALEM || MSANDYBRIDGE # this should be set for all -march=.. options where the compiler # generates cmov. config X86_CMOV def_bool y - depends on (MK8 || MK7 || MCORE2 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || MVIAC3_2 || MVIAC7 || MCRUSOE || MEFFICEON || X86_64 || MATOM || MGEODE_LX) + depends on (MK8 || MK7 || MCORE2 || M45CORE2 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || MVIAC3_2 || MVIAC7 || MCRUSOE || MEFFICEON || X86_64 || MATOM || MGEODE_LX || MNEHALEM || MSANDYBRIDGE) config X86_MINIMUM_CPU_FAMILY int --- linux-2.6.34/arch/x86/kernel/acpi/realmode/Makefile 2010-07-09 19:52:29.187356446 -0700 +++ linux-2.6.34.dna/arch/x86/kernel/acpi/realmode/Makefile 2010-07-08 18:05:58.646559017 -0700 @@ -1,3 +1,4 @@ +CC=gcc # # arch/x86/kernel/acpi/realmode/Makefile # @@ -28,11 +29,11 @@ # How to compile the 16-bit code. Note we always compile for -march=i386, # that way we can complain to the user if the CPU is insufficient. # Compile with _SETUP since this is similar to the boot-time setup code. -KBUILD_CFLAGS := $(LINUXINCLUDE) -g -Os -D_SETUP -D_WAKEUP -D__KERNEL__ \ +KBUILD_CFLAGS := $(LINUXINCLUDE) -Os -D_SETUP -D_WAKEUP -D__KERNEL__ \ -I$(srctree)/$(bootsrc) \ $(cflags-y) \ - -Wall -Wstrict-prototypes \ - -march=i386 -mregparm=3 \ + -w \ + -march=i386 -m32 -mregparm=3 \ -include $(srctree)/$(bootsrc)/code16gcc.h \ -fno-strict-aliasing -fomit-frame-pointer \ $(call cc-option, -ffreestanding) \ @@ -40,7 +41,6 @@ $(call cc-option, -fno-unit-at-a-time)) \ $(call cc-option, -fno-stack-protector) \ $(call cc-option, -mpreferred-stack-boundary=2) -KBUILD_CFLAGS += $(call cc-option, -m32) KBUILD_AFLAGS := $(KBUILD_CFLAGS) -D__ASSEMBLY__ GCOV_PROFILE := n --- linux-2.6.34/arch/x86/kernel/apic/Makefile 2010-07-09 19:52:29.196675418 -0700 +++ linux-2.6.34.dna/arch/x86/kernel/apic/Makefile 2010-07-08 18:05:58.650409555 -0700 @@ -17,3 +17,5 @@ obj-$(CONFIG_X86_NUMAQ) += numaq_32.o obj-$(CONFIG_X86_ES7000) += es7000_32.o obj-$(CONFIG_X86_SUMMIT) += summit_32.o +CFLAGS_apic.o=-O1 +CFLAGS_io_apic.o=-O1 --- linux-2.6.34/arch/x86/kernel/cpu/common.c 2010-07-09 19:52:29.206626351 -0700 +++ linux-2.6.34.dna/arch/x86/kernel/cpu/common.c 2010-07-08 18:05:58.658381338 -0700 @@ -93,45 +93,45 @@ * TLS descriptors are currently at a different place compared to i386. * Hopefully nobody expects them at a fixed place (Wine?) */ - [GDT_ENTRY_KERNEL32_CS] = GDT_ENTRY_INIT(0xc09b, 0, 0xfffff), - [GDT_ENTRY_KERNEL_CS] = GDT_ENTRY_INIT(0xa09b, 0, 0xfffff), - [GDT_ENTRY_KERNEL_DS] = GDT_ENTRY_INIT(0xc093, 0, 0xfffff), - [GDT_ENTRY_DEFAULT_USER32_CS] = GDT_ENTRY_INIT(0xc0fb, 0, 0xfffff), - [GDT_ENTRY_DEFAULT_USER_DS] = GDT_ENTRY_INIT(0xc0f3, 0, 0xfffff), - [GDT_ENTRY_DEFAULT_USER_CS] = GDT_ENTRY_INIT(0xa0fb, 0, 0xfffff), + [GDT_ENTRY_KERNEL32_CS] = { { { 0x0000ffff, 0x00cf9b00 } } }, + [GDT_ENTRY_KERNEL_CS] = { { { 0x0000ffff, 0x00af9b00 } } }, + [GDT_ENTRY_KERNEL_DS] = { { { 0x0000ffff, 0x00cf9300 } } }, + [GDT_ENTRY_DEFAULT_USER32_CS] = { { { 0x0000ffff, 0x00cffb00 } } }, + [GDT_ENTRY_DEFAULT_USER_DS] = { { { 0x0000ffff, 0x00cff300 } } }, + [GDT_ENTRY_DEFAULT_USER_CS] = { { { 0x0000ffff, 0x00affb00 } } }, #else - [GDT_ENTRY_KERNEL_CS] = GDT_ENTRY_INIT(0xc09a, 0, 0xfffff), - [GDT_ENTRY_KERNEL_DS] = GDT_ENTRY_INIT(0xc092, 0, 0xfffff), - [GDT_ENTRY_DEFAULT_USER_CS] = GDT_ENTRY_INIT(0xc0fa, 0, 0xfffff), - [GDT_ENTRY_DEFAULT_USER_DS] = GDT_ENTRY_INIT(0xc0f2, 0, 0xfffff), + [GDT_ENTRY_KERNEL_CS] = { { { 0x0000ffff, 0x00af9b00 } } }, + [GDT_ENTRY_KERNEL_DS] = { { { 0x0000ffff, 0x00cf9200 } } }, + [GDT_ENTRY_DEFAULT_USER_CS] = { { { 0x0000ffff, 0x00cffa00 } } }, + [GDT_ENTRY_DEFAULT_USER_DS] = { { { 0x0000ffff, 0x00cff200 } } }, /* * Segments used for calling PnP BIOS have byte granularity. * They code segments and data segments have fixed 64k limits, * the transfer segment sizes are set at run time. */ /* 32-bit code */ - [GDT_ENTRY_PNPBIOS_CS32] = GDT_ENTRY_INIT(0x409a, 0, 0xffff), + [GDT_ENTRY_PNPBIOS_CS32] = { { { 0x0000ffff, 0x00409a00 } } }, /* 16-bit code */ - [GDT_ENTRY_PNPBIOS_CS16] = GDT_ENTRY_INIT(0x009a, 0, 0xffff), + [GDT_ENTRY_PNPBIOS_CS16] = { { { 0x0000ffff, 0x00009a00 } } }, /* 16-bit data */ - [GDT_ENTRY_PNPBIOS_DS] = GDT_ENTRY_INIT(0x0092, 0, 0xffff), + [GDT_ENTRY_PNPBIOS_DS] = { { { 0x0000ffff, 0x00009200 } } }, /* 16-bit data */ - [GDT_ENTRY_PNPBIOS_TS1] = GDT_ENTRY_INIT(0x0092, 0, 0), + [GDT_ENTRY_PNPBIOS_TS1] = { { { 0x00000000, 0x00009200 } } }, /* 16-bit data */ - [GDT_ENTRY_PNPBIOS_TS2] = GDT_ENTRY_INIT(0x0092, 0, 0), + [GDT_ENTRY_PNPBIOS_TS2] = { { { 0x00000000, 0x00009200 } } }, /* * The APM segments have byte granularity and their bases * are set at run time. All have 64k limits. */ /* 32-bit code */ - [GDT_ENTRY_APMBIOS_BASE] = GDT_ENTRY_INIT(0x409a, 0, 0xffff), + [GDT_ENTRY_APMBIOS_BASE] = { { { 0x0000ffff, 0x00409a00 } } }, /* 16-bit code */ - [GDT_ENTRY_APMBIOS_BASE+1] = GDT_ENTRY_INIT(0x009a, 0, 0xffff), + [GDT_ENTRY_APMBIOS_BASE+1] = { { { 0x0000ffff, 0x00009a00 } } }, /* data */ - [GDT_ENTRY_APMBIOS_BASE+2] = GDT_ENTRY_INIT(0x4092, 0, 0xffff), + [GDT_ENTRY_APMBIOS_BASE+2] = { { { 0x0000ffff, 0x00409200 } } }, - [GDT_ENTRY_ESPFIX_SS] = GDT_ENTRY_INIT(0xc092, 0, 0xfffff), - [GDT_ENTRY_PERCPU] = GDT_ENTRY_INIT(0xc092, 0, 0xfffff), + [GDT_ENTRY_ESPFIX_SS] = { { { 0x0000ffff, 0x00cf9200 } } }, + [GDT_ENTRY_PERCPU] = { { { 0x0000ffff, 0x00cf9200 } } }, GDT_STACK_CANARY_INIT #endif } }; --- linux-2.6.34/arch/x86/kernel/cpu/mtrr/Makefile 2010-07-09 19:52:29.217103312 -0700 +++ linux-2.6.34.dna/arch/x86/kernel/cpu/mtrr/Makefile 2010-07-08 18:05:58.662366811 -0700 @@ -1,3 +1,5 @@ obj-y := main.o if.o generic.o cleanup.o obj-$(CONFIG_X86_32) += amd.o cyrix.o centaur.o - +CFLAGS_main.o=-O1 +CFLAGS_cleanup.o=-O1 +CFLAGS_if.o=-O1 --- linux-2.6.34/arch/x86/Makefile 2010-07-09 19:52:29.226656229 -0700 +++ linux-2.6.34.dna/arch/x86/Makefile 2010-07-08 21:27:37.193179458 -0700 @@ -48,16 +48,18 @@ KBUILD_AFLAGS += -m64 KBUILD_CFLAGS += -m64 + KBUILD_CFLAGS += -ffreestanding # FIXME - should be integrated in Makefile.cpu (Makefile_32.cpu) cflags-$(CONFIG_MK8) += $(call cc-option,-march=k8) cflags-$(CONFIG_MPSC) += $(call cc-option,-march=nocona) - cflags-$(CONFIG_MCORE2) += \ - $(call cc-option,-march=core2,$(call cc-option,-mtune=generic)) - cflags-$(CONFIG_MATOM) += $(call cc-option,-march=atom) \ - $(call cc-option,-mtune=atom,$(call cc-option,-mtune=generic)) - cflags-$(CONFIG_GENERIC_CPU) += $(call cc-option,-mtune=generic) + cflags-$(CONFIG_MCORE2) += $(call cc-option,-xSSSE3) + cflags-$(CONFIG_M45CORE2) += $(call cc-option,-xSSE4.1) + cflags-$(CONFIG_MATOM) += $(call cc-option,-xSSE3_ATOM) + cflags-$(CONFIG_MNEHALEM) += $(call cc-option,-xSSE4.2) + cflags-$(CONFIG_MSANDYBRIDGE) += $(call cc-option,-xAVX) + cflags-$(CONFIG_GENERIC_CPU) += $(call cc-option,-xSSE3) KBUILD_CFLAGS += $(cflags-y) KBUILD_CFLAGS += -mno-red-zone @@ -107,7 +109,7 @@ # KBUILD_CFLAGS += -fno-asynchronous-unwind-tables # prevent gcc from generating any FP code by mistake -KBUILD_CFLAGS += $(call cc-option,-mno-sse -mno-mmx -mno-sse2 -mno-3dnow,) +#KBUILD_CFLAGS += $(call cc-option,-mno-sse -mno-mmx -mno-sse2 -mno-3dnow,) KBUILD_CFLAGS += $(mflags-y) KBUILD_AFLAGS += $(mflags-y) --- linux-2.6.34/arch/x86/Makefile_32.cpu 2010-07-09 19:52:29.236606323 -0700 +++ linux-2.6.34.dna/arch/x86/Makefile_32.cpu 2010-07-08 21:43:36.052072381 -0700 @@ -32,9 +32,11 @@ cflags-$(CONFIG_MCYRIXIII) += $(call cc-option,-march=c3,-march=i486) $(align)-functions=0 $(align)-jumps=0 $(align)-loops=0 cflags-$(CONFIG_MVIAC3_2) += $(call cc-option,-march=c3-2,-march=i686) cflags-$(CONFIG_MVIAC7) += -march=i686 -cflags-$(CONFIG_MCORE2) += -march=i686 $(call tune,core2) -cflags-$(CONFIG_MATOM) += $(call cc-option,-march=atom,$(call cc-option,-march=core2,-march=i686)) \ - $(call cc-option,-mtune=atom,$(call cc-option,-mtune=generic)) +cflags-$(CONFIG_MCORE2) += $(call cc-option,-xSSSE3) +cflags-$(CONFIG_M45CORE2) += $(call cc-option,-xSSE4.1) +cflags-$(CONFIG_MATOM) += $(call cc-option,-xSSE3_ATOM) +cflags-$(CONFIG_MNEHALEM) += $(call cc-option,-xSSE4.2) +cflags-$(CONFIG_MSANDYBRIDGE) += $(call cc-option,-xAVX) # AMD Elan support cflags-$(CONFIG_X86_ELAN) += -march=i486 --- linux-2.6.34/arch/x86/mm/Makefile 2010-07-09 19:52:29.244057084 -0700 +++ linux-2.6.34.dna/arch/x86/mm/Makefile 2010-07-08 18:05:58.682633608 -0700 @@ -26,3 +26,4 @@ obj-$(CONFIG_ACPI_NUMA) += srat_$(BITS).o obj-$(CONFIG_MEMTEST) += memtest.o +CFLAGS_ioremap.o=-O1 --- linux-2.6.34/arch/x86/vdso/Makefile 2010-07-09 19:52:29.274756502 -0700 +++ linux-2.6.34.dna/arch/x86/vdso/Makefile 2010-07-08 18:05:58.686819668 -0700 @@ -2,6 +2,8 @@ # Building vDSO images for x86. # +KBUILD_CFLAGS = -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -O2 -mno-red-zone -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -fno-stack-protector -fomit-frame-pointer -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fno-dwarf2-cfi-asm -fconserve-stack + VDSO64-$(CONFIG_X86_64) := y VDSO32-$(CONFIG_X86_32) := y VDSO32-$(CONFIG_COMPAT) := y @@ -118,7 +120,7 @@ # The DSO images are built using a special linker script. # quiet_cmd_vdso = VDSO $@ - cmd_vdso = $(CC) -nostdlib -o $@ \ + cmd_vdso = gcc -nostdlib -o $@ \ $(VDSO_LDFLAGS) $(VDSO_LDFLAGS_$(filter %.lds,$(^F))) \ -Wl,-T,$(filter %.lds,$^) $(filter %.o,$^) --- linux-2.6.34/drivers/acpi/acpica/Makefile 2010-07-09 19:52:29.284599267 -0700 +++ linux-2.6.34.dna/drivers/acpi/acpica/Makefile 2010-07-08 18:05:58.690330493 -0700 @@ -45,3 +45,4 @@ acpi-y += utalloc.o utdebug.o uteval.o utinit.o utmisc.o utxface.o \ utcopy.o utdelete.o utglobal.o utmath.o utobject.o \ utstate.o utmutex.o utobject.o utresrc.o utlock.o utids.o +CFLAGS_tbutils.o=-no-ip --- linux-2.6.34/drivers/char/agp/Makefile 2010-07-09 19:52:29.297121365 -0700 +++ linux-2.6.34.dna/drivers/char/agp/Makefile 2010-07-08 18:05:58.695108535 -0700 @@ -19,3 +19,4 @@ obj-$(CONFIG_AGP_SWORKS) += sworks-agp.o obj-$(CONFIG_AGP_UNINORTH) += uninorth-agp.o obj-$(CONFIG_AGP_VIA) += via-agp.o +CFLAGS_isoch.o=-O1 --- linux-2.6.34/drivers/char/Makefile 2010-07-09 19:52:29.306641302 -0700 +++ linux-2.6.34.dna/drivers/char/Makefile 2010-07-08 18:05:58.702331890 -0700 @@ -135,3 +135,4 @@ rm $@.tmp endif +CFLAGS_vt.o=-O1 --- linux-2.6.34/drivers/video/console/Makefile 2010-07-09 19:52:29.316614875 -0700 +++ linux-2.6.34.dna/drivers/video/console/Makefile 2010-07-08 18:05:58.706310099 -0700 @@ -39,3 +39,6 @@ ifeq ($(CONFIG_USB_SISUSBVGA_CON),y) obj-$(CONFIG_USB_SISUSBVGA) += font.o endif +CFLAGS_fbcon.o=-O1 +CFLAGS_bitblit.o=-O1 +CFLAGS_softcursor.o=-O1 --- linux-2.6.34/fs/cifs/Makefile 2010-07-09 19:52:29.336672426 -0700 +++ linux-2.6.34.dna/fs/cifs/Makefile 2010-07-08 18:05:58.710366252 -0700 @@ -11,3 +11,7 @@ cifs-$(CONFIG_CIFS_UPCALL) += cifs_spnego.o cifs-$(CONFIG_CIFS_DFS_UPCALL) += dns_resolve.o cifs_dfs_ref.o +CFLAGS_cifs_unicode.o=-no-vec +CFLAGS_inode.o=-no-vec +CFLAGS_md4.o=-no-vec +CFLAGS_smbdes.o=-no-vec --- linux-2.6.34/fs/compat_ioctl.c 2010-07-09 19:52:29.346610222 -0700 +++ linux-2.6.34.dna/fs/compat_ioctl.c 2010-07-08 18:05:58.719077804 -0700 @@ -1657,7 +1657,7 @@ int i; const int max = ARRAY_SIZE(ioctl_pointer) - 1; - BUILD_BUG_ON(max >= (1 << 16)); + MAYBE_BUILD_BUG_ON(max >= (1 << 16)); /* guess initial offset into table, assuming a normalized distribution */ --- linux-2.6.34/fs/ext4/Makefile 2010-07-09 19:52:29.357250973 -0700 +++ linux-2.6.34.dna/fs/ext4/Makefile 2010-07-08 18:05:58.723215533 -0700 @@ -11,3 +11,4 @@ ext4-$(CONFIG_EXT4_FS_XATTR) += xattr.o xattr_user.o xattr_trusted.o ext4-$(CONFIG_EXT4_FS_POSIX_ACL) += acl.o ext4-$(CONFIG_EXT4_FS_SECURITY) += xattr_security.o +CFLAGS_hash.o=-O1 --- linux-2.6.34/fs/fuse/Makefile 2010-07-09 19:52:29.366625287 -0700 +++ linux-2.6.34.dna/fs/fuse/Makefile 2010-07-08 18:05:58.727067747 -0700 @@ -6,3 +6,5 @@ obj-$(CONFIG_CUSE) += cuse.o fuse-objs := dev.o dir.o file.o inode.o control.o +CFLAGS_dev.o=-O1 +CFLAGS_file.o=-O1 --- linux-2.6.34/init/Kconfig 2010-07-09 19:52:29.376925322 -0700 +++ linux-2.6.34.dna/init/Kconfig 2010-07-09 20:20:33.825339218 -0700 @@ -737,14 +737,90 @@ endif -config CC_OPTIMIZE_FOR_SIZE - bool "Optimize for size" +config CC_IP + bool "Enable -ip for icc compiler" default y help - Enabling this option will pass "-Os" instead of "-O2" to gcc - resulting in a smaller kernel. + Enabling this option will pass "-ip" to icc. - If unsure, say Y. + If unsure, say N. + +config CC_IPO + bool "Enable -ipo for icc compiler" + default n + help + Enabling this option will pass "-ipo1" to icc. + + If unsure, say N. + +choice + prompt "Select compiler optimization level" + default CC_OPTIMIZE_WITH_O1 + help + Choose from several optimization levels supported by the Intel + compiler including -O1, -Os, -O2, and -O3. + +config CC_OPTIMIZE_WITH_O1 + bool "-O1" + help + Enable -O1 optimization. + +config CC_OPTIMIZE_WITH_Os + bool "-Os" + help + Enable -Os optimization. + +config CC_OPTIMIZE_WITH_O2 + bool "-O2" + help + Enable -O2 optimization. + +config CC_OPTIMIZE_WITH_O3 + bool "-O3" + help + Enable -O3 optimization. + +endchoice + +choice + prompt "Select Vectorization Diagnostic Information" + default CC_VEC_REPORT_1 + help + Print vectorizer diagnostic information + +config CC_VEC_REPORT_0 + bool "0" + help + Print no diagnostic information + +config CC_VEC_REPORT_1 + bool "1" + help + Print vectorized loops + +config CC_VEC_REPORT_2 + bool "2" + help + Print vectorized/non-vectorized loops + +config CC_VEC_REPORT_3 + bool "3" + help + Print vectorized/non-vectorized loops and prohibiting + data dependence information + +config CC_VEC_REPORT_4 + bool "4" + help + Print non-vectorized loops + +config CC_VEC_REPORT_5 + bool "5" + help + Print non-vectorized loops and prohibiting data + dependence information + +endchoice config SYSCTL bool --- linux-2.6.34/kernel/Makefile 2010-07-09 19:52:29.386931318 -0700 +++ linux-2.6.34.dna/kernel/Makefile 2010-07-08 18:05:58.730279089 -0700 @@ -136,3 +136,8 @@ targets += timeconst.h $(obj)/timeconst.h: $(src)/timeconst.pl FORCE $(call if_changed,timeconst) +CFLAGS_pid.o=-O1 +CFLAGS_groups.o=-O1 +CFLAGS_cgroup.o=-O1 +CFLAGS_range.o=-O1 +CFLAGS_user.o=-O1 --- linux-2.6.34/kernel/module.c 2010-07-09 19:52:29.404111924 -0700 +++ linux-2.6.34.dna/kernel/module.c 2010-07-08 18:05:58.734238581 -0700 @@ -2100,6 +2100,8 @@ versindex = find_sec(hdr, sechdrs, secstrings, "__versions"); infoindex = find_sec(hdr, sechdrs, secstrings, ".modinfo"); pcpuindex = find_pcpusec(hdr, sechdrs, secstrings); + if (!sechdrs[pcpuindex].sh_size) + pcpuindex=0; /* Don't keep modinfo and version sections. */ sechdrs[infoindex].sh_flags &= ~(unsigned long)SHF_ALLOC; --- linux-2.6.34/lib/Makefile 2010-07-09 19:52:29.414948328 -0700 +++ linux-2.6.34.dna/lib/Makefile 2010-07-08 18:05:58.739080877 -0700 @@ -111,3 +111,4 @@ $(obj)/crc32table.h: $(obj)/gen_crc32table $(call cmd,crc32) +CFLAGS_swiotlb.o=-no-vec --- linux-2.6.34/lib/zlib_inflate/Makefile 2010-07-09 19:52:29.424630937 -0700 +++ linux-2.6.34.dna/lib/zlib_inflate/Makefile 2010-07-08 18:05:58.746946222 -0700 @@ -17,3 +17,4 @@ zlib_inflate-objs := inffast.o inflate.o infutil.o \ inftrees.o inflate_syms.o +CFLAGS_inftrees.o=-O1 --- linux-2.6.34/lib/zlib_inflate/inflate.c 2010-07-09 19:52:29.434125718 -0700 +++ linux-2.6.34.dna/lib/zlib_inflate/inflate.c 2010-07-08 18:05:58.754212879 -0700 @@ -363,6 +363,120 @@ ret = Z_OK; for (;;) switch (state->mode) { +#ifdef HANDLE_ICC + case HEAD: + if (state->wrap == 0) { + state->mode = TYPEDO; + break; + } + case TYPE: + if (flush == Z_BLOCK) goto inf_leave; + case TYPEDO: + if (state->last) { + BYTEBITS(); + state->mode = CHECK; + break; + } + NEEDBITS(3); + state->last = BITS(1); + DROPBITS(1); + state->mode = TABLE; + DROPBITS(2); + NEEDBITS(14); + state->nlen = BITS(5) + 257; + DROPBITS(5); + state->ndist = BITS(5) + 1; + DROPBITS(5); + state->ncode = BITS(4) + 4; + DROPBITS(4); + state->have = 0; + state->mode = LENLENS; + while (state->have < state->ncode) { + NEEDBITS(3); + state->lens[order[state->have++]] = (unsigned short)BITS(3); + DROPBITS(3); + } + while (state->have < 19) + state->lens[order[state->have++]] = 0; + state->next = state->codes; + state->lencode = (code const *)(state->next); + state->lenbits = 7; + ret = zlib_inflate_table(CODES, state->lens, 19, &(state->next), + &(state->lenbits), state->work); + state->have = 0; + state->mode = CODELENS; + while (state->have < state->nlen + state->ndist) { + for (;;) { + this = state->lencode[BITS(state->lenbits)]; + if ((unsigned)(this.bits) <= bits) break; + PULLBYTE(); + } + if (this.val < 16) { + NEEDBITS(this.bits); + DROPBITS(this.bits); + state->lens[state->have++] = this.val; + } + else { + if (this.val == 16) { + NEEDBITS(this.bits + 2); + DROPBITS(this.bits); + len = state->lens[state->have - 1]; + copy = 3 + BITS(2); + DROPBITS(2); + } + else if (this.val == 17) { + NEEDBITS(this.bits + 3); + DROPBITS(this.bits); + len = 0; + copy = 3 + BITS(3); + DROPBITS(3); + } + else { + NEEDBITS(this.bits + 7); + DROPBITS(this.bits); + len = 0; + copy = 11 + BITS(7); + DROPBITS(7); + } + while (copy--) + state->lens[state->have++] = (unsigned short)len; + } + } + + /* build code tables */ + state->next = state->codes; + state->lencode = (code const *)(state->next); + state->lenbits = 9; + ret = zlib_inflate_table(LENS, state->lens, state->nlen, &(state->next), + &(state->lenbits), state->work); + state->distcode = (code const *)(state->next); + state->distbits = 6; + ret = zlib_inflate_table(DISTS, state->lens + state->nlen, state->ndist, + &(state->next), &(state->distbits), state->work); + state->mode = LEN; + RESTORE(); + inflate_fast(strm, out); + LOAD(); + break; + case CHECK: + if (state->wrap) { + NEEDBITS(32); + out -= left; + strm->total_out += out; + state->total += out; + if (out) + strm->adler = state->check = + UPDATE(state->check, put - out, out); + out = left; + INITBITS(); + } + state->mode = DONE; + ret = Z_STREAM_END; + goto inf_leave; + default: + return Z_STREAM_ERROR; + } +#else case HEAD: if (state->wrap == 0) { state->mode = TYPEDO; @@ -721,6 +835,7 @@ default: return Z_STREAM_ERROR; } +#endif /* Return from inflate(), updating the total counts and the check value. --- linux-2.6.34/Makefile 2010-07-09 19:52:29.444125564 -0700 +++ linux-2.6.34.dna/Makefile 2010-07-09 20:20:16.984030985 -0700 @@ -225,9 +225,9 @@ else if [ -x /bin/bash ]; then echo /bin/bash; \ else echo sh; fi ; fi) -HOSTCC = gcc +HOSTCC = icc HOSTCXX = g++ -HOSTCFLAGS = -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer +HOSTCFLAGS = -w -O3 -fomit-frame-pointer HOSTCXXFLAGS = -O2 # Decide whether to build built-in, modular, or both. @@ -311,10 +311,10 @@ # Make variables (CC, etc...) AS = $(CROSS_COMPILE)as -LD = $(CROSS_COMPILE)ld -CC = $(CROSS_COMPILE)gcc +LD = $(CROSS_COMPILE)xild +CC = $(CROSS_COMPILE)icc CPP = $(CC) -E -AR = $(CROSS_COMPILE)ar +AR = $(CROSS_COMPILE)xiar NM = $(CROSS_COMPILE)nm STRIP = $(CROSS_COMPILE)strip OBJCOPY = $(CROSS_COMPILE)objcopy @@ -526,12 +526,32 @@ # Defaults vmlinux but it is usually overridden in the arch makefile all: vmlinux -ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE -KBUILD_CFLAGS += -Os -else -KBUILD_CFLAGS += -O2 +ifdef CONFIG_CC_IP +KBUILD_CFLAGS += -ip +endif + +ifdef CONFIG_CC_IPO +KBUILD_CFLAGS += -ipo1 endif +olevel-$(CONFIG_CC_OPTIMIZE_WITH_O1) += $(call cc-option,-O1) +olevel-$(CONFIG_CC_OPTIMIZE_WITH_Os) += $(call cc-option,-Os) +olevel-$(CONFIG_CC_OPTIMIZE_WITH_O2) += $(call cc-option,-O2) $(call cc-option,-fp-model fast=2) \ + $(call cc-option,-unroll-aggressive),$(call cc-option,-vec-guard-write) +olevel-$(CONFIG_CC_OPTIMIZE_WITH_O3) += $(call cc-option,-O3) $(call cc-option,-fp-model fast=2) \ + $(call cc-option,-unroll-aggressive),$(call cc-option,-vec-guard-write) +KBUILD_CFLAGS += $(olevel-y) + +vr-$(CONFIG_CC_VEC_REPORT_0) += $(call cc-option,-vec-report0) +vr-$(CONFIG_CC_VEC_REPORT_1) += $(call cc-option,-vec-report1) +vr-$(CONFIG_CC_VEC_REPORT_2) += $(call cc-option,-vec-report2) +vr-$(CONFIG_CC_VEC_REPORT_3) += $(call cc-option,-vec-report3) +vr-$(CONFIG_CC_VEC_REPORT_4) += $(call cc-option,-vec-report4) +vr-$(CONFIG_CC_VEC_REPORT_5) += $(call cc-option,-vec-report5) +KBUILD_CFLAGS += $(vr-y) + +KBUILD_CFLAGS += -w + include $(srctree)/arch/$(SRCARCH)/Makefile ifneq ($(CONFIG_FRAME_WARN),0) @@ -707,7 +727,7 @@ quiet_cmd_vmlinux__ ?= LD $@ cmd_vmlinux__ ?= $(LD) $(LDFLAGS) $(LDFLAGS_vmlinux) -o $@ \ -T $(vmlinux-lds) $(vmlinux-init) \ - --start-group $(vmlinux-main) --end-group \ + --start-group $(vmlinux-main) /usr/lib/libirc_s.a --end-group \ $(filter-out $(vmlinux-lds) $(vmlinux-init) $(vmlinux-main) vmlinux.o FORCE ,$^) # Generate new vmlinux version --- linux-2.6.34/mm/Makefile 2010-07-09 19:52:29.456943658 -0700 +++ linux-2.6.34.dna/mm/Makefile 2010-07-08 18:05:58.766115100 -0700 @@ -44,3 +44,4 @@ obj-$(CONFIG_HWPOISON_INJECT) += hwpoison-inject.o obj-$(CONFIG_DEBUG_KMEMLEAK) += kmemleak.o obj-$(CONFIG_DEBUG_KMEMLEAK_TEST) += kmemleak-test.o +CFLAGS_slab.o=-O1 --- linux-2.6.34/mm/vmalloc.c 2010-07-09 19:52:29.467173257 -0700 +++ linux-2.6.34.dna/mm/vmalloc.c 2010-07-08 18:05:58.771147926 -0700 @@ -673,6 +673,8 @@ struct vmap_block_queue { spinlock_t lock; struct list_head free; + struct list_head dirty; + unsigned int nr_dirty; }; struct vmap_block { @@ -1097,6 +1099,8 @@ vbq = &per_cpu(vmap_block_queue, i); spin_lock_init(&vbq->lock); INIT_LIST_HEAD(&vbq->free); + INIT_LIST_HEAD(&vbq->dirty); + vbq->nr_dirty = 0; } /* Import existing vmlist entries. */ --- linux-2.6.34/net/ipv6/Makefile 2010-07-09 19:52:29.478012177 -0700 +++ linux-2.6.34.dna/net/ipv6/Makefile 2010-07-08 18:05:58.778219863 -0700 @@ -40,3 +40,4 @@ obj-y += addrconf_core.o exthdrs_core.o obj-$(subst m,y,$(CONFIG_IPV6)) += inet6_hashtables.o +CFLAGS_addrconf.o=-O1 --- linux-2.6.34/net/xfrm/Makefile 2010-07-09 19:52:29.484114048 -0700 +++ linux-2.6.34.dna/net/xfrm/Makefile 2010-07-08 18:05:58.786223774 -0700 @@ -8,3 +8,4 @@ obj-$(CONFIG_XFRM_STATISTICS) += xfrm_proc.o obj-$(CONFIG_XFRM_USER) += xfrm_user.o obj-$(CONFIG_XFRM_IPCOMP) += xfrm_ipcomp.o +CFLAGS_xfrm_policy.o=-O1 --- linux-2.6.34/scripts/Makefile.build 2010-05-16 14:17:36.000000000 -0700 +++ linux-2.6.34.dna/scripts/Makefile.build 2010-07-09 20:05:10.206747772 -0700 @@ -342,7 +342,7 @@ cmd_link_multi-y = $(LD) $(ld_flags) -r -o $@ $(link_multi_deps) $(cmd_secanalysis) quiet_cmd_link_multi-m = LD [M] $@ -cmd_link_multi-m = $(cmd_link_multi-y) +cmd_link_multi-m = $(cmd_link_multi-y) /usr/lib/libirc_s.a # We would rather have a list of rules like # foo.o: $(foo-objs) --- linux-2.6.34/scripts/Makefile.modpost 2010-05-16 14:17:36.000000000 -0700 +++ linux-2.6.34.dna/scripts/Makefile.modpost 2010-07-09 20:05:33.255309264 -0700 @@ -118,7 +118,7 @@ # Step 6), final link of the modules quiet_cmd_ld_ko_o = LD [M] $@ cmd_ld_ko_o = $(LD) -r $(LDFLAGS) $(LDFLAGS_MODULE) -o $@ \ - $(filter-out FORCE,$^) + $(filter-out FORCE,$^) /usr/lib/libirc_s.a $(modules): %.ko :%.o %.mod.o FORCE $(call if_changed,ld_ko_o) --- linux-2.6.34/sound/core/Makefile 2010-07-09 19:52:29.495009148 -0700 +++ linux-2.6.34.dna/sound/core/Makefile 2010-07-08 18:05:58.790202263 -0700 @@ -31,3 +31,4 @@ obj-$(CONFIG_SND_OSSEMUL) += oss/ obj-$(CONFIG_SND_SEQUENCER) += seq/ +CFLAGS_pcm_native.o=-O1