aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2009-08-07 09:29:45 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2009-08-07 09:29:45 +0000
commit6d71de19a0fbfbe69873ea6c4779ed647889b892 (patch)
tree270e8aff2b84c0f2b7cffb1f87b8386777b91401
parentac3ff316a9ea99cf54b2165fa8a282e9d1c29539 (diff)
downloadalpine_aports-6d71de19a0fbfbe69873ea6c4779ed647889b892.tar.bz2
alpine_aports-6d71de19a0fbfbe69873ea6c4779ed647889b892.tar.xz
alpine_aports-6d71de19a0fbfbe69873ea6c4779ed647889b892.zip
main/linux-grsec: upgrade grsec patch to 2.1.14-2.6.30.4-200908051916
Also * Enable PAT * Enable voluntary preempt * Use CFQ as default IO scheduler
-rw-r--r--main/linux-grsec/APKBUILD10
-rw-r--r--main/linux-grsec/grsecurity-2.1.14-2.6.30.4-200908051916.patch (renamed from main/linux-grsec/grsecurity-2.1.14-2.6.30.4-200908041752.patch)147
-rw-r--r--main/linux-grsec/kernelconfig18
3 files changed, 92 insertions, 83 deletions
diff --git a/main/linux-grsec/APKBUILD b/main/linux-grsec/APKBUILD
index c5a1d3f9e3..08e386e29b 100644
--- a/main/linux-grsec/APKBUILD
+++ b/main/linux-grsec/APKBUILD
@@ -4,7 +4,7 @@ _flavor=grsec
4pkgname=linux-${_flavor} 4pkgname=linux-${_flavor}
5pkgver=2.6.30.4 5pkgver=2.6.30.4
6_kernver=2.6.30 6_kernver=2.6.30
7pkgrel=1 7pkgrel=2
8pkgdesc="Linux kernel with grsecurity" 8pkgdesc="Linux kernel with grsecurity"
9url=http://grsecurity.net 9url=http://grsecurity.net
10depends="mkinitfs" 10depends="mkinitfs"
@@ -13,7 +13,7 @@ _config=${config:-kernelconfig}
13install="$pkgname.post-install $pkgname.post-upgrade" 13install="$pkgname.post-install $pkgname.post-upgrade"
14source="ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-$_kernver.tar.bz2 14source="ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-$_kernver.tar.bz2
15 ftp://ftp.kernel.org/pub/linux/kernel/v2.6/patch-$pkgver.bz2 15 ftp://ftp.kernel.org/pub/linux/kernel/v2.6/patch-$pkgver.bz2
16 grsecurity-2.1.14-2.6.30.4-200908041752.patch 16 grsecurity-2.1.14-2.6.30.4-200908051916.patch
17 linux-nbma-mroute-v4-2.6.30.diff 17 linux-nbma-mroute-v4-2.6.30.diff
18 net-next-2.6.git-5ef12d98a19254ee5dc851bd83e214b43ec1f725.patch 18 net-next-2.6.git-5ef12d98a19254ee5dc851bd83e214b43ec1f725.patch
19 $_config 19 $_config
@@ -27,7 +27,7 @@ _abi_release=${pkgver}-${_flavor}
27_prepare() { 27_prepare() {
28 cd "$srcdir"/linux-$_kernver 28 cd "$srcdir"/linux-$_kernver
29 if [ "$_kernver" != "$pkgver" ]; then 29 if [ "$_kernver" != "$pkgver" ]; then
30 bunzip2 -c < ../patch-$pkgver.bz2 | patch -p1 || return 1 30 bunzip2 -c < ../patch-$pkgver.bz2 | patch -p1 -N || return 1
31 fi 31 fi
32 32
33 for i in ../*.diff ../*.patch; do 33 for i in ../*.diff ../*.patch; do
@@ -113,9 +113,9 @@ dev() {
113 113
114md5sums="7a80058a6382e5108cdb5554d1609615 linux-2.6.30.tar.bz2 114md5sums="7a80058a6382e5108cdb5554d1609615 linux-2.6.30.tar.bz2
115d0fc44b54ba5953140b3f2aa9a1f2580 patch-2.6.30.4.bz2 115d0fc44b54ba5953140b3f2aa9a1f2580 patch-2.6.30.4.bz2
1167d9fd867108074ec9dcc9d2385ff1e7b grsecurity-2.1.14-2.6.30.4-200908041752.patch 1169a0d6d6ce67289e24c6e3ef4441b6388 grsecurity-2.1.14-2.6.30.4-200908051916.patch
1177420c0b1095335990313656b114e1379 linux-nbma-mroute-v4-2.6.30.diff 1177420c0b1095335990313656b114e1379 linux-nbma-mroute-v4-2.6.30.diff
118ca05fd252783b82e01610e775cf56498 net-next-2.6.git-5ef12d98a19254ee5dc851bd83e214b43ec1f725.patch 118ca05fd252783b82e01610e775cf56498 net-next-2.6.git-5ef12d98a19254ee5dc851bd83e214b43ec1f725.patch
11913bdad159b0d99281c931a7dcb7d31ae kernelconfig 11960adb085be0ab268c0f27279ae2b2bab kernelconfig
1202834240b15805b248ef2a973b1ad4416 linux-grsec.post-install 1202834240b15805b248ef2a973b1ad4416 linux-grsec.post-install
1212834240b15805b248ef2a973b1ad4416 linux-grsec.post-upgrade" 1212834240b15805b248ef2a973b1ad4416 linux-grsec.post-upgrade"
diff --git a/main/linux-grsec/grsecurity-2.1.14-2.6.30.4-200908041752.patch b/main/linux-grsec/grsecurity-2.1.14-2.6.30.4-200908051916.patch
index 799132a383..5d0902c211 100644
--- a/main/linux-grsec/grsecurity-2.1.14-2.6.30.4-200908041752.patch
+++ b/main/linux-grsec/grsecurity-2.1.14-2.6.30.4-200908051916.patch
@@ -8652,7 +8652,7 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/head32.c linux-2.6.30.4/arch/x86/kerne
8652 /* Reserve INITRD */ 8652 /* Reserve INITRD */
8653diff -urNp linux-2.6.30.4/arch/x86/kernel/head_32.S linux-2.6.30.4/arch/x86/kernel/head_32.S 8653diff -urNp linux-2.6.30.4/arch/x86/kernel/head_32.S linux-2.6.30.4/arch/x86/kernel/head_32.S
8654--- linux-2.6.30.4/arch/x86/kernel/head_32.S 2009-07-24 17:47:51.000000000 -0400 8654--- linux-2.6.30.4/arch/x86/kernel/head_32.S 2009-07-24 17:47:51.000000000 -0400
8655+++ linux-2.6.30.4/arch/x86/kernel/head_32.S 2009-07-30 19:56:23.400350396 -0400 8655+++ linux-2.6.30.4/arch/x86/kernel/head_32.S 2009-08-05 19:08:00.458589400 -0400
8656@@ -20,6 +20,7 @@ 8656@@ -20,6 +20,7 @@
8657 #include <asm/setup.h> 8657 #include <asm/setup.h>
8658 #include <asm/processor-flags.h> 8658 #include <asm/processor-flags.h>
@@ -8703,10 +8703,11 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/head_32.S linux-2.6.30.4/arch/x86/kern
8703 ENTRY(startup_32) 8703 ENTRY(startup_32)
8704 /* test KEEP_SEGMENTS flag to see if the bootloader is asking 8704 /* test KEEP_SEGMENTS flag to see if the bootloader is asking
8705 us to not reload segments */ 8705 us to not reload segments */
8706@@ -98,6 +110,56 @@ ENTRY(startup_32) 8706@@ -98,6 +110,58 @@ ENTRY(startup_32)
8707 movl %eax,%gs 8707 movl %eax,%gs
8708 2: 8708 2:
8709 8709
8710+#ifdef CONFIG_SMP
8710+ movl $pa(cpu_gdt_table),%edi 8711+ movl $pa(cpu_gdt_table),%edi
8711+ movl $__per_cpu_load,%eax 8712+ movl $__per_cpu_load,%eax
8712+ movw %ax,__KERNEL_PERCPU + 2(%edi) 8713+ movw %ax,__KERNEL_PERCPU + 2(%edi)
@@ -8716,6 +8717,7 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/head_32.S linux-2.6.30.4/arch/x86/kern
8716+ movl $__per_cpu_end - 1,%eax 8717+ movl $__per_cpu_end - 1,%eax
8717+ subl $__per_cpu_load,%eax 8718+ subl $__per_cpu_load,%eax
8718+ movw %ax,__KERNEL_PERCPU + 0(%edi) 8719+ movw %ax,__KERNEL_PERCPU + 0(%edi)
8720+#endif
8719+ 8721+
8720+#ifdef CONFIG_PAX_MEMORY_UDEREF 8722+#ifdef CONFIG_PAX_MEMORY_UDEREF
8721+ /* check for VMware */ 8723+ /* check for VMware */
@@ -8760,7 +8762,7 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/head_32.S linux-2.6.30.4/arch/x86/kern
8760 /* 8762 /*
8761 * Clear BSS first so that there are no surprises... 8763 * Clear BSS first so that there are no surprises...
8762 */ 8764 */
8763@@ -141,9 +203,7 @@ ENTRY(startup_32) 8765@@ -141,9 +205,7 @@ ENTRY(startup_32)
8764 cmpl $num_subarch_entries, %eax 8766 cmpl $num_subarch_entries, %eax
8765 jae bad_subarch 8767 jae bad_subarch
8766 8768
@@ -8771,7 +8773,7 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/head_32.S linux-2.6.30.4/arch/x86/kern
8771 8773
8772 bad_subarch: 8774 bad_subarch:
8773 WEAK(lguest_entry) 8775 WEAK(lguest_entry)
8774@@ -155,9 +215,9 @@ WEAK(xen_entry) 8776@@ -155,9 +217,9 @@ WEAK(xen_entry)
8775 __INITDATA 8777 __INITDATA
8776 8778
8777 subarch_entries: 8779 subarch_entries:
@@ -8784,7 +8786,7 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/head_32.S linux-2.6.30.4/arch/x86/kern
8784 num_subarch_entries = (. - subarch_entries) / 4 8786 num_subarch_entries = (. - subarch_entries) / 4
8785 .previous 8787 .previous
8786 #endif /* CONFIG_PARAVIRT */ 8788 #endif /* CONFIG_PARAVIRT */
8787@@ -218,8 +278,14 @@ default_entry: 8789@@ -218,8 +280,14 @@ default_entry:
8788 movl %eax, pa(max_pfn_mapped) 8790 movl %eax, pa(max_pfn_mapped)
8789 8791
8790 /* Do early initialization of the fixmap area */ 8792 /* Do early initialization of the fixmap area */
@@ -8801,7 +8803,7 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/head_32.S linux-2.6.30.4/arch/x86/kern
8801 #else /* Not PAE */ 8803 #else /* Not PAE */
8802 8804
8803 page_pde_offset = (__PAGE_OFFSET >> 20); 8805 page_pde_offset = (__PAGE_OFFSET >> 20);
8804@@ -249,8 +315,14 @@ page_pde_offset = (__PAGE_OFFSET >> 20); 8806@@ -249,8 +317,14 @@ page_pde_offset = (__PAGE_OFFSET >> 20);
8805 movl %eax, pa(max_pfn_mapped) 8807 movl %eax, pa(max_pfn_mapped)
8806 8808
8807 /* Do early initialization of the fixmap area */ 8809 /* Do early initialization of the fixmap area */
@@ -8818,7 +8820,7 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/head_32.S linux-2.6.30.4/arch/x86/kern
8818 #endif 8820 #endif
8819 jmp 3f 8821 jmp 3f
8820 /* 8822 /*
8821@@ -314,13 +386,16 @@ ENTRY(startup_32_smp) 8823@@ -314,13 +388,16 @@ ENTRY(startup_32_smp)
8822 jnc 6f 8824 jnc 6f
8823 8825
8824 /* Setup EFER (Extended Feature Enable Register) */ 8826 /* Setup EFER (Extended Feature Enable Register) */
@@ -8836,7 +8838,7 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/head_32.S linux-2.6.30.4/arch/x86/kern
8836 6: 8838 6:
8837 8839
8838 /* 8840 /*
8839@@ -346,9 +421,7 @@ ENTRY(startup_32_smp) 8841@@ -346,9 +423,7 @@ ENTRY(startup_32_smp)
8840 8842
8841 #ifdef CONFIG_SMP 8843 #ifdef CONFIG_SMP
8842 cmpb $0, ready 8844 cmpb $0, ready
@@ -8847,7 +8849,7 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/head_32.S linux-2.6.30.4/arch/x86/kern
8847 #endif /* CONFIG_SMP */ 8849 #endif /* CONFIG_SMP */
8848 8850
8849 /* 8851 /*
8850@@ -426,7 +499,7 @@ is386: movl $2,%ecx # set MP 8852@@ -426,7 +501,7 @@ is386: movl $2,%ecx # set MP
8851 1: movl $(__KERNEL_DS),%eax # reload all the segment registers 8853 1: movl $(__KERNEL_DS),%eax # reload all the segment registers
8852 movl %eax,%ss # after changing gdt. 8854 movl %eax,%ss # after changing gdt.
8853 8855
@@ -8856,18 +8858,20 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/head_32.S linux-2.6.30.4/arch/x86/kern
8856 movl %eax,%ds 8858 movl %eax,%ds
8857 movl %eax,%es 8859 movl %eax,%es
8858 8860
8859@@ -440,8 +513,9 @@ is386: movl $2,%ecx # set MP 8861@@ -440,8 +515,11 @@ is386: movl $2,%ecx # set MP
8860 */ 8862 */
8861 cmpb $0,ready 8863 cmpb $0,ready
8862 jne 1f 8864 jne 1f
8863- movl $per_cpu__gdt_page,%eax 8865- movl $per_cpu__gdt_page,%eax
8864+ movl $cpu_gdt_table,%eax 8866+ movl $cpu_gdt_table,%eax
8865 movl $per_cpu__stack_canary,%ecx 8867 movl $per_cpu__stack_canary,%ecx
8868+#ifdef CONFIG_SMP
8866+ addl $__per_cpu_load,%ecx 8869+ addl $__per_cpu_load,%ecx
8870+#endif
8867 subl $20, %ecx 8871 subl $20, %ecx
8868 movw %cx, 8 * GDT_ENTRY_STACK_CANARY + 2(%eax) 8872 movw %cx, 8 * GDT_ENTRY_STACK_CANARY + 2(%eax)
8869 shrl $16, %ecx 8873 shrl $16, %ecx
8870@@ -460,10 +534,6 @@ is386: movl $2,%ecx # set MP 8874@@ -460,10 +538,6 @@ is386: movl $2,%ecx # set MP
8871 #ifdef CONFIG_SMP 8875 #ifdef CONFIG_SMP
8872 movb ready, %cl 8876 movb ready, %cl
8873 movb $1, ready 8877 movb $1, ready
@@ -8878,7 +8882,7 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/head_32.S linux-2.6.30.4/arch/x86/kern
8878 #endif /* CONFIG_SMP */ 8882 #endif /* CONFIG_SMP */
8879 jmp *(initial_code) 8883 jmp *(initial_code)
8880 8884
8881@@ -549,22 +619,22 @@ early_page_fault: 8885@@ -549,22 +623,22 @@ early_page_fault:
8882 jmp early_fault 8886 jmp early_fault
8883 8887
8884 early_fault: 8888 early_fault:
@@ -8906,7 +8910,7 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/head_32.S linux-2.6.30.4/arch/x86/kern
8906 hlt_loop: 8910 hlt_loop:
8907 hlt 8911 hlt
8908 jmp hlt_loop 8912 jmp hlt_loop
8909@@ -572,8 +642,11 @@ hlt_loop: 8913@@ -572,8 +646,11 @@ hlt_loop:
8910 /* This is the default interrupt "handler" :-) */ 8914 /* This is the default interrupt "handler" :-) */
8911 ALIGN 8915 ALIGN
8912 ignore_int: 8916 ignore_int:
@@ -8919,7 +8923,7 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/head_32.S linux-2.6.30.4/arch/x86/kern
8919 pushl %eax 8923 pushl %eax
8920 pushl %ecx 8924 pushl %ecx
8921 pushl %edx 8925 pushl %edx
8922@@ -582,9 +655,6 @@ ignore_int: 8926@@ -582,9 +659,6 @@ ignore_int:
8923 movl $(__KERNEL_DS),%eax 8927 movl $(__KERNEL_DS),%eax
8924 movl %eax,%ds 8928 movl %eax,%ds
8925 movl %eax,%es 8929 movl %eax,%es
@@ -8929,7 +8933,7 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/head_32.S linux-2.6.30.4/arch/x86/kern
8929 pushl 16(%esp) 8933 pushl 16(%esp)
8930 pushl 24(%esp) 8934 pushl 24(%esp)
8931 pushl 32(%esp) 8935 pushl 32(%esp)
8932@@ -608,37 +678,49 @@ ignore_int: 8936@@ -608,37 +682,49 @@ ignore_int:
8933 ENTRY(initial_code) 8937 ENTRY(initial_code)
8934 .long i386_start_kernel 8938 .long i386_start_kernel
8935 8939
@@ -8960,13 +8964,13 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/head_32.S linux-2.6.30.4/arch/x86/kern
8960+ .fill 1024,4,0 8964+ .fill 1024,4,0
8961+ 8965+
8962+ENTRY(swapper_pg_fixmap1) 8966+ENTRY(swapper_pg_fixmap1)
8963+ .fill 1024,4,0 8967 .fill 1024,4,0
8964+ 8968+
8965+ENTRY(swapper_pg_fixmap2) 8969+ENTRY(swapper_pg_fixmap2)
8966+ .fill 1024,4,0 8970+ .fill 1024,4,0
8967+ 8971+
8968+ENTRY(swapper_pg_fixmap3) 8972+ENTRY(swapper_pg_fixmap3)
8969 .fill 1024,4,0 8973+ .fill 1024,4,0
8970+ 8974+
8971+.section .empty_zero_page,"a",@progbits 8975+.section .empty_zero_page,"a",@progbits
8972 ENTRY(empty_zero_page) 8976 ENTRY(empty_zero_page)
@@ -8992,7 +8996,7 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/head_32.S linux-2.6.30.4/arch/x86/kern
8992 ENTRY(swapper_pg_dir) 8996 ENTRY(swapper_pg_dir)
8993 .long pa(swapper_pg_pmd+PGD_IDENT_ATTR),0 /* low identity map */ 8997 .long pa(swapper_pg_pmd+PGD_IDENT_ATTR),0 /* low identity map */
8994 # if KPMDS == 3 8998 # if KPMDS == 3
8995@@ -661,11 +743,12 @@ ENTRY(swapper_pg_dir) 8999@@ -661,11 +747,12 @@ ENTRY(swapper_pg_dir)
8996 9000
8997 .data 9001 .data
8998 ENTRY(stack_start) 9002 ENTRY(stack_start)
@@ -9006,7 +9010,7 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/head_32.S linux-2.6.30.4/arch/x86/kern
9006 early_recursion_flag: 9010 early_recursion_flag:
9007 .long 0 9011 .long 0
9008 9012
9009@@ -701,7 +784,7 @@ fault_msg: 9013@@ -701,7 +788,7 @@ fault_msg:
9010 .word 0 # 32 bit align gdt_desc.address 9014 .word 0 # 32 bit align gdt_desc.address
9011 boot_gdt_descr: 9015 boot_gdt_descr:
9012 .word __BOOT_DS+7 9016 .word __BOOT_DS+7
@@ -9015,7 +9019,7 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/head_32.S linux-2.6.30.4/arch/x86/kern
9015 9019
9016 .word 0 # 32-bit align idt_desc.address 9020 .word 0 # 32-bit align idt_desc.address
9017 idt_descr: 9021 idt_descr:
9018@@ -712,7 +795,7 @@ idt_descr: 9022@@ -712,7 +799,7 @@ idt_descr:
9019 .word 0 # 32 bit align gdt_desc.address 9023 .word 0 # 32 bit align gdt_desc.address
9020 ENTRY(early_gdt_descr) 9024 ENTRY(early_gdt_descr)
9021 .word GDT_ENTRIES*8-1 9025 .word GDT_ENTRIES*8-1
@@ -9024,7 +9028,7 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/head_32.S linux-2.6.30.4/arch/x86/kern
9024 9028
9025 /* 9029 /*
9026 * The boot_gdt must mirror the equivalent in setup.S and is 9030 * The boot_gdt must mirror the equivalent in setup.S and is
9027@@ -721,5 +804,59 @@ ENTRY(early_gdt_descr) 9031@@ -721,5 +808,59 @@ ENTRY(early_gdt_descr)
9028 .align L1_CACHE_BYTES 9032 .align L1_CACHE_BYTES
9029 ENTRY(boot_gdt) 9033 ENTRY(boot_gdt)
9030 .fill GDT_ENTRY_BOOT_CS,8,0 9034 .fill GDT_ENTRY_BOOT_CS,8,0
@@ -10165,7 +10169,7 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/process_64.c linux-2.6.30.4/arch/x86/k
10165-} 10169-}
10166diff -urNp linux-2.6.30.4/arch/x86/kernel/process.c linux-2.6.30.4/arch/x86/kernel/process.c 10170diff -urNp linux-2.6.30.4/arch/x86/kernel/process.c linux-2.6.30.4/arch/x86/kernel/process.c
10167--- linux-2.6.30.4/arch/x86/kernel/process.c 2009-07-24 17:47:51.000000000 -0400 10171--- linux-2.6.30.4/arch/x86/kernel/process.c 2009-07-24 17:47:51.000000000 -0400
10168+++ linux-2.6.30.4/arch/x86/kernel/process.c 2009-07-30 09:48:09.950702241 -0400 10172+++ linux-2.6.30.4/arch/x86/kernel/process.c 2009-08-05 19:08:00.495411211 -0400
10169@@ -71,7 +71,7 @@ void exit_thread(void) 10173@@ -71,7 +71,7 @@ void exit_thread(void)
10170 unsigned long *bp = t->io_bitmap_ptr; 10174 unsigned long *bp = t->io_bitmap_ptr;
10171 10175
@@ -10179,7 +10183,7 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/process.c linux-2.6.30.4/arch/x86/kern
10179 10183
10180 clear_tsk_thread_flag(tsk, TIF_DEBUG); 10184 clear_tsk_thread_flag(tsk, TIF_DEBUG);
10181 10185
10182+#ifndef CONFIG_CC_STACKPROTECTOR 10186+#if defined(CONFIG_X86_32) && !defined(CONFIG_CC_STACKPROTECTOR)
10183+ loadsegment(gs, 0); 10187+ loadsegment(gs, 0);
10184+#endif 10188+#endif
10185 tsk->thread.debugreg0 = 0; 10189 tsk->thread.debugreg0 = 0;
@@ -10301,7 +10305,7 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/setup.c linux-2.6.30.4/arch/x86/kernel
10301 bss_resource.end = virt_to_phys(&__bss_stop)-1; 10305 bss_resource.end = virt_to_phys(&__bss_stop)-1;
10302diff -urNp linux-2.6.30.4/arch/x86/kernel/setup_percpu.c linux-2.6.30.4/arch/x86/kernel/setup_percpu.c 10306diff -urNp linux-2.6.30.4/arch/x86/kernel/setup_percpu.c linux-2.6.30.4/arch/x86/kernel/setup_percpu.c
10303--- linux-2.6.30.4/arch/x86/kernel/setup_percpu.c 2009-07-24 17:47:51.000000000 -0400 10307--- linux-2.6.30.4/arch/x86/kernel/setup_percpu.c 2009-07-24 17:47:51.000000000 -0400
10304+++ linux-2.6.30.4/arch/x86/kernel/setup_percpu.c 2009-08-04 17:52:34.388856060 -0400 10308+++ linux-2.6.30.4/arch/x86/kernel/setup_percpu.c 2009-08-05 19:08:00.518752374 -0400
10305@@ -25,19 +25,17 @@ 10309@@ -25,19 +25,17 @@
10306 # define DBG(x...) 10310 # define DBG(x...)
10307 #endif 10311 #endif
@@ -10325,33 +10329,30 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/setup_percpu.c linux-2.6.30.4/arch/x86
10325 [0 ... NR_CPUS-1] = BOOT_PERCPU_OFFSET, 10329 [0 ... NR_CPUS-1] = BOOT_PERCPU_OFFSET,
10326 }; 10330 };
10327 EXPORT_SYMBOL(__per_cpu_offset); 10331 EXPORT_SYMBOL(__per_cpu_offset);
10328@@ -333,16 +331,18 @@ out_free_ar: 10332@@ -336,13 +334,15 @@ out_free_ar:
10329 return ret; 10333 static inline void setup_percpu_segment(int cpu)
10330 }
10331
10332-static inline void setup_percpu_segment(int cpu)
10333+static inline void setup_percpu_segment(int cpu, size_t size)
10334 { 10334 {
10335 #ifdef CONFIG_X86_32 10335 #ifdef CONFIG_X86_32
10336- struct desc_struct gdt; 10336- struct desc_struct gdt;
10337+ struct desc_struct d, *gdt = get_cpu_gdt_table(cpu); 10337-
10338+ unsigned long base;
10339
10340- pack_descriptor(&gdt, per_cpu_offset(cpu), 0xFFFFF, 10338- pack_descriptor(&gdt, per_cpu_offset(cpu), 0xFFFFF,
10341- 0x2 | DESCTYPE_S, 0x8); 10339- 0x2 | DESCTYPE_S, 0x8);
10342- gdt.s = 1; 10340- gdt.s = 1;
10343- write_gdt_entry(get_cpu_gdt_table(cpu), 10341- write_gdt_entry(get_cpu_gdt_table(cpu),
10344- GDT_ENTRY_PERCPU, &gdt, DESCTYPE_S); 10342- GDT_ENTRY_PERCPU, &gdt, DESCTYPE_S);
10345+ base = per_cpu_offset(cpu); 10343+ struct desc_struct d, *gdt = get_cpu_gdt_table(cpu);
10346+ if (size <= 64*1024) 10344+ unsigned long base = per_cpu_offset(cpu);
10347+ pack_descriptor(&d, base, size-1, 0x80 | DESCTYPE_S | 0x3, 0x4); 10345+ const unsigned long limit = VMALLOC_END - base - 1;
10346+
10347+ if (limit < 64*1024)
10348+ pack_descriptor(&d, base, limit, 0x80 | DESCTYPE_S | 0x3, 0x4);
10348+ else 10349+ else
10349+ pack_descriptor(&d, base, (size-1) >> PAGE_SHIFT, 0x80 | DESCTYPE_S | 0x3, 0xC); 10350+ pack_descriptor(&d, base, limit >> PAGE_SHIFT, 0x80 | DESCTYPE_S | 0x3, 0xC);
10350+ write_gdt_entry(gdt, GDT_ENTRY_PERCPU, &d, DESCTYPE_S); 10351+ write_gdt_entry(gdt, GDT_ENTRY_PERCPU, &d, DESCTYPE_S);
10351 #endif 10352 #endif
10352 } 10353 }
10353 10354
10354@@ -381,10 +381,15 @@ void __init setup_per_cpu_areas(void) 10355@@ -381,6 +381,11 @@ void __init setup_per_cpu_areas(void)
10355 /* alrighty, percpu areas up and running */ 10356 /* alrighty, percpu areas up and running */
10356 delta = (unsigned long)pcpu_base_addr - (unsigned long)__per_cpu_start; 10357 delta = (unsigned long)pcpu_base_addr - (unsigned long)__per_cpu_start;
10357 for_each_possible_cpu(cpu) { 10358 for_each_possible_cpu(cpu) {
@@ -10363,11 +10364,6 @@ diff -urNp linux-2.6.30.4/arch/x86/kernel/setup_percpu.c linux-2.6.30.4/arch/x86
10363 per_cpu_offset(cpu) = delta + cpu * pcpu_unit_size; 10364 per_cpu_offset(cpu) = delta + cpu * pcpu_unit_size;
10364 per_cpu(this_cpu_off, cpu) = per_cpu_offset(cpu); 10365 per_cpu(this_cpu_off, cpu) = per_cpu_offset(cpu);
10365 per_cpu(cpu_number, cpu) = cpu; 10366 per_cpu(cpu_number, cpu) = cpu;
10366- setup_percpu_segment(cpu);
10367+ setup_percpu_segment(cpu, static_size + PERCPU_MODULE_RESERVE + PERCPU_DYNAMIC_RESERVE);
10368 setup_stack_canary_segment(cpu);
10369 /*
10370 * Copy data used in early init routines from the
10371@@ -408,6 +413,12 @@ void __init setup_per_cpu_areas(void) 10367@@ -408,6 +413,12 @@ void __init setup_per_cpu_areas(void)
10372 early_per_cpu_map(x86_cpu_to_node_map, cpu); 10368 early_per_cpu_map(x86_cpu_to_node_map, cpu);
10373 #endif 10369 #endif
@@ -13818,7 +13814,7 @@ diff -urNp linux-2.6.30.4/arch/x86/mm/extable.c linux-2.6.30.4/arch/x86/mm/extab
13818 pnp_bios_is_utter_crap = 1; 13814 pnp_bios_is_utter_crap = 1;
13819diff -urNp linux-2.6.30.4/arch/x86/mm/fault.c linux-2.6.30.4/arch/x86/mm/fault.c 13815diff -urNp linux-2.6.30.4/arch/x86/mm/fault.c linux-2.6.30.4/arch/x86/mm/fault.c
13820--- linux-2.6.30.4/arch/x86/mm/fault.c 2009-07-24 17:47:51.000000000 -0400 13816--- linux-2.6.30.4/arch/x86/mm/fault.c 2009-07-24 17:47:51.000000000 -0400
13821+++ linux-2.6.30.4/arch/x86/mm/fault.c 2009-07-30 11:10:48.941676108 -0400 13817+++ linux-2.6.30.4/arch/x86/mm/fault.c 2009-08-05 19:15:53.629625442 -0400
13822@@ -27,6 +27,8 @@ 13818@@ -27,6 +27,8 @@
13823 #include <linux/tty.h> 13819 #include <linux/tty.h>
13824 #include <linux/smp.h> 13820 #include <linux/smp.h>
@@ -13828,7 +13824,15 @@ diff -urNp linux-2.6.30.4/arch/x86/mm/fault.c linux-2.6.30.4/arch/x86/mm/fault.c
13828 13824
13829 #include <asm-generic/sections.h> 13825 #include <asm-generic/sections.h>
13830 13826
13831@@ -73,7 +75,7 @@ static inline int notify_page_fault(stru 13827@@ -37,6 +39,7 @@
13828 #include <asm/proto.h>
13829 #include <asm/traps.h>
13830 #include <asm/desc.h>
13831+#include <asm/vsyscall.h>
13832
13833 /*
13834 * Page fault error code bits:
13835@@ -73,7 +76,7 @@ static inline int notify_page_fault(stru
13832 int ret = 0; 13836 int ret = 0;
13833 13837
13834 /* kprobe_running() needs smp_processor_id() */ 13838 /* kprobe_running() needs smp_processor_id() */
@@ -13837,7 +13841,7 @@ diff -urNp linux-2.6.30.4/arch/x86/mm/fault.c linux-2.6.30.4/arch/x86/mm/fault.c
13837 preempt_disable(); 13841 preempt_disable();
13838 if (kprobe_running() && kprobe_fault_handler(regs, 14)) 13842 if (kprobe_running() && kprobe_fault_handler(regs, 14))
13839 ret = 1; 13843 ret = 1;
13840@@ -193,6 +195,30 @@ force_sig_info_fault(int si_signo, int s 13844@@ -193,6 +196,30 @@ force_sig_info_fault(int si_signo, int s
13841 force_sig_info(si_signo, &info, tsk); 13845 force_sig_info(si_signo, &info, tsk);
13842 } 13846 }
13843 13847
@@ -13868,7 +13872,7 @@ diff -urNp linux-2.6.30.4/arch/x86/mm/fault.c linux-2.6.30.4/arch/x86/mm/fault.c
13868 DEFINE_SPINLOCK(pgd_lock); 13872 DEFINE_SPINLOCK(pgd_lock);
13869 LIST_HEAD(pgd_list); 13873 LIST_HEAD(pgd_list);
13870 13874
13871@@ -571,7 +597,7 @@ static int is_errata93(struct pt_regs *r 13875@@ -571,7 +598,7 @@ static int is_errata93(struct pt_regs *r
13872 static int is_errata100(struct pt_regs *regs, unsigned long address) 13876 static int is_errata100(struct pt_regs *regs, unsigned long address)
13873 { 13877 {
13874 #ifdef CONFIG_X86_64 13878 #ifdef CONFIG_X86_64
@@ -13877,7 +13881,7 @@ diff -urNp linux-2.6.30.4/arch/x86/mm/fault.c linux-2.6.30.4/arch/x86/mm/fault.c
13877 return 1; 13881 return 1;
13878 #endif 13882 #endif
13879 return 0; 13883 return 0;
13880@@ -598,7 +624,7 @@ static int is_f00f_bug(struct pt_regs *r 13884@@ -598,7 +625,7 @@ static int is_f00f_bug(struct pt_regs *r
13881 } 13885 }
13882 13886
13883 static const char nx_warning[] = KERN_CRIT 13887 static const char nx_warning[] = KERN_CRIT
@@ -13886,7 +13890,7 @@ diff -urNp linux-2.6.30.4/arch/x86/mm/fault.c linux-2.6.30.4/arch/x86/mm/fault.c
13886 13890
13887 static void 13891 static void
13888 show_fault_oops(struct pt_regs *regs, unsigned long error_code, 13892 show_fault_oops(struct pt_regs *regs, unsigned long error_code,
13889@@ -607,15 +633,31 @@ show_fault_oops(struct pt_regs *regs, un 13893@@ -607,15 +634,31 @@ show_fault_oops(struct pt_regs *regs, un
13890 if (!oops_may_print()) 13894 if (!oops_may_print())
13891 return; 13895 return;
13892 13896
@@ -13920,7 +13924,7 @@ diff -urNp linux-2.6.30.4/arch/x86/mm/fault.c linux-2.6.30.4/arch/x86/mm/fault.c
13920 printk(KERN_ALERT "BUG: unable to handle kernel "); 13924 printk(KERN_ALERT "BUG: unable to handle kernel ");
13921 if (address < PAGE_SIZE) 13925 if (address < PAGE_SIZE)
13922 printk(KERN_CONT "NULL pointer dereference"); 13926 printk(KERN_CONT "NULL pointer dereference");
13923@@ -740,6 +782,68 @@ __bad_area_nosemaphore(struct pt_regs *r 13927@@ -740,6 +783,68 @@ __bad_area_nosemaphore(struct pt_regs *r
13924 unsigned long address, int si_code) 13928 unsigned long address, int si_code)
13925 { 13929 {
13926 struct task_struct *tsk = current; 13930 struct task_struct *tsk = current;
@@ -13989,7 +13993,7 @@ diff -urNp linux-2.6.30.4/arch/x86/mm/fault.c linux-2.6.30.4/arch/x86/mm/fault.c
13989 13993
13990 /* User mode accesses just cause a SIGSEGV */ 13994 /* User mode accesses just cause a SIGSEGV */
13991 if (error_code & PF_USER) { 13995 if (error_code & PF_USER) {
13992@@ -874,6 +978,106 @@ static int spurious_fault_check(unsigned 13996@@ -874,6 +979,106 @@ static int spurious_fault_check(unsigned
13993 return 1; 13997 return 1;
13994 } 13998 }
13995 13999
@@ -14096,7 +14100,7 @@ diff -urNp linux-2.6.30.4/arch/x86/mm/fault.c linux-2.6.30.4/arch/x86/mm/fault.c
14096 /* 14100 /*
14097 * Handle a spurious fault caused by a stale TLB entry. 14101 * Handle a spurious fault caused by a stale TLB entry.
14098 * 14102 *
14099@@ -940,6 +1144,9 @@ int show_unhandled_signals = 1; 14103@@ -940,6 +1145,9 @@ int show_unhandled_signals = 1;
14100 static inline int 14104 static inline int
14101 access_error(unsigned long error_code, int write, struct vm_area_struct *vma) 14105 access_error(unsigned long error_code, int write, struct vm_area_struct *vma)
14102 { 14106 {
@@ -14106,7 +14110,7 @@ diff -urNp linux-2.6.30.4/arch/x86/mm/fault.c linux-2.6.30.4/arch/x86/mm/fault.c
14106 if (write) { 14110 if (write) {
14107 /* write, present and write, not present: */ 14111 /* write, present and write, not present: */
14108 if (unlikely(!(vma->vm_flags & VM_WRITE))) 14112 if (unlikely(!(vma->vm_flags & VM_WRITE)))
14109@@ -973,19 +1180,18 @@ do_page_fault(struct pt_regs *regs, unsi 14113@@ -973,19 +1181,18 @@ do_page_fault(struct pt_regs *regs, unsi
14110 { 14114 {
14111 struct vm_area_struct *vma; 14115 struct vm_area_struct *vma;
14112 struct task_struct *tsk; 14116 struct task_struct *tsk;
@@ -14129,7 +14133,7 @@ diff -urNp linux-2.6.30.4/arch/x86/mm/fault.c linux-2.6.30.4/arch/x86/mm/fault.c
14129 if (unlikely(kmmio_fault(regs, address))) 14133 if (unlikely(kmmio_fault(regs, address)))
14130 return; 14134 return;
14131 14135
14132@@ -1033,7 +1239,7 @@ do_page_fault(struct pt_regs *regs, unsi 14136@@ -1033,7 +1240,7 @@ do_page_fault(struct pt_regs *regs, unsi
14133 * User-mode registers count as a user access even for any 14137 * User-mode registers count as a user access even for any
14134 * potential system fault or CPU buglet: 14138 * potential system fault or CPU buglet:
14135 */ 14139 */
@@ -14138,7 +14142,7 @@ diff -urNp linux-2.6.30.4/arch/x86/mm/fault.c linux-2.6.30.4/arch/x86/mm/fault.c
14138 local_irq_enable(); 14142 local_irq_enable();
14139 error_code |= PF_USER; 14143 error_code |= PF_USER;
14140 } else { 14144 } else {
14141@@ -1085,6 +1291,11 @@ do_page_fault(struct pt_regs *regs, unsi 14145@@ -1085,6 +1292,11 @@ do_page_fault(struct pt_regs *regs, unsi
14142 might_sleep(); 14146 might_sleep();
14143 } 14147 }
14144 14148
@@ -14150,7 +14154,7 @@ diff -urNp linux-2.6.30.4/arch/x86/mm/fault.c linux-2.6.30.4/arch/x86/mm/fault.c
14150 vma = find_vma(mm, address); 14154 vma = find_vma(mm, address);
14151 if (unlikely(!vma)) { 14155 if (unlikely(!vma)) {
14152 bad_area(regs, error_code, address); 14156 bad_area(regs, error_code, address);
14153@@ -1096,18 +1307,24 @@ do_page_fault(struct pt_regs *regs, unsi 14157@@ -1096,18 +1308,24 @@ do_page_fault(struct pt_regs *regs, unsi
14154 bad_area(regs, error_code, address); 14158 bad_area(regs, error_code, address);
14155 return; 14159 return;
14156 } 14160 }
@@ -14186,7 +14190,7 @@ diff -urNp linux-2.6.30.4/arch/x86/mm/fault.c linux-2.6.30.4/arch/x86/mm/fault.c
14186 if (unlikely(expand_stack(vma, address))) { 14190 if (unlikely(expand_stack(vma, address))) {
14187 bad_area(regs, error_code, address); 14191 bad_area(regs, error_code, address);
14188 return; 14192 return;
14189@@ -1146,3 +1363,174 @@ good_area: 14193@@ -1146,3 +1364,174 @@ good_area:
14190 14194
14191 up_read(&mm->mmap_sem); 14195 up_read(&mm->mmap_sem);
14192 } 14196 }
@@ -15909,8 +15913,13 @@ diff -urNp linux-2.6.30.4/arch/x86/vdso/Makefile linux-2.6.30.4/arch/x86/vdso/Ma
15909 # Install the unstripped copy of vdso*.so listed in $(vdso-install-y). 15913 # Install the unstripped copy of vdso*.so listed in $(vdso-install-y).
15910diff -urNp linux-2.6.30.4/arch/x86/vdso/vclock_gettime.c linux-2.6.30.4/arch/x86/vdso/vclock_gettime.c 15914diff -urNp linux-2.6.30.4/arch/x86/vdso/vclock_gettime.c linux-2.6.30.4/arch/x86/vdso/vclock_gettime.c
15911--- linux-2.6.30.4/arch/x86/vdso/vclock_gettime.c 2009-07-24 17:47:51.000000000 -0400 15915--- linux-2.6.30.4/arch/x86/vdso/vclock_gettime.c 2009-07-24 17:47:51.000000000 -0400
15912+++ linux-2.6.30.4/arch/x86/vdso/vclock_gettime.c 2009-07-30 09:48:09.978662746 -0400 15916+++ linux-2.6.30.4/arch/x86/vdso/vclock_gettime.c 2009-08-05 19:15:53.673598242 -0400
15913@@ -26,20 +26,43 @@ 15917@@ -22,24 +22,48 @@
15918 #include <asm/hpet.h>
15919 #include <asm/unistd.h>
15920 #include <asm/io.h>
15921+#include <asm/fixmap.h>
15922 #include "vextern.h"
15914 15923
15915 #define gtod vdso_vsyscall_gtod_data 15924 #define gtod vdso_vsyscall_gtod_data
15916 15925
@@ -15958,7 +15967,7 @@ diff -urNp linux-2.6.30.4/arch/x86/vdso/vclock_gettime.c linux-2.6.30.4/arch/x86
15958 return (v * gtod->clock.mult) >> gtod->clock.shift; 15967 return (v * gtod->clock.mult) >> gtod->clock.shift;
15959 } 15968 }
15960 15969
15961@@ -88,7 +111,9 @@ notrace static noinline int do_monotonic 15970@@ -88,7 +112,9 @@ notrace static noinline int do_monotonic
15962 15971
15963 notrace int __vdso_clock_gettime(clockid_t clock, struct timespec *ts) 15972 notrace int __vdso_clock_gettime(clockid_t clock, struct timespec *ts)
15964 { 15973 {
@@ -15969,7 +15978,7 @@ diff -urNp linux-2.6.30.4/arch/x86/vdso/vclock_gettime.c linux-2.6.30.4/arch/x86
15969 switch (clock) { 15978 switch (clock) {
15970 case CLOCK_REALTIME: 15979 case CLOCK_REALTIME:
15971 return do_realtime(ts); 15980 return do_realtime(ts);
15972@@ -100,10 +125,20 @@ notrace int __vdso_clock_gettime(clockid 15981@@ -100,10 +126,20 @@ notrace int __vdso_clock_gettime(clockid
15973 int clock_gettime(clockid_t, struct timespec *) 15982 int clock_gettime(clockid_t, struct timespec *)
15974 __attribute__((weak, alias("__vdso_clock_gettime"))); 15983 __attribute__((weak, alias("__vdso_clock_gettime")));
15975 15984
@@ -15992,7 +16001,7 @@ diff -urNp linux-2.6.30.4/arch/x86/vdso/vclock_gettime.c linux-2.6.30.4/arch/x86
15992 if (likely(tv != NULL)) { 16001 if (likely(tv != NULL)) {
15993 BUILD_BUG_ON(offsetof(struct timeval, tv_usec) != 16002 BUILD_BUG_ON(offsetof(struct timeval, tv_usec) !=
15994 offsetof(struct timespec, tv_nsec) || 16003 offsetof(struct timespec, tv_nsec) ||
15995@@ -118,9 +153,7 @@ notrace int __vdso_gettimeofday(struct t 16004@@ -118,9 +154,7 @@ notrace int __vdso_gettimeofday(struct t
15996 } 16005 }
15997 return 0; 16006 return 0;
15998 } 16007 }
@@ -34785,7 +34794,7 @@ diff -urNp linux-2.6.30.4/include/asm-generic/int-ll64.h linux-2.6.30.4/include/
34785 #define S16_C(x) x 34794 #define S16_C(x) x
34786diff -urNp linux-2.6.30.4/include/asm-generic/vmlinux.lds.h linux-2.6.30.4/include/asm-generic/vmlinux.lds.h 34795diff -urNp linux-2.6.30.4/include/asm-generic/vmlinux.lds.h linux-2.6.30.4/include/asm-generic/vmlinux.lds.h
34787--- linux-2.6.30.4/include/asm-generic/vmlinux.lds.h 2009-07-24 17:47:51.000000000 -0400 34796--- linux-2.6.30.4/include/asm-generic/vmlinux.lds.h 2009-07-24 17:47:51.000000000 -0400
34788+++ linux-2.6.30.4/include/asm-generic/vmlinux.lds.h 2009-08-04 17:52:34.399966119 -0400 34797+++ linux-2.6.30.4/include/asm-generic/vmlinux.lds.h 2009-08-05 19:08:00.537007471 -0400
34789@@ -121,6 +121,7 @@ 34798@@ -121,6 +121,7 @@
34790 .rodata : AT(ADDR(.rodata) - LOAD_OFFSET) { \ 34799 .rodata : AT(ADDR(.rodata) - LOAD_OFFSET) { \
34791 VMLINUX_SYMBOL(__start_rodata) = .; \ 34800 VMLINUX_SYMBOL(__start_rodata) = .; \
@@ -34794,17 +34803,17 @@ diff -urNp linux-2.6.30.4/include/asm-generic/vmlinux.lds.h linux-2.6.30.4/inclu
34794 *(__vermagic) /* Kernel version magic */ \ 34803 *(__vermagic) /* Kernel version magic */ \
34795 *(__markers_strings) /* Markers: strings */ \ 34804 *(__markers_strings) /* Markers: strings */ \
34796 *(__tracepoints_strings)/* Tracepoints: strings */ \ 34805 *(__tracepoints_strings)/* Tracepoints: strings */ \
34797@@ -476,8 +477,10 @@ 34806@@ -478,8 +479,9 @@
34798 VMLINUX_SYMBOL(__per_cpu_load) = .; \
34799 .data.percpu vaddr : AT(VMLINUX_SYMBOL(__per_cpu_load) \
34800 - LOAD_OFFSET) { \ 34807 - LOAD_OFFSET) { \
34801+ VMLINUX_SYMBOL(__per_cpu_load) = . + __per_cpu_load; \
34802 VMLINUX_SYMBOL(__per_cpu_start) = .; \ 34808 VMLINUX_SYMBOL(__per_cpu_start) = .; \
34803 *(.data.percpu.first) \ 34809 *(.data.percpu.first) \
34804+ . = ALIGN(PAGE_SIZE); \ 34810- *(.data.percpu.page_aligned) \
34805 *(.data.percpu.page_aligned) \
34806 *(.data.percpu) \ 34811 *(.data.percpu) \
34812+ . = ALIGN(PAGE_SIZE); \
34813+ *(.data.percpu.page_aligned) \
34807 *(.data.percpu.shared_aligned) \ 34814 *(.data.percpu.shared_aligned) \
34815 VMLINUX_SYMBOL(__per_cpu_end) = .; \
34816 } phdr \
34808diff -urNp linux-2.6.30.4/include/drm/drm_pciids.h linux-2.6.30.4/include/drm/drm_pciids.h 34817diff -urNp linux-2.6.30.4/include/drm/drm_pciids.h linux-2.6.30.4/include/drm/drm_pciids.h
34809--- linux-2.6.30.4/include/drm/drm_pciids.h 2009-07-24 17:47:51.000000000 -0400 34818--- linux-2.6.30.4/include/drm/drm_pciids.h 2009-07-24 17:47:51.000000000 -0400
34810+++ linux-2.6.30.4/include/drm/drm_pciids.h 2009-07-30 09:48:10.106233963 -0400 34819+++ linux-2.6.30.4/include/drm/drm_pciids.h 2009-07-30 09:48:10.106233963 -0400
diff --git a/main/linux-grsec/kernelconfig b/main/linux-grsec/kernelconfig
index 71ee53486b..5fd6c53ce4 100644
--- a/main/linux-grsec/kernelconfig
+++ b/main/linux-grsec/kernelconfig
@@ -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.30.4 3# Linux kernel version: 2.6.30.4
4# Mon Aug 3 08:50:09 2009 4# Fri Aug 7 08:30:31 2009
5# 5#
6# CONFIG_64BIT is not set 6# CONFIG_64BIT is not set
7CONFIG_X86_32=y 7CONFIG_X86_32=y
@@ -163,12 +163,12 @@ CONFIG_BLK_DEV_BSG=y
163CONFIG_IOSCHED_NOOP=y 163CONFIG_IOSCHED_NOOP=y
164CONFIG_IOSCHED_AS=m 164CONFIG_IOSCHED_AS=m
165CONFIG_IOSCHED_DEADLINE=m 165CONFIG_IOSCHED_DEADLINE=m
166CONFIG_IOSCHED_CFQ=m 166CONFIG_IOSCHED_CFQ=y
167# CONFIG_DEFAULT_AS is not set 167# CONFIG_DEFAULT_AS is not set
168# CONFIG_DEFAULT_DEADLINE is not set 168# CONFIG_DEFAULT_DEADLINE is not set
169# CONFIG_DEFAULT_CFQ is not set 169CONFIG_DEFAULT_CFQ=y
170CONFIG_DEFAULT_NOOP=y 170# CONFIG_DEFAULT_NOOP is not set
171CONFIG_DEFAULT_IOSCHED="noop" 171CONFIG_DEFAULT_IOSCHED="cfq"
172CONFIG_PREEMPT_NOTIFIERS=y 172CONFIG_PREEMPT_NOTIFIERS=y
173CONFIG_FREEZER=y 173CONFIG_FREEZER=y
174 174
@@ -244,10 +244,10 @@ CONFIG_DMI=y
244# CONFIG_IOMMU_HELPER is not set 244# CONFIG_IOMMU_HELPER is not set
245# CONFIG_IOMMU_API is not set 245# CONFIG_IOMMU_API is not set
246CONFIG_NR_CPUS=8 246CONFIG_NR_CPUS=8
247# CONFIG_SCHED_SMT is not set 247CONFIG_SCHED_SMT=y
248CONFIG_SCHED_MC=y 248CONFIG_SCHED_MC=y
249CONFIG_PREEMPT_NONE=y 249# CONFIG_PREEMPT_NONE is not set
250# CONFIG_PREEMPT_VOLUNTARY is not set 250CONFIG_PREEMPT_VOLUNTARY=y
251# CONFIG_PREEMPT is not set 251# CONFIG_PREEMPT is not set
252CONFIG_X86_LOCAL_APIC=y 252CONFIG_X86_LOCAL_APIC=y
253CONFIG_X86_IO_APIC=y 253CONFIG_X86_IO_APIC=y
@@ -304,7 +304,7 @@ CONFIG_MTRR=y
304CONFIG_MTRR_SANITIZER=y 304CONFIG_MTRR_SANITIZER=y
305CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=0 305CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=0
306CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1 306CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1
307# CONFIG_X86_PAT is not set 307CONFIG_X86_PAT=y
308# CONFIG_SECCOMP is not set 308# CONFIG_SECCOMP is not set
309# CONFIG_CC_STACKPROTECTOR is not set 309# CONFIG_CC_STACKPROTECTOR is not set
310# CONFIG_HZ_100 is not set 310# CONFIG_HZ_100 is not set