aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2010-09-17 06:30:17 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2010-09-23 07:33:07 +0000
commitdc3b31374eb4d07c868009154c9eb55e6d4c3869 (patch)
tree5c39b669bfffe4923b64998c35174c2e5c2b2632
parent292a956aa21c60767e1ebadfaab95dcce7c098e1 (diff)
downloadalpine_aports-dc3b31374eb4d07c868009154c9eb55e6d4c3869.tar.bz2
alpine_aports-dc3b31374eb4d07c868009154c9eb55e6d4c3869.tar.xz
alpine_aports-dc3b31374eb4d07c868009154c9eb55e6d4c3869.zip
main/linux-grsec: upgrade to grsecurity-2.2.0-2.6.32.21-201009162222
(cherry picked from commit 7d9b4bf9d0d84dd17eba89169fb6a37ec79026d7)
-rw-r--r--main/linux-grsec/APKBUILD6
-rw-r--r--main/linux-grsec/grsecurity-2.2.0-2.6.32.21-201009162222.patch (renamed from main/linux-grsec/grsecurity-2.2.0-2.6.32.21-201009130811.patch)10269
2 files changed, 5454 insertions, 4821 deletions
diff --git a/main/linux-grsec/APKBUILD b/main/linux-grsec/APKBUILD
index 6cec7efa11..fa82881362 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.32.21 5pkgver=2.6.32.21
6_kernver=2.6.32 6_kernver=2.6.32
7pkgrel=4 7pkgrel=5
8pkgdesc="Linux kernel with grsecurity" 8pkgdesc="Linux kernel with grsecurity"
9url=http://grsecurity.net 9url=http://grsecurity.net
10depends="mkinitfs linux-firmware" 10depends="mkinitfs linux-firmware"
@@ -14,7 +14,7 @@ _config=${config:-kernelconfig.${CARCH:-x86}}
14install= 14install=
15source="ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-$_kernver.tar.bz2 15source="ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-$_kernver.tar.bz2
16 ftp://ftp.kernel.org/pub/linux/kernel/v2.6/patch-$pkgver.bz2 16 ftp://ftp.kernel.org/pub/linux/kernel/v2.6/patch-$pkgver.bz2
17 grsecurity-2.2.0-2.6.32.21-201009130811.patch 17 grsecurity-2.2.0-2.6.32.21-201009162222.patch
18 0001-grsec-revert-conflicting-flow-cache-changes.patch 18 0001-grsec-revert-conflicting-flow-cache-changes.patch
19 0002-gre-fix-hard-header-destination-address-checking.patch 19 0002-gre-fix-hard-header-destination-address-checking.patch
20 0003-ip_gre-include-route-header_len-in-max_headroom-calc.patch 20 0003-ip_gre-include-route-header_len-in-max_headroom-calc.patch
@@ -151,7 +151,7 @@ firmware() {
151 151
152md5sums="260551284ac224c3a43c4adac7df4879 linux-2.6.32.tar.bz2 152md5sums="260551284ac224c3a43c4adac7df4879 linux-2.6.32.tar.bz2
15329aa10a231882a6e52908642b572326f patch-2.6.32.21.bz2 15329aa10a231882a6e52908642b572326f patch-2.6.32.21.bz2
1544fc4d5e5b33bc1bbd10290ebcd54d930 grsecurity-2.2.0-2.6.32.21-201009130811.patch 154b5d2449d17fb6a4d0433264b6a4de5f7 grsecurity-2.2.0-2.6.32.21-201009162222.patch
1551d247140abec49b96250aec9aa59b324 0001-grsec-revert-conflicting-flow-cache-changes.patch 1551d247140abec49b96250aec9aa59b324 0001-grsec-revert-conflicting-flow-cache-changes.patch
156437317f88ec13ace8d39c31983a41696 0002-gre-fix-hard-header-destination-address-checking.patch 156437317f88ec13ace8d39c31983a41696 0002-gre-fix-hard-header-destination-address-checking.patch
157151b29a161178ed39d62a08f21f3484d 0003-ip_gre-include-route-header_len-in-max_headroom-calc.patch 157151b29a161178ed39d62a08f21f3484d 0003-ip_gre-include-route-header_len-in-max_headroom-calc.patch
diff --git a/main/linux-grsec/grsecurity-2.2.0-2.6.32.21-201009130811.patch b/main/linux-grsec/grsecurity-2.2.0-2.6.32.21-201009162222.patch
index 3054b26259..4ed5e67282 100644
--- a/main/linux-grsec/grsecurity-2.2.0-2.6.32.21-201009130811.patch
+++ b/main/linux-grsec/grsecurity-2.2.0-2.6.32.21-201009162222.patch
@@ -1,165 +1,6 @@
1diff -urNp linux-2.6.32.21/Documentation/dontdiff linux-2.6.32.21/Documentation/dontdiff
2--- linux-2.6.32.21/Documentation/dontdiff 2010-08-26 19:42:20.000000000 -0400
3+++ linux-2.6.32.21/Documentation/dontdiff 2010-09-13 08:10:07.000000000 -0400
4@@ -3,6 +3,7 @@
5 *.bin
6 *.cpio
7 *.csp
8+*.dbg
9 *.dsp
10 *.dvi
11 *.elf
12@@ -38,8 +39,10 @@
13 *.tab.h
14 *.tex
15 *.ver
16+*.vim
17 *.xml
18 *_MODULES
19+*_reg_safe.h
20 *_vga16.c
21 *~
22 *.9
23@@ -49,11 +52,16 @@
24 53c700_d.h
25 CVS
26 ChangeSet
27+GPATH
28+GRTAGS
29+GSYMS
30+GTAGS
31 Image
32 Kerntypes
33 Module.markers
34 Module.symvers
35 PENDING
36+PERF*
37 SCCS
38 System.map*
39 TAGS
40@@ -76,7 +84,10 @@ btfixupprep
41 build
42 bvmlinux
43 bzImage*
44+capflags.c
45 classlist.h*
46+clut_vga16.c
47+common-cmds.h
48 comp*.log
49 compile.h*
50 conf
51@@ -103,13 +114,14 @@ gen_crc32table
52 gen_init_cpio
53 genksyms
54 *_gray256.c
55+hash
56 ihex2fw
57 ikconfig.h*
58 initramfs_data.cpio
59+initramfs_data.cpio.bz2
60 initramfs_data.cpio.gz
61 initramfs_list
62 kallsyms
63-kconfig
64 keywords.c
65 ksym.c*
66 ksym.h*
67@@ -133,7 +145,9 @@ mkboot
68 mkbugboot
69 mkcpustr
70 mkdep
71+mkpiggy
72 mkprep
73+mkregtable
74 mktables
75 mktree
76 modpost
77@@ -149,6 +163,7 @@ patches*
78 pca200e.bin
79 pca200e_ecd.bin2
80 piggy.gz
81+piggy.S
82 piggyback
83 pnmtologo
84 ppc_defs.h*
85@@ -157,12 +172,14 @@ qconf
86 raid6altivec*.c
87 raid6int*.c
88 raid6tables.c
89+regdb.c
90 relocs
91 series
92 setup
93 setup.bin
94 setup.elf
95 sImage
96+slabinfo
97 sm_tbl*
98 split-include
99 syscalltab.h
100@@ -186,14 +203,20 @@ version.h*
101 vmlinux
102 vmlinux-*
103 vmlinux.aout
104+vmlinux.bin.all
105+vmlinux.bin.bz2
106 vmlinux.lds
107+vmlinux.relocs
108+voffset.h
109 vsyscall.lds
110 vsyscall_32.lds
111 wanxlfw.inc
112 uImage
113 unifdef
114+utsrelease.h
115 wakeup.bin
116 wakeup.elf
117 wakeup.lds
118 zImage*
119 zconf.hash.c
120+zoffset.h
121diff -urNp linux-2.6.32.21/Documentation/kernel-parameters.txt linux-2.6.32.21/Documentation/kernel-parameters.txt
122--- linux-2.6.32.21/Documentation/kernel-parameters.txt 2010-08-26 19:42:20.000000000 -0400
123+++ linux-2.6.32.21/Documentation/kernel-parameters.txt 2010-09-13 08:10:07.000000000 -0400
124@@ -1836,6 +1836,12 @@ and is between 256 and 4096 characters.
125 the specified number of seconds. This is to be used if
126 your oopses keep scrolling off the screen.
127
128+ pax_nouderef [X86-32] disables UDEREF. Most likely needed under certain
129+ virtualization environments that don't cope well with the
130+ expand down segment used by UDEREF on X86-32.
131+
132+ pax_softmode= [X86-32] 0/1 to disable/enable PaX softmode on boot already.
133+
134 pcbit= [HW,ISDN]
135
136 pcd. [PARIDE]
137diff -urNp linux-2.6.32.21/Makefile linux-2.6.32.21/Makefile
138--- linux-2.6.32.21/Makefile 2010-08-26 19:42:20.000000000 -0400
139+++ linux-2.6.32.21/Makefile 2010-09-13 08:10:11.000000000 -0400
140@@ -221,8 +221,8 @@ CONFIG_SHELL := $(shell if [ -x "$$BASH"
141
142 HOSTCC = gcc
143 HOSTCXX = g++
144-HOSTCFLAGS = -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer
145-HOSTCXXFLAGS = -O2
146+HOSTCFLAGS = -Wall -W -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -fno-delete-null-pointer-checks
147+HOSTCXXFLAGS = -O2 -fno-delete-null-pointer-checks
148
149 # Decide whether to build built-in, modular, or both.
150 # Normally, just do built-in.
151@@ -644,7 +644,7 @@ export mod_strip_cmd
152
153
154 ifeq ($(KBUILD_EXTMOD),)
155-core-y += kernel/ mm/ fs/ ipc/ security/ crypto/ block/
156+core-y += kernel/ mm/ fs/ ipc/ security/ crypto/ block/ grsecurity/
157
158 vmlinux-dirs := $(patsubst %/,%,$(filter %/, $(init-y) $(init-m) \
159 $(core-y) $(core-m) $(drivers-y) $(drivers-m) \
160diff -urNp linux-2.6.32.21/arch/alpha/include/asm/elf.h linux-2.6.32.21/arch/alpha/include/asm/elf.h 1diff -urNp linux-2.6.32.21/arch/alpha/include/asm/elf.h linux-2.6.32.21/arch/alpha/include/asm/elf.h
161--- linux-2.6.32.21/arch/alpha/include/asm/elf.h 2010-08-26 19:42:20.000000000 -0400 2--- linux-2.6.32.21/arch/alpha/include/asm/elf.h 2010-08-13 16:24:37.000000000 -0400
162+++ linux-2.6.32.21/arch/alpha/include/asm/elf.h 2010-09-13 08:10:04.000000000 -0400 3+++ linux-2.6.32.21/arch/alpha/include/asm/elf.h 2010-09-04 15:54:51.000000000 -0400
163@@ -91,6 +91,13 @@ typedef elf_fpreg_t elf_fpregset_t[ELF_N 4@@ -91,6 +91,13 @@ typedef elf_fpreg_t elf_fpregset_t[ELF_N
164 5
165 #define ELF_ET_DYN_BASE (TASK_UNMAPPED_BASE + 0x1000000) 6 #define ELF_ET_DYN_BASE (TASK_UNMAPPED_BASE + 0x1000000)
@@ -175,8 +16,8 @@ diff -urNp linux-2.6.32.21/arch/alpha/include/asm/elf.h linux-2.6.32.21/arch/alp
175 registered using atexit. This provides a mean for the dynamic 16 registered using atexit. This provides a mean for the dynamic
176 linker to call DT_FINI functions for shared libraries that have 17 linker to call DT_FINI functions for shared libraries that have
177diff -urNp linux-2.6.32.21/arch/alpha/include/asm/pgtable.h linux-2.6.32.21/arch/alpha/include/asm/pgtable.h 18diff -urNp linux-2.6.32.21/arch/alpha/include/asm/pgtable.h linux-2.6.32.21/arch/alpha/include/asm/pgtable.h
178--- linux-2.6.32.21/arch/alpha/include/asm/pgtable.h 2010-08-26 19:42:20.000000000 -0400 19--- linux-2.6.32.21/arch/alpha/include/asm/pgtable.h 2010-08-13 16:24:37.000000000 -0400
179+++ linux-2.6.32.21/arch/alpha/include/asm/pgtable.h 2010-09-13 08:10:04.000000000 -0400 20+++ linux-2.6.32.21/arch/alpha/include/asm/pgtable.h 2010-09-04 15:54:51.000000000 -0400
180@@ -101,6 +101,17 @@ struct vm_area_struct; 21@@ -101,6 +101,17 @@ struct vm_area_struct;
181 #define PAGE_SHARED __pgprot(_PAGE_VALID | __ACCESS_BITS) 22 #define PAGE_SHARED __pgprot(_PAGE_VALID | __ACCESS_BITS)
182 #define PAGE_COPY __pgprot(_PAGE_VALID | __ACCESS_BITS | _PAGE_FOW) 23 #define PAGE_COPY __pgprot(_PAGE_VALID | __ACCESS_BITS | _PAGE_FOW)
@@ -196,8 +37,8 @@ diff -urNp linux-2.6.32.21/arch/alpha/include/asm/pgtable.h linux-2.6.32.21/arch
196 37
197 #define _PAGE_NORMAL(x) __pgprot(_PAGE_VALID | __ACCESS_BITS | (x)) 38 #define _PAGE_NORMAL(x) __pgprot(_PAGE_VALID | __ACCESS_BITS | (x))
198diff -urNp linux-2.6.32.21/arch/alpha/kernel/module.c linux-2.6.32.21/arch/alpha/kernel/module.c 39diff -urNp linux-2.6.32.21/arch/alpha/kernel/module.c linux-2.6.32.21/arch/alpha/kernel/module.c
199--- linux-2.6.32.21/arch/alpha/kernel/module.c 2010-08-26 19:42:20.000000000 -0400 40--- linux-2.6.32.21/arch/alpha/kernel/module.c 2010-08-13 16:24:37.000000000 -0400
200+++ linux-2.6.32.21/arch/alpha/kernel/module.c 2010-09-13 08:10:04.000000000 -0400 41+++ linux-2.6.32.21/arch/alpha/kernel/module.c 2010-09-04 15:54:51.000000000 -0400
201@@ -182,7 +182,7 @@ apply_relocate_add(Elf64_Shdr *sechdrs, 42@@ -182,7 +182,7 @@ apply_relocate_add(Elf64_Shdr *sechdrs,
202 43
203 /* The small sections were sorted to the end of the segment. 44 /* The small sections were sorted to the end of the segment.
@@ -208,8 +49,8 @@ diff -urNp linux-2.6.32.21/arch/alpha/kernel/module.c linux-2.6.32.21/arch/alpha
208 49
209 for (i = 0; i < n; i++) { 50 for (i = 0; i < n; i++) {
210diff -urNp linux-2.6.32.21/arch/alpha/kernel/osf_sys.c linux-2.6.32.21/arch/alpha/kernel/osf_sys.c 51diff -urNp linux-2.6.32.21/arch/alpha/kernel/osf_sys.c linux-2.6.32.21/arch/alpha/kernel/osf_sys.c
211--- linux-2.6.32.21/arch/alpha/kernel/osf_sys.c 2010-08-26 19:42:20.000000000 -0400 52--- linux-2.6.32.21/arch/alpha/kernel/osf_sys.c 2010-08-13 16:24:37.000000000 -0400
212+++ linux-2.6.32.21/arch/alpha/kernel/osf_sys.c 2010-09-13 08:10:04.000000000 -0400 53+++ linux-2.6.32.21/arch/alpha/kernel/osf_sys.c 2010-09-04 15:54:51.000000000 -0400
213@@ -1205,6 +1205,10 @@ arch_get_unmapped_area(struct file *filp 54@@ -1205,6 +1205,10 @@ arch_get_unmapped_area(struct file *filp
214 merely specific addresses, but regions of memory -- perhaps 55 merely specific addresses, but regions of memory -- perhaps
215 this feature should be incorporated into all ports? */ 56 this feature should be incorporated into all ports? */
@@ -233,8 +74,8 @@ diff -urNp linux-2.6.32.21/arch/alpha/kernel/osf_sys.c linux-2.6.32.21/arch/alph
233 return addr; 74 return addr;
234 75
235diff -urNp linux-2.6.32.21/arch/alpha/mm/fault.c linux-2.6.32.21/arch/alpha/mm/fault.c 76diff -urNp linux-2.6.32.21/arch/alpha/mm/fault.c linux-2.6.32.21/arch/alpha/mm/fault.c
236--- linux-2.6.32.21/arch/alpha/mm/fault.c 2010-08-26 19:42:20.000000000 -0400 77--- linux-2.6.32.21/arch/alpha/mm/fault.c 2010-08-13 16:24:37.000000000 -0400
237+++ linux-2.6.32.21/arch/alpha/mm/fault.c 2010-09-13 08:10:04.000000000 -0400 78+++ linux-2.6.32.21/arch/alpha/mm/fault.c 2010-09-04 15:54:51.000000000 -0400
238@@ -54,6 +54,124 @@ __load_new_mm_context(struct mm_struct * 79@@ -54,6 +54,124 @@ __load_new_mm_context(struct mm_struct *
239 __reload_thread(pcb); 80 __reload_thread(pcb);
240 } 81 }
@@ -392,8 +233,8 @@ diff -urNp linux-2.6.32.21/arch/alpha/mm/fault.c linux-2.6.32.21/arch/alpha/mm/f
392 /* Allow reads even for write-only mappings */ 233 /* Allow reads even for write-only mappings */
393 if (!(vma->vm_flags & (VM_READ | VM_WRITE))) 234 if (!(vma->vm_flags & (VM_READ | VM_WRITE)))
394diff -urNp linux-2.6.32.21/arch/arm/include/asm/elf.h linux-2.6.32.21/arch/arm/include/asm/elf.h 235diff -urNp linux-2.6.32.21/arch/arm/include/asm/elf.h linux-2.6.32.21/arch/arm/include/asm/elf.h
395--- linux-2.6.32.21/arch/arm/include/asm/elf.h 2010-08-26 19:42:20.000000000 -0400 236--- linux-2.6.32.21/arch/arm/include/asm/elf.h 2010-08-13 16:24:37.000000000 -0400
396+++ linux-2.6.32.21/arch/arm/include/asm/elf.h 2010-09-13 08:10:04.000000000 -0400 237+++ linux-2.6.32.21/arch/arm/include/asm/elf.h 2010-09-04 15:54:51.000000000 -0400
397@@ -109,7 +109,14 @@ int dump_task_regs(struct task_struct *t 238@@ -109,7 +109,14 @@ int dump_task_regs(struct task_struct *t
398 the loader. We need to make sure that it is out of the way of the program 239 the loader. We need to make sure that it is out of the way of the program
399 that it will "exec", and that there is sufficient room for the brk. */ 240 that it will "exec", and that there is sufficient room for the brk. */
@@ -411,8 +252,8 @@ diff -urNp linux-2.6.32.21/arch/arm/include/asm/elf.h linux-2.6.32.21/arch/arm/i
411 /* When the program starts, a1 contains a pointer to a function to be 252 /* When the program starts, a1 contains a pointer to a function to be
412 registered with atexit, as per the SVR4 ABI. A value of 0 means we 253 registered with atexit, as per the SVR4 ABI. A value of 0 means we
413diff -urNp linux-2.6.32.21/arch/arm/include/asm/kmap_types.h linux-2.6.32.21/arch/arm/include/asm/kmap_types.h 254diff -urNp linux-2.6.32.21/arch/arm/include/asm/kmap_types.h linux-2.6.32.21/arch/arm/include/asm/kmap_types.h
414--- linux-2.6.32.21/arch/arm/include/asm/kmap_types.h 2010-08-26 19:42:20.000000000 -0400 255--- linux-2.6.32.21/arch/arm/include/asm/kmap_types.h 2010-08-13 16:24:37.000000000 -0400
415+++ linux-2.6.32.21/arch/arm/include/asm/kmap_types.h 2010-09-13 08:10:04.000000000 -0400 256+++ linux-2.6.32.21/arch/arm/include/asm/kmap_types.h 2010-09-04 15:54:51.000000000 -0400
416@@ -19,6 +19,7 @@ enum km_type { 257@@ -19,6 +19,7 @@ enum km_type {
417 KM_SOFTIRQ0, 258 KM_SOFTIRQ0,
418 KM_SOFTIRQ1, 259 KM_SOFTIRQ1,
@@ -422,8 +263,8 @@ diff -urNp linux-2.6.32.21/arch/arm/include/asm/kmap_types.h linux-2.6.32.21/arc
422 }; 263 };
423 264
424diff -urNp linux-2.6.32.21/arch/arm/include/asm/uaccess.h linux-2.6.32.21/arch/arm/include/asm/uaccess.h 265diff -urNp linux-2.6.32.21/arch/arm/include/asm/uaccess.h linux-2.6.32.21/arch/arm/include/asm/uaccess.h
425--- linux-2.6.32.21/arch/arm/include/asm/uaccess.h 2010-08-26 19:42:20.000000000 -0400 266--- linux-2.6.32.21/arch/arm/include/asm/uaccess.h 2010-08-13 16:24:37.000000000 -0400
426+++ linux-2.6.32.21/arch/arm/include/asm/uaccess.h 2010-09-13 08:10:04.000000000 -0400 267+++ linux-2.6.32.21/arch/arm/include/asm/uaccess.h 2010-09-04 15:54:51.000000000 -0400
427@@ -403,6 +403,9 @@ extern unsigned long __must_check __strn 268@@ -403,6 +403,9 @@ extern unsigned long __must_check __strn
428 269
429 static inline unsigned long __must_check copy_from_user(void *to, const void __user *from, unsigned long n) 270 static inline unsigned long __must_check copy_from_user(void *to, const void __user *from, unsigned long n)
@@ -445,8 +286,8 @@ diff -urNp linux-2.6.32.21/arch/arm/include/asm/uaccess.h linux-2.6.32.21/arch/a
445 n = __copy_to_user(to, from, n); 286 n = __copy_to_user(to, from, n);
446 return n; 287 return n;
447diff -urNp linux-2.6.32.21/arch/arm/kernel/kgdb.c linux-2.6.32.21/arch/arm/kernel/kgdb.c 288diff -urNp linux-2.6.32.21/arch/arm/kernel/kgdb.c linux-2.6.32.21/arch/arm/kernel/kgdb.c
448--- linux-2.6.32.21/arch/arm/kernel/kgdb.c 2010-08-26 19:42:20.000000000 -0400 289--- linux-2.6.32.21/arch/arm/kernel/kgdb.c 2010-08-13 16:24:37.000000000 -0400
449+++ linux-2.6.32.21/arch/arm/kernel/kgdb.c 2010-09-13 08:10:04.000000000 -0400 290+++ linux-2.6.32.21/arch/arm/kernel/kgdb.c 2010-09-04 15:54:51.000000000 -0400
450@@ -190,7 +190,7 @@ void kgdb_arch_exit(void) 291@@ -190,7 +190,7 @@ void kgdb_arch_exit(void)
451 * and we handle the normal undef case within the do_undefinstr 292 * and we handle the normal undef case within the do_undefinstr
452 * handler. 293 * handler.
@@ -457,8 +298,8 @@ diff -urNp linux-2.6.32.21/arch/arm/kernel/kgdb.c linux-2.6.32.21/arch/arm/kerne
457 .gdb_bpt_instr = {0xfe, 0xde, 0xff, 0xe7} 298 .gdb_bpt_instr = {0xfe, 0xde, 0xff, 0xe7}
458 #else /* ! __ARMEB__ */ 299 #else /* ! __ARMEB__ */
459diff -urNp linux-2.6.32.21/arch/arm/mach-at91/pm.c linux-2.6.32.21/arch/arm/mach-at91/pm.c 300diff -urNp linux-2.6.32.21/arch/arm/mach-at91/pm.c linux-2.6.32.21/arch/arm/mach-at91/pm.c
460--- linux-2.6.32.21/arch/arm/mach-at91/pm.c 2010-08-26 19:42:20.000000000 -0400 301--- linux-2.6.32.21/arch/arm/mach-at91/pm.c 2010-08-13 16:24:37.000000000 -0400
461+++ linux-2.6.32.21/arch/arm/mach-at91/pm.c 2010-09-13 08:10:04.000000000 -0400 302+++ linux-2.6.32.21/arch/arm/mach-at91/pm.c 2010-09-04 15:54:51.000000000 -0400
462@@ -348,7 +348,7 @@ static void at91_pm_end(void) 303@@ -348,7 +348,7 @@ static void at91_pm_end(void)
463 } 304 }
464 305
@@ -469,8 +310,8 @@ diff -urNp linux-2.6.32.21/arch/arm/mach-at91/pm.c linux-2.6.32.21/arch/arm/mach
469 .begin = at91_pm_begin, 310 .begin = at91_pm_begin,
470 .enter = at91_pm_enter, 311 .enter = at91_pm_enter,
471diff -urNp linux-2.6.32.21/arch/arm/mach-omap1/pm.c linux-2.6.32.21/arch/arm/mach-omap1/pm.c 312diff -urNp linux-2.6.32.21/arch/arm/mach-omap1/pm.c linux-2.6.32.21/arch/arm/mach-omap1/pm.c
472--- linux-2.6.32.21/arch/arm/mach-omap1/pm.c 2010-08-26 19:42:20.000000000 -0400 313--- linux-2.6.32.21/arch/arm/mach-omap1/pm.c 2010-08-13 16:24:37.000000000 -0400
473+++ linux-2.6.32.21/arch/arm/mach-omap1/pm.c 2010-09-13 08:10:04.000000000 -0400 314+++ linux-2.6.32.21/arch/arm/mach-omap1/pm.c 2010-09-04 15:54:51.000000000 -0400
474@@ -647,7 +647,7 @@ static struct irqaction omap_wakeup_irq 315@@ -647,7 +647,7 @@ static struct irqaction omap_wakeup_irq
475 316
476 317
@@ -481,8 +322,8 @@ diff -urNp linux-2.6.32.21/arch/arm/mach-omap1/pm.c linux-2.6.32.21/arch/arm/mac
481 .enter = omap_pm_enter, 322 .enter = omap_pm_enter,
482 .finish = omap_pm_finish, 323 .finish = omap_pm_finish,
483diff -urNp linux-2.6.32.21/arch/arm/mach-omap2/pm24xx.c linux-2.6.32.21/arch/arm/mach-omap2/pm24xx.c 324diff -urNp linux-2.6.32.21/arch/arm/mach-omap2/pm24xx.c linux-2.6.32.21/arch/arm/mach-omap2/pm24xx.c
484--- linux-2.6.32.21/arch/arm/mach-omap2/pm24xx.c 2010-08-26 19:42:20.000000000 -0400 325--- linux-2.6.32.21/arch/arm/mach-omap2/pm24xx.c 2010-08-13 16:24:37.000000000 -0400
485+++ linux-2.6.32.21/arch/arm/mach-omap2/pm24xx.c 2010-09-13 08:10:04.000000000 -0400 326+++ linux-2.6.32.21/arch/arm/mach-omap2/pm24xx.c 2010-09-04 15:54:51.000000000 -0400
486@@ -326,7 +326,7 @@ static void omap2_pm_finish(void) 327@@ -326,7 +326,7 @@ static void omap2_pm_finish(void)
487 enable_hlt(); 328 enable_hlt();
488 } 329 }
@@ -493,8 +334,8 @@ diff -urNp linux-2.6.32.21/arch/arm/mach-omap2/pm24xx.c linux-2.6.32.21/arch/arm
493 .enter = omap2_pm_enter, 334 .enter = omap2_pm_enter,
494 .finish = omap2_pm_finish, 335 .finish = omap2_pm_finish,
495diff -urNp linux-2.6.32.21/arch/arm/mach-omap2/pm34xx.c linux-2.6.32.21/arch/arm/mach-omap2/pm34xx.c 336diff -urNp linux-2.6.32.21/arch/arm/mach-omap2/pm34xx.c linux-2.6.32.21/arch/arm/mach-omap2/pm34xx.c
496--- linux-2.6.32.21/arch/arm/mach-omap2/pm34xx.c 2010-08-26 19:42:20.000000000 -0400 337--- linux-2.6.32.21/arch/arm/mach-omap2/pm34xx.c 2010-08-13 16:24:37.000000000 -0400
497+++ linux-2.6.32.21/arch/arm/mach-omap2/pm34xx.c 2010-09-13 08:10:04.000000000 -0400 338+++ linux-2.6.32.21/arch/arm/mach-omap2/pm34xx.c 2010-09-04 15:54:51.000000000 -0400
498@@ -401,7 +401,7 @@ static void omap3_pm_end(void) 339@@ -401,7 +401,7 @@ static void omap3_pm_end(void)
499 return; 340 return;
500 } 341 }
@@ -505,8 +346,8 @@ diff -urNp linux-2.6.32.21/arch/arm/mach-omap2/pm34xx.c linux-2.6.32.21/arch/arm
505 .end = omap3_pm_end, 346 .end = omap3_pm_end,
506 .prepare = omap3_pm_prepare, 347 .prepare = omap3_pm_prepare,
507diff -urNp linux-2.6.32.21/arch/arm/mach-pnx4008/pm.c linux-2.6.32.21/arch/arm/mach-pnx4008/pm.c 348diff -urNp linux-2.6.32.21/arch/arm/mach-pnx4008/pm.c linux-2.6.32.21/arch/arm/mach-pnx4008/pm.c
508--- linux-2.6.32.21/arch/arm/mach-pnx4008/pm.c 2010-08-26 19:42:20.000000000 -0400 349--- linux-2.6.32.21/arch/arm/mach-pnx4008/pm.c 2010-08-13 16:24:37.000000000 -0400
509+++ linux-2.6.32.21/arch/arm/mach-pnx4008/pm.c 2010-09-13 08:10:04.000000000 -0400 350+++ linux-2.6.32.21/arch/arm/mach-pnx4008/pm.c 2010-09-04 15:54:51.000000000 -0400
510@@ -116,7 +116,7 @@ static int pnx4008_pm_valid(suspend_stat 351@@ -116,7 +116,7 @@ static int pnx4008_pm_valid(suspend_stat
511 (state == PM_SUSPEND_MEM); 352 (state == PM_SUSPEND_MEM);
512 } 353 }
@@ -517,8 +358,8 @@ diff -urNp linux-2.6.32.21/arch/arm/mach-pnx4008/pm.c linux-2.6.32.21/arch/arm/m
517 .valid = pnx4008_pm_valid, 358 .valid = pnx4008_pm_valid,
518 }; 359 };
519diff -urNp linux-2.6.32.21/arch/arm/mach-pxa/pm.c linux-2.6.32.21/arch/arm/mach-pxa/pm.c 360diff -urNp linux-2.6.32.21/arch/arm/mach-pxa/pm.c linux-2.6.32.21/arch/arm/mach-pxa/pm.c
520--- linux-2.6.32.21/arch/arm/mach-pxa/pm.c 2010-08-26 19:42:20.000000000 -0400 361--- linux-2.6.32.21/arch/arm/mach-pxa/pm.c 2010-08-13 16:24:37.000000000 -0400
521+++ linux-2.6.32.21/arch/arm/mach-pxa/pm.c 2010-09-13 08:10:04.000000000 -0400 362+++ linux-2.6.32.21/arch/arm/mach-pxa/pm.c 2010-09-04 15:54:51.000000000 -0400
522@@ -95,7 +95,7 @@ void pxa_pm_finish(void) 363@@ -95,7 +95,7 @@ void pxa_pm_finish(void)
523 pxa_cpu_pm_fns->finish(); 364 pxa_cpu_pm_fns->finish();
524 } 365 }
@@ -529,8 +370,8 @@ diff -urNp linux-2.6.32.21/arch/arm/mach-pxa/pm.c linux-2.6.32.21/arch/arm/mach-
529 .enter = pxa_pm_enter, 370 .enter = pxa_pm_enter,
530 .prepare = pxa_pm_prepare, 371 .prepare = pxa_pm_prepare,
531diff -urNp linux-2.6.32.21/arch/arm/mach-pxa/sharpsl_pm.c linux-2.6.32.21/arch/arm/mach-pxa/sharpsl_pm.c 372diff -urNp linux-2.6.32.21/arch/arm/mach-pxa/sharpsl_pm.c linux-2.6.32.21/arch/arm/mach-pxa/sharpsl_pm.c
532--- linux-2.6.32.21/arch/arm/mach-pxa/sharpsl_pm.c 2010-08-26 19:42:20.000000000 -0400 373--- linux-2.6.32.21/arch/arm/mach-pxa/sharpsl_pm.c 2010-08-13 16:24:37.000000000 -0400
533+++ linux-2.6.32.21/arch/arm/mach-pxa/sharpsl_pm.c 2010-09-13 08:10:04.000000000 -0400 374+++ linux-2.6.32.21/arch/arm/mach-pxa/sharpsl_pm.c 2010-09-04 15:54:51.000000000 -0400
534@@ -891,7 +891,7 @@ static void sharpsl_apm_get_power_status 375@@ -891,7 +891,7 @@ static void sharpsl_apm_get_power_status
535 } 376 }
536 377
@@ -541,8 +382,8 @@ diff -urNp linux-2.6.32.21/arch/arm/mach-pxa/sharpsl_pm.c linux-2.6.32.21/arch/a
541 .finish = pxa_pm_finish, 382 .finish = pxa_pm_finish,
542 .enter = corgi_pxa_pm_enter, 383 .enter = corgi_pxa_pm_enter,
543diff -urNp linux-2.6.32.21/arch/arm/mach-sa1100/pm.c linux-2.6.32.21/arch/arm/mach-sa1100/pm.c 384diff -urNp linux-2.6.32.21/arch/arm/mach-sa1100/pm.c linux-2.6.32.21/arch/arm/mach-sa1100/pm.c
544--- linux-2.6.32.21/arch/arm/mach-sa1100/pm.c 2010-08-26 19:42:20.000000000 -0400 385--- linux-2.6.32.21/arch/arm/mach-sa1100/pm.c 2010-08-13 16:24:37.000000000 -0400
545+++ linux-2.6.32.21/arch/arm/mach-sa1100/pm.c 2010-09-13 08:10:04.000000000 -0400 386+++ linux-2.6.32.21/arch/arm/mach-sa1100/pm.c 2010-09-04 15:54:51.000000000 -0400
546@@ -120,7 +120,7 @@ unsigned long sleep_phys_sp(void *sp) 387@@ -120,7 +120,7 @@ unsigned long sleep_phys_sp(void *sp)
547 return virt_to_phys(sp); 388 return virt_to_phys(sp);
548 } 389 }
@@ -553,8 +394,8 @@ diff -urNp linux-2.6.32.21/arch/arm/mach-sa1100/pm.c linux-2.6.32.21/arch/arm/ma
553 .valid = suspend_valid_only_mem, 394 .valid = suspend_valid_only_mem,
554 }; 395 };
555diff -urNp linux-2.6.32.21/arch/arm/mm/fault.c linux-2.6.32.21/arch/arm/mm/fault.c 396diff -urNp linux-2.6.32.21/arch/arm/mm/fault.c linux-2.6.32.21/arch/arm/mm/fault.c
556--- linux-2.6.32.21/arch/arm/mm/fault.c 2010-08-26 19:42:20.000000000 -0400 397--- linux-2.6.32.21/arch/arm/mm/fault.c 2010-08-13 16:24:37.000000000 -0400
557+++ linux-2.6.32.21/arch/arm/mm/fault.c 2010-09-13 08:10:04.000000000 -0400 398+++ linux-2.6.32.21/arch/arm/mm/fault.c 2010-09-04 15:54:51.000000000 -0400
558@@ -166,6 +166,13 @@ __do_user_fault(struct task_struct *tsk, 399@@ -166,6 +166,13 @@ __do_user_fault(struct task_struct *tsk,
559 } 400 }
560 #endif 401 #endif
@@ -604,8 +445,8 @@ diff -urNp linux-2.6.32.21/arch/arm/mm/fault.c linux-2.6.32.21/arch/arm/mm/fault
604 * First Level Translation Fault Handler 445 * First Level Translation Fault Handler
605 * 446 *
606diff -urNp linux-2.6.32.21/arch/arm/mm/mmap.c linux-2.6.32.21/arch/arm/mm/mmap.c 447diff -urNp linux-2.6.32.21/arch/arm/mm/mmap.c linux-2.6.32.21/arch/arm/mm/mmap.c
607--- linux-2.6.32.21/arch/arm/mm/mmap.c 2010-08-26 19:42:20.000000000 -0400 448--- linux-2.6.32.21/arch/arm/mm/mmap.c 2010-08-13 16:24:37.000000000 -0400
608+++ linux-2.6.32.21/arch/arm/mm/mmap.c 2010-09-13 08:10:04.000000000 -0400 449+++ linux-2.6.32.21/arch/arm/mm/mmap.c 2010-09-04 15:54:51.000000000 -0400
609@@ -63,6 +63,10 @@ arch_get_unmapped_area(struct file *filp 450@@ -63,6 +63,10 @@ arch_get_unmapped_area(struct file *filp
610 if (len > TASK_SIZE) 451 if (len > TASK_SIZE)
611 return -ENOMEM; 452 return -ENOMEM;
@@ -643,8 +484,8 @@ diff -urNp linux-2.6.32.21/arch/arm/mm/mmap.c linux-2.6.32.21/arch/arm/mm/mmap.c
643 goto full_search; 484 goto full_search;
644 } 485 }
645diff -urNp linux-2.6.32.21/arch/arm/plat-s3c/pm.c linux-2.6.32.21/arch/arm/plat-s3c/pm.c 486diff -urNp linux-2.6.32.21/arch/arm/plat-s3c/pm.c linux-2.6.32.21/arch/arm/plat-s3c/pm.c
646--- linux-2.6.32.21/arch/arm/plat-s3c/pm.c 2010-08-26 19:42:20.000000000 -0400 487--- linux-2.6.32.21/arch/arm/plat-s3c/pm.c 2010-08-13 16:24:37.000000000 -0400
647+++ linux-2.6.32.21/arch/arm/plat-s3c/pm.c 2010-09-13 08:10:04.000000000 -0400 488+++ linux-2.6.32.21/arch/arm/plat-s3c/pm.c 2010-09-04 15:54:51.000000000 -0400
648@@ -355,7 +355,7 @@ static void s3c_pm_finish(void) 489@@ -355,7 +355,7 @@ static void s3c_pm_finish(void)
649 s3c_pm_check_cleanup(); 490 s3c_pm_check_cleanup();
650 } 491 }
@@ -655,8 +496,8 @@ diff -urNp linux-2.6.32.21/arch/arm/plat-s3c/pm.c linux-2.6.32.21/arch/arm/plat-
655 .prepare = s3c_pm_prepare, 496 .prepare = s3c_pm_prepare,
656 .finish = s3c_pm_finish, 497 .finish = s3c_pm_finish,
657diff -urNp linux-2.6.32.21/arch/avr32/include/asm/elf.h linux-2.6.32.21/arch/avr32/include/asm/elf.h 498diff -urNp linux-2.6.32.21/arch/avr32/include/asm/elf.h linux-2.6.32.21/arch/avr32/include/asm/elf.h
658--- linux-2.6.32.21/arch/avr32/include/asm/elf.h 2010-08-26 19:42:20.000000000 -0400 499--- linux-2.6.32.21/arch/avr32/include/asm/elf.h 2010-08-13 16:24:37.000000000 -0400
659+++ linux-2.6.32.21/arch/avr32/include/asm/elf.h 2010-09-13 08:10:04.000000000 -0400 500+++ linux-2.6.32.21/arch/avr32/include/asm/elf.h 2010-09-04 15:54:51.000000000 -0400
660@@ -85,8 +85,14 @@ typedef struct user_fpu_struct elf_fpreg 501@@ -85,8 +85,14 @@ typedef struct user_fpu_struct elf_fpreg
661 the loader. We need to make sure that it is out of the way of the program 502 the loader. We need to make sure that it is out of the way of the program
662 that it will "exec", and that there is sufficient room for the brk. */ 503 that it will "exec", and that there is sufficient room for the brk. */
@@ -674,8 +515,8 @@ diff -urNp linux-2.6.32.21/arch/avr32/include/asm/elf.h linux-2.6.32.21/arch/avr
674 /* This yields a mask that user programs can use to figure out what 515 /* This yields a mask that user programs can use to figure out what
675 instruction set this CPU supports. This could be done in user space, 516 instruction set this CPU supports. This could be done in user space,
676diff -urNp linux-2.6.32.21/arch/avr32/include/asm/kmap_types.h linux-2.6.32.21/arch/avr32/include/asm/kmap_types.h 517diff -urNp linux-2.6.32.21/arch/avr32/include/asm/kmap_types.h linux-2.6.32.21/arch/avr32/include/asm/kmap_types.h
677--- linux-2.6.32.21/arch/avr32/include/asm/kmap_types.h 2010-08-26 19:42:20.000000000 -0400 518--- linux-2.6.32.21/arch/avr32/include/asm/kmap_types.h 2010-08-13 16:24:37.000000000 -0400
678+++ linux-2.6.32.21/arch/avr32/include/asm/kmap_types.h 2010-09-13 08:10:04.000000000 -0400 519+++ linux-2.6.32.21/arch/avr32/include/asm/kmap_types.h 2010-09-04 15:54:51.000000000 -0400
679@@ -22,7 +22,8 @@ D(10) KM_IRQ0, 520@@ -22,7 +22,8 @@ D(10) KM_IRQ0,
680 D(11) KM_IRQ1, 521 D(11) KM_IRQ1,
681 D(12) KM_SOFTIRQ0, 522 D(12) KM_SOFTIRQ0,
@@ -687,8 +528,8 @@ diff -urNp linux-2.6.32.21/arch/avr32/include/asm/kmap_types.h linux-2.6.32.21/a
687 528
688 #undef D 529 #undef D
689diff -urNp linux-2.6.32.21/arch/avr32/mach-at32ap/pm.c linux-2.6.32.21/arch/avr32/mach-at32ap/pm.c 530diff -urNp linux-2.6.32.21/arch/avr32/mach-at32ap/pm.c linux-2.6.32.21/arch/avr32/mach-at32ap/pm.c
690--- linux-2.6.32.21/arch/avr32/mach-at32ap/pm.c 2010-08-26 19:42:20.000000000 -0400 531--- linux-2.6.32.21/arch/avr32/mach-at32ap/pm.c 2010-08-13 16:24:37.000000000 -0400
691+++ linux-2.6.32.21/arch/avr32/mach-at32ap/pm.c 2010-09-13 08:10:04.000000000 -0400 532+++ linux-2.6.32.21/arch/avr32/mach-at32ap/pm.c 2010-09-04 15:54:51.000000000 -0400
692@@ -176,7 +176,7 @@ out: 533@@ -176,7 +176,7 @@ out:
693 return 0; 534 return 0;
694 } 535 }
@@ -699,8 +540,8 @@ diff -urNp linux-2.6.32.21/arch/avr32/mach-at32ap/pm.c linux-2.6.32.21/arch/avr3
699 .enter = avr32_pm_enter, 540 .enter = avr32_pm_enter,
700 }; 541 };
701diff -urNp linux-2.6.32.21/arch/avr32/mm/fault.c linux-2.6.32.21/arch/avr32/mm/fault.c 542diff -urNp linux-2.6.32.21/arch/avr32/mm/fault.c linux-2.6.32.21/arch/avr32/mm/fault.c
702--- linux-2.6.32.21/arch/avr32/mm/fault.c 2010-08-26 19:42:20.000000000 -0400 543--- linux-2.6.32.21/arch/avr32/mm/fault.c 2010-08-13 16:24:37.000000000 -0400
703+++ linux-2.6.32.21/arch/avr32/mm/fault.c 2010-09-13 08:10:04.000000000 -0400 544+++ linux-2.6.32.21/arch/avr32/mm/fault.c 2010-09-04 15:54:51.000000000 -0400
704@@ -41,6 +41,23 @@ static inline int notify_page_fault(stru 545@@ -41,6 +41,23 @@ static inline int notify_page_fault(stru
705 546
706 int exception_trace = 1; 547 int exception_trace = 1;
@@ -743,8 +584,8 @@ diff -urNp linux-2.6.32.21/arch/avr32/mm/fault.c linux-2.6.32.21/arch/avr32/mm/f
743 printk("%s%s[%d]: segfault at %08lx pc %08lx " 584 printk("%s%s[%d]: segfault at %08lx pc %08lx "
744 "sp %08lx ecr %lu\n", 585 "sp %08lx ecr %lu\n",
745diff -urNp linux-2.6.32.21/arch/blackfin/kernel/kgdb.c linux-2.6.32.21/arch/blackfin/kernel/kgdb.c 586diff -urNp linux-2.6.32.21/arch/blackfin/kernel/kgdb.c linux-2.6.32.21/arch/blackfin/kernel/kgdb.c
746--- linux-2.6.32.21/arch/blackfin/kernel/kgdb.c 2010-08-26 19:42:20.000000000 -0400 587--- linux-2.6.32.21/arch/blackfin/kernel/kgdb.c 2010-08-13 16:24:37.000000000 -0400
747+++ linux-2.6.32.21/arch/blackfin/kernel/kgdb.c 2010-09-13 08:10:04.000000000 -0400 588+++ linux-2.6.32.21/arch/blackfin/kernel/kgdb.c 2010-09-04 15:54:51.000000000 -0400
748@@ -428,7 +428,7 @@ int kgdb_arch_handle_exception(int vecto 589@@ -428,7 +428,7 @@ int kgdb_arch_handle_exception(int vecto
749 return -1; /* this means that we do not want to exit from the handler */ 590 return -1; /* this means that we do not want to exit from the handler */
750 } 591 }
@@ -755,8 +596,8 @@ diff -urNp linux-2.6.32.21/arch/blackfin/kernel/kgdb.c linux-2.6.32.21/arch/blac
755 #ifdef CONFIG_SMP 596 #ifdef CONFIG_SMP
756 .flags = KGDB_HW_BREAKPOINT|KGDB_THR_PROC_SWAP, 597 .flags = KGDB_HW_BREAKPOINT|KGDB_THR_PROC_SWAP,
757diff -urNp linux-2.6.32.21/arch/blackfin/mach-common/pm.c linux-2.6.32.21/arch/blackfin/mach-common/pm.c 598diff -urNp linux-2.6.32.21/arch/blackfin/mach-common/pm.c linux-2.6.32.21/arch/blackfin/mach-common/pm.c
758--- linux-2.6.32.21/arch/blackfin/mach-common/pm.c 2010-08-26 19:42:20.000000000 -0400 599--- linux-2.6.32.21/arch/blackfin/mach-common/pm.c 2010-08-13 16:24:37.000000000 -0400
759+++ linux-2.6.32.21/arch/blackfin/mach-common/pm.c 2010-09-13 08:10:04.000000000 -0400 600+++ linux-2.6.32.21/arch/blackfin/mach-common/pm.c 2010-09-04 15:54:51.000000000 -0400
760@@ -255,7 +255,7 @@ static int bfin_pm_enter(suspend_state_t 601@@ -255,7 +255,7 @@ static int bfin_pm_enter(suspend_state_t
761 return 0; 602 return 0;
762 } 603 }
@@ -767,8 +608,8 @@ diff -urNp linux-2.6.32.21/arch/blackfin/mach-common/pm.c linux-2.6.32.21/arch/b
767 .valid = bfin_pm_valid, 608 .valid = bfin_pm_valid,
768 }; 609 };
769diff -urNp linux-2.6.32.21/arch/frv/include/asm/kmap_types.h linux-2.6.32.21/arch/frv/include/asm/kmap_types.h 610diff -urNp linux-2.6.32.21/arch/frv/include/asm/kmap_types.h linux-2.6.32.21/arch/frv/include/asm/kmap_types.h
770--- linux-2.6.32.21/arch/frv/include/asm/kmap_types.h 2010-08-26 19:42:20.000000000 -0400 611--- linux-2.6.32.21/arch/frv/include/asm/kmap_types.h 2010-08-13 16:24:37.000000000 -0400
771+++ linux-2.6.32.21/arch/frv/include/asm/kmap_types.h 2010-09-13 08:10:04.000000000 -0400 612+++ linux-2.6.32.21/arch/frv/include/asm/kmap_types.h 2010-09-04 15:54:51.000000000 -0400
772@@ -23,6 +23,7 @@ enum km_type { 613@@ -23,6 +23,7 @@ enum km_type {
773 KM_IRQ1, 614 KM_IRQ1,
774 KM_SOFTIRQ0, 615 KM_SOFTIRQ0,
@@ -778,8 +619,8 @@ diff -urNp linux-2.6.32.21/arch/frv/include/asm/kmap_types.h linux-2.6.32.21/arc
778 }; 619 };
779 620
780diff -urNp linux-2.6.32.21/arch/ia64/hp/common/hwsw_iommu.c linux-2.6.32.21/arch/ia64/hp/common/hwsw_iommu.c 621diff -urNp linux-2.6.32.21/arch/ia64/hp/common/hwsw_iommu.c linux-2.6.32.21/arch/ia64/hp/common/hwsw_iommu.c
781--- linux-2.6.32.21/arch/ia64/hp/common/hwsw_iommu.c 2010-08-26 19:42:20.000000000 -0400 622--- linux-2.6.32.21/arch/ia64/hp/common/hwsw_iommu.c 2010-08-13 16:24:37.000000000 -0400
782+++ linux-2.6.32.21/arch/ia64/hp/common/hwsw_iommu.c 2010-09-13 08:10:04.000000000 -0400 623+++ linux-2.6.32.21/arch/ia64/hp/common/hwsw_iommu.c 2010-09-04 15:54:51.000000000 -0400
783@@ -17,7 +17,7 @@ 624@@ -17,7 +17,7 @@
784 #include <linux/swiotlb.h> 625 #include <linux/swiotlb.h>
785 #include <asm/machvec.h> 626 #include <asm/machvec.h>
@@ -799,8 +640,8 @@ diff -urNp linux-2.6.32.21/arch/ia64/hp/common/hwsw_iommu.c linux-2.6.32.21/arch
799 if (use_swiotlb(dev)) 640 if (use_swiotlb(dev))
800 return &swiotlb_dma_ops; 641 return &swiotlb_dma_ops;
801diff -urNp linux-2.6.32.21/arch/ia64/hp/common/sba_iommu.c linux-2.6.32.21/arch/ia64/hp/common/sba_iommu.c 642diff -urNp linux-2.6.32.21/arch/ia64/hp/common/sba_iommu.c linux-2.6.32.21/arch/ia64/hp/common/sba_iommu.c
802--- linux-2.6.32.21/arch/ia64/hp/common/sba_iommu.c 2010-08-26 19:42:20.000000000 -0400 643--- linux-2.6.32.21/arch/ia64/hp/common/sba_iommu.c 2010-08-13 16:24:37.000000000 -0400
803+++ linux-2.6.32.21/arch/ia64/hp/common/sba_iommu.c 2010-09-13 08:10:04.000000000 -0400 644+++ linux-2.6.32.21/arch/ia64/hp/common/sba_iommu.c 2010-09-04 15:54:51.000000000 -0400
804@@ -2097,7 +2097,7 @@ static struct acpi_driver acpi_sba_ioc_d 645@@ -2097,7 +2097,7 @@ static struct acpi_driver acpi_sba_ioc_d
805 }, 646 },
806 }; 647 };
@@ -820,8 +661,8 @@ diff -urNp linux-2.6.32.21/arch/ia64/hp/common/sba_iommu.c linux-2.6.32.21/arch/
820 .free_coherent = sba_free_coherent, 661 .free_coherent = sba_free_coherent,
821 .map_page = sba_map_page, 662 .map_page = sba_map_page,
822diff -urNp linux-2.6.32.21/arch/ia64/ia32/binfmt_elf32.c linux-2.6.32.21/arch/ia64/ia32/binfmt_elf32.c 663diff -urNp linux-2.6.32.21/arch/ia64/ia32/binfmt_elf32.c linux-2.6.32.21/arch/ia64/ia32/binfmt_elf32.c
823--- linux-2.6.32.21/arch/ia64/ia32/binfmt_elf32.c 2010-08-26 19:42:20.000000000 -0400 664--- linux-2.6.32.21/arch/ia64/ia32/binfmt_elf32.c 2010-08-13 16:24:37.000000000 -0400
824+++ linux-2.6.32.21/arch/ia64/ia32/binfmt_elf32.c 2010-09-13 08:10:04.000000000 -0400 665+++ linux-2.6.32.21/arch/ia64/ia32/binfmt_elf32.c 2010-09-04 15:54:51.000000000 -0400
825@@ -45,6 +45,13 @@ randomize_stack_top(unsigned long stack_ 666@@ -45,6 +45,13 @@ randomize_stack_top(unsigned long stack_
826 667
827 #define elf_read_implies_exec(ex, have_pt_gnu_stack) (!(have_pt_gnu_stack)) 668 #define elf_read_implies_exec(ex, have_pt_gnu_stack) (!(have_pt_gnu_stack))
@@ -837,8 +678,8 @@ diff -urNp linux-2.6.32.21/arch/ia64/ia32/binfmt_elf32.c linux-2.6.32.21/arch/ia
837 #include "../../../fs/binfmt_elf.c" 678 #include "../../../fs/binfmt_elf.c"
838 679
839diff -urNp linux-2.6.32.21/arch/ia64/ia32/ia32priv.h linux-2.6.32.21/arch/ia64/ia32/ia32priv.h 680diff -urNp linux-2.6.32.21/arch/ia64/ia32/ia32priv.h linux-2.6.32.21/arch/ia64/ia32/ia32priv.h
840--- linux-2.6.32.21/arch/ia64/ia32/ia32priv.h 2010-08-26 19:42:20.000000000 -0400 681--- linux-2.6.32.21/arch/ia64/ia32/ia32priv.h 2010-08-13 16:24:37.000000000 -0400
841+++ linux-2.6.32.21/arch/ia64/ia32/ia32priv.h 2010-09-13 08:10:04.000000000 -0400 682+++ linux-2.6.32.21/arch/ia64/ia32/ia32priv.h 2010-09-04 15:54:51.000000000 -0400
842@@ -296,7 +296,14 @@ typedef struct compat_siginfo { 683@@ -296,7 +296,14 @@ typedef struct compat_siginfo {
843 #define ELF_DATA ELFDATA2LSB 684 #define ELF_DATA ELFDATA2LSB
844 #define ELF_ARCH EM_386 685 #define ELF_ARCH EM_386
@@ -855,9 +696,21 @@ diff -urNp linux-2.6.32.21/arch/ia64/ia32/ia32priv.h linux-2.6.32.21/arch/ia64/i
855 #define IA32_GATE_OFFSET IA32_PAGE_OFFSET 696 #define IA32_GATE_OFFSET IA32_PAGE_OFFSET
856 #define IA32_GATE_END IA32_PAGE_OFFSET + PAGE_SIZE 697 #define IA32_GATE_END IA32_PAGE_OFFSET + PAGE_SIZE
857 698
699diff -urNp linux-2.6.32.21/arch/ia64/include/asm/compat.h linux-2.6.32.21/arch/ia64/include/asm/compat.h
700--- linux-2.6.32.21/arch/ia64/include/asm/compat.h 2010-08-13 16:24:37.000000000 -0400
701+++ linux-2.6.32.21/arch/ia64/include/asm/compat.h 2010-09-15 02:02:57.000000000 -0400
702@@ -198,7 +198,7 @@ ptr_to_compat(void __user *uptr)
703 }
704
705 static __inline__ void __user *
706-compat_alloc_user_space (long len)
707+arch_compat_alloc_user_space (long len)
708 {
709 struct pt_regs *regs = task_pt_regs(current);
710 return (void __user *) (((regs->r12 & 0xffffffff) & -16) - len);
858diff -urNp linux-2.6.32.21/arch/ia64/include/asm/dma-mapping.h linux-2.6.32.21/arch/ia64/include/asm/dma-mapping.h 711diff -urNp linux-2.6.32.21/arch/ia64/include/asm/dma-mapping.h linux-2.6.32.21/arch/ia64/include/asm/dma-mapping.h
859--- linux-2.6.32.21/arch/ia64/include/asm/dma-mapping.h 2010-08-26 19:42:20.000000000 -0400 712--- linux-2.6.32.21/arch/ia64/include/asm/dma-mapping.h 2010-08-13 16:24:37.000000000 -0400
860+++ linux-2.6.32.21/arch/ia64/include/asm/dma-mapping.h 2010-09-13 08:10:04.000000000 -0400 713+++ linux-2.6.32.21/arch/ia64/include/asm/dma-mapping.h 2010-09-04 15:54:51.000000000 -0400
861@@ -12,7 +12,7 @@ 714@@ -12,7 +12,7 @@
862 715
863 #define ARCH_HAS_DMA_GET_REQUIRED_MASK 716 #define ARCH_HAS_DMA_GET_REQUIRED_MASK
@@ -902,8 +755,8 @@ diff -urNp linux-2.6.32.21/arch/ia64/include/asm/dma-mapping.h linux-2.6.32.21/a
902 } 755 }
903 756
904diff -urNp linux-2.6.32.21/arch/ia64/include/asm/elf.h linux-2.6.32.21/arch/ia64/include/asm/elf.h 757diff -urNp linux-2.6.32.21/arch/ia64/include/asm/elf.h linux-2.6.32.21/arch/ia64/include/asm/elf.h
905--- linux-2.6.32.21/arch/ia64/include/asm/elf.h 2010-08-26 19:42:20.000000000 -0400 758--- linux-2.6.32.21/arch/ia64/include/asm/elf.h 2010-08-13 16:24:37.000000000 -0400
906+++ linux-2.6.32.21/arch/ia64/include/asm/elf.h 2010-09-13 08:10:04.000000000 -0400 759+++ linux-2.6.32.21/arch/ia64/include/asm/elf.h 2010-09-04 15:54:51.000000000 -0400
907@@ -43,6 +43,13 @@ 760@@ -43,6 +43,13 @@
908 */ 761 */
909 #define ELF_ET_DYN_BASE (TASK_UNMAPPED_BASE + 0x800000000UL) 762 #define ELF_ET_DYN_BASE (TASK_UNMAPPED_BASE + 0x800000000UL)
@@ -919,8 +772,8 @@ diff -urNp linux-2.6.32.21/arch/ia64/include/asm/elf.h linux-2.6.32.21/arch/ia64
919 772
920 /* IA-64 relocations: */ 773 /* IA-64 relocations: */
921diff -urNp linux-2.6.32.21/arch/ia64/include/asm/machvec.h linux-2.6.32.21/arch/ia64/include/asm/machvec.h 774diff -urNp linux-2.6.32.21/arch/ia64/include/asm/machvec.h linux-2.6.32.21/arch/ia64/include/asm/machvec.h
922--- linux-2.6.32.21/arch/ia64/include/asm/machvec.h 2010-08-26 19:42:20.000000000 -0400 775--- linux-2.6.32.21/arch/ia64/include/asm/machvec.h 2010-08-13 16:24:37.000000000 -0400
923+++ linux-2.6.32.21/arch/ia64/include/asm/machvec.h 2010-09-13 08:10:04.000000000 -0400 776+++ linux-2.6.32.21/arch/ia64/include/asm/machvec.h 2010-09-04 15:54:51.000000000 -0400
924@@ -45,7 +45,7 @@ typedef void ia64_mv_kernel_launch_event 777@@ -45,7 +45,7 @@ typedef void ia64_mv_kernel_launch_event
925 /* DMA-mapping interface: */ 778 /* DMA-mapping interface: */
926 typedef void ia64_mv_dma_init (void); 779 typedef void ia64_mv_dma_init (void);
@@ -940,8 +793,8 @@ diff -urNp linux-2.6.32.21/arch/ia64/include/asm/machvec.h linux-2.6.32.21/arch/
940 /* 793 /*
941 * Define default versions so we can extend machvec for new platforms without having 794 * Define default versions so we can extend machvec for new platforms without having
942diff -urNp linux-2.6.32.21/arch/ia64/include/asm/pgtable.h linux-2.6.32.21/arch/ia64/include/asm/pgtable.h 795diff -urNp linux-2.6.32.21/arch/ia64/include/asm/pgtable.h linux-2.6.32.21/arch/ia64/include/asm/pgtable.h
943--- linux-2.6.32.21/arch/ia64/include/asm/pgtable.h 2010-08-26 19:42:20.000000000 -0400 796--- linux-2.6.32.21/arch/ia64/include/asm/pgtable.h 2010-08-13 16:24:37.000000000 -0400
944+++ linux-2.6.32.21/arch/ia64/include/asm/pgtable.h 2010-09-13 08:10:05.000000000 -0400 797+++ linux-2.6.32.21/arch/ia64/include/asm/pgtable.h 2010-09-04 15:54:51.000000000 -0400
945@@ -12,7 +12,7 @@ 798@@ -12,7 +12,7 @@
946 * David Mosberger-Tang <davidm@hpl.hp.com> 799 * David Mosberger-Tang <davidm@hpl.hp.com>
947 */ 800 */
@@ -970,8 +823,8 @@ diff -urNp linux-2.6.32.21/arch/ia64/include/asm/pgtable.h linux-2.6.32.21/arch/
970 #define PAGE_KERNEL __pgprot(__DIRTY_BITS | _PAGE_PL_0 | _PAGE_AR_RWX) 823 #define PAGE_KERNEL __pgprot(__DIRTY_BITS | _PAGE_PL_0 | _PAGE_AR_RWX)
971 #define PAGE_KERNELRX __pgprot(__ACCESS_BITS | _PAGE_PL_0 | _PAGE_AR_RX) 824 #define PAGE_KERNELRX __pgprot(__ACCESS_BITS | _PAGE_PL_0 | _PAGE_AR_RX)
972diff -urNp linux-2.6.32.21/arch/ia64/include/asm/uaccess.h linux-2.6.32.21/arch/ia64/include/asm/uaccess.h 825diff -urNp linux-2.6.32.21/arch/ia64/include/asm/uaccess.h linux-2.6.32.21/arch/ia64/include/asm/uaccess.h
973--- linux-2.6.32.21/arch/ia64/include/asm/uaccess.h 2010-08-26 19:42:20.000000000 -0400 826--- linux-2.6.32.21/arch/ia64/include/asm/uaccess.h 2010-08-13 16:24:37.000000000 -0400
974+++ linux-2.6.32.21/arch/ia64/include/asm/uaccess.h 2010-09-13 08:10:05.000000000 -0400 827+++ linux-2.6.32.21/arch/ia64/include/asm/uaccess.h 2010-09-04 15:54:51.000000000 -0400
975@@ -257,7 +257,7 @@ __copy_from_user (void *to, const void _ 828@@ -257,7 +257,7 @@ __copy_from_user (void *to, const void _
976 const void *__cu_from = (from); \ 829 const void *__cu_from = (from); \
977 long __cu_len = (n); \ 830 long __cu_len = (n); \
@@ -991,8 +844,8 @@ diff -urNp linux-2.6.32.21/arch/ia64/include/asm/uaccess.h linux-2.6.32.21/arch/
991 __cu_len; \ 844 __cu_len; \
992 }) 845 })
993diff -urNp linux-2.6.32.21/arch/ia64/kernel/dma-mapping.c linux-2.6.32.21/arch/ia64/kernel/dma-mapping.c 846diff -urNp linux-2.6.32.21/arch/ia64/kernel/dma-mapping.c linux-2.6.32.21/arch/ia64/kernel/dma-mapping.c
994--- linux-2.6.32.21/arch/ia64/kernel/dma-mapping.c 2010-08-26 19:42:20.000000000 -0400 847--- linux-2.6.32.21/arch/ia64/kernel/dma-mapping.c 2010-08-13 16:24:37.000000000 -0400
995+++ linux-2.6.32.21/arch/ia64/kernel/dma-mapping.c 2010-09-13 08:10:05.000000000 -0400 848+++ linux-2.6.32.21/arch/ia64/kernel/dma-mapping.c 2010-09-04 15:54:51.000000000 -0400
996@@ -3,7 +3,7 @@ 849@@ -3,7 +3,7 @@
997 /* Set this to 1 if there is a HW IOMMU in the system */ 850 /* Set this to 1 if there is a HW IOMMU in the system */
998 int iommu_detected __read_mostly; 851 int iommu_detected __read_mostly;
@@ -1012,8 +865,8 @@ diff -urNp linux-2.6.32.21/arch/ia64/kernel/dma-mapping.c linux-2.6.32.21/arch/i
1012 return dma_ops; 865 return dma_ops;
1013 } 866 }
1014diff -urNp linux-2.6.32.21/arch/ia64/kernel/module.c linux-2.6.32.21/arch/ia64/kernel/module.c 867diff -urNp linux-2.6.32.21/arch/ia64/kernel/module.c linux-2.6.32.21/arch/ia64/kernel/module.c
1015--- linux-2.6.32.21/arch/ia64/kernel/module.c 2010-08-26 19:42:20.000000000 -0400 868--- linux-2.6.32.21/arch/ia64/kernel/module.c 2010-08-13 16:24:37.000000000 -0400
1016+++ linux-2.6.32.21/arch/ia64/kernel/module.c 2010-09-13 08:10:05.000000000 -0400 869+++ linux-2.6.32.21/arch/ia64/kernel/module.c 2010-09-04 15:54:51.000000000 -0400
1017@@ -315,8 +315,7 @@ module_alloc (unsigned long size) 870@@ -315,8 +315,7 @@ module_alloc (unsigned long size)
1018 void 871 void
1019 module_free (struct module *mod, void *module_region) 872 module_free (struct module *mod, void *module_region)
@@ -1103,8 +956,8 @@ diff -urNp linux-2.6.32.21/arch/ia64/kernel/module.c linux-2.6.32.21/arch/ia64/k
1103 DEBUGP("%s: placing gp at 0x%lx\n", __func__, gp); 956 DEBUGP("%s: placing gp at 0x%lx\n", __func__, gp);
1104 } 957 }
1105diff -urNp linux-2.6.32.21/arch/ia64/kernel/pci-dma.c linux-2.6.32.21/arch/ia64/kernel/pci-dma.c 958diff -urNp linux-2.6.32.21/arch/ia64/kernel/pci-dma.c linux-2.6.32.21/arch/ia64/kernel/pci-dma.c
1106--- linux-2.6.32.21/arch/ia64/kernel/pci-dma.c 2010-08-26 19:42:20.000000000 -0400 959--- linux-2.6.32.21/arch/ia64/kernel/pci-dma.c 2010-08-13 16:24:37.000000000 -0400
1107+++ linux-2.6.32.21/arch/ia64/kernel/pci-dma.c 2010-09-13 08:10:05.000000000 -0400 960+++ linux-2.6.32.21/arch/ia64/kernel/pci-dma.c 2010-09-04 15:54:51.000000000 -0400
1108@@ -43,7 +43,7 @@ struct device fallback_dev = { 961@@ -43,7 +43,7 @@ struct device fallback_dev = {
1109 .dma_mask = &fallback_dev.coherent_dma_mask, 962 .dma_mask = &fallback_dev.coherent_dma_mask,
1110 }; 963 };
@@ -1157,8 +1010,8 @@ diff -urNp linux-2.6.32.21/arch/ia64/kernel/pci-dma.c linux-2.6.32.21/arch/ia64/
1157 /* 1010 /*
1158 * The order of these functions is important for 1011 * The order of these functions is important for
1159diff -urNp linux-2.6.32.21/arch/ia64/kernel/pci-swiotlb.c linux-2.6.32.21/arch/ia64/kernel/pci-swiotlb.c 1012diff -urNp linux-2.6.32.21/arch/ia64/kernel/pci-swiotlb.c linux-2.6.32.21/arch/ia64/kernel/pci-swiotlb.c
1160--- linux-2.6.32.21/arch/ia64/kernel/pci-swiotlb.c 2010-08-26 19:42:20.000000000 -0400 1013--- linux-2.6.32.21/arch/ia64/kernel/pci-swiotlb.c 2010-08-13 16:24:37.000000000 -0400
1161+++ linux-2.6.32.21/arch/ia64/kernel/pci-swiotlb.c 2010-09-13 08:10:05.000000000 -0400 1014+++ linux-2.6.32.21/arch/ia64/kernel/pci-swiotlb.c 2010-09-04 15:54:51.000000000 -0400
1162@@ -21,7 +21,7 @@ static void *ia64_swiotlb_alloc_coherent 1015@@ -21,7 +21,7 @@ static void *ia64_swiotlb_alloc_coherent
1163 return swiotlb_alloc_coherent(dev, size, dma_handle, gfp); 1016 return swiotlb_alloc_coherent(dev, size, dma_handle, gfp);
1164 } 1017 }
@@ -1169,8 +1022,8 @@ diff -urNp linux-2.6.32.21/arch/ia64/kernel/pci-swiotlb.c linux-2.6.32.21/arch/i
1169 .free_coherent = swiotlb_free_coherent, 1022 .free_coherent = swiotlb_free_coherent,
1170 .map_page = swiotlb_map_page, 1023 .map_page = swiotlb_map_page,
1171diff -urNp linux-2.6.32.21/arch/ia64/kernel/sys_ia64.c linux-2.6.32.21/arch/ia64/kernel/sys_ia64.c 1024diff -urNp linux-2.6.32.21/arch/ia64/kernel/sys_ia64.c linux-2.6.32.21/arch/ia64/kernel/sys_ia64.c
1172--- linux-2.6.32.21/arch/ia64/kernel/sys_ia64.c 2010-08-26 19:42:20.000000000 -0400 1025--- linux-2.6.32.21/arch/ia64/kernel/sys_ia64.c 2010-08-13 16:24:37.000000000 -0400
1173+++ linux-2.6.32.21/arch/ia64/kernel/sys_ia64.c 2010-09-13 08:10:05.000000000 -0400 1026+++ linux-2.6.32.21/arch/ia64/kernel/sys_ia64.c 2010-09-04 15:54:51.000000000 -0400
1174@@ -43,6 +43,13 @@ arch_get_unmapped_area (struct file *fil 1027@@ -43,6 +43,13 @@ arch_get_unmapped_area (struct file *fil
1175 if (REGION_NUMBER(addr) == RGN_HPAGE) 1028 if (REGION_NUMBER(addr) == RGN_HPAGE)
1176 addr = 0; 1029 addr = 0;
@@ -1198,8 +1051,8 @@ diff -urNp linux-2.6.32.21/arch/ia64/kernel/sys_ia64.c linux-2.6.32.21/arch/ia64
1198 } 1051 }
1199 return -ENOMEM; 1052 return -ENOMEM;
1200diff -urNp linux-2.6.32.21/arch/ia64/kernel/topology.c linux-2.6.32.21/arch/ia64/kernel/topology.c 1053diff -urNp linux-2.6.32.21/arch/ia64/kernel/topology.c linux-2.6.32.21/arch/ia64/kernel/topology.c
1201--- linux-2.6.32.21/arch/ia64/kernel/topology.c 2010-08-26 19:42:20.000000000 -0400 1054--- linux-2.6.32.21/arch/ia64/kernel/topology.c 2010-08-13 16:24:37.000000000 -0400
1202+++ linux-2.6.32.21/arch/ia64/kernel/topology.c 2010-09-13 08:10:05.000000000 -0400 1055+++ linux-2.6.32.21/arch/ia64/kernel/topology.c 2010-09-04 15:54:51.000000000 -0400
1203@@ -282,7 +282,7 @@ static ssize_t cache_show(struct kobject 1056@@ -282,7 +282,7 @@ static ssize_t cache_show(struct kobject
1204 return ret; 1057 return ret;
1205 } 1058 }
@@ -1210,8 +1063,8 @@ diff -urNp linux-2.6.32.21/arch/ia64/kernel/topology.c linux-2.6.32.21/arch/ia64
1210 }; 1063 };
1211 1064
1212diff -urNp linux-2.6.32.21/arch/ia64/kernel/vmlinux.lds.S linux-2.6.32.21/arch/ia64/kernel/vmlinux.lds.S 1065diff -urNp linux-2.6.32.21/arch/ia64/kernel/vmlinux.lds.S linux-2.6.32.21/arch/ia64/kernel/vmlinux.lds.S
1213--- linux-2.6.32.21/arch/ia64/kernel/vmlinux.lds.S 2010-08-26 19:42:20.000000000 -0400 1066--- linux-2.6.32.21/arch/ia64/kernel/vmlinux.lds.S 2010-08-13 16:24:37.000000000 -0400
1214+++ linux-2.6.32.21/arch/ia64/kernel/vmlinux.lds.S 2010-09-13 08:10:05.000000000 -0400 1067+++ linux-2.6.32.21/arch/ia64/kernel/vmlinux.lds.S 2010-09-04 15:54:51.000000000 -0400
1215@@ -190,7 +190,7 @@ SECTIONS 1068@@ -190,7 +190,7 @@ SECTIONS
1216 /* Per-cpu data: */ 1069 /* Per-cpu data: */
1217 . = ALIGN(PERCPU_PAGE_SIZE); 1070 . = ALIGN(PERCPU_PAGE_SIZE);
@@ -1222,8 +1075,8 @@ diff -urNp linux-2.6.32.21/arch/ia64/kernel/vmlinux.lds.S linux-2.6.32.21/arch/i
1222 * into percpu page size 1075 * into percpu page size
1223 */ 1076 */
1224diff -urNp linux-2.6.32.21/arch/ia64/mm/fault.c linux-2.6.32.21/arch/ia64/mm/fault.c 1077diff -urNp linux-2.6.32.21/arch/ia64/mm/fault.c linux-2.6.32.21/arch/ia64/mm/fault.c
1225--- linux-2.6.32.21/arch/ia64/mm/fault.c 2010-08-26 19:42:20.000000000 -0400 1078--- linux-2.6.32.21/arch/ia64/mm/fault.c 2010-08-13 16:24:37.000000000 -0400
1226+++ linux-2.6.32.21/arch/ia64/mm/fault.c 2010-09-13 08:10:05.000000000 -0400 1079+++ linux-2.6.32.21/arch/ia64/mm/fault.c 2010-09-04 15:54:51.000000000 -0400
1227@@ -72,6 +72,23 @@ mapped_kernel_page_is_present (unsigned 1080@@ -72,6 +72,23 @@ mapped_kernel_page_is_present (unsigned
1228 return pte_present(pte); 1081 return pte_present(pte);
1229 } 1082 }
@@ -1274,8 +1127,8 @@ diff -urNp linux-2.6.32.21/arch/ia64/mm/fault.c linux-2.6.32.21/arch/ia64/mm/fau
1274 /* 1127 /*
1275 * If for any reason at all we couldn't handle the fault, make 1128 * If for any reason at all we couldn't handle the fault, make
1276diff -urNp linux-2.6.32.21/arch/ia64/mm/init.c linux-2.6.32.21/arch/ia64/mm/init.c 1129diff -urNp linux-2.6.32.21/arch/ia64/mm/init.c linux-2.6.32.21/arch/ia64/mm/init.c
1277--- linux-2.6.32.21/arch/ia64/mm/init.c 2010-08-26 19:42:20.000000000 -0400 1130--- linux-2.6.32.21/arch/ia64/mm/init.c 2010-08-13 16:24:37.000000000 -0400
1278+++ linux-2.6.32.21/arch/ia64/mm/init.c 2010-09-13 08:10:05.000000000 -0400 1131+++ linux-2.6.32.21/arch/ia64/mm/init.c 2010-09-04 15:54:51.000000000 -0400
1279@@ -122,6 +122,19 @@ ia64_init_addr_space (void) 1132@@ -122,6 +122,19 @@ ia64_init_addr_space (void)
1280 vma->vm_start = current->thread.rbs_bot & PAGE_MASK; 1133 vma->vm_start = current->thread.rbs_bot & PAGE_MASK;
1281 vma->vm_end = vma->vm_start + PAGE_SIZE; 1134 vma->vm_end = vma->vm_start + PAGE_SIZE;
@@ -1297,8 +1150,8 @@ diff -urNp linux-2.6.32.21/arch/ia64/mm/init.c linux-2.6.32.21/arch/ia64/mm/init
1297 down_write(&current->mm->mmap_sem); 1150 down_write(&current->mm->mmap_sem);
1298 if (insert_vm_struct(current->mm, vma)) { 1151 if (insert_vm_struct(current->mm, vma)) {
1299diff -urNp linux-2.6.32.21/arch/ia64/sn/pci/pci_dma.c linux-2.6.32.21/arch/ia64/sn/pci/pci_dma.c 1152diff -urNp linux-2.6.32.21/arch/ia64/sn/pci/pci_dma.c linux-2.6.32.21/arch/ia64/sn/pci/pci_dma.c
1300--- linux-2.6.32.21/arch/ia64/sn/pci/pci_dma.c 2010-08-26 19:42:20.000000000 -0400 1153--- linux-2.6.32.21/arch/ia64/sn/pci/pci_dma.c 2010-08-13 16:24:37.000000000 -0400
1301+++ linux-2.6.32.21/arch/ia64/sn/pci/pci_dma.c 2010-09-13 08:10:05.000000000 -0400 1154+++ linux-2.6.32.21/arch/ia64/sn/pci/pci_dma.c 2010-09-04 15:54:51.000000000 -0400
1302@@ -464,7 +464,7 @@ int sn_pci_legacy_write(struct pci_bus * 1155@@ -464,7 +464,7 @@ int sn_pci_legacy_write(struct pci_bus *
1303 return ret; 1156 return ret;
1304 } 1157 }
@@ -1309,8 +1162,8 @@ diff -urNp linux-2.6.32.21/arch/ia64/sn/pci/pci_dma.c linux-2.6.32.21/arch/ia64/
1309 .free_coherent = sn_dma_free_coherent, 1162 .free_coherent = sn_dma_free_coherent,
1310 .map_page = sn_dma_map_page, 1163 .map_page = sn_dma_map_page,
1311diff -urNp linux-2.6.32.21/arch/m32r/lib/usercopy.c linux-2.6.32.21/arch/m32r/lib/usercopy.c 1164diff -urNp linux-2.6.32.21/arch/m32r/lib/usercopy.c linux-2.6.32.21/arch/m32r/lib/usercopy.c
1312--- linux-2.6.32.21/arch/m32r/lib/usercopy.c 2010-08-26 19:42:20.000000000 -0400 1165--- linux-2.6.32.21/arch/m32r/lib/usercopy.c 2010-08-13 16:24:37.000000000 -0400
1313+++ linux-2.6.32.21/arch/m32r/lib/usercopy.c 2010-09-13 08:10:05.000000000 -0400 1166+++ linux-2.6.32.21/arch/m32r/lib/usercopy.c 2010-09-04 15:54:51.000000000 -0400
1314@@ -14,6 +14,9 @@ 1167@@ -14,6 +14,9 @@
1315 unsigned long 1168 unsigned long
1316 __generic_copy_to_user(void __user *to, const void *from, unsigned long n) 1169 __generic_copy_to_user(void __user *to, const void *from, unsigned long n)
@@ -1332,8 +1185,8 @@ diff -urNp linux-2.6.32.21/arch/m32r/lib/usercopy.c linux-2.6.32.21/arch/m32r/li
1332 if (access_ok(VERIFY_READ, from, n)) 1185 if (access_ok(VERIFY_READ, from, n))
1333 __copy_user_zeroing(to,from,n); 1186 __copy_user_zeroing(to,from,n);
1334diff -urNp linux-2.6.32.21/arch/mips/alchemy/devboards/pm.c linux-2.6.32.21/arch/mips/alchemy/devboards/pm.c 1187diff -urNp linux-2.6.32.21/arch/mips/alchemy/devboards/pm.c linux-2.6.32.21/arch/mips/alchemy/devboards/pm.c
1335--- linux-2.6.32.21/arch/mips/alchemy/devboards/pm.c 2010-08-26 19:42:20.000000000 -0400 1188--- linux-2.6.32.21/arch/mips/alchemy/devboards/pm.c 2010-08-13 16:24:37.000000000 -0400
1336+++ linux-2.6.32.21/arch/mips/alchemy/devboards/pm.c 2010-09-13 08:10:05.000000000 -0400 1189+++ linux-2.6.32.21/arch/mips/alchemy/devboards/pm.c 2010-09-04 15:54:51.000000000 -0400
1337@@ -78,7 +78,7 @@ static void db1x_pm_end(void) 1190@@ -78,7 +78,7 @@ static void db1x_pm_end(void)
1338 1191
1339 } 1192 }
@@ -1343,9 +1196,21 @@ diff -urNp linux-2.6.32.21/arch/mips/alchemy/devboards/pm.c linux-2.6.32.21/arch
1343 .valid = suspend_valid_only_mem, 1196 .valid = suspend_valid_only_mem,
1344 .begin = db1x_pm_begin, 1197 .begin = db1x_pm_begin,
1345 .enter = db1x_pm_enter, 1198 .enter = db1x_pm_enter,
1199diff -urNp linux-2.6.32.21/arch/mips/include/asm/compat.h linux-2.6.32.21/arch/mips/include/asm/compat.h
1200--- linux-2.6.32.21/arch/mips/include/asm/compat.h 2010-08-13 16:24:37.000000000 -0400
1201+++ linux-2.6.32.21/arch/mips/include/asm/compat.h 2010-09-15 02:02:57.000000000 -0400
1202@@ -144,7 +144,7 @@ static inline compat_uptr_t ptr_to_compa
1203 return (u32)(unsigned long)uptr;
1204 }
1205
1206-static inline void __user *compat_alloc_user_space(long len)
1207+static inline void __user *arch_compat_alloc_user_space(long len)
1208 {
1209 struct pt_regs *regs = (struct pt_regs *)
1210 ((unsigned long) current_thread_info() + THREAD_SIZE - 32) - 1;
1346diff -urNp linux-2.6.32.21/arch/mips/include/asm/elf.h linux-2.6.32.21/arch/mips/include/asm/elf.h 1211diff -urNp linux-2.6.32.21/arch/mips/include/asm/elf.h linux-2.6.32.21/arch/mips/include/asm/elf.h
1347--- linux-2.6.32.21/arch/mips/include/asm/elf.h 2010-08-26 19:42:20.000000000 -0400 1212--- linux-2.6.32.21/arch/mips/include/asm/elf.h 2010-08-13 16:24:37.000000000 -0400
1348+++ linux-2.6.32.21/arch/mips/include/asm/elf.h 2010-09-13 08:10:05.000000000 -0400 1213+++ linux-2.6.32.21/arch/mips/include/asm/elf.h 2010-09-04 15:54:51.000000000 -0400
1349@@ -368,4 +368,11 @@ extern int dump_task_fpu(struct task_str 1214@@ -368,4 +368,11 @@ extern int dump_task_fpu(struct task_str
1350 #define ELF_ET_DYN_BASE (TASK_SIZE / 3 * 2) 1215 #define ELF_ET_DYN_BASE (TASK_SIZE / 3 * 2)
1351 #endif 1216 #endif
@@ -1359,8 +1224,8 @@ diff -urNp linux-2.6.32.21/arch/mips/include/asm/elf.h linux-2.6.32.21/arch/mips
1359+ 1224+
1360 #endif /* _ASM_ELF_H */ 1225 #endif /* _ASM_ELF_H */
1361diff -urNp linux-2.6.32.21/arch/mips/include/asm/page.h linux-2.6.32.21/arch/mips/include/asm/page.h 1226diff -urNp linux-2.6.32.21/arch/mips/include/asm/page.h linux-2.6.32.21/arch/mips/include/asm/page.h
1362--- linux-2.6.32.21/arch/mips/include/asm/page.h 2010-08-26 19:42:20.000000000 -0400 1227--- linux-2.6.32.21/arch/mips/include/asm/page.h 2010-08-13 16:24:37.000000000 -0400
1363+++ linux-2.6.32.21/arch/mips/include/asm/page.h 2010-09-13 08:10:05.000000000 -0400 1228+++ linux-2.6.32.21/arch/mips/include/asm/page.h 2010-09-04 15:54:51.000000000 -0400
1364@@ -93,7 +93,7 @@ extern void copy_user_highpage(struct pa 1229@@ -93,7 +93,7 @@ extern void copy_user_highpage(struct pa
1365 #ifdef CONFIG_CPU_MIPS32 1230 #ifdef CONFIG_CPU_MIPS32
1366 typedef struct { unsigned long pte_low, pte_high; } pte_t; 1231 typedef struct { unsigned long pte_low, pte_high; } pte_t;
@@ -1371,8 +1236,8 @@ diff -urNp linux-2.6.32.21/arch/mips/include/asm/page.h linux-2.6.32.21/arch/mip
1371 typedef struct { unsigned long long pte; } pte_t; 1236 typedef struct { unsigned long long pte; } pte_t;
1372 #define pte_val(x) ((x).pte) 1237 #define pte_val(x) ((x).pte)
1373diff -urNp linux-2.6.32.21/arch/mips/include/asm/system.h linux-2.6.32.21/arch/mips/include/asm/system.h 1238diff -urNp linux-2.6.32.21/arch/mips/include/asm/system.h linux-2.6.32.21/arch/mips/include/asm/system.h
1374--- linux-2.6.32.21/arch/mips/include/asm/system.h 2010-08-26 19:42:20.000000000 -0400 1239--- linux-2.6.32.21/arch/mips/include/asm/system.h 2010-08-13 16:24:37.000000000 -0400
1375+++ linux-2.6.32.21/arch/mips/include/asm/system.h 2010-09-13 08:10:05.000000000 -0400 1240+++ linux-2.6.32.21/arch/mips/include/asm/system.h 2010-09-04 15:54:51.000000000 -0400
1376@@ -230,6 +230,6 @@ extern void per_cpu_trap_init(void); 1241@@ -230,6 +230,6 @@ extern void per_cpu_trap_init(void);
1377 */ 1242 */
1378 #define __ARCH_WANT_UNLOCKED_CTXSW 1243 #define __ARCH_WANT_UNLOCKED_CTXSW
@@ -1382,8 +1247,8 @@ diff -urNp linux-2.6.32.21/arch/mips/include/asm/system.h linux-2.6.32.21/arch/m
1382 1247
1383 #endif /* _ASM_SYSTEM_H */ 1248 #endif /* _ASM_SYSTEM_H */
1384diff -urNp linux-2.6.32.21/arch/mips/kernel/binfmt_elfn32.c linux-2.6.32.21/arch/mips/kernel/binfmt_elfn32.c 1249diff -urNp linux-2.6.32.21/arch/mips/kernel/binfmt_elfn32.c linux-2.6.32.21/arch/mips/kernel/binfmt_elfn32.c
1385--- linux-2.6.32.21/arch/mips/kernel/binfmt_elfn32.c 2010-08-26 19:42:20.000000000 -0400 1250--- linux-2.6.32.21/arch/mips/kernel/binfmt_elfn32.c 2010-08-13 16:24:37.000000000 -0400
1386+++ linux-2.6.32.21/arch/mips/kernel/binfmt_elfn32.c 2010-09-13 08:10:05.000000000 -0400 1251+++ linux-2.6.32.21/arch/mips/kernel/binfmt_elfn32.c 2010-09-04 15:54:51.000000000 -0400
1387@@ -50,6 +50,13 @@ typedef elf_fpreg_t elf_fpregset_t[ELF_N 1252@@ -50,6 +50,13 @@ typedef elf_fpreg_t elf_fpregset_t[ELF_N
1388 #undef ELF_ET_DYN_BASE 1253 #undef ELF_ET_DYN_BASE
1389 #define ELF_ET_DYN_BASE (TASK32_SIZE / 3 * 2) 1254 #define ELF_ET_DYN_BASE (TASK32_SIZE / 3 * 2)
@@ -1399,8 +1264,8 @@ diff -urNp linux-2.6.32.21/arch/mips/kernel/binfmt_elfn32.c linux-2.6.32.21/arch
1399 #include <linux/module.h> 1264 #include <linux/module.h>
1400 #include <linux/elfcore.h> 1265 #include <linux/elfcore.h>
1401diff -urNp linux-2.6.32.21/arch/mips/kernel/binfmt_elfo32.c linux-2.6.32.21/arch/mips/kernel/binfmt_elfo32.c 1266diff -urNp linux-2.6.32.21/arch/mips/kernel/binfmt_elfo32.c linux-2.6.32.21/arch/mips/kernel/binfmt_elfo32.c
1402--- linux-2.6.32.21/arch/mips/kernel/binfmt_elfo32.c 2010-08-26 19:42:20.000000000 -0400 1267--- linux-2.6.32.21/arch/mips/kernel/binfmt_elfo32.c 2010-08-13 16:24:37.000000000 -0400
1403+++ linux-2.6.32.21/arch/mips/kernel/binfmt_elfo32.c 2010-09-13 08:10:05.000000000 -0400 1268+++ linux-2.6.32.21/arch/mips/kernel/binfmt_elfo32.c 2010-09-04 15:54:51.000000000 -0400
1404@@ -52,6 +52,13 @@ typedef elf_fpreg_t elf_fpregset_t[ELF_N 1269@@ -52,6 +52,13 @@ typedef elf_fpreg_t elf_fpregset_t[ELF_N
1405 #undef ELF_ET_DYN_BASE 1270 #undef ELF_ET_DYN_BASE
1406 #define ELF_ET_DYN_BASE (TASK32_SIZE / 3 * 2) 1271 #define ELF_ET_DYN_BASE (TASK32_SIZE / 3 * 2)
@@ -1416,8 +1281,8 @@ diff -urNp linux-2.6.32.21/arch/mips/kernel/binfmt_elfo32.c linux-2.6.32.21/arch
1416 1281
1417 /* 1282 /*
1418diff -urNp linux-2.6.32.21/arch/mips/kernel/kgdb.c linux-2.6.32.21/arch/mips/kernel/kgdb.c 1283diff -urNp linux-2.6.32.21/arch/mips/kernel/kgdb.c linux-2.6.32.21/arch/mips/kernel/kgdb.c
1419--- linux-2.6.32.21/arch/mips/kernel/kgdb.c 2010-08-26 19:42:20.000000000 -0400 1284--- linux-2.6.32.21/arch/mips/kernel/kgdb.c 2010-08-13 16:24:37.000000000 -0400
1420+++ linux-2.6.32.21/arch/mips/kernel/kgdb.c 2010-09-13 08:10:05.000000000 -0400 1285+++ linux-2.6.32.21/arch/mips/kernel/kgdb.c 2010-09-04 15:54:51.000000000 -0400
1421@@ -245,6 +245,7 @@ int kgdb_arch_handle_exception(int vecto 1286@@ -245,6 +245,7 @@ int kgdb_arch_handle_exception(int vecto
1422 return -1; 1287 return -1;
1423 } 1288 }
@@ -1427,8 +1292,8 @@ diff -urNp linux-2.6.32.21/arch/mips/kernel/kgdb.c linux-2.6.32.21/arch/mips/ker
1427 1292
1428 /* 1293 /*
1429diff -urNp linux-2.6.32.21/arch/mips/kernel/process.c linux-2.6.32.21/arch/mips/kernel/process.c 1294diff -urNp linux-2.6.32.21/arch/mips/kernel/process.c linux-2.6.32.21/arch/mips/kernel/process.c
1430--- linux-2.6.32.21/arch/mips/kernel/process.c 2010-08-26 19:42:20.000000000 -0400 1295--- linux-2.6.32.21/arch/mips/kernel/process.c 2010-08-13 16:24:37.000000000 -0400
1431+++ linux-2.6.32.21/arch/mips/kernel/process.c 2010-09-13 08:10:05.000000000 -0400 1296+++ linux-2.6.32.21/arch/mips/kernel/process.c 2010-09-04 15:54:51.000000000 -0400
1432@@ -470,15 +470,3 @@ unsigned long get_wchan(struct task_stru 1297@@ -470,15 +470,3 @@ unsigned long get_wchan(struct task_stru
1433 out: 1298 out:
1434 return pc; 1299 return pc;
@@ -1446,8 +1311,8 @@ diff -urNp linux-2.6.32.21/arch/mips/kernel/process.c linux-2.6.32.21/arch/mips/
1446- return sp & ALMASK; 1311- return sp & ALMASK;
1447-} 1312-}
1448diff -urNp linux-2.6.32.21/arch/mips/kernel/syscall.c linux-2.6.32.21/arch/mips/kernel/syscall.c 1313diff -urNp linux-2.6.32.21/arch/mips/kernel/syscall.c linux-2.6.32.21/arch/mips/kernel/syscall.c
1449--- linux-2.6.32.21/arch/mips/kernel/syscall.c 2010-08-26 19:42:20.000000000 -0400 1314--- linux-2.6.32.21/arch/mips/kernel/syscall.c 2010-08-13 16:24:37.000000000 -0400
1450+++ linux-2.6.32.21/arch/mips/kernel/syscall.c 2010-09-13 08:10:05.000000000 -0400 1315+++ linux-2.6.32.21/arch/mips/kernel/syscall.c 2010-09-04 15:54:51.000000000 -0400
1451@@ -102,6 +102,11 @@ unsigned long arch_get_unmapped_area(str 1316@@ -102,6 +102,11 @@ unsigned long arch_get_unmapped_area(str
1452 do_color_align = 0; 1317 do_color_align = 0;
1453 if (filp || (flags & MAP_SHARED)) 1318 if (filp || (flags & MAP_SHARED))
@@ -1470,8 +1335,8 @@ diff -urNp linux-2.6.32.21/arch/mips/kernel/syscall.c linux-2.6.32.21/arch/mips/
1470 addr = COLOUR_ALIGN(addr, pgoff); 1335 addr = COLOUR_ALIGN(addr, pgoff);
1471 else 1336 else
1472diff -urNp linux-2.6.32.21/arch/mips/mm/fault.c linux-2.6.32.21/arch/mips/mm/fault.c 1337diff -urNp linux-2.6.32.21/arch/mips/mm/fault.c linux-2.6.32.21/arch/mips/mm/fault.c
1473--- linux-2.6.32.21/arch/mips/mm/fault.c 2010-08-26 19:42:20.000000000 -0400 1338--- linux-2.6.32.21/arch/mips/mm/fault.c 2010-08-13 16:24:37.000000000 -0400
1474+++ linux-2.6.32.21/arch/mips/mm/fault.c 2010-09-13 08:10:05.000000000 -0400 1339+++ linux-2.6.32.21/arch/mips/mm/fault.c 2010-09-04 15:54:51.000000000 -0400
1475@@ -26,6 +26,23 @@ 1340@@ -26,6 +26,23 @@
1476 #include <asm/ptrace.h> 1341 #include <asm/ptrace.h>
1477 #include <asm/highmem.h> /* For VMALLOC_END */ 1342 #include <asm/highmem.h> /* For VMALLOC_END */
@@ -1496,9 +1361,21 @@ diff -urNp linux-2.6.32.21/arch/mips/mm/fault.c linux-2.6.32.21/arch/mips/mm/fau
1496 /* 1361 /*
1497 * This routine handles page faults. It determines the address, 1362 * This routine handles page faults. It determines the address,
1498 * and the problem, and then passes it off to one of the appropriate 1363 * and the problem, and then passes it off to one of the appropriate
1364diff -urNp linux-2.6.32.21/arch/parisc/include/asm/compat.h linux-2.6.32.21/arch/parisc/include/asm/compat.h
1365--- linux-2.6.32.21/arch/parisc/include/asm/compat.h 2010-08-13 16:24:37.000000000 -0400
1366+++ linux-2.6.32.21/arch/parisc/include/asm/compat.h 2010-09-15 02:02:57.000000000 -0400
1367@@ -146,7 +146,7 @@ static inline compat_uptr_t ptr_to_compa
1368 return (u32)(unsigned long)uptr;
1369 }
1370
1371-static __inline__ void __user *compat_alloc_user_space(long len)
1372+static __inline__ void __user *arch_compat_alloc_user_space(long len)
1373 {
1374 struct pt_regs *regs = &current->thread.regs;
1375 return (void __user *)regs->gr[30];
1499diff -urNp linux-2.6.32.21/arch/parisc/include/asm/elf.h linux-2.6.32.21/arch/parisc/include/asm/elf.h 1376diff -urNp linux-2.6.32.21/arch/parisc/include/asm/elf.h linux-2.6.32.21/arch/parisc/include/asm/elf.h
1500--- linux-2.6.32.21/arch/parisc/include/asm/elf.h 2010-08-26 19:42:20.000000000 -0400 1377--- linux-2.6.32.21/arch/parisc/include/asm/elf.h 2010-08-13 16:24:37.000000000 -0400
1501+++ linux-2.6.32.21/arch/parisc/include/asm/elf.h 2010-09-13 08:10:05.000000000 -0400 1378+++ linux-2.6.32.21/arch/parisc/include/asm/elf.h 2010-09-04 15:54:51.000000000 -0400
1502@@ -343,6 +343,13 @@ struct pt_regs; /* forward declaration.. 1379@@ -343,6 +343,13 @@ struct pt_regs; /* forward declaration..
1503 1380
1504 #define ELF_ET_DYN_BASE (TASK_UNMAPPED_BASE + 0x01000000) 1381 #define ELF_ET_DYN_BASE (TASK_UNMAPPED_BASE + 0x01000000)
@@ -1514,8 +1391,8 @@ diff -urNp linux-2.6.32.21/arch/parisc/include/asm/elf.h linux-2.6.32.21/arch/pa
1514 instruction set this CPU supports. This could be done in user space, 1391 instruction set this CPU supports. This could be done in user space,
1515 but it's not easy, and we've already done it here. */ 1392 but it's not easy, and we've already done it here. */
1516diff -urNp linux-2.6.32.21/arch/parisc/include/asm/pgtable.h linux-2.6.32.21/arch/parisc/include/asm/pgtable.h 1393diff -urNp linux-2.6.32.21/arch/parisc/include/asm/pgtable.h linux-2.6.32.21/arch/parisc/include/asm/pgtable.h
1517--- linux-2.6.32.21/arch/parisc/include/asm/pgtable.h 2010-08-26 19:42:20.000000000 -0400 1394--- linux-2.6.32.21/arch/parisc/include/asm/pgtable.h 2010-08-13 16:24:37.000000000 -0400
1518+++ linux-2.6.32.21/arch/parisc/include/asm/pgtable.h 2010-09-13 08:10:05.000000000 -0400 1395+++ linux-2.6.32.21/arch/parisc/include/asm/pgtable.h 2010-09-04 15:54:51.000000000 -0400
1519@@ -207,6 +207,17 @@ 1396@@ -207,6 +207,17 @@
1520 #define PAGE_EXECREAD __pgprot(_PAGE_PRESENT | _PAGE_USER | _PAGE_READ | _PAGE_EXEC |_PAGE_ACCESSED) 1397 #define PAGE_EXECREAD __pgprot(_PAGE_PRESENT | _PAGE_USER | _PAGE_READ | _PAGE_EXEC |_PAGE_ACCESSED)
1521 #define PAGE_COPY PAGE_EXECREAD 1398 #define PAGE_COPY PAGE_EXECREAD
@@ -1535,8 +1412,8 @@ diff -urNp linux-2.6.32.21/arch/parisc/include/asm/pgtable.h linux-2.6.32.21/arc
1535 #define PAGE_KERNEL_RO __pgprot(_PAGE_KERNEL & ~_PAGE_WRITE) 1412 #define PAGE_KERNEL_RO __pgprot(_PAGE_KERNEL & ~_PAGE_WRITE)
1536 #define PAGE_KERNEL_UNC __pgprot(_PAGE_KERNEL | _PAGE_NO_CACHE) 1413 #define PAGE_KERNEL_UNC __pgprot(_PAGE_KERNEL | _PAGE_NO_CACHE)
1537diff -urNp linux-2.6.32.21/arch/parisc/kernel/module.c linux-2.6.32.21/arch/parisc/kernel/module.c 1414diff -urNp linux-2.6.32.21/arch/parisc/kernel/module.c linux-2.6.32.21/arch/parisc/kernel/module.c
1538--- linux-2.6.32.21/arch/parisc/kernel/module.c 2010-08-26 19:42:20.000000000 -0400 1415--- linux-2.6.32.21/arch/parisc/kernel/module.c 2010-08-13 16:24:37.000000000 -0400
1539+++ linux-2.6.32.21/arch/parisc/kernel/module.c 2010-09-13 08:10:05.000000000 -0400 1416+++ linux-2.6.32.21/arch/parisc/kernel/module.c 2010-09-04 15:54:51.000000000 -0400
1540@@ -95,16 +95,38 @@ 1417@@ -95,16 +95,38 @@
1541 1418
1542 /* three functions to determine where in the module core 1419 /* three functions to determine where in the module core
@@ -1638,8 +1515,8 @@ diff -urNp linux-2.6.32.21/arch/parisc/kernel/module.c linux-2.6.32.21/arch/pari
1638 DEBUGP("register_unwind_table(), sect = %d at 0x%p - 0x%p (gp=0x%lx)\n", 1515 DEBUGP("register_unwind_table(), sect = %d at 0x%p - 0x%p (gp=0x%lx)\n",
1639 me->arch.unwind_section, table, end, gp); 1516 me->arch.unwind_section, table, end, gp);
1640diff -urNp linux-2.6.32.21/arch/parisc/kernel/sys_parisc.c linux-2.6.32.21/arch/parisc/kernel/sys_parisc.c 1517diff -urNp linux-2.6.32.21/arch/parisc/kernel/sys_parisc.c linux-2.6.32.21/arch/parisc/kernel/sys_parisc.c
1641--- linux-2.6.32.21/arch/parisc/kernel/sys_parisc.c 2010-08-26 19:42:20.000000000 -0400 1518--- linux-2.6.32.21/arch/parisc/kernel/sys_parisc.c 2010-08-13 16:24:37.000000000 -0400
1642+++ linux-2.6.32.21/arch/parisc/kernel/sys_parisc.c 2010-09-13 08:10:05.000000000 -0400 1519+++ linux-2.6.32.21/arch/parisc/kernel/sys_parisc.c 2010-09-04 15:54:51.000000000 -0400
1643@@ -98,7 +98,7 @@ unsigned long arch_get_unmapped_area(str 1520@@ -98,7 +98,7 @@ unsigned long arch_get_unmapped_area(str
1644 if (flags & MAP_FIXED) 1521 if (flags & MAP_FIXED)
1645 return addr; 1522 return addr;
@@ -1650,8 +1527,8 @@ diff -urNp linux-2.6.32.21/arch/parisc/kernel/sys_parisc.c linux-2.6.32.21/arch/
1650 if (filp) { 1527 if (filp) {
1651 addr = get_shared_area(filp->f_mapping, addr, len, pgoff); 1528 addr = get_shared_area(filp->f_mapping, addr, len, pgoff);
1652diff -urNp linux-2.6.32.21/arch/parisc/kernel/traps.c linux-2.6.32.21/arch/parisc/kernel/traps.c 1529diff -urNp linux-2.6.32.21/arch/parisc/kernel/traps.c linux-2.6.32.21/arch/parisc/kernel/traps.c
1653--- linux-2.6.32.21/arch/parisc/kernel/traps.c 2010-08-26 19:42:20.000000000 -0400 1530--- linux-2.6.32.21/arch/parisc/kernel/traps.c 2010-08-13 16:24:37.000000000 -0400
1654+++ linux-2.6.32.21/arch/parisc/kernel/traps.c 2010-09-13 08:10:05.000000000 -0400 1531+++ linux-2.6.32.21/arch/parisc/kernel/traps.c 2010-09-04 15:54:51.000000000 -0400
1655@@ -733,9 +733,7 @@ void notrace handle_interruption(int cod 1532@@ -733,9 +733,7 @@ void notrace handle_interruption(int cod
1656 1533
1657 down_read(&current->mm->mmap_sem); 1534 down_read(&current->mm->mmap_sem);
@@ -1664,8 +1541,8 @@ diff -urNp linux-2.6.32.21/arch/parisc/kernel/traps.c linux-2.6.32.21/arch/paris
1664 fault_space = regs->iasq[0]; 1541 fault_space = regs->iasq[0];
1665 1542
1666diff -urNp linux-2.6.32.21/arch/parisc/mm/fault.c linux-2.6.32.21/arch/parisc/mm/fault.c 1543diff -urNp linux-2.6.32.21/arch/parisc/mm/fault.c linux-2.6.32.21/arch/parisc/mm/fault.c
1667--- linux-2.6.32.21/arch/parisc/mm/fault.c 2010-08-26 19:42:20.000000000 -0400 1544--- linux-2.6.32.21/arch/parisc/mm/fault.c 2010-08-13 16:24:37.000000000 -0400
1668+++ linux-2.6.32.21/arch/parisc/mm/fault.c 2010-09-13 08:10:05.000000000 -0400 1545+++ linux-2.6.32.21/arch/parisc/mm/fault.c 2010-09-04 15:54:51.000000000 -0400
1669@@ -15,6 +15,7 @@ 1546@@ -15,6 +15,7 @@
1670 #include <linux/sched.h> 1547 #include <linux/sched.h>
1671 #include <linux/interrupt.h> 1548 #include <linux/interrupt.h>
@@ -1835,9 +1712,21 @@ diff -urNp linux-2.6.32.21/arch/parisc/mm/fault.c linux-2.6.32.21/arch/parisc/mm
1835 1712
1836 /* 1713 /*
1837 * If for any reason at all we couldn't handle the fault, make 1714 * If for any reason at all we couldn't handle the fault, make
1715diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/compat.h linux-2.6.32.21/arch/powerpc/include/asm/compat.h
1716--- linux-2.6.32.21/arch/powerpc/include/asm/compat.h 2010-08-13 16:24:37.000000000 -0400
1717+++ linux-2.6.32.21/arch/powerpc/include/asm/compat.h 2010-09-15 02:02:57.000000000 -0400
1718@@ -133,7 +133,7 @@ static inline compat_uptr_t ptr_to_compa
1719 return (u32)(unsigned long)uptr;
1720 }
1721
1722-static inline void __user *compat_alloc_user_space(long len)
1723+static inline void __user *arch_compat_alloc_user_space(long len)
1724 {
1725 struct pt_regs *regs = current->thread.regs;
1726 unsigned long usp = regs->gpr[1];
1838diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/device.h linux-2.6.32.21/arch/powerpc/include/asm/device.h 1727diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/device.h linux-2.6.32.21/arch/powerpc/include/asm/device.h
1839--- linux-2.6.32.21/arch/powerpc/include/asm/device.h 2010-08-26 19:42:20.000000000 -0400 1728--- linux-2.6.32.21/arch/powerpc/include/asm/device.h 2010-08-13 16:24:37.000000000 -0400
1840+++ linux-2.6.32.21/arch/powerpc/include/asm/device.h 2010-09-13 08:10:05.000000000 -0400 1729+++ linux-2.6.32.21/arch/powerpc/include/asm/device.h 2010-09-04 15:54:51.000000000 -0400
1841@@ -14,7 +14,7 @@ struct dev_archdata { 1730@@ -14,7 +14,7 @@ struct dev_archdata {
1842 struct device_node *of_node; 1731 struct device_node *of_node;
1843 1732
@@ -1848,8 +1737,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/device.h linux-2.6.32.21/arc
1848 /* 1737 /*
1849 * When an iommu is in use, dma_data is used as a ptr to the base of the 1738 * When an iommu is in use, dma_data is used as a ptr to the base of the
1850diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/dma-mapping.h linux-2.6.32.21/arch/powerpc/include/asm/dma-mapping.h 1739diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/dma-mapping.h linux-2.6.32.21/arch/powerpc/include/asm/dma-mapping.h
1851--- linux-2.6.32.21/arch/powerpc/include/asm/dma-mapping.h 2010-08-26 19:42:20.000000000 -0400 1740--- linux-2.6.32.21/arch/powerpc/include/asm/dma-mapping.h 2010-08-13 16:24:37.000000000 -0400
1852+++ linux-2.6.32.21/arch/powerpc/include/asm/dma-mapping.h 2010-09-13 08:10:05.000000000 -0400 1741+++ linux-2.6.32.21/arch/powerpc/include/asm/dma-mapping.h 2010-09-04 15:54:51.000000000 -0400
1853@@ -69,9 +69,9 @@ static inline unsigned long device_to_ma 1742@@ -69,9 +69,9 @@ static inline unsigned long device_to_ma
1854 #ifdef CONFIG_PPC64 1743 #ifdef CONFIG_PPC64
1855 extern struct dma_map_ops dma_iommu_ops; 1744 extern struct dma_map_ops dma_iommu_ops;
@@ -1917,8 +1806,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/dma-mapping.h linux-2.6.32.2
1917 if (dma_ops->mapping_error) 1806 if (dma_ops->mapping_error)
1918 return dma_ops->mapping_error(dev, dma_addr); 1807 return dma_ops->mapping_error(dev, dma_addr);
1919diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/elf.h linux-2.6.32.21/arch/powerpc/include/asm/elf.h 1808diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/elf.h linux-2.6.32.21/arch/powerpc/include/asm/elf.h
1920--- linux-2.6.32.21/arch/powerpc/include/asm/elf.h 2010-08-26 19:42:20.000000000 -0400 1809--- linux-2.6.32.21/arch/powerpc/include/asm/elf.h 2010-08-13 16:24:37.000000000 -0400
1921+++ linux-2.6.32.21/arch/powerpc/include/asm/elf.h 2010-09-13 08:10:05.000000000 -0400 1810+++ linux-2.6.32.21/arch/powerpc/include/asm/elf.h 2010-09-04 15:54:51.000000000 -0400
1922@@ -179,8 +179,19 @@ typedef elf_fpreg_t elf_vsrreghalf_t32[E 1811@@ -179,8 +179,19 @@ typedef elf_fpreg_t elf_vsrreghalf_t32[E
1923 the loader. We need to make sure that it is out of the way of the program 1812 the loader. We need to make sure that it is out of the way of the program
1924 that it will "exec", and that there is sufficient room for the brk. */ 1813 that it will "exec", and that there is sufficient room for the brk. */
@@ -1952,8 +1841,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/elf.h linux-2.6.32.21/arch/p
1952 1841
1953 /* 1842 /*
1954diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/iommu.h linux-2.6.32.21/arch/powerpc/include/asm/iommu.h 1843diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/iommu.h linux-2.6.32.21/arch/powerpc/include/asm/iommu.h
1955--- linux-2.6.32.21/arch/powerpc/include/asm/iommu.h 2010-08-26 19:42:20.000000000 -0400 1844--- linux-2.6.32.21/arch/powerpc/include/asm/iommu.h 2010-08-13 16:24:37.000000000 -0400
1956+++ linux-2.6.32.21/arch/powerpc/include/asm/iommu.h 2010-09-13 08:10:05.000000000 -0400 1845+++ linux-2.6.32.21/arch/powerpc/include/asm/iommu.h 2010-09-04 15:54:51.000000000 -0400
1957@@ -116,6 +116,9 @@ extern void iommu_init_early_iSeries(voi 1846@@ -116,6 +116,9 @@ extern void iommu_init_early_iSeries(voi
1958 extern void iommu_init_early_dart(void); 1847 extern void iommu_init_early_dart(void);
1959 extern void iommu_init_early_pasemi(void); 1848 extern void iommu_init_early_pasemi(void);
@@ -1965,8 +1854,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/iommu.h linux-2.6.32.21/arch
1965 extern void pci_iommu_init(void); 1854 extern void pci_iommu_init(void);
1966 extern void pci_direct_iommu_init(void); 1855 extern void pci_direct_iommu_init(void);
1967diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/kmap_types.h linux-2.6.32.21/arch/powerpc/include/asm/kmap_types.h 1856diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/kmap_types.h linux-2.6.32.21/arch/powerpc/include/asm/kmap_types.h
1968--- linux-2.6.32.21/arch/powerpc/include/asm/kmap_types.h 2010-08-26 19:42:20.000000000 -0400 1857--- linux-2.6.32.21/arch/powerpc/include/asm/kmap_types.h 2010-08-13 16:24:37.000000000 -0400
1969+++ linux-2.6.32.21/arch/powerpc/include/asm/kmap_types.h 2010-09-13 08:10:05.000000000 -0400 1858+++ linux-2.6.32.21/arch/powerpc/include/asm/kmap_types.h 2010-09-04 15:54:51.000000000 -0400
1970@@ -26,6 +26,7 @@ enum km_type { 1859@@ -26,6 +26,7 @@ enum km_type {
1971 KM_SOFTIRQ1, 1860 KM_SOFTIRQ1,
1972 KM_PPC_SYNC_PAGE, 1861 KM_PPC_SYNC_PAGE,
@@ -1975,9 +1864,33 @@ diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/kmap_types.h linux-2.6.32.21
1975 KM_TYPE_NR 1864 KM_TYPE_NR
1976 }; 1865 };
1977 1866
1867diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/page_64.h linux-2.6.32.21/arch/powerpc/include/asm/page_64.h
1868--- linux-2.6.32.21/arch/powerpc/include/asm/page_64.h 2010-08-13 16:24:37.000000000 -0400
1869+++ linux-2.6.32.21/arch/powerpc/include/asm/page_64.h 2010-09-04 15:54:51.000000000 -0400
1870@@ -180,15 +180,18 @@ do { \
1871 * stack by default, so in the absense of a PT_GNU_STACK program header
1872 * we turn execute permission off.
1873 */
1874-#define VM_STACK_DEFAULT_FLAGS32 (VM_READ | VM_WRITE | VM_EXEC | \
1875- VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC)
1876+#define VM_STACK_DEFAULT_FLAGS32 \
1877+ (((current->personality & READ_IMPLIES_EXEC) ? VM_EXEC : 0) | \
1878+ VM_READ | VM_WRITE | VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC)
1879
1880 #define VM_STACK_DEFAULT_FLAGS64 (VM_READ | VM_WRITE | \
1881 VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC)
1882
1883+#ifndef CONFIG_PAX_PAGEEXEC
1884 #define VM_STACK_DEFAULT_FLAGS \
1885 (test_thread_flag(TIF_32BIT) ? \
1886 VM_STACK_DEFAULT_FLAGS32 : VM_STACK_DEFAULT_FLAGS64)
1887+#endif
1888
1889 #include <asm-generic/getorder.h>
1890
1978diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/page.h linux-2.6.32.21/arch/powerpc/include/asm/page.h 1891diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/page.h linux-2.6.32.21/arch/powerpc/include/asm/page.h
1979--- linux-2.6.32.21/arch/powerpc/include/asm/page.h 2010-08-26 19:42:20.000000000 -0400 1892--- linux-2.6.32.21/arch/powerpc/include/asm/page.h 2010-08-13 16:24:37.000000000 -0400
1980+++ linux-2.6.32.21/arch/powerpc/include/asm/page.h 2010-09-13 08:10:05.000000000 -0400 1893+++ linux-2.6.32.21/arch/powerpc/include/asm/page.h 2010-09-04 15:54:51.000000000 -0400
1981@@ -116,8 +116,9 @@ extern phys_addr_t kernstart_addr; 1894@@ -116,8 +116,9 @@ extern phys_addr_t kernstart_addr;
1982 * and needs to be executable. This means the whole heap ends 1895 * and needs to be executable. This means the whole heap ends
1983 * up being executable. 1896 * up being executable.
@@ -2000,33 +1913,9 @@ diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/page.h linux-2.6.32.21/arch/
2000 #ifndef __ASSEMBLY__ 1913 #ifndef __ASSEMBLY__
2001 1914
2002 #undef STRICT_MM_TYPECHECKS 1915 #undef STRICT_MM_TYPECHECKS
2003diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/page_64.h linux-2.6.32.21/arch/powerpc/include/asm/page_64.h
2004--- linux-2.6.32.21/arch/powerpc/include/asm/page_64.h 2010-08-26 19:42:20.000000000 -0400
2005+++ linux-2.6.32.21/arch/powerpc/include/asm/page_64.h 2010-09-13 08:10:05.000000000 -0400
2006@@ -180,15 +180,18 @@ do { \
2007 * stack by default, so in the absense of a PT_GNU_STACK program header
2008 * we turn execute permission off.
2009 */
2010-#define VM_STACK_DEFAULT_FLAGS32 (VM_READ | VM_WRITE | VM_EXEC | \
2011- VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC)
2012+#define VM_STACK_DEFAULT_FLAGS32 \
2013+ (((current->personality & READ_IMPLIES_EXEC) ? VM_EXEC : 0) | \
2014+ VM_READ | VM_WRITE | VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC)
2015
2016 #define VM_STACK_DEFAULT_FLAGS64 (VM_READ | VM_WRITE | \
2017 VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC)
2018
2019+#ifndef CONFIG_PAX_PAGEEXEC
2020 #define VM_STACK_DEFAULT_FLAGS \
2021 (test_thread_flag(TIF_32BIT) ? \
2022 VM_STACK_DEFAULT_FLAGS32 : VM_STACK_DEFAULT_FLAGS64)
2023+#endif
2024
2025 #include <asm-generic/getorder.h>
2026
2027diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/pci.h linux-2.6.32.21/arch/powerpc/include/asm/pci.h 1916diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/pci.h linux-2.6.32.21/arch/powerpc/include/asm/pci.h
2028--- linux-2.6.32.21/arch/powerpc/include/asm/pci.h 2010-08-26 19:42:20.000000000 -0400 1917--- linux-2.6.32.21/arch/powerpc/include/asm/pci.h 2010-08-13 16:24:37.000000000 -0400
2029+++ linux-2.6.32.21/arch/powerpc/include/asm/pci.h 2010-09-13 08:10:05.000000000 -0400 1918+++ linux-2.6.32.21/arch/powerpc/include/asm/pci.h 2010-09-04 15:54:51.000000000 -0400
2030@@ -65,8 +65,8 @@ static inline int pci_get_legacy_ide_irq 1919@@ -65,8 +65,8 @@ static inline int pci_get_legacy_ide_irq
2031 } 1920 }
2032 1921
@@ -2039,8 +1928,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/pci.h linux-2.6.32.21/arch/p
2039 #define set_pci_dma_ops(d) 1928 #define set_pci_dma_ops(d)
2040 #define get_pci_dma_ops() NULL 1929 #define get_pci_dma_ops() NULL
2041diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/pte-hash32.h linux-2.6.32.21/arch/powerpc/include/asm/pte-hash32.h 1930diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/pte-hash32.h linux-2.6.32.21/arch/powerpc/include/asm/pte-hash32.h
2042--- linux-2.6.32.21/arch/powerpc/include/asm/pte-hash32.h 2010-08-26 19:42:20.000000000 -0400 1931--- linux-2.6.32.21/arch/powerpc/include/asm/pte-hash32.h 2010-08-13 16:24:37.000000000 -0400
2043+++ linux-2.6.32.21/arch/powerpc/include/asm/pte-hash32.h 2010-09-13 08:10:05.000000000 -0400 1932+++ linux-2.6.32.21/arch/powerpc/include/asm/pte-hash32.h 2010-09-04 15:54:51.000000000 -0400
2044@@ -21,6 +21,7 @@ 1933@@ -21,6 +21,7 @@
2045 #define _PAGE_FILE 0x004 /* when !present: nonlinear file mapping */ 1934 #define _PAGE_FILE 0x004 /* when !present: nonlinear file mapping */
2046 #define _PAGE_USER 0x004 /* usermode access allowed */ 1935 #define _PAGE_USER 0x004 /* usermode access allowed */
@@ -2050,8 +1939,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/pte-hash32.h linux-2.6.32.21
2050 #define _PAGE_NO_CACHE 0x020 /* I: cache inhibit */ 1939 #define _PAGE_NO_CACHE 0x020 /* I: cache inhibit */
2051 #define _PAGE_WRITETHRU 0x040 /* W: cache write-through */ 1940 #define _PAGE_WRITETHRU 0x040 /* W: cache write-through */
2052diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/reg.h linux-2.6.32.21/arch/powerpc/include/asm/reg.h 1941diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/reg.h linux-2.6.32.21/arch/powerpc/include/asm/reg.h
2053--- linux-2.6.32.21/arch/powerpc/include/asm/reg.h 2010-08-26 19:42:20.000000000 -0400 1942--- linux-2.6.32.21/arch/powerpc/include/asm/reg.h 2010-08-13 16:24:37.000000000 -0400
2054+++ linux-2.6.32.21/arch/powerpc/include/asm/reg.h 2010-09-13 08:10:05.000000000 -0400 1943+++ linux-2.6.32.21/arch/powerpc/include/asm/reg.h 2010-09-04 15:54:51.000000000 -0400
2055@@ -191,6 +191,7 @@ 1944@@ -191,6 +191,7 @@
2056 #define SPRN_DBCR 0x136 /* e300 Data Breakpoint Control Reg */ 1945 #define SPRN_DBCR 0x136 /* e300 Data Breakpoint Control Reg */
2057 #define SPRN_DSISR 0x012 /* Data Storage Interrupt Status Register */ 1946 #define SPRN_DSISR 0x012 /* Data Storage Interrupt Status Register */
@@ -2061,8 +1950,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/reg.h linux-2.6.32.21/arch/p
2061 #define DSISR_ISSTORE 0x02000000 /* access was a store */ 1950 #define DSISR_ISSTORE 0x02000000 /* access was a store */
2062 #define DSISR_DABRMATCH 0x00400000 /* hit data breakpoint */ 1951 #define DSISR_DABRMATCH 0x00400000 /* hit data breakpoint */
2063diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/swiotlb.h linux-2.6.32.21/arch/powerpc/include/asm/swiotlb.h 1952diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/swiotlb.h linux-2.6.32.21/arch/powerpc/include/asm/swiotlb.h
2064--- linux-2.6.32.21/arch/powerpc/include/asm/swiotlb.h 2010-08-26 19:42:20.000000000 -0400 1953--- linux-2.6.32.21/arch/powerpc/include/asm/swiotlb.h 2010-08-13 16:24:37.000000000 -0400
2065+++ linux-2.6.32.21/arch/powerpc/include/asm/swiotlb.h 2010-09-13 08:10:05.000000000 -0400 1954+++ linux-2.6.32.21/arch/powerpc/include/asm/swiotlb.h 2010-09-04 15:54:51.000000000 -0400
2066@@ -13,7 +13,7 @@ 1955@@ -13,7 +13,7 @@
2067 1956
2068 #include <linux/swiotlb.h> 1957 #include <linux/swiotlb.h>
@@ -2073,8 +1962,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/swiotlb.h linux-2.6.32.21/ar
2073 static inline void dma_mark_clean(void *addr, size_t size) {} 1962 static inline void dma_mark_clean(void *addr, size_t size) {}
2074 1963
2075diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/uaccess.h linux-2.6.32.21/arch/powerpc/include/asm/uaccess.h 1964diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/uaccess.h linux-2.6.32.21/arch/powerpc/include/asm/uaccess.h
2076--- linux-2.6.32.21/arch/powerpc/include/asm/uaccess.h 2010-08-26 19:42:20.000000000 -0400 1965--- linux-2.6.32.21/arch/powerpc/include/asm/uaccess.h 2010-08-13 16:24:37.000000000 -0400
2077+++ linux-2.6.32.21/arch/powerpc/include/asm/uaccess.h 2010-09-13 08:10:05.000000000 -0400 1966+++ linux-2.6.32.21/arch/powerpc/include/asm/uaccess.h 2010-09-04 15:54:51.000000000 -0400
2078@@ -13,6 +13,8 @@ 1967@@ -13,6 +13,8 @@
2079 #define VERIFY_READ 0 1968 #define VERIFY_READ 0
2080 #define VERIFY_WRITE 1 1969 #define VERIFY_WRITE 1
@@ -2253,8 +2142,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/include/asm/uaccess.h linux-2.6.32.21/ar
2253 2142
2254 static inline unsigned long clear_user(void __user *addr, unsigned long size) 2143 static inline unsigned long clear_user(void __user *addr, unsigned long size)
2255diff -urNp linux-2.6.32.21/arch/powerpc/kernel/cacheinfo.c linux-2.6.32.21/arch/powerpc/kernel/cacheinfo.c 2144diff -urNp linux-2.6.32.21/arch/powerpc/kernel/cacheinfo.c linux-2.6.32.21/arch/powerpc/kernel/cacheinfo.c
2256--- linux-2.6.32.21/arch/powerpc/kernel/cacheinfo.c 2010-08-26 19:42:20.000000000 -0400 2145--- linux-2.6.32.21/arch/powerpc/kernel/cacheinfo.c 2010-08-13 16:24:37.000000000 -0400
2257+++ linux-2.6.32.21/arch/powerpc/kernel/cacheinfo.c 2010-09-13 08:10:05.000000000 -0400 2146+++ linux-2.6.32.21/arch/powerpc/kernel/cacheinfo.c 2010-09-04 15:54:51.000000000 -0400
2258@@ -642,7 +642,7 @@ static struct kobj_attribute *cache_inde 2147@@ -642,7 +642,7 @@ static struct kobj_attribute *cache_inde
2259 &cache_assoc_attr, 2148 &cache_assoc_attr,
2260 }; 2149 };
@@ -2264,9 +2153,21 @@ diff -urNp linux-2.6.32.21/arch/powerpc/kernel/cacheinfo.c linux-2.6.32.21/arch/
2264 .show = cache_index_show, 2153 .show = cache_index_show,
2265 }; 2154 };
2266 2155
2156diff -urNp linux-2.6.32.21/arch/powerpc/kernel/dma.c linux-2.6.32.21/arch/powerpc/kernel/dma.c
2157--- linux-2.6.32.21/arch/powerpc/kernel/dma.c 2010-08-13 16:24:37.000000000 -0400
2158+++ linux-2.6.32.21/arch/powerpc/kernel/dma.c 2010-09-04 15:54:51.000000000 -0400
2159@@ -134,7 +134,7 @@ static inline void dma_direct_sync_singl
2160 }
2161 #endif
2162
2163-struct dma_map_ops dma_direct_ops = {
2164+const struct dma_map_ops dma_direct_ops = {
2165 .alloc_coherent = dma_direct_alloc_coherent,
2166 .free_coherent = dma_direct_free_coherent,
2167 .map_sg = dma_direct_map_sg,
2267diff -urNp linux-2.6.32.21/arch/powerpc/kernel/dma-iommu.c linux-2.6.32.21/arch/powerpc/kernel/dma-iommu.c 2168diff -urNp linux-2.6.32.21/arch/powerpc/kernel/dma-iommu.c linux-2.6.32.21/arch/powerpc/kernel/dma-iommu.c
2268--- linux-2.6.32.21/arch/powerpc/kernel/dma-iommu.c 2010-08-26 19:42:20.000000000 -0400 2169--- linux-2.6.32.21/arch/powerpc/kernel/dma-iommu.c 2010-08-13 16:24:37.000000000 -0400
2269+++ linux-2.6.32.21/arch/powerpc/kernel/dma-iommu.c 2010-09-13 08:10:05.000000000 -0400 2170+++ linux-2.6.32.21/arch/powerpc/kernel/dma-iommu.c 2010-09-04 15:54:51.000000000 -0400
2270@@ -70,7 +70,7 @@ static void dma_iommu_unmap_sg(struct de 2171@@ -70,7 +70,7 @@ static void dma_iommu_unmap_sg(struct de
2271 } 2172 }
2272 2173
@@ -2277,8 +2178,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/kernel/dma-iommu.c linux-2.6.32.21/arch/
2277 struct iommu_table *tbl = get_iommu_table_base(dev); 2178 struct iommu_table *tbl = get_iommu_table_base(dev);
2278 2179
2279diff -urNp linux-2.6.32.21/arch/powerpc/kernel/dma-swiotlb.c linux-2.6.32.21/arch/powerpc/kernel/dma-swiotlb.c 2180diff -urNp linux-2.6.32.21/arch/powerpc/kernel/dma-swiotlb.c linux-2.6.32.21/arch/powerpc/kernel/dma-swiotlb.c
2280--- linux-2.6.32.21/arch/powerpc/kernel/dma-swiotlb.c 2010-08-26 19:42:20.000000000 -0400 2181--- linux-2.6.32.21/arch/powerpc/kernel/dma-swiotlb.c 2010-08-13 16:24:37.000000000 -0400
2281+++ linux-2.6.32.21/arch/powerpc/kernel/dma-swiotlb.c 2010-09-13 08:10:05.000000000 -0400 2182+++ linux-2.6.32.21/arch/powerpc/kernel/dma-swiotlb.c 2010-09-04 15:54:51.000000000 -0400
2282@@ -31,7 +31,7 @@ unsigned int ppc_swiotlb_enable; 2183@@ -31,7 +31,7 @@ unsigned int ppc_swiotlb_enable;
2283 * map_page, and unmap_page on highmem, use normal dma_ops 2184 * map_page, and unmap_page on highmem, use normal dma_ops
2284 * for everything else. 2185 * for everything else.
@@ -2288,21 +2189,9 @@ diff -urNp linux-2.6.32.21/arch/powerpc/kernel/dma-swiotlb.c linux-2.6.32.21/arc
2288 .alloc_coherent = dma_direct_alloc_coherent, 2189 .alloc_coherent = dma_direct_alloc_coherent,
2289 .free_coherent = dma_direct_free_coherent, 2190 .free_coherent = dma_direct_free_coherent,
2290 .map_sg = swiotlb_map_sg_attrs, 2191 .map_sg = swiotlb_map_sg_attrs,
2291diff -urNp linux-2.6.32.21/arch/powerpc/kernel/dma.c linux-2.6.32.21/arch/powerpc/kernel/dma.c
2292--- linux-2.6.32.21/arch/powerpc/kernel/dma.c 2010-08-26 19:42:20.000000000 -0400
2293+++ linux-2.6.32.21/arch/powerpc/kernel/dma.c 2010-09-13 08:10:05.000000000 -0400
2294@@ -134,7 +134,7 @@ static inline void dma_direct_sync_singl
2295 }
2296 #endif
2297
2298-struct dma_map_ops dma_direct_ops = {
2299+const struct dma_map_ops dma_direct_ops = {
2300 .alloc_coherent = dma_direct_alloc_coherent,
2301 .free_coherent = dma_direct_free_coherent,
2302 .map_sg = dma_direct_map_sg,
2303diff -urNp linux-2.6.32.21/arch/powerpc/kernel/exceptions-64e.S linux-2.6.32.21/arch/powerpc/kernel/exceptions-64e.S 2192diff -urNp linux-2.6.32.21/arch/powerpc/kernel/exceptions-64e.S linux-2.6.32.21/arch/powerpc/kernel/exceptions-64e.S
2304--- linux-2.6.32.21/arch/powerpc/kernel/exceptions-64e.S 2010-08-26 19:42:20.000000000 -0400 2193--- linux-2.6.32.21/arch/powerpc/kernel/exceptions-64e.S 2010-08-13 16:24:37.000000000 -0400
2305+++ linux-2.6.32.21/arch/powerpc/kernel/exceptions-64e.S 2010-09-13 08:10:05.000000000 -0400 2194+++ linux-2.6.32.21/arch/powerpc/kernel/exceptions-64e.S 2010-09-04 15:54:51.000000000 -0400
2306@@ -455,6 +455,7 @@ storage_fault_common: 2195@@ -455,6 +455,7 @@ storage_fault_common:
2307 std r14,_DAR(r1) 2196 std r14,_DAR(r1)
2308 std r15,_DSISR(r1) 2197 std r15,_DSISR(r1)
@@ -2322,8 +2211,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/kernel/exceptions-64e.S linux-2.6.32.21/
2322 ld r4,_DAR(r1) 2211 ld r4,_DAR(r1)
2323 bl .bad_page_fault 2212 bl .bad_page_fault
2324diff -urNp linux-2.6.32.21/arch/powerpc/kernel/exceptions-64s.S linux-2.6.32.21/arch/powerpc/kernel/exceptions-64s.S 2213diff -urNp linux-2.6.32.21/arch/powerpc/kernel/exceptions-64s.S linux-2.6.32.21/arch/powerpc/kernel/exceptions-64s.S
2325--- linux-2.6.32.21/arch/powerpc/kernel/exceptions-64s.S 2010-08-26 19:42:20.000000000 -0400 2214--- linux-2.6.32.21/arch/powerpc/kernel/exceptions-64s.S 2010-08-13 16:24:37.000000000 -0400
2326+++ linux-2.6.32.21/arch/powerpc/kernel/exceptions-64s.S 2010-09-13 08:10:05.000000000 -0400 2215+++ linux-2.6.32.21/arch/powerpc/kernel/exceptions-64s.S 2010-09-04 15:54:51.000000000 -0400
2327@@ -818,10 +818,10 @@ handle_page_fault: 2216@@ -818,10 +818,10 @@ handle_page_fault:
2328 11: ld r4,_DAR(r1) 2217 11: ld r4,_DAR(r1)
2329 ld r5,_DSISR(r1) 2218 ld r5,_DSISR(r1)
@@ -2337,8 +2226,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/kernel/exceptions-64s.S linux-2.6.32.21/
2337 addi r3,r1,STACK_FRAME_OVERHEAD 2226 addi r3,r1,STACK_FRAME_OVERHEAD
2338 lwz r4,_DAR(r1) 2227 lwz r4,_DAR(r1)
2339diff -urNp linux-2.6.32.21/arch/powerpc/kernel/ibmebus.c linux-2.6.32.21/arch/powerpc/kernel/ibmebus.c 2228diff -urNp linux-2.6.32.21/arch/powerpc/kernel/ibmebus.c linux-2.6.32.21/arch/powerpc/kernel/ibmebus.c
2340--- linux-2.6.32.21/arch/powerpc/kernel/ibmebus.c 2010-08-26 19:42:20.000000000 -0400 2229--- linux-2.6.32.21/arch/powerpc/kernel/ibmebus.c 2010-08-13 16:24:37.000000000 -0400
2341+++ linux-2.6.32.21/arch/powerpc/kernel/ibmebus.c 2010-09-13 08:10:05.000000000 -0400 2230+++ linux-2.6.32.21/arch/powerpc/kernel/ibmebus.c 2010-09-04 15:54:51.000000000 -0400
2342@@ -127,7 +127,7 @@ static int ibmebus_dma_supported(struct 2231@@ -127,7 +127,7 @@ static int ibmebus_dma_supported(struct
2343 return 1; 2232 return 1;
2344 } 2233 }
@@ -2349,8 +2238,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/kernel/ibmebus.c linux-2.6.32.21/arch/po
2349 .free_coherent = ibmebus_free_coherent, 2238 .free_coherent = ibmebus_free_coherent,
2350 .map_sg = ibmebus_map_sg, 2239 .map_sg = ibmebus_map_sg,
2351diff -urNp linux-2.6.32.21/arch/powerpc/kernel/kgdb.c linux-2.6.32.21/arch/powerpc/kernel/kgdb.c 2240diff -urNp linux-2.6.32.21/arch/powerpc/kernel/kgdb.c linux-2.6.32.21/arch/powerpc/kernel/kgdb.c
2352--- linux-2.6.32.21/arch/powerpc/kernel/kgdb.c 2010-08-26 19:42:20.000000000 -0400 2241--- linux-2.6.32.21/arch/powerpc/kernel/kgdb.c 2010-08-13 16:24:37.000000000 -0400
2353+++ linux-2.6.32.21/arch/powerpc/kernel/kgdb.c 2010-09-13 08:10:05.000000000 -0400 2242+++ linux-2.6.32.21/arch/powerpc/kernel/kgdb.c 2010-09-04 15:54:51.000000000 -0400
2354@@ -126,7 +126,7 @@ static int kgdb_handle_breakpoint(struct 2243@@ -126,7 +126,7 @@ static int kgdb_handle_breakpoint(struct
2355 if (kgdb_handle_exception(0, SIGTRAP, 0, regs) != 0) 2244 if (kgdb_handle_exception(0, SIGTRAP, 0, regs) != 0)
2356 return 0; 2245 return 0;
@@ -2369,9 +2258,41 @@ diff -urNp linux-2.6.32.21/arch/powerpc/kernel/kgdb.c linux-2.6.32.21/arch/power
2369 .gdb_bpt_instr = {0x7d, 0x82, 0x10, 0x08}, 2258 .gdb_bpt_instr = {0x7d, 0x82, 0x10, 0x08},
2370 }; 2259 };
2371 2260
2261diff -urNp linux-2.6.32.21/arch/powerpc/kernel/module_32.c linux-2.6.32.21/arch/powerpc/kernel/module_32.c
2262--- linux-2.6.32.21/arch/powerpc/kernel/module_32.c 2010-08-13 16:24:37.000000000 -0400
2263+++ linux-2.6.32.21/arch/powerpc/kernel/module_32.c 2010-09-04 15:54:51.000000000 -0400
2264@@ -162,7 +162,7 @@ int module_frob_arch_sections(Elf32_Ehdr
2265 me->arch.core_plt_section = i;
2266 }
2267 if (!me->arch.core_plt_section || !me->arch.init_plt_section) {
2268- printk("Module doesn't contain .plt or .init.plt sections.\n");
2269+ printk("Module %s doesn't contain .plt or .init.plt sections.\n", me->name);
2270 return -ENOEXEC;
2271 }
2272
2273@@ -203,11 +203,16 @@ static uint32_t do_plt_call(void *locati
2274
2275 DEBUGP("Doing plt for call to 0x%x at 0x%x\n", val, (unsigned int)location);
2276 /* Init, or core PLT? */
2277- if (location >= mod->module_core
2278- && location < mod->module_core + mod->core_size)
2279+ if ((location >= mod->module_core_rx && location < mod->module_core_rx + mod->core_size_rx) ||
2280+ (location >= mod->module_core_rw && location < mod->module_core_rw + mod->core_size_rw))
2281 entry = (void *)sechdrs[mod->arch.core_plt_section].sh_addr;
2282- else
2283+ else if ((location >= mod->module_init_rx && location < mod->module_init_rx + mod->init_size_rx) ||
2284+ (location >= mod->module_init_rw && location < mod->module_init_rw + mod->init_size_rw))
2285 entry = (void *)sechdrs[mod->arch.init_plt_section].sh_addr;
2286+ else {
2287+ printk(KERN_ERR "%s: invalid R_PPC_REL24 entry found\n", mod->name);
2288+ return ~0UL;
2289+ }
2290
2291 /* Find this entry, or if that fails, the next avail. entry */
2292 while (entry->jump[0]) {
2372diff -urNp linux-2.6.32.21/arch/powerpc/kernel/module.c linux-2.6.32.21/arch/powerpc/kernel/module.c 2293diff -urNp linux-2.6.32.21/arch/powerpc/kernel/module.c linux-2.6.32.21/arch/powerpc/kernel/module.c
2373--- linux-2.6.32.21/arch/powerpc/kernel/module.c 2010-08-26 19:42:20.000000000 -0400 2294--- linux-2.6.32.21/arch/powerpc/kernel/module.c 2010-08-13 16:24:37.000000000 -0400
2374+++ linux-2.6.32.21/arch/powerpc/kernel/module.c 2010-09-13 08:10:05.000000000 -0400 2295+++ linux-2.6.32.21/arch/powerpc/kernel/module.c 2010-09-04 15:54:51.000000000 -0400
2375@@ -31,11 +31,24 @@ 2296@@ -31,11 +31,24 @@
2376 2297
2377 LIST_HEAD(module_bug_list); 2298 LIST_HEAD(module_bug_list);
@@ -2411,41 +2332,9 @@ diff -urNp linux-2.6.32.21/arch/powerpc/kernel/module.c linux-2.6.32.21/arch/pow
2411 static const Elf_Shdr *find_section(const Elf_Ehdr *hdr, 2332 static const Elf_Shdr *find_section(const Elf_Ehdr *hdr,
2412 const Elf_Shdr *sechdrs, 2333 const Elf_Shdr *sechdrs,
2413 const char *name) 2334 const char *name)
2414diff -urNp linux-2.6.32.21/arch/powerpc/kernel/module_32.c linux-2.6.32.21/arch/powerpc/kernel/module_32.c
2415--- linux-2.6.32.21/arch/powerpc/kernel/module_32.c 2010-08-26 19:42:20.000000000 -0400
2416+++ linux-2.6.32.21/arch/powerpc/kernel/module_32.c 2010-09-13 08:10:05.000000000 -0400
2417@@ -162,7 +162,7 @@ int module_frob_arch_sections(Elf32_Ehdr
2418 me->arch.core_plt_section = i;
2419 }
2420 if (!me->arch.core_plt_section || !me->arch.init_plt_section) {
2421- printk("Module doesn't contain .plt or .init.plt sections.\n");
2422+ printk("Module %s doesn't contain .plt or .init.plt sections.\n", me->name);
2423 return -ENOEXEC;
2424 }
2425
2426@@ -203,11 +203,16 @@ static uint32_t do_plt_call(void *locati
2427
2428 DEBUGP("Doing plt for call to 0x%x at 0x%x\n", val, (unsigned int)location);
2429 /* Init, or core PLT? */
2430- if (location >= mod->module_core
2431- && location < mod->module_core + mod->core_size)
2432+ if ((location >= mod->module_core_rx && location < mod->module_core_rx + mod->core_size_rx) ||
2433+ (location >= mod->module_core_rw && location < mod->module_core_rw + mod->core_size_rw))
2434 entry = (void *)sechdrs[mod->arch.core_plt_section].sh_addr;
2435- else
2436+ else if ((location >= mod->module_init_rx && location < mod->module_init_rx + mod->init_size_rx) ||
2437+ (location >= mod->module_init_rw && location < mod->module_init_rw + mod->init_size_rw))
2438 entry = (void *)sechdrs[mod->arch.init_plt_section].sh_addr;
2439+ else {
2440+ printk(KERN_ERR "%s: invalid R_PPC_REL24 entry found\n", mod->name);
2441+ return ~0UL;
2442+ }
2443
2444 /* Find this entry, or if that fails, the next avail. entry */
2445 while (entry->jump[0]) {
2446diff -urNp linux-2.6.32.21/arch/powerpc/kernel/pci-common.c linux-2.6.32.21/arch/powerpc/kernel/pci-common.c 2335diff -urNp linux-2.6.32.21/arch/powerpc/kernel/pci-common.c linux-2.6.32.21/arch/powerpc/kernel/pci-common.c
2447--- linux-2.6.32.21/arch/powerpc/kernel/pci-common.c 2010-08-26 19:42:20.000000000 -0400 2336--- linux-2.6.32.21/arch/powerpc/kernel/pci-common.c 2010-08-13 16:24:37.000000000 -0400
2448+++ linux-2.6.32.21/arch/powerpc/kernel/pci-common.c 2010-09-13 08:10:05.000000000 -0400 2337+++ linux-2.6.32.21/arch/powerpc/kernel/pci-common.c 2010-09-04 15:54:51.000000000 -0400
2449@@ -50,14 +50,14 @@ resource_size_t isa_mem_base; 2338@@ -50,14 +50,14 @@ resource_size_t isa_mem_base;
2450 unsigned int ppc_pci_flags = 0; 2339 unsigned int ppc_pci_flags = 0;
2451 2340
@@ -2465,8 +2354,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/kernel/pci-common.c linux-2.6.32.21/arch
2465 return pci_dma_ops; 2354 return pci_dma_ops;
2466 } 2355 }
2467diff -urNp linux-2.6.32.21/arch/powerpc/kernel/process.c linux-2.6.32.21/arch/powerpc/kernel/process.c 2356diff -urNp linux-2.6.32.21/arch/powerpc/kernel/process.c linux-2.6.32.21/arch/powerpc/kernel/process.c
2468--- linux-2.6.32.21/arch/powerpc/kernel/process.c 2010-08-26 19:42:20.000000000 -0400 2357--- linux-2.6.32.21/arch/powerpc/kernel/process.c 2010-08-13 16:24:37.000000000 -0400
2469+++ linux-2.6.32.21/arch/powerpc/kernel/process.c 2010-09-13 08:10:05.000000000 -0400 2358+++ linux-2.6.32.21/arch/powerpc/kernel/process.c 2010-09-04 15:54:51.000000000 -0400
2470@@ -1141,51 +1141,3 @@ unsigned long arch_align_stack(unsigned 2359@@ -1141,51 +1141,3 @@ unsigned long arch_align_stack(unsigned
2471 sp -= get_random_int() & ~PAGE_MASK; 2360 sp -= get_random_int() & ~PAGE_MASK;
2472 return sp & ~0xf; 2361 return sp & ~0xf;
@@ -2520,8 +2409,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/kernel/process.c linux-2.6.32.21/arch/po
2520- return ret; 2409- return ret;
2521-} 2410-}
2522diff -urNp linux-2.6.32.21/arch/powerpc/kernel/signal_32.c linux-2.6.32.21/arch/powerpc/kernel/signal_32.c 2411diff -urNp linux-2.6.32.21/arch/powerpc/kernel/signal_32.c linux-2.6.32.21/arch/powerpc/kernel/signal_32.c
2523--- linux-2.6.32.21/arch/powerpc/kernel/signal_32.c 2010-08-26 19:42:20.000000000 -0400 2412--- linux-2.6.32.21/arch/powerpc/kernel/signal_32.c 2010-08-13 16:24:37.000000000 -0400
2524+++ linux-2.6.32.21/arch/powerpc/kernel/signal_32.c 2010-09-13 08:10:05.000000000 -0400 2413+++ linux-2.6.32.21/arch/powerpc/kernel/signal_32.c 2010-09-04 15:54:51.000000000 -0400
2525@@ -857,7 +857,7 @@ int handle_rt_signal32(unsigned long sig 2414@@ -857,7 +857,7 @@ int handle_rt_signal32(unsigned long sig
2526 /* Save user registers on the stack */ 2415 /* Save user registers on the stack */
2527 frame = &rt_sf->uc.uc_mcontext; 2416 frame = &rt_sf->uc.uc_mcontext;
@@ -2532,8 +2421,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/kernel/signal_32.c linux-2.6.32.21/arch/
2532 goto badframe; 2421 goto badframe;
2533 regs->link = current->mm->context.vdso_base + vdso32_rt_sigtramp; 2422 regs->link = current->mm->context.vdso_base + vdso32_rt_sigtramp;
2534diff -urNp linux-2.6.32.21/arch/powerpc/kernel/signal_64.c linux-2.6.32.21/arch/powerpc/kernel/signal_64.c 2423diff -urNp linux-2.6.32.21/arch/powerpc/kernel/signal_64.c linux-2.6.32.21/arch/powerpc/kernel/signal_64.c
2535--- linux-2.6.32.21/arch/powerpc/kernel/signal_64.c 2010-08-26 19:42:20.000000000 -0400 2424--- linux-2.6.32.21/arch/powerpc/kernel/signal_64.c 2010-08-13 16:24:37.000000000 -0400
2536+++ linux-2.6.32.21/arch/powerpc/kernel/signal_64.c 2010-09-13 08:10:05.000000000 -0400 2425+++ linux-2.6.32.21/arch/powerpc/kernel/signal_64.c 2010-09-04 15:54:51.000000000 -0400
2537@@ -429,7 +429,7 @@ int handle_rt_signal64(int signr, struct 2426@@ -429,7 +429,7 @@ int handle_rt_signal64(int signr, struct
2538 current->thread.fpscr.val = 0; 2427 current->thread.fpscr.val = 0;
2539 2428
@@ -2544,8 +2433,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/kernel/signal_64.c linux-2.6.32.21/arch/
2544 } else { 2433 } else {
2545 err |= setup_trampoline(__NR_rt_sigreturn, &frame->tramp[0]); 2434 err |= setup_trampoline(__NR_rt_sigreturn, &frame->tramp[0]);
2546diff -urNp linux-2.6.32.21/arch/powerpc/kernel/sys_ppc32.c linux-2.6.32.21/arch/powerpc/kernel/sys_ppc32.c 2435diff -urNp linux-2.6.32.21/arch/powerpc/kernel/sys_ppc32.c linux-2.6.32.21/arch/powerpc/kernel/sys_ppc32.c
2547--- linux-2.6.32.21/arch/powerpc/kernel/sys_ppc32.c 2010-08-26 19:42:20.000000000 -0400 2436--- linux-2.6.32.21/arch/powerpc/kernel/sys_ppc32.c 2010-08-13 16:24:37.000000000 -0400
2548+++ linux-2.6.32.21/arch/powerpc/kernel/sys_ppc32.c 2010-09-13 08:10:05.000000000 -0400 2437+++ linux-2.6.32.21/arch/powerpc/kernel/sys_ppc32.c 2010-09-04 15:54:51.000000000 -0400
2549@@ -563,10 +563,10 @@ asmlinkage long compat_sys_sysctl(struct 2438@@ -563,10 +563,10 @@ asmlinkage long compat_sys_sysctl(struct
2550 if (oldlenp) { 2439 if (oldlenp) {
2551 if (!error) { 2440 if (!error) {
@@ -2560,8 +2449,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/kernel/sys_ppc32.c linux-2.6.32.21/arch/
2560 return error; 2449 return error;
2561 } 2450 }
2562diff -urNp linux-2.6.32.21/arch/powerpc/kernel/vdso.c linux-2.6.32.21/arch/powerpc/kernel/vdso.c 2451diff -urNp linux-2.6.32.21/arch/powerpc/kernel/vdso.c linux-2.6.32.21/arch/powerpc/kernel/vdso.c
2563--- linux-2.6.32.21/arch/powerpc/kernel/vdso.c 2010-08-26 19:42:20.000000000 -0400 2452--- linux-2.6.32.21/arch/powerpc/kernel/vdso.c 2010-08-13 16:24:37.000000000 -0400
2564+++ linux-2.6.32.21/arch/powerpc/kernel/vdso.c 2010-09-13 08:10:05.000000000 -0400 2453+++ linux-2.6.32.21/arch/powerpc/kernel/vdso.c 2010-09-04 15:54:51.000000000 -0400
2565@@ -36,6 +36,7 @@ 2454@@ -36,6 +36,7 @@
2566 #include <asm/firmware.h> 2455 #include <asm/firmware.h>
2567 #include <asm/vdso.h> 2456 #include <asm/vdso.h>
@@ -2589,8 +2478,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/kernel/vdso.c linux-2.6.32.21/arch/power
2589 rc = vdso_base; 2478 rc = vdso_base;
2590 goto fail_mmapsem; 2479 goto fail_mmapsem;
2591diff -urNp linux-2.6.32.21/arch/powerpc/kernel/vio.c linux-2.6.32.21/arch/powerpc/kernel/vio.c 2480diff -urNp linux-2.6.32.21/arch/powerpc/kernel/vio.c linux-2.6.32.21/arch/powerpc/kernel/vio.c
2592--- linux-2.6.32.21/arch/powerpc/kernel/vio.c 2010-08-26 19:42:20.000000000 -0400 2481--- linux-2.6.32.21/arch/powerpc/kernel/vio.c 2010-08-13 16:24:37.000000000 -0400
2593+++ linux-2.6.32.21/arch/powerpc/kernel/vio.c 2010-09-13 08:10:05.000000000 -0400 2482+++ linux-2.6.32.21/arch/powerpc/kernel/vio.c 2010-09-04 15:54:51.000000000 -0400
2594@@ -601,11 +601,12 @@ static void vio_dma_iommu_unmap_sg(struc 2483@@ -601,11 +601,12 @@ static void vio_dma_iommu_unmap_sg(struc
2595 vio_cmo_dealloc(viodev, alloc_size); 2484 vio_cmo_dealloc(viodev, alloc_size);
2596 } 2485 }
@@ -2614,8 +2503,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/kernel/vio.c linux-2.6.32.21/arch/powerp
2614 } 2503 }
2615 2504
2616diff -urNp linux-2.6.32.21/arch/powerpc/lib/usercopy_64.c linux-2.6.32.21/arch/powerpc/lib/usercopy_64.c 2505diff -urNp linux-2.6.32.21/arch/powerpc/lib/usercopy_64.c linux-2.6.32.21/arch/powerpc/lib/usercopy_64.c
2617--- linux-2.6.32.21/arch/powerpc/lib/usercopy_64.c 2010-08-26 19:42:20.000000000 -0400 2506--- linux-2.6.32.21/arch/powerpc/lib/usercopy_64.c 2010-08-13 16:24:37.000000000 -0400
2618+++ linux-2.6.32.21/arch/powerpc/lib/usercopy_64.c 2010-09-13 08:10:05.000000000 -0400 2507+++ linux-2.6.32.21/arch/powerpc/lib/usercopy_64.c 2010-09-04 15:54:51.000000000 -0400
2619@@ -9,22 +9,6 @@ 2508@@ -9,22 +9,6 @@
2620 #include <linux/module.h> 2509 #include <linux/module.h>
2621 #include <asm/uaccess.h> 2510 #include <asm/uaccess.h>
@@ -2648,8 +2537,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/lib/usercopy_64.c linux-2.6.32.21/arch/p
2648 EXPORT_SYMBOL(copy_in_user); 2537 EXPORT_SYMBOL(copy_in_user);
2649 2538
2650diff -urNp linux-2.6.32.21/arch/powerpc/mm/fault.c linux-2.6.32.21/arch/powerpc/mm/fault.c 2539diff -urNp linux-2.6.32.21/arch/powerpc/mm/fault.c linux-2.6.32.21/arch/powerpc/mm/fault.c
2651--- linux-2.6.32.21/arch/powerpc/mm/fault.c 2010-08-26 19:42:20.000000000 -0400 2540--- linux-2.6.32.21/arch/powerpc/mm/fault.c 2010-08-13 16:24:37.000000000 -0400
2652+++ linux-2.6.32.21/arch/powerpc/mm/fault.c 2010-09-13 08:10:05.000000000 -0400 2541+++ linux-2.6.32.21/arch/powerpc/mm/fault.c 2010-09-04 15:54:51.000000000 -0400
2653@@ -30,6 +30,10 @@ 2542@@ -30,6 +30,10 @@
2654 #include <linux/kprobes.h> 2543 #include <linux/kprobes.h>
2655 #include <linux/kdebug.h> 2544 #include <linux/kdebug.h>
@@ -2755,8 +2644,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/mm/fault.c linux-2.6.32.21/arch/powerpc/
2755 return 0; 2644 return 0;
2756 } 2645 }
2757diff -urNp linux-2.6.32.21/arch/powerpc/mm/mmap_64.c linux-2.6.32.21/arch/powerpc/mm/mmap_64.c 2646diff -urNp linux-2.6.32.21/arch/powerpc/mm/mmap_64.c linux-2.6.32.21/arch/powerpc/mm/mmap_64.c
2758--- linux-2.6.32.21/arch/powerpc/mm/mmap_64.c 2010-08-26 19:42:20.000000000 -0400 2647--- linux-2.6.32.21/arch/powerpc/mm/mmap_64.c 2010-08-13 16:24:37.000000000 -0400
2759+++ linux-2.6.32.21/arch/powerpc/mm/mmap_64.c 2010-09-13 08:10:05.000000000 -0400 2648+++ linux-2.6.32.21/arch/powerpc/mm/mmap_64.c 2010-09-04 15:54:51.000000000 -0400
2760@@ -99,10 +99,22 @@ void arch_pick_mmap_layout(struct mm_str 2649@@ -99,10 +99,22 @@ void arch_pick_mmap_layout(struct mm_str
2761 */ 2650 */
2762 if (mmap_is_legacy()) { 2651 if (mmap_is_legacy()) {
@@ -2781,8 +2670,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/mm/mmap_64.c linux-2.6.32.21/arch/powerp
2781 mm->unmap_area = arch_unmap_area_topdown; 2670 mm->unmap_area = arch_unmap_area_topdown;
2782 } 2671 }
2783diff -urNp linux-2.6.32.21/arch/powerpc/mm/slice.c linux-2.6.32.21/arch/powerpc/mm/slice.c 2672diff -urNp linux-2.6.32.21/arch/powerpc/mm/slice.c linux-2.6.32.21/arch/powerpc/mm/slice.c
2784--- linux-2.6.32.21/arch/powerpc/mm/slice.c 2010-08-26 19:42:20.000000000 -0400 2673--- linux-2.6.32.21/arch/powerpc/mm/slice.c 2010-08-13 16:24:37.000000000 -0400
2785+++ linux-2.6.32.21/arch/powerpc/mm/slice.c 2010-09-13 08:10:05.000000000 -0400 2674+++ linux-2.6.32.21/arch/powerpc/mm/slice.c 2010-09-04 15:54:51.000000000 -0400
2786@@ -426,6 +426,11 @@ unsigned long slice_get_unmapped_area(un 2675@@ -426,6 +426,11 @@ unsigned long slice_get_unmapped_area(un
2787 if (fixed && addr > (mm->task_size - len)) 2676 if (fixed && addr > (mm->task_size - len))
2788 return -EINVAL; 2677 return -EINVAL;
@@ -2796,8 +2685,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/mm/slice.c linux-2.6.32.21/arch/powerpc/
2796 if (!fixed && addr) { 2685 if (!fixed && addr) {
2797 addr = _ALIGN_UP(addr, 1ul << pshift); 2686 addr = _ALIGN_UP(addr, 1ul << pshift);
2798diff -urNp linux-2.6.32.21/arch/powerpc/platforms/52xx/lite5200_pm.c linux-2.6.32.21/arch/powerpc/platforms/52xx/lite5200_pm.c 2687diff -urNp linux-2.6.32.21/arch/powerpc/platforms/52xx/lite5200_pm.c linux-2.6.32.21/arch/powerpc/platforms/52xx/lite5200_pm.c
2799--- linux-2.6.32.21/arch/powerpc/platforms/52xx/lite5200_pm.c 2010-08-26 19:42:20.000000000 -0400 2688--- linux-2.6.32.21/arch/powerpc/platforms/52xx/lite5200_pm.c 2010-08-13 16:24:37.000000000 -0400
2800+++ linux-2.6.32.21/arch/powerpc/platforms/52xx/lite5200_pm.c 2010-09-13 08:10:05.000000000 -0400 2689+++ linux-2.6.32.21/arch/powerpc/platforms/52xx/lite5200_pm.c 2010-09-04 15:54:51.000000000 -0400
2801@@ -235,7 +235,7 @@ static void lite5200_pm_end(void) 2690@@ -235,7 +235,7 @@ static void lite5200_pm_end(void)
2802 lite5200_pm_target_state = PM_SUSPEND_ON; 2691 lite5200_pm_target_state = PM_SUSPEND_ON;
2803 } 2692 }
@@ -2808,8 +2697,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/platforms/52xx/lite5200_pm.c linux-2.6.3
2808 .begin = lite5200_pm_begin, 2697 .begin = lite5200_pm_begin,
2809 .prepare = lite5200_pm_prepare, 2698 .prepare = lite5200_pm_prepare,
2810diff -urNp linux-2.6.32.21/arch/powerpc/platforms/52xx/mpc52xx_pm.c linux-2.6.32.21/arch/powerpc/platforms/52xx/mpc52xx_pm.c 2699diff -urNp linux-2.6.32.21/arch/powerpc/platforms/52xx/mpc52xx_pm.c linux-2.6.32.21/arch/powerpc/platforms/52xx/mpc52xx_pm.c
2811--- linux-2.6.32.21/arch/powerpc/platforms/52xx/mpc52xx_pm.c 2010-08-26 19:42:20.000000000 -0400 2700--- linux-2.6.32.21/arch/powerpc/platforms/52xx/mpc52xx_pm.c 2010-08-13 16:24:37.000000000 -0400
2812+++ linux-2.6.32.21/arch/powerpc/platforms/52xx/mpc52xx_pm.c 2010-09-13 08:10:05.000000000 -0400 2701+++ linux-2.6.32.21/arch/powerpc/platforms/52xx/mpc52xx_pm.c 2010-09-04 15:54:51.000000000 -0400
2813@@ -180,7 +180,7 @@ void mpc52xx_pm_finish(void) 2702@@ -180,7 +180,7 @@ void mpc52xx_pm_finish(void)
2814 iounmap(mbar); 2703 iounmap(mbar);
2815 } 2704 }
@@ -2820,8 +2709,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/platforms/52xx/mpc52xx_pm.c linux-2.6.32
2820 .prepare = mpc52xx_pm_prepare, 2709 .prepare = mpc52xx_pm_prepare,
2821 .enter = mpc52xx_pm_enter, 2710 .enter = mpc52xx_pm_enter,
2822diff -urNp linux-2.6.32.21/arch/powerpc/platforms/83xx/suspend.c linux-2.6.32.21/arch/powerpc/platforms/83xx/suspend.c 2711diff -urNp linux-2.6.32.21/arch/powerpc/platforms/83xx/suspend.c linux-2.6.32.21/arch/powerpc/platforms/83xx/suspend.c
2823--- linux-2.6.32.21/arch/powerpc/platforms/83xx/suspend.c 2010-08-26 19:42:20.000000000 -0400 2712--- linux-2.6.32.21/arch/powerpc/platforms/83xx/suspend.c 2010-08-13 16:24:37.000000000 -0400
2824+++ linux-2.6.32.21/arch/powerpc/platforms/83xx/suspend.c 2010-09-13 08:10:05.000000000 -0400 2713+++ linux-2.6.32.21/arch/powerpc/platforms/83xx/suspend.c 2010-09-04 15:54:51.000000000 -0400
2825@@ -273,7 +273,7 @@ static int mpc83xx_is_pci_agent(void) 2714@@ -273,7 +273,7 @@ static int mpc83xx_is_pci_agent(void)
2826 return ret; 2715 return ret;
2827 } 2716 }
@@ -2832,8 +2721,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/platforms/83xx/suspend.c linux-2.6.32.21
2832 .begin = mpc83xx_suspend_begin, 2721 .begin = mpc83xx_suspend_begin,
2833 .enter = mpc83xx_suspend_enter, 2722 .enter = mpc83xx_suspend_enter,
2834diff -urNp linux-2.6.32.21/arch/powerpc/platforms/cell/iommu.c linux-2.6.32.21/arch/powerpc/platforms/cell/iommu.c 2723diff -urNp linux-2.6.32.21/arch/powerpc/platforms/cell/iommu.c linux-2.6.32.21/arch/powerpc/platforms/cell/iommu.c
2835--- linux-2.6.32.21/arch/powerpc/platforms/cell/iommu.c 2010-08-26 19:42:20.000000000 -0400 2724--- linux-2.6.32.21/arch/powerpc/platforms/cell/iommu.c 2010-08-13 16:24:37.000000000 -0400
2836+++ linux-2.6.32.21/arch/powerpc/platforms/cell/iommu.c 2010-09-13 08:10:05.000000000 -0400 2725+++ linux-2.6.32.21/arch/powerpc/platforms/cell/iommu.c 2010-09-04 15:54:51.000000000 -0400
2837@@ -642,7 +642,7 @@ static int dma_fixed_dma_supported(struc 2726@@ -642,7 +642,7 @@ static int dma_fixed_dma_supported(struc
2838 2727
2839 static int dma_set_mask_and_switch(struct device *dev, u64 dma_mask); 2728 static int dma_set_mask_and_switch(struct device *dev, u64 dma_mask);
@@ -2844,8 +2733,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/platforms/cell/iommu.c linux-2.6.32.21/a
2844 .free_coherent = dma_fixed_free_coherent, 2733 .free_coherent = dma_fixed_free_coherent,
2845 .map_sg = dma_fixed_map_sg, 2734 .map_sg = dma_fixed_map_sg,
2846diff -urNp linux-2.6.32.21/arch/powerpc/platforms/ps3/system-bus.c linux-2.6.32.21/arch/powerpc/platforms/ps3/system-bus.c 2735diff -urNp linux-2.6.32.21/arch/powerpc/platforms/ps3/system-bus.c linux-2.6.32.21/arch/powerpc/platforms/ps3/system-bus.c
2847--- linux-2.6.32.21/arch/powerpc/platforms/ps3/system-bus.c 2010-08-26 19:42:20.000000000 -0400 2736--- linux-2.6.32.21/arch/powerpc/platforms/ps3/system-bus.c 2010-08-13 16:24:37.000000000 -0400
2848+++ linux-2.6.32.21/arch/powerpc/platforms/ps3/system-bus.c 2010-09-13 08:10:05.000000000 -0400 2737+++ linux-2.6.32.21/arch/powerpc/platforms/ps3/system-bus.c 2010-09-04 15:54:51.000000000 -0400
2849@@ -694,7 +694,7 @@ static int ps3_dma_supported(struct devi 2738@@ -694,7 +694,7 @@ static int ps3_dma_supported(struct devi
2850 return mask >= DMA_BIT_MASK(32); 2739 return mask >= DMA_BIT_MASK(32);
2851 } 2740 }
@@ -2865,8 +2754,8 @@ diff -urNp linux-2.6.32.21/arch/powerpc/platforms/ps3/system-bus.c linux-2.6.32.
2865 .free_coherent = ps3_free_coherent, 2754 .free_coherent = ps3_free_coherent,
2866 .map_sg = ps3_ioc0_map_sg, 2755 .map_sg = ps3_ioc0_map_sg,
2867diff -urNp linux-2.6.32.21/arch/powerpc/platforms/pseries/Kconfig linux-2.6.32.21/arch/powerpc/platforms/pseries/Kconfig 2756diff -urNp linux-2.6.32.21/arch/powerpc/platforms/pseries/Kconfig linux-2.6.32.21/arch/powerpc/platforms/pseries/Kconfig
2868--- linux-2.6.32.21/arch/powerpc/platforms/pseries/Kconfig 2010-08-26 19:42:20.000000000 -0400 2757--- linux-2.6.32.21/arch/powerpc/platforms/pseries/Kconfig 2010-08-13 16:24:37.000000000 -0400
2869+++ linux-2.6.32.21/arch/powerpc/platforms/pseries/Kconfig 2010-09-13 08:10:05.000000000 -0400 2758+++ linux-2.6.32.21/arch/powerpc/platforms/pseries/Kconfig 2010-09-04 15:54:51.000000000 -0400
2870@@ -2,6 +2,8 @@ config PPC_PSERIES 2759@@ -2,6 +2,8 @@ config PPC_PSERIES
2871 depends on PPC64 && PPC_BOOK3S 2760 depends on PPC64 && PPC_BOOK3S
2872 bool "IBM pSeries & new (POWER5-based) iSeries" 2761 bool "IBM pSeries & new (POWER5-based) iSeries"
@@ -2876,49 +2765,21 @@ diff -urNp linux-2.6.32.21/arch/powerpc/platforms/pseries/Kconfig linux-2.6.32.2
2876 select PPC_I8259 2765 select PPC_I8259
2877 select PPC_RTAS 2766 select PPC_RTAS
2878 select RTAS_ERROR_LOGGING 2767 select RTAS_ERROR_LOGGING
2879diff -urNp linux-2.6.32.21/arch/s390/Kconfig linux-2.6.32.21/arch/s390/Kconfig 2768diff -urNp linux-2.6.32.21/arch/s390/include/asm/compat.h linux-2.6.32.21/arch/s390/include/asm/compat.h
2880--- linux-2.6.32.21/arch/s390/Kconfig 2010-08-26 19:42:20.000000000 -0400 2769--- linux-2.6.32.21/arch/s390/include/asm/compat.h 2010-08-13 16:24:37.000000000 -0400
2881+++ linux-2.6.32.21/arch/s390/Kconfig 2010-09-13 08:10:05.000000000 -0400 2770+++ linux-2.6.32.21/arch/s390/include/asm/compat.h 2010-09-15 02:02:57.000000000 -0400
2882@@ -194,28 +194,26 @@ config AUDIT_ARCH 2771@@ -180,7 +180,7 @@ static inline int is_compat_task(void)
2883
2884 config S390_SWITCH_AMODE
2885 bool "Switch kernel/user addressing modes"
2886+ default y
2887 help
2888 This option allows to switch the addressing modes of kernel and user
2889- space. The kernel parameter switch_amode=on will enable this feature,
2890- default is disabled. Enabling this (via kernel parameter) on machines
2891- earlier than IBM System z9-109 EC/BC will reduce system performance.
2892+ space. Enabling this on machines earlier than IBM System z9-109 EC/BC
2893+ will reduce system performance.
2894
2895 Note that this option will also be selected by selecting the execute
2896- protection option below. Enabling the execute protection via the
2897- noexec kernel parameter will also switch the addressing modes,
2898- independent of the switch_amode kernel parameter.
2899+ protection option below. Enabling the execute protection will also
2900+ switch the addressing modes, independent of this option.
2901
2902 2772
2903 config S390_EXEC_PROTECT 2773 #endif
2904 bool "Data execute protection"
2905+ default y
2906 select S390_SWITCH_AMODE
2907 help
2908 This option allows to enable a buffer overflow protection for user
2909 space programs and it also selects the addressing mode option above.
2910- The kernel parameter noexec=on will enable this feature and also
2911- switch the addressing modes, default is disabled. Enabling this (via
2912- kernel parameter) on machines earlier than IBM System z9-109 EC/BC
2913- will reduce system performance.
2914+ Enabling this on machines earlier than IBM System z9-109 EC/BC will
2915+ reduce system performance.
2916 2774
2917 comment "Code generation options" 2775-static inline void __user *compat_alloc_user_space(long len)
2776+static inline void __user *arch_compat_alloc_user_space(long len)
2777 {
2778 unsigned long stack;
2918 2779
2919diff -urNp linux-2.6.32.21/arch/s390/include/asm/elf.h linux-2.6.32.21/arch/s390/include/asm/elf.h 2780diff -urNp linux-2.6.32.21/arch/s390/include/asm/elf.h linux-2.6.32.21/arch/s390/include/asm/elf.h
2920--- linux-2.6.32.21/arch/s390/include/asm/elf.h 2010-08-26 19:42:20.000000000 -0400 2781--- linux-2.6.32.21/arch/s390/include/asm/elf.h 2010-08-13 16:24:37.000000000 -0400
2921+++ linux-2.6.32.21/arch/s390/include/asm/elf.h 2010-09-13 08:10:05.000000000 -0400 2782+++ linux-2.6.32.21/arch/s390/include/asm/elf.h 2010-09-04 15:54:51.000000000 -0400
2922@@ -164,6 +164,13 @@ extern unsigned int vdso_enabled; 2783@@ -164,6 +164,13 @@ extern unsigned int vdso_enabled;
2923 that it will "exec", and that there is sufficient room for the brk. */ 2784 that it will "exec", and that there is sufficient room for the brk. */
2924 #define ELF_ET_DYN_BASE (STACK_TOP / 3 * 2) 2785 #define ELF_ET_DYN_BASE (STACK_TOP / 3 * 2)
@@ -2934,8 +2795,8 @@ diff -urNp linux-2.6.32.21/arch/s390/include/asm/elf.h linux-2.6.32.21/arch/s390
2934 instruction set this CPU supports. */ 2795 instruction set this CPU supports. */
2935 2796
2936diff -urNp linux-2.6.32.21/arch/s390/include/asm/setup.h linux-2.6.32.21/arch/s390/include/asm/setup.h 2797diff -urNp linux-2.6.32.21/arch/s390/include/asm/setup.h linux-2.6.32.21/arch/s390/include/asm/setup.h
2937--- linux-2.6.32.21/arch/s390/include/asm/setup.h 2010-08-26 19:42:20.000000000 -0400 2798--- linux-2.6.32.21/arch/s390/include/asm/setup.h 2010-08-13 16:24:37.000000000 -0400
2938+++ linux-2.6.32.21/arch/s390/include/asm/setup.h 2010-09-13 08:10:05.000000000 -0400 2799+++ linux-2.6.32.21/arch/s390/include/asm/setup.h 2010-09-04 15:54:51.000000000 -0400
2939@@ -50,13 +50,13 @@ extern unsigned long memory_end; 2800@@ -50,13 +50,13 @@ extern unsigned long memory_end;
2940 void detect_memory_layout(struct mem_chunk chunk[]); 2801 void detect_memory_layout(struct mem_chunk chunk[]);
2941 2802
@@ -2953,8 +2814,8 @@ diff -urNp linux-2.6.32.21/arch/s390/include/asm/setup.h linux-2.6.32.21/arch/s3
2953 #define s390_noexec (0) 2814 #define s390_noexec (0)
2954 #endif 2815 #endif
2955diff -urNp linux-2.6.32.21/arch/s390/include/asm/uaccess.h linux-2.6.32.21/arch/s390/include/asm/uaccess.h 2816diff -urNp linux-2.6.32.21/arch/s390/include/asm/uaccess.h linux-2.6.32.21/arch/s390/include/asm/uaccess.h
2956--- linux-2.6.32.21/arch/s390/include/asm/uaccess.h 2010-08-26 19:42:20.000000000 -0400 2817--- linux-2.6.32.21/arch/s390/include/asm/uaccess.h 2010-08-13 16:24:37.000000000 -0400
2957+++ linux-2.6.32.21/arch/s390/include/asm/uaccess.h 2010-09-13 08:10:05.000000000 -0400 2818+++ linux-2.6.32.21/arch/s390/include/asm/uaccess.h 2010-09-04 15:54:51.000000000 -0400
2958@@ -232,6 +232,10 @@ static inline unsigned long __must_check 2819@@ -232,6 +232,10 @@ static inline unsigned long __must_check
2959 copy_to_user(void __user *to, const void *from, unsigned long n) 2820 copy_to_user(void __user *to, const void *from, unsigned long n)
2960 { 2821 {
@@ -2987,9 +2848,49 @@ diff -urNp linux-2.6.32.21/arch/s390/include/asm/uaccess.h linux-2.6.32.21/arch/
2987 if (access_ok(VERIFY_READ, from, n)) 2848 if (access_ok(VERIFY_READ, from, n))
2988 n = __copy_from_user(to, from, n); 2849 n = __copy_from_user(to, from, n);
2989 else 2850 else
2851diff -urNp linux-2.6.32.21/arch/s390/Kconfig linux-2.6.32.21/arch/s390/Kconfig
2852--- linux-2.6.32.21/arch/s390/Kconfig 2010-08-13 16:24:37.000000000 -0400
2853+++ linux-2.6.32.21/arch/s390/Kconfig 2010-09-04 15:54:51.000000000 -0400
2854@@ -194,28 +194,26 @@ config AUDIT_ARCH
2855
2856 config S390_SWITCH_AMODE
2857 bool "Switch kernel/user addressing modes"
2858+ default y
2859 help
2860 This option allows to switch the addressing modes of kernel and user
2861- space. The kernel parameter switch_amode=on will enable this feature,
2862- default is disabled. Enabling this (via kernel parameter) on machines
2863- earlier than IBM System z9-109 EC/BC will reduce system performance.
2864+ space. Enabling this on machines earlier than IBM System z9-109 EC/BC
2865+ will reduce system performance.
2866
2867 Note that this option will also be selected by selecting the execute
2868- protection option below. Enabling the execute protection via the
2869- noexec kernel parameter will also switch the addressing modes,
2870- independent of the switch_amode kernel parameter.
2871+ protection option below. Enabling the execute protection will also
2872+ switch the addressing modes, independent of this option.
2873
2874
2875 config S390_EXEC_PROTECT
2876 bool "Data execute protection"
2877+ default y
2878 select S390_SWITCH_AMODE
2879 help
2880 This option allows to enable a buffer overflow protection for user
2881 space programs and it also selects the addressing mode option above.
2882- The kernel parameter noexec=on will enable this feature and also
2883- switch the addressing modes, default is disabled. Enabling this (via
2884- kernel parameter) on machines earlier than IBM System z9-109 EC/BC
2885- will reduce system performance.
2886+ Enabling this on machines earlier than IBM System z9-109 EC/BC will
2887+ reduce system performance.
2888
2889 comment "Code generation options"
2890
2990diff -urNp linux-2.6.32.21/arch/s390/kernel/module.c linux-2.6.32.21/arch/s390/kernel/module.c 2891diff -urNp linux-2.6.32.21/arch/s390/kernel/module.c linux-2.6.32.21/arch/s390/kernel/module.c
2991--- linux-2.6.32.21/arch/s390/kernel/module.c 2010-08-26 19:42:20.000000000 -0400 2892--- linux-2.6.32.21/arch/s390/kernel/module.c 2010-08-13 16:24:37.000000000 -0400
2992+++ linux-2.6.32.21/arch/s390/kernel/module.c 2010-09-13 08:10:05.000000000 -0400 2893+++ linux-2.6.32.21/arch/s390/kernel/module.c 2010-09-04 15:54:51.000000000 -0400
2993@@ -166,11 +166,11 @@ module_frob_arch_sections(Elf_Ehdr *hdr, 2894@@ -166,11 +166,11 @@ module_frob_arch_sections(Elf_Ehdr *hdr,
2994 2895
2995 /* Increase core size by size of got & plt and set start 2896 /* Increase core size by size of got & plt and set start
@@ -3062,8 +2963,8 @@ diff -urNp linux-2.6.32.21/arch/s390/kernel/module.c linux-2.6.32.21/arch/s390/k
3062 if (r_type == R_390_GOTPC) 2963 if (r_type == R_390_GOTPC)
3063 *(unsigned int *) loc = val; 2964 *(unsigned int *) loc = val;
3064diff -urNp linux-2.6.32.21/arch/s390/kernel/setup.c linux-2.6.32.21/arch/s390/kernel/setup.c 2965diff -urNp linux-2.6.32.21/arch/s390/kernel/setup.c linux-2.6.32.21/arch/s390/kernel/setup.c
3065--- linux-2.6.32.21/arch/s390/kernel/setup.c 2010-08-26 19:42:20.000000000 -0400 2966--- linux-2.6.32.21/arch/s390/kernel/setup.c 2010-08-13 16:24:37.000000000 -0400
3066+++ linux-2.6.32.21/arch/s390/kernel/setup.c 2010-09-13 08:10:05.000000000 -0400 2967+++ linux-2.6.32.21/arch/s390/kernel/setup.c 2010-09-04 15:54:51.000000000 -0400
3067@@ -306,9 +306,6 @@ static int __init early_parse_mem(char * 2968@@ -306,9 +306,6 @@ static int __init early_parse_mem(char *
3068 early_param("mem", early_parse_mem); 2969 early_param("mem", early_parse_mem);
3069 2970
@@ -3118,8 +3019,8 @@ diff -urNp linux-2.6.32.21/arch/s390/kernel/setup.c linux-2.6.32.21/arch/s390/ke
3118 { 3019 {
3119 if (s390_noexec) { 3020 if (s390_noexec) {
3120diff -urNp linux-2.6.32.21/arch/s390/mm/mmap.c linux-2.6.32.21/arch/s390/mm/mmap.c 3021diff -urNp linux-2.6.32.21/arch/s390/mm/mmap.c linux-2.6.32.21/arch/s390/mm/mmap.c
3121--- linux-2.6.32.21/arch/s390/mm/mmap.c 2010-08-26 19:42:20.000000000 -0400 3022--- linux-2.6.32.21/arch/s390/mm/mmap.c 2010-08-13 16:24:37.000000000 -0400
3122+++ linux-2.6.32.21/arch/s390/mm/mmap.c 2010-09-13 08:10:05.000000000 -0400 3023+++ linux-2.6.32.21/arch/s390/mm/mmap.c 2010-09-04 15:54:51.000000000 -0400
3123@@ -78,10 +78,22 @@ void arch_pick_mmap_layout(struct mm_str 3024@@ -78,10 +78,22 @@ void arch_pick_mmap_layout(struct mm_str
3124 */ 3025 */
3125 if (mmap_is_legacy()) { 3026 if (mmap_is_legacy()) {
@@ -3167,8 +3068,8 @@ diff -urNp linux-2.6.32.21/arch/s390/mm/mmap.c linux-2.6.32.21/arch/s390/mm/mmap
3167 mm->unmap_area = arch_unmap_area_topdown; 3068 mm->unmap_area = arch_unmap_area_topdown;
3168 } 3069 }
3169diff -urNp linux-2.6.32.21/arch/sh/boards/mach-hp6xx/pm.c linux-2.6.32.21/arch/sh/boards/mach-hp6xx/pm.c 3070diff -urNp linux-2.6.32.21/arch/sh/boards/mach-hp6xx/pm.c linux-2.6.32.21/arch/sh/boards/mach-hp6xx/pm.c
3170--- linux-2.6.32.21/arch/sh/boards/mach-hp6xx/pm.c 2010-08-26 19:42:20.000000000 -0400 3071--- linux-2.6.32.21/arch/sh/boards/mach-hp6xx/pm.c 2010-08-13 16:24:37.000000000 -0400
3171+++ linux-2.6.32.21/arch/sh/boards/mach-hp6xx/pm.c 2010-09-13 08:10:05.000000000 -0400 3072+++ linux-2.6.32.21/arch/sh/boards/mach-hp6xx/pm.c 2010-09-04 15:54:51.000000000 -0400
3172@@ -143,7 +143,7 @@ static int hp6x0_pm_enter(suspend_state_ 3073@@ -143,7 +143,7 @@ static int hp6x0_pm_enter(suspend_state_
3173 return 0; 3074 return 0;
3174 } 3075 }
@@ -3179,8 +3080,8 @@ diff -urNp linux-2.6.32.21/arch/sh/boards/mach-hp6xx/pm.c linux-2.6.32.21/arch/s
3179 .valid = suspend_valid_only_mem, 3080 .valid = suspend_valid_only_mem,
3180 }; 3081 };
3181diff -urNp linux-2.6.32.21/arch/sh/kernel/cpu/sh4/sq.c linux-2.6.32.21/arch/sh/kernel/cpu/sh4/sq.c 3082diff -urNp linux-2.6.32.21/arch/sh/kernel/cpu/sh4/sq.c linux-2.6.32.21/arch/sh/kernel/cpu/sh4/sq.c
3182--- linux-2.6.32.21/arch/sh/kernel/cpu/sh4/sq.c 2010-08-26 19:42:20.000000000 -0400 3083--- linux-2.6.32.21/arch/sh/kernel/cpu/sh4/sq.c 2010-08-13 16:24:37.000000000 -0400
3183+++ linux-2.6.32.21/arch/sh/kernel/cpu/sh4/sq.c 2010-09-13 08:10:05.000000000 -0400 3084+++ linux-2.6.32.21/arch/sh/kernel/cpu/sh4/sq.c 2010-09-04 15:54:51.000000000 -0400
3184@@ -327,7 +327,7 @@ static struct attribute *sq_sysfs_attrs[ 3085@@ -327,7 +327,7 @@ static struct attribute *sq_sysfs_attrs[
3185 NULL, 3086 NULL,
3186 }; 3087 };
@@ -3191,8 +3092,8 @@ diff -urNp linux-2.6.32.21/arch/sh/kernel/cpu/sh4/sq.c linux-2.6.32.21/arch/sh/k
3191 .store = sq_sysfs_store, 3092 .store = sq_sysfs_store,
3192 }; 3093 };
3193diff -urNp linux-2.6.32.21/arch/sh/kernel/cpu/shmobile/pm.c linux-2.6.32.21/arch/sh/kernel/cpu/shmobile/pm.c 3094diff -urNp linux-2.6.32.21/arch/sh/kernel/cpu/shmobile/pm.c linux-2.6.32.21/arch/sh/kernel/cpu/shmobile/pm.c
3194--- linux-2.6.32.21/arch/sh/kernel/cpu/shmobile/pm.c 2010-08-26 19:42:20.000000000 -0400 3095--- linux-2.6.32.21/arch/sh/kernel/cpu/shmobile/pm.c 2010-08-13 16:24:37.000000000 -0400
3195+++ linux-2.6.32.21/arch/sh/kernel/cpu/shmobile/pm.c 2010-09-13 08:10:05.000000000 -0400 3096+++ linux-2.6.32.21/arch/sh/kernel/cpu/shmobile/pm.c 2010-09-04 15:54:51.000000000 -0400
3196@@ -58,7 +58,7 @@ static int sh_pm_enter(suspend_state_t s 3097@@ -58,7 +58,7 @@ static int sh_pm_enter(suspend_state_t s
3197 return 0; 3098 return 0;
3198 } 3099 }
@@ -3203,8 +3104,8 @@ diff -urNp linux-2.6.32.21/arch/sh/kernel/cpu/shmobile/pm.c linux-2.6.32.21/arch
3203 .valid = suspend_valid_only_mem, 3104 .valid = suspend_valid_only_mem,
3204 }; 3105 };
3205diff -urNp linux-2.6.32.21/arch/sh/kernel/kgdb.c linux-2.6.32.21/arch/sh/kernel/kgdb.c 3106diff -urNp linux-2.6.32.21/arch/sh/kernel/kgdb.c linux-2.6.32.21/arch/sh/kernel/kgdb.c
3206--- linux-2.6.32.21/arch/sh/kernel/kgdb.c 2010-08-26 19:42:20.000000000 -0400 3107--- linux-2.6.32.21/arch/sh/kernel/kgdb.c 2010-08-13 16:24:37.000000000 -0400
3207+++ linux-2.6.32.21/arch/sh/kernel/kgdb.c 2010-09-13 08:10:05.000000000 -0400 3108+++ linux-2.6.32.21/arch/sh/kernel/kgdb.c 2010-09-04 15:54:51.000000000 -0400
3208@@ -271,7 +271,7 @@ void kgdb_arch_exit(void) 3109@@ -271,7 +271,7 @@ void kgdb_arch_exit(void)
3209 { 3110 {
3210 } 3111 }
@@ -3214,21 +3115,9 @@ diff -urNp linux-2.6.32.21/arch/sh/kernel/kgdb.c linux-2.6.32.21/arch/sh/kernel/
3214 /* Breakpoint instruction: trapa #0x3c */ 3115 /* Breakpoint instruction: trapa #0x3c */
3215 #ifdef CONFIG_CPU_LITTLE_ENDIAN 3116 #ifdef CONFIG_CPU_LITTLE_ENDIAN
3216 .gdb_bpt_instr = { 0x3c, 0xc3 }, 3117 .gdb_bpt_instr = { 0x3c, 0xc3 },
3217diff -urNp linux-2.6.32.21/arch/sparc/Makefile linux-2.6.32.21/arch/sparc/Makefile
3218--- linux-2.6.32.21/arch/sparc/Makefile 2010-08-26 19:42:20.000000000 -0400
3219+++ linux-2.6.32.21/arch/sparc/Makefile 2010-09-13 08:10:05.000000000 -0400
3220@@ -75,7 +75,7 @@ drivers-$(CONFIG_OPROFILE) += arch/sparc
3221 # Export what is needed by arch/sparc/boot/Makefile
3222 export VMLINUX_INIT VMLINUX_MAIN
3223 VMLINUX_INIT := $(head-y) $(init-y)
3224-VMLINUX_MAIN := $(core-y) kernel/ mm/ fs/ ipc/ security/ crypto/ block/
3225+VMLINUX_MAIN := $(core-y) kernel/ mm/ fs/ ipc/ security/ crypto/ block/ grsecurity/
3226 VMLINUX_MAIN += $(patsubst %/, %/lib.a, $(libs-y)) $(libs-y)
3227 VMLINUX_MAIN += $(drivers-y) $(net-y)
3228
3229diff -urNp linux-2.6.32.21/arch/sparc/include/asm/atomic_64.h linux-2.6.32.21/arch/sparc/include/asm/atomic_64.h 3118diff -urNp linux-2.6.32.21/arch/sparc/include/asm/atomic_64.h linux-2.6.32.21/arch/sparc/include/asm/atomic_64.h
3230--- linux-2.6.32.21/arch/sparc/include/asm/atomic_64.h 2010-08-26 19:42:20.000000000 -0400 3119--- linux-2.6.32.21/arch/sparc/include/asm/atomic_64.h 2010-08-29 21:08:20.000000000 -0400
3231+++ linux-2.6.32.21/arch/sparc/include/asm/atomic_64.h 2010-09-13 08:10:05.000000000 -0400 3120+++ linux-2.6.32.21/arch/sparc/include/asm/atomic_64.h 2010-09-15 02:34:10.000000000 -0400
3232@@ -14,18 +14,40 @@ 3121@@ -14,18 +14,40 @@
3233 #define ATOMIC64_INIT(i) { (i) } 3122 #define ATOMIC64_INIT(i) { (i) }
3234 3123
@@ -3270,17 +3159,23 @@ diff -urNp linux-2.6.32.21/arch/sparc/include/asm/atomic_64.h linux-2.6.32.21/ar
3270 extern int atomic_sub_ret(int, atomic_t *); 3159 extern int atomic_sub_ret(int, atomic_t *);
3271 extern long atomic64_sub_ret(long, atomic64_t *); 3160 extern long atomic64_sub_ret(long, atomic64_t *);
3272 3161
3273@@ -33,7 +55,9 @@ extern long atomic64_sub_ret(long, atomi 3162@@ -33,7 +55,15 @@ extern long atomic64_sub_ret(long, atomi
3274 #define atomic64_dec_return(v) atomic64_sub_ret(1, v) 3163 #define atomic64_dec_return(v) atomic64_sub_ret(1, v)
3275 3164
3276 #define atomic_inc_return(v) atomic_add_ret(1, v) 3165 #define atomic_inc_return(v) atomic_add_ret(1, v)
3277+#define atomic_inc_return_unchecked(v) atomic_add_ret_unchecked(1, v) 3166+static inline int atomic_inc_return_unchecked(atomic_unchecked_t *v)
3167+{
3168+ return atomic_add_ret_unchecked(1, v);
3169+}
3278 #define atomic64_inc_return(v) atomic64_add_ret(1, v) 3170 #define atomic64_inc_return(v) atomic64_add_ret(1, v)
3279+#define atomic64_inc_return_unchecked(v) atomic64_add_ret_unchecked(1, v) 3171+static inline long atomic64_inc_return_unchecked(atomic64_unchecked_t *v)
3172+{
3173+ return atomic64_add_ret_unchecked(1, v);
3174+}
3280 3175
3281 #define atomic_sub_return(i, v) atomic_sub_ret(i, v) 3176 #define atomic_sub_return(i, v) atomic_sub_ret(i, v)
3282 #define atomic64_sub_return(i, v) atomic64_sub_ret(i, v) 3177 #define atomic64_sub_return(i, v) atomic64_sub_ret(i, v)
3283@@ -59,10 +83,26 @@ extern long atomic64_sub_ret(long, atomi 3178@@ -59,10 +89,26 @@ extern long atomic64_sub_ret(long, atomi
3284 #define atomic64_dec_and_test(v) (atomic64_sub_ret(1, v) == 0) 3179 #define atomic64_dec_and_test(v) (atomic64_sub_ret(1, v) == 0)
3285 3180
3286 #define atomic_inc(v) atomic_add(1, v) 3181 #define atomic_inc(v) atomic_add(1, v)
@@ -3307,7 +3202,7 @@ diff -urNp linux-2.6.32.21/arch/sparc/include/asm/atomic_64.h linux-2.6.32.21/ar
3307 3202
3308 #define atomic_add_negative(i, v) (atomic_add_ret(i, v) < 0) 3203 #define atomic_add_negative(i, v) (atomic_add_ret(i, v) < 0)
3309 #define atomic64_add_negative(i, v) (atomic64_add_ret(i, v) < 0) 3204 #define atomic64_add_negative(i, v) (atomic64_add_ret(i, v) < 0)
3310@@ -72,17 +112,28 @@ extern long atomic64_sub_ret(long, atomi 3205@@ -72,17 +118,28 @@ extern long atomic64_sub_ret(long, atomi
3311 3206
3312 static inline int atomic_add_unless(atomic_t *v, int a, int u) 3207 static inline int atomic_add_unless(atomic_t *v, int a, int u)
3313 { 3208 {
@@ -3340,7 +3235,7 @@ diff -urNp linux-2.6.32.21/arch/sparc/include/asm/atomic_64.h linux-2.6.32.21/ar
3340 } 3235 }
3341 3236
3342 #define atomic_inc_not_zero(v) atomic_add_unless((v), 1, 0) 3237 #define atomic_inc_not_zero(v) atomic_add_unless((v), 1, 0)
3343@@ -93,17 +144,28 @@ static inline int atomic_add_unless(atom 3238@@ -93,17 +150,28 @@ static inline int atomic_add_unless(atom
3344 3239
3345 static inline long atomic64_add_unless(atomic64_t *v, long a, long u) 3240 static inline long atomic64_add_unless(atomic64_t *v, long a, long u)
3346 { 3241 {
@@ -3373,9 +3268,21 @@ diff -urNp linux-2.6.32.21/arch/sparc/include/asm/atomic_64.h linux-2.6.32.21/ar
3373 } 3268 }
3374 3269
3375 #define atomic64_inc_not_zero(v) atomic64_add_unless((v), 1, 0) 3270 #define atomic64_inc_not_zero(v) atomic64_add_unless((v), 1, 0)
3271diff -urNp linux-2.6.32.21/arch/sparc/include/asm/compat.h linux-2.6.32.21/arch/sparc/include/asm/compat.h
3272--- linux-2.6.32.21/arch/sparc/include/asm/compat.h 2010-08-13 16:24:37.000000000 -0400
3273+++ linux-2.6.32.21/arch/sparc/include/asm/compat.h 2010-09-15 02:02:57.000000000 -0400
3274@@ -166,7 +166,7 @@ static inline compat_uptr_t ptr_to_compa
3275 return (u32)(unsigned long)uptr;
3276 }
3277
3278-static inline void __user *compat_alloc_user_space(long len)
3279+static inline void __user *arch_compat_alloc_user_space(long len)
3280 {
3281 struct pt_regs *regs = current_thread_info()->kregs;
3282 unsigned long usp = regs->u_regs[UREG_I6];
3376diff -urNp linux-2.6.32.21/arch/sparc/include/asm/dma-mapping.h linux-2.6.32.21/arch/sparc/include/asm/dma-mapping.h 3283diff -urNp linux-2.6.32.21/arch/sparc/include/asm/dma-mapping.h linux-2.6.32.21/arch/sparc/include/asm/dma-mapping.h
3377--- linux-2.6.32.21/arch/sparc/include/asm/dma-mapping.h 2010-08-26 19:42:20.000000000 -0400 3284--- linux-2.6.32.21/arch/sparc/include/asm/dma-mapping.h 2010-08-13 16:24:37.000000000 -0400
3378+++ linux-2.6.32.21/arch/sparc/include/asm/dma-mapping.h 2010-09-13 08:10:05.000000000 -0400 3285+++ linux-2.6.32.21/arch/sparc/include/asm/dma-mapping.h 2010-09-04 15:54:51.000000000 -0400
3379@@ -14,10 +14,10 @@ extern int dma_set_mask(struct device *d 3286@@ -14,10 +14,10 @@ extern int dma_set_mask(struct device *d
3380 #define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h) 3287 #define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h)
3381 #define dma_is_consistent(d, h) (1) 3288 #define dma_is_consistent(d, h) (1)
@@ -3408,8 +3315,8 @@ diff -urNp linux-2.6.32.21/arch/sparc/include/asm/dma-mapping.h linux-2.6.32.21/
3408 debug_dma_free_coherent(dev, size, cpu_addr, dma_handle); 3315 debug_dma_free_coherent(dev, size, cpu_addr, dma_handle);
3409 ops->free_coherent(dev, size, cpu_addr, dma_handle); 3316 ops->free_coherent(dev, size, cpu_addr, dma_handle);
3410diff -urNp linux-2.6.32.21/arch/sparc/include/asm/elf_32.h linux-2.6.32.21/arch/sparc/include/asm/elf_32.h 3317diff -urNp linux-2.6.32.21/arch/sparc/include/asm/elf_32.h linux-2.6.32.21/arch/sparc/include/asm/elf_32.h
3411--- linux-2.6.32.21/arch/sparc/include/asm/elf_32.h 2010-08-26 19:42:20.000000000 -0400 3318--- linux-2.6.32.21/arch/sparc/include/asm/elf_32.h 2010-08-13 16:24:37.000000000 -0400
3412+++ linux-2.6.32.21/arch/sparc/include/asm/elf_32.h 2010-09-13 08:10:05.000000000 -0400 3319+++ linux-2.6.32.21/arch/sparc/include/asm/elf_32.h 2010-09-04 15:54:51.000000000 -0400
3413@@ -116,6 +116,13 @@ typedef struct { 3320@@ -116,6 +116,13 @@ typedef struct {
3414 3321
3415 #define ELF_ET_DYN_BASE (TASK_UNMAPPED_BASE) 3322 #define ELF_ET_DYN_BASE (TASK_UNMAPPED_BASE)
@@ -3425,8 +3332,8 @@ diff -urNp linux-2.6.32.21/arch/sparc/include/asm/elf_32.h linux-2.6.32.21/arch/
3425 instruction set this cpu supports. This can NOT be done in userspace 3332 instruction set this cpu supports. This can NOT be done in userspace
3426 on Sparc. */ 3333 on Sparc. */
3427diff -urNp linux-2.6.32.21/arch/sparc/include/asm/elf_64.h linux-2.6.32.21/arch/sparc/include/asm/elf_64.h 3334diff -urNp linux-2.6.32.21/arch/sparc/include/asm/elf_64.h linux-2.6.32.21/arch/sparc/include/asm/elf_64.h
3428--- linux-2.6.32.21/arch/sparc/include/asm/elf_64.h 2010-08-26 19:42:20.000000000 -0400 3335--- linux-2.6.32.21/arch/sparc/include/asm/elf_64.h 2010-08-13 16:24:37.000000000 -0400
3429+++ linux-2.6.32.21/arch/sparc/include/asm/elf_64.h 2010-09-13 08:10:05.000000000 -0400 3336+++ linux-2.6.32.21/arch/sparc/include/asm/elf_64.h 2010-09-04 15:54:51.000000000 -0400
3430@@ -163,6 +163,12 @@ typedef struct { 3337@@ -163,6 +163,12 @@ typedef struct {
3431 #define ELF_ET_DYN_BASE 0x0000010000000000UL 3338 #define ELF_ET_DYN_BASE 0x0000010000000000UL
3432 #define COMPAT_ELF_ET_DYN_BASE 0x0000000070000000UL 3339 #define COMPAT_ELF_ET_DYN_BASE 0x0000000070000000UL
@@ -3441,8 +3348,8 @@ diff -urNp linux-2.6.32.21/arch/sparc/include/asm/elf_64.h linux-2.6.32.21/arch/
3441 /* This yields a mask that user programs can use to figure out what 3348 /* This yields a mask that user programs can use to figure out what
3442 instruction set this cpu supports. */ 3349 instruction set this cpu supports. */
3443diff -urNp linux-2.6.32.21/arch/sparc/include/asm/pgtable_32.h linux-2.6.32.21/arch/sparc/include/asm/pgtable_32.h 3350diff -urNp linux-2.6.32.21/arch/sparc/include/asm/pgtable_32.h linux-2.6.32.21/arch/sparc/include/asm/pgtable_32.h
3444--- linux-2.6.32.21/arch/sparc/include/asm/pgtable_32.h 2010-08-26 19:42:20.000000000 -0400 3351--- linux-2.6.32.21/arch/sparc/include/asm/pgtable_32.h 2010-08-13 16:24:37.000000000 -0400
3445+++ linux-2.6.32.21/arch/sparc/include/asm/pgtable_32.h 2010-09-13 08:10:05.000000000 -0400 3352+++ linux-2.6.32.21/arch/sparc/include/asm/pgtable_32.h 2010-09-04 15:54:51.000000000 -0400
3446@@ -43,6 +43,13 @@ BTFIXUPDEF_SIMM13(user_ptrs_per_pgd) 3353@@ -43,6 +43,13 @@ BTFIXUPDEF_SIMM13(user_ptrs_per_pgd)
3447 BTFIXUPDEF_INT(page_none) 3354 BTFIXUPDEF_INT(page_none)
3448 BTFIXUPDEF_INT(page_copy) 3355 BTFIXUPDEF_INT(page_copy)
@@ -3475,8 +3382,8 @@ diff -urNp linux-2.6.32.21/arch/sparc/include/asm/pgtable_32.h linux-2.6.32.21/a
3475 3382
3476 #ifdef MODULE 3383 #ifdef MODULE
3477diff -urNp linux-2.6.32.21/arch/sparc/include/asm/pgtsrmmu.h linux-2.6.32.21/arch/sparc/include/asm/pgtsrmmu.h 3384diff -urNp linux-2.6.32.21/arch/sparc/include/asm/pgtsrmmu.h linux-2.6.32.21/arch/sparc/include/asm/pgtsrmmu.h
3478--- linux-2.6.32.21/arch/sparc/include/asm/pgtsrmmu.h 2010-08-26 19:42:20.000000000 -0400 3385--- linux-2.6.32.21/arch/sparc/include/asm/pgtsrmmu.h 2010-08-13 16:24:37.000000000 -0400
3479+++ linux-2.6.32.21/arch/sparc/include/asm/pgtsrmmu.h 2010-09-13 08:10:05.000000000 -0400 3386+++ linux-2.6.32.21/arch/sparc/include/asm/pgtsrmmu.h 2010-09-04 15:54:51.000000000 -0400
3480@@ -115,6 +115,13 @@ 3387@@ -115,6 +115,13 @@
3481 SRMMU_EXEC | SRMMU_REF) 3388 SRMMU_EXEC | SRMMU_REF)
3482 #define SRMMU_PAGE_RDONLY __pgprot(SRMMU_VALID | SRMMU_CACHE | \ 3389 #define SRMMU_PAGE_RDONLY __pgprot(SRMMU_VALID | SRMMU_CACHE | \
@@ -3492,8 +3399,8 @@ diff -urNp linux-2.6.32.21/arch/sparc/include/asm/pgtsrmmu.h linux-2.6.32.21/arc
3492 SRMMU_DIRTY | SRMMU_REF) 3399 SRMMU_DIRTY | SRMMU_REF)
3493 3400
3494diff -urNp linux-2.6.32.21/arch/sparc/include/asm/spinlock_64.h linux-2.6.32.21/arch/sparc/include/asm/spinlock_64.h 3401diff -urNp linux-2.6.32.21/arch/sparc/include/asm/spinlock_64.h linux-2.6.32.21/arch/sparc/include/asm/spinlock_64.h
3495--- linux-2.6.32.21/arch/sparc/include/asm/spinlock_64.h 2010-08-26 19:42:20.000000000 -0400 3402--- linux-2.6.32.21/arch/sparc/include/asm/spinlock_64.h 2010-08-13 16:24:37.000000000 -0400
3496+++ linux-2.6.32.21/arch/sparc/include/asm/spinlock_64.h 2010-09-13 08:10:05.000000000 -0400 3403+++ linux-2.6.32.21/arch/sparc/include/asm/spinlock_64.h 2010-09-04 15:54:51.000000000 -0400
3497@@ -99,7 +99,12 @@ static void inline arch_read_lock(raw_rw 3404@@ -99,7 +99,12 @@ static void inline arch_read_lock(raw_rw
3498 __asm__ __volatile__ ( 3405 __asm__ __volatile__ (
3499 "1: ldsw [%2], %0\n" 3406 "1: ldsw [%2], %0\n"
@@ -3545,26 +3452,9 @@ diff -urNp linux-2.6.32.21/arch/sparc/include/asm/spinlock_64.h linux-2.6.32.21/
3545 " cas [%2], %0, %1\n" 3452 " cas [%2], %0, %1\n"
3546 " cmp %0, %1\n" 3453 " cmp %0, %1\n"
3547 " bne,pn %%xcc, 1b\n" 3454 " bne,pn %%xcc, 1b\n"
3548diff -urNp linux-2.6.32.21/arch/sparc/include/asm/uaccess.h linux-2.6.32.21/arch/sparc/include/asm/uaccess.h
3549--- linux-2.6.32.21/arch/sparc/include/asm/uaccess.h 2010-08-26 19:42:20.000000000 -0400
3550+++ linux-2.6.32.21/arch/sparc/include/asm/uaccess.h 2010-09-13 08:10:05.000000000 -0400
3551@@ -1,5 +1,13 @@
3552 #ifndef ___ASM_SPARC_UACCESS_H
3553 #define ___ASM_SPARC_UACCESS_H
3554+
3555+#ifdef __KERNEL__
3556+#ifndef __ASSEMBLY__
3557+#include <linux/types.h>
3558+extern void check_object_size(const void *ptr, unsigned long n, bool to);
3559+#endif
3560+#endif
3561+
3562 #if defined(__sparc__) && defined(__arch64__)
3563 #include <asm/uaccess_64.h>
3564 #else
3565diff -urNp linux-2.6.32.21/arch/sparc/include/asm/uaccess_32.h linux-2.6.32.21/arch/sparc/include/asm/uaccess_32.h 3455diff -urNp linux-2.6.32.21/arch/sparc/include/asm/uaccess_32.h linux-2.6.32.21/arch/sparc/include/asm/uaccess_32.h
3566--- linux-2.6.32.21/arch/sparc/include/asm/uaccess_32.h 2010-08-26 19:42:20.000000000 -0400 3456--- linux-2.6.32.21/arch/sparc/include/asm/uaccess_32.h 2010-08-13 16:24:37.000000000 -0400
3567+++ linux-2.6.32.21/arch/sparc/include/asm/uaccess_32.h 2010-09-13 08:10:05.000000000 -0400 3457+++ linux-2.6.32.21/arch/sparc/include/asm/uaccess_32.h 2010-09-04 15:54:51.000000000 -0400
3568@@ -249,27 +249,46 @@ extern unsigned long __copy_user(void __ 3458@@ -249,27 +249,46 @@ extern unsigned long __copy_user(void __
3569 3459
3570 static inline unsigned long copy_to_user(void __user *to, const void *from, unsigned long n) 3460 static inline unsigned long copy_to_user(void __user *to, const void *from, unsigned long n)
@@ -3617,8 +3507,8 @@ diff -urNp linux-2.6.32.21/arch/sparc/include/asm/uaccess_32.h linux-2.6.32.21/a
3617 } 3507 }
3618 3508
3619diff -urNp linux-2.6.32.21/arch/sparc/include/asm/uaccess_64.h linux-2.6.32.21/arch/sparc/include/asm/uaccess_64.h 3509diff -urNp linux-2.6.32.21/arch/sparc/include/asm/uaccess_64.h linux-2.6.32.21/arch/sparc/include/asm/uaccess_64.h
3620--- linux-2.6.32.21/arch/sparc/include/asm/uaccess_64.h 2010-08-26 19:42:20.000000000 -0400 3510--- linux-2.6.32.21/arch/sparc/include/asm/uaccess_64.h 2010-08-13 16:24:37.000000000 -0400
3621+++ linux-2.6.32.21/arch/sparc/include/asm/uaccess_64.h 2010-09-13 08:10:05.000000000 -0400 3511+++ linux-2.6.32.21/arch/sparc/include/asm/uaccess_64.h 2010-09-04 15:54:51.000000000 -0400
3622@@ -9,6 +9,7 @@ 3512@@ -9,6 +9,7 @@
3623 #include <linux/compiler.h> 3513 #include <linux/compiler.h>
3624 #include <linux/string.h> 3514 #include <linux/string.h>
@@ -3661,21 +3551,26 @@ diff -urNp linux-2.6.32.21/arch/sparc/include/asm/uaccess_64.h linux-2.6.32.21/a
3661 if (unlikely(ret)) 3551 if (unlikely(ret))
3662 ret = copy_to_user_fixup(to, from, size); 3552 ret = copy_to_user_fixup(to, from, size);
3663 return ret; 3553 return ret;
3664diff -urNp linux-2.6.32.21/arch/sparc/kernel/Makefile linux-2.6.32.21/arch/sparc/kernel/Makefile 3554diff -urNp linux-2.6.32.21/arch/sparc/include/asm/uaccess.h linux-2.6.32.21/arch/sparc/include/asm/uaccess.h
3665--- linux-2.6.32.21/arch/sparc/kernel/Makefile 2010-08-26 19:42:20.000000000 -0400 3555--- linux-2.6.32.21/arch/sparc/include/asm/uaccess.h 2010-08-13 16:24:37.000000000 -0400
3666+++ linux-2.6.32.21/arch/sparc/kernel/Makefile 2010-09-13 08:10:05.000000000 -0400 3556+++ linux-2.6.32.21/arch/sparc/include/asm/uaccess.h 2010-09-04 15:54:51.000000000 -0400
3667@@ -3,7 +3,7 @@ 3557@@ -1,5 +1,13 @@
3668 # 3558 #ifndef ___ASM_SPARC_UACCESS_H
3669 3559 #define ___ASM_SPARC_UACCESS_H
3670 asflags-y := -ansi 3560+
3671-ccflags-y := -Werror 3561+#ifdef __KERNEL__
3672+#ccflags-y := -Werror 3562+#ifndef __ASSEMBLY__
3673 3563+#include <linux/types.h>
3674 extra-y := head_$(BITS).o 3564+extern void check_object_size(const void *ptr, unsigned long n, bool to);
3675 extra-y += init_task.o 3565+#endif
3566+#endif
3567+
3568 #if defined(__sparc__) && defined(__arch64__)
3569 #include <asm/uaccess_64.h>
3570 #else
3676diff -urNp linux-2.6.32.21/arch/sparc/kernel/iommu.c linux-2.6.32.21/arch/sparc/kernel/iommu.c 3571diff -urNp linux-2.6.32.21/arch/sparc/kernel/iommu.c linux-2.6.32.21/arch/sparc/kernel/iommu.c
3677--- linux-2.6.32.21/arch/sparc/kernel/iommu.c 2010-08-26 19:42:20.000000000 -0400 3572--- linux-2.6.32.21/arch/sparc/kernel/iommu.c 2010-08-13 16:24:37.000000000 -0400
3678+++ linux-2.6.32.21/arch/sparc/kernel/iommu.c 2010-09-13 08:10:05.000000000 -0400 3573+++ linux-2.6.32.21/arch/sparc/kernel/iommu.c 2010-09-04 15:54:51.000000000 -0400
3679@@ -826,7 +826,7 @@ static void dma_4u_sync_sg_for_cpu(struc 3574@@ -826,7 +826,7 @@ static void dma_4u_sync_sg_for_cpu(struc
3680 spin_unlock_irqrestore(&iommu->lock, flags); 3575 spin_unlock_irqrestore(&iommu->lock, flags);
3681 } 3576 }
@@ -3695,8 +3590,8 @@ diff -urNp linux-2.6.32.21/arch/sparc/kernel/iommu.c linux-2.6.32.21/arch/sparc/
3695 3590
3696 extern int pci64_dma_supported(struct pci_dev *pdev, u64 device_mask); 3591 extern int pci64_dma_supported(struct pci_dev *pdev, u64 device_mask);
3697diff -urNp linux-2.6.32.21/arch/sparc/kernel/ioport.c linux-2.6.32.21/arch/sparc/kernel/ioport.c 3592diff -urNp linux-2.6.32.21/arch/sparc/kernel/ioport.c linux-2.6.32.21/arch/sparc/kernel/ioport.c
3698--- linux-2.6.32.21/arch/sparc/kernel/ioport.c 2010-08-26 19:42:20.000000000 -0400 3593--- linux-2.6.32.21/arch/sparc/kernel/ioport.c 2010-08-13 16:24:37.000000000 -0400
3699+++ linux-2.6.32.21/arch/sparc/kernel/ioport.c 2010-09-13 08:10:05.000000000 -0400 3594+++ linux-2.6.32.21/arch/sparc/kernel/ioport.c 2010-09-04 15:54:51.000000000 -0400
3700@@ -392,7 +392,7 @@ static void sbus_sync_sg_for_device(stru 3595@@ -392,7 +392,7 @@ static void sbus_sync_sg_for_device(stru
3701 BUG(); 3596 BUG();
3702 } 3597 }
@@ -3725,8 +3620,8 @@ diff -urNp linux-2.6.32.21/arch/sparc/kernel/ioport.c linux-2.6.32.21/arch/sparc
3725 .free_coherent = pci32_free_coherent, 3620 .free_coherent = pci32_free_coherent,
3726 .map_page = pci32_map_page, 3621 .map_page = pci32_map_page,
3727diff -urNp linux-2.6.32.21/arch/sparc/kernel/kgdb_32.c linux-2.6.32.21/arch/sparc/kernel/kgdb_32.c 3622diff -urNp linux-2.6.32.21/arch/sparc/kernel/kgdb_32.c linux-2.6.32.21/arch/sparc/kernel/kgdb_32.c
3728--- linux-2.6.32.21/arch/sparc/kernel/kgdb_32.c 2010-08-26 19:42:20.000000000 -0400 3623--- linux-2.6.32.21/arch/sparc/kernel/kgdb_32.c 2010-08-13 16:24:37.000000000 -0400
3729+++ linux-2.6.32.21/arch/sparc/kernel/kgdb_32.c 2010-09-13 08:10:05.000000000 -0400 3624+++ linux-2.6.32.21/arch/sparc/kernel/kgdb_32.c 2010-09-04 15:54:51.000000000 -0400
3730@@ -158,7 +158,7 @@ void kgdb_arch_exit(void) 3625@@ -158,7 +158,7 @@ void kgdb_arch_exit(void)
3731 { 3626 {
3732 } 3627 }
@@ -3737,8 +3632,8 @@ diff -urNp linux-2.6.32.21/arch/sparc/kernel/kgdb_32.c linux-2.6.32.21/arch/spar
3737 .gdb_bpt_instr = { 0x91, 0xd0, 0x20, 0x7d }, 3632 .gdb_bpt_instr = { 0x91, 0xd0, 0x20, 0x7d },
3738 }; 3633 };
3739diff -urNp linux-2.6.32.21/arch/sparc/kernel/kgdb_64.c linux-2.6.32.21/arch/sparc/kernel/kgdb_64.c 3634diff -urNp linux-2.6.32.21/arch/sparc/kernel/kgdb_64.c linux-2.6.32.21/arch/sparc/kernel/kgdb_64.c
3740--- linux-2.6.32.21/arch/sparc/kernel/kgdb_64.c 2010-08-26 19:42:20.000000000 -0400 3635--- linux-2.6.32.21/arch/sparc/kernel/kgdb_64.c 2010-08-13 16:24:37.000000000 -0400
3741+++ linux-2.6.32.21/arch/sparc/kernel/kgdb_64.c 2010-09-13 08:10:05.000000000 -0400 3636+++ linux-2.6.32.21/arch/sparc/kernel/kgdb_64.c 2010-09-04 15:54:51.000000000 -0400
3742@@ -180,7 +180,7 @@ void kgdb_arch_exit(void) 3637@@ -180,7 +180,7 @@ void kgdb_arch_exit(void)
3743 { 3638 {
3744 } 3639 }
@@ -3748,9 +3643,21 @@ diff -urNp linux-2.6.32.21/arch/sparc/kernel/kgdb_64.c linux-2.6.32.21/arch/spar
3748 /* Breakpoint instruction: ta 0x72 */ 3643 /* Breakpoint instruction: ta 0x72 */
3749 .gdb_bpt_instr = { 0x91, 0xd0, 0x20, 0x72 }, 3644 .gdb_bpt_instr = { 0x91, 0xd0, 0x20, 0x72 },
3750 }; 3645 };
3646diff -urNp linux-2.6.32.21/arch/sparc/kernel/Makefile linux-2.6.32.21/arch/sparc/kernel/Makefile
3647--- linux-2.6.32.21/arch/sparc/kernel/Makefile 2010-08-13 16:24:37.000000000 -0400
3648+++ linux-2.6.32.21/arch/sparc/kernel/Makefile 2010-09-04 15:54:51.000000000 -0400
3649@@ -3,7 +3,7 @@
3650 #
3651
3652 asflags-y := -ansi
3653-ccflags-y := -Werror
3654+#ccflags-y := -Werror
3655
3656 extra-y := head_$(BITS).o
3657 extra-y += init_task.o
3751diff -urNp linux-2.6.32.21/arch/sparc/kernel/pci_sun4v.c linux-2.6.32.21/arch/sparc/kernel/pci_sun4v.c 3658diff -urNp linux-2.6.32.21/arch/sparc/kernel/pci_sun4v.c linux-2.6.32.21/arch/sparc/kernel/pci_sun4v.c
3752--- linux-2.6.32.21/arch/sparc/kernel/pci_sun4v.c 2010-08-26 19:42:20.000000000 -0400 3659--- linux-2.6.32.21/arch/sparc/kernel/pci_sun4v.c 2010-08-13 16:24:37.000000000 -0400
3753+++ linux-2.6.32.21/arch/sparc/kernel/pci_sun4v.c 2010-09-13 08:10:05.000000000 -0400 3660+++ linux-2.6.32.21/arch/sparc/kernel/pci_sun4v.c 2010-09-04 15:54:51.000000000 -0400
3754@@ -525,7 +525,7 @@ static void dma_4v_unmap_sg(struct devic 3661@@ -525,7 +525,7 @@ static void dma_4v_unmap_sg(struct devic
3755 spin_unlock_irqrestore(&iommu->lock, flags); 3662 spin_unlock_irqrestore(&iommu->lock, flags);
3756 } 3663 }
@@ -3761,8 +3668,8 @@ diff -urNp linux-2.6.32.21/arch/sparc/kernel/pci_sun4v.c linux-2.6.32.21/arch/sp
3761 .free_coherent = dma_4v_free_coherent, 3668 .free_coherent = dma_4v_free_coherent,
3762 .map_page = dma_4v_map_page, 3669 .map_page = dma_4v_map_page,
3763diff -urNp linux-2.6.32.21/arch/sparc/kernel/sys_sparc_32.c linux-2.6.32.21/arch/sparc/kernel/sys_sparc_32.c 3670diff -urNp linux-2.6.32.21/arch/sparc/kernel/sys_sparc_32.c linux-2.6.32.21/arch/sparc/kernel/sys_sparc_32.c
3764--- linux-2.6.32.21/arch/sparc/kernel/sys_sparc_32.c 2010-08-26 19:42:20.000000000 -0400 3671--- linux-2.6.32.21/arch/sparc/kernel/sys_sparc_32.c 2010-08-13 16:24:37.000000000 -0400
3765+++ linux-2.6.32.21/arch/sparc/kernel/sys_sparc_32.c 2010-09-13 08:10:05.000000000 -0400 3672+++ linux-2.6.32.21/arch/sparc/kernel/sys_sparc_32.c 2010-09-04 15:54:51.000000000 -0400
3766@@ -57,7 +57,7 @@ unsigned long arch_get_unmapped_area(str 3673@@ -57,7 +57,7 @@ unsigned long arch_get_unmapped_area(str
3767 if (ARCH_SUN4C && len > 0x20000000) 3674 if (ARCH_SUN4C && len > 0x20000000)
3768 return -ENOMEM; 3675 return -ENOMEM;
@@ -3773,8 +3680,8 @@ diff -urNp linux-2.6.32.21/arch/sparc/kernel/sys_sparc_32.c linux-2.6.32.21/arch
3773 if (flags & MAP_SHARED) 3680 if (flags & MAP_SHARED)
3774 addr = COLOUR_ALIGN(addr); 3681 addr = COLOUR_ALIGN(addr);
3775diff -urNp linux-2.6.32.21/arch/sparc/kernel/sys_sparc_64.c linux-2.6.32.21/arch/sparc/kernel/sys_sparc_64.c 3682diff -urNp linux-2.6.32.21/arch/sparc/kernel/sys_sparc_64.c linux-2.6.32.21/arch/sparc/kernel/sys_sparc_64.c
3776--- linux-2.6.32.21/arch/sparc/kernel/sys_sparc_64.c 2010-08-26 19:42:20.000000000 -0400 3683--- linux-2.6.32.21/arch/sparc/kernel/sys_sparc_64.c 2010-08-13 16:24:37.000000000 -0400
3777+++ linux-2.6.32.21/arch/sparc/kernel/sys_sparc_64.c 2010-09-13 08:10:05.000000000 -0400 3684+++ linux-2.6.32.21/arch/sparc/kernel/sys_sparc_64.c 2010-09-04 15:54:51.000000000 -0400
3778@@ -125,7 +125,7 @@ unsigned long arch_get_unmapped_area(str 3685@@ -125,7 +125,7 @@ unsigned long arch_get_unmapped_area(str
3779 /* We do not accept a shared mapping if it would violate 3686 /* We do not accept a shared mapping if it would violate
3780 * cache aliasing constraints. 3687 * cache aliasing constraints.
@@ -3854,8 +3761,8 @@ diff -urNp linux-2.6.32.21/arch/sparc/kernel/sys_sparc_64.c linux-2.6.32.21/arch
3854 mm->unmap_area = arch_unmap_area_topdown; 3761 mm->unmap_area = arch_unmap_area_topdown;
3855 } 3762 }
3856diff -urNp linux-2.6.32.21/arch/sparc/kernel/traps_64.c linux-2.6.32.21/arch/sparc/kernel/traps_64.c 3763diff -urNp linux-2.6.32.21/arch/sparc/kernel/traps_64.c linux-2.6.32.21/arch/sparc/kernel/traps_64.c
3857--- linux-2.6.32.21/arch/sparc/kernel/traps_64.c 2010-08-26 19:42:20.000000000 -0400 3764--- linux-2.6.32.21/arch/sparc/kernel/traps_64.c 2010-08-13 16:24:37.000000000 -0400
3858+++ linux-2.6.32.21/arch/sparc/kernel/traps_64.c 2010-09-13 08:10:05.000000000 -0400 3765+++ linux-2.6.32.21/arch/sparc/kernel/traps_64.c 2010-09-04 15:54:51.000000000 -0400
3859@@ -93,6 +93,12 @@ void bad_trap(struct pt_regs *regs, long 3766@@ -93,6 +93,12 @@ void bad_trap(struct pt_regs *regs, long
3860 3767
3861 lvl -= 0x100; 3768 lvl -= 0x100;
@@ -3888,8 +3795,8 @@ diff -urNp linux-2.6.32.21/arch/sparc/kernel/traps_64.c linux-2.6.32.21/arch/spa
3888 3795
3889 sprintf (buffer, "Bad trap %lx at tl>0", lvl); 3796 sprintf (buffer, "Bad trap %lx at tl>0", lvl);
3890diff -urNp linux-2.6.32.21/arch/sparc/lib/atomic_64.S linux-2.6.32.21/arch/sparc/lib/atomic_64.S 3797diff -urNp linux-2.6.32.21/arch/sparc/lib/atomic_64.S linux-2.6.32.21/arch/sparc/lib/atomic_64.S
3891--- linux-2.6.32.21/arch/sparc/lib/atomic_64.S 2010-08-26 19:42:20.000000000 -0400 3798--- linux-2.6.32.21/arch/sparc/lib/atomic_64.S 2010-08-13 16:24:37.000000000 -0400
3892+++ linux-2.6.32.21/arch/sparc/lib/atomic_64.S 2010-09-13 08:10:05.000000000 -0400 3799+++ linux-2.6.32.21/arch/sparc/lib/atomic_64.S 2010-09-04 15:54:51.000000000 -0400
3893@@ -18,7 +18,12 @@ 3800@@ -18,7 +18,12 @@
3894 atomic_add: /* %o0 = increment, %o1 = atomic_ptr */ 3801 atomic_add: /* %o0 = increment, %o1 = atomic_ptr */
3895 BACKOFF_SETUP(%o2) 3802 BACKOFF_SETUP(%o2)
@@ -4125,8 +4032,8 @@ diff -urNp linux-2.6.32.21/arch/sparc/lib/atomic_64.S linux-2.6.32.21/arch/sparc
4125 cmp %g1, %g7 4032 cmp %g1, %g7
4126 bne,pn %xcc, 2f 4033 bne,pn %xcc, 2f
4127diff -urNp linux-2.6.32.21/arch/sparc/lib/ksyms.c linux-2.6.32.21/arch/sparc/lib/ksyms.c 4034diff -urNp linux-2.6.32.21/arch/sparc/lib/ksyms.c linux-2.6.32.21/arch/sparc/lib/ksyms.c
4128--- linux-2.6.32.21/arch/sparc/lib/ksyms.c 2010-08-26 19:42:20.000000000 -0400 4035--- linux-2.6.32.21/arch/sparc/lib/ksyms.c 2010-08-13 16:24:37.000000000 -0400
4129+++ linux-2.6.32.21/arch/sparc/lib/ksyms.c 2010-09-13 08:10:05.000000000 -0400 4036+++ linux-2.6.32.21/arch/sparc/lib/ksyms.c 2010-09-04 15:54:51.000000000 -0400
4130@@ -144,12 +144,15 @@ EXPORT_SYMBOL(__downgrade_write); 4037@@ -144,12 +144,15 @@ EXPORT_SYMBOL(__downgrade_write);
4131 4038
4132 /* Atomic counter implementation. */ 4039 /* Atomic counter implementation. */
@@ -4144,8 +4051,8 @@ diff -urNp linux-2.6.32.21/arch/sparc/lib/ksyms.c linux-2.6.32.21/arch/sparc/lib
4144 4051
4145 /* Atomic bit operations. */ 4052 /* Atomic bit operations. */
4146diff -urNp linux-2.6.32.21/arch/sparc/lib/rwsem_64.S linux-2.6.32.21/arch/sparc/lib/rwsem_64.S 4053diff -urNp linux-2.6.32.21/arch/sparc/lib/rwsem_64.S linux-2.6.32.21/arch/sparc/lib/rwsem_64.S
4147--- linux-2.6.32.21/arch/sparc/lib/rwsem_64.S 2010-08-26 19:42:20.000000000 -0400 4054--- linux-2.6.32.21/arch/sparc/lib/rwsem_64.S 2010-08-13 16:24:37.000000000 -0400
4148+++ linux-2.6.32.21/arch/sparc/lib/rwsem_64.S 2010-09-13 08:10:05.000000000 -0400 4055+++ linux-2.6.32.21/arch/sparc/lib/rwsem_64.S 2010-09-04 15:54:51.000000000 -0400
4149@@ -11,7 +11,12 @@ 4056@@ -11,7 +11,12 @@
4150 .globl __down_read 4057 .globl __down_read
4151 __down_read: 4058 __down_read:
@@ -4244,21 +4151,21 @@ diff -urNp linux-2.6.32.21/arch/sparc/lib/rwsem_64.S linux-2.6.32.21/arch/sparc/
4244 cas [%o0], %g3, %g7 4151 cas [%o0], %g3, %g7
4245 cmp %g3, %g7 4152 cmp %g3, %g7
4246 bne,pn %icc, 1b 4153 bne,pn %icc, 1b
4247diff -urNp linux-2.6.32.21/arch/sparc/mm/Makefile linux-2.6.32.21/arch/sparc/mm/Makefile 4154diff -urNp linux-2.6.32.21/arch/sparc/Makefile linux-2.6.32.21/arch/sparc/Makefile
4248--- linux-2.6.32.21/arch/sparc/mm/Makefile 2010-08-26 19:42:20.000000000 -0400 4155--- linux-2.6.32.21/arch/sparc/Makefile 2010-08-13 16:24:37.000000000 -0400
4249+++ linux-2.6.32.21/arch/sparc/mm/Makefile 2010-09-13 08:10:05.000000000 -0400 4156+++ linux-2.6.32.21/arch/sparc/Makefile 2010-09-04 15:54:51.000000000 -0400
4250@@ -2,7 +2,7 @@ 4157@@ -75,7 +75,7 @@ drivers-$(CONFIG_OPROFILE) += arch/sparc
4251 # 4158 # Export what is needed by arch/sparc/boot/Makefile
4252 4159 export VMLINUX_INIT VMLINUX_MAIN
4253 asflags-y := -ansi 4160 VMLINUX_INIT := $(head-y) $(init-y)
4254-ccflags-y := -Werror 4161-VMLINUX_MAIN := $(core-y) kernel/ mm/ fs/ ipc/ security/ crypto/ block/
4255+#ccflags-y := -Werror 4162+VMLINUX_MAIN := $(core-y) kernel/ mm/ fs/ ipc/ security/ crypto/ block/ grsecurity/
4163 VMLINUX_MAIN += $(patsubst %/, %/lib.a, $(libs-y)) $(libs-y)
4164 VMLINUX_MAIN += $(drivers-y) $(net-y)
4256 4165
4257 obj-$(CONFIG_SPARC64) += ultra.o tlb.o tsb.o
4258 obj-y += fault_$(BITS).o
4259diff -urNp linux-2.6.32.21/arch/sparc/mm/fault_32.c linux-2.6.32.21/arch/sparc/mm/fault_32.c 4166diff -urNp linux-2.6.32.21/arch/sparc/mm/fault_32.c linux-2.6.32.21/arch/sparc/mm/fault_32.c
4260--- linux-2.6.32.21/arch/sparc/mm/fault_32.c 2010-08-26 19:42:20.000000000 -0400 4167--- linux-2.6.32.21/arch/sparc/mm/fault_32.c 2010-08-13 16:24:37.000000000 -0400
4261+++ linux-2.6.32.21/arch/sparc/mm/fault_32.c 2010-09-13 08:10:05.000000000 -0400 4168+++ linux-2.6.32.21/arch/sparc/mm/fault_32.c 2010-09-04 15:54:51.000000000 -0400
4262@@ -21,6 +21,9 @@ 4169@@ -21,6 +21,9 @@
4263 #include <linux/interrupt.h> 4170 #include <linux/interrupt.h>
4264 #include <linux/module.h> 4171 #include <linux/module.h>
@@ -4563,8 +4470,8 @@ diff -urNp linux-2.6.32.21/arch/sparc/mm/fault_32.c linux-2.6.32.21/arch/sparc/m
4563 if(!(vma->vm_flags & (VM_READ | VM_EXEC))) 4470 if(!(vma->vm_flags & (VM_READ | VM_EXEC)))
4564 goto bad_area; 4471 goto bad_area;
4565diff -urNp linux-2.6.32.21/arch/sparc/mm/fault_64.c linux-2.6.32.21/arch/sparc/mm/fault_64.c 4472diff -urNp linux-2.6.32.21/arch/sparc/mm/fault_64.c linux-2.6.32.21/arch/sparc/mm/fault_64.c
4566--- linux-2.6.32.21/arch/sparc/mm/fault_64.c 2010-08-26 19:42:20.000000000 -0400 4473--- linux-2.6.32.21/arch/sparc/mm/fault_64.c 2010-08-13 16:24:37.000000000 -0400
4567+++ linux-2.6.32.21/arch/sparc/mm/fault_64.c 2010-09-13 08:10:05.000000000 -0400 4474+++ linux-2.6.32.21/arch/sparc/mm/fault_64.c 2010-09-04 15:54:51.000000000 -0400
4568@@ -20,6 +20,9 @@ 4475@@ -20,6 +20,9 @@
4569 #include <linux/kprobes.h> 4476 #include <linux/kprobes.h>
4570 #include <linux/kdebug.h> 4477 #include <linux/kdebug.h>
@@ -5063,8 +4970,8 @@ diff -urNp linux-2.6.32.21/arch/sparc/mm/fault_64.c linux-2.6.32.21/arch/sparc/m
5063 * load/store/atomic was a write or not, it only says that there 4970 * load/store/atomic was a write or not, it only says that there
5064 * was no match. So in such a case we (carefully) read the 4971 * was no match. So in such a case we (carefully) read the
5065diff -urNp linux-2.6.32.21/arch/sparc/mm/init_32.c linux-2.6.32.21/arch/sparc/mm/init_32.c 4972diff -urNp linux-2.6.32.21/arch/sparc/mm/init_32.c linux-2.6.32.21/arch/sparc/mm/init_32.c
5066--- linux-2.6.32.21/arch/sparc/mm/init_32.c 2010-08-26 19:42:20.000000000 -0400 4973--- linux-2.6.32.21/arch/sparc/mm/init_32.c 2010-08-13 16:24:37.000000000 -0400
5067+++ linux-2.6.32.21/arch/sparc/mm/init_32.c 2010-09-13 08:10:05.000000000 -0400 4974+++ linux-2.6.32.21/arch/sparc/mm/init_32.c 2010-09-04 15:54:51.000000000 -0400
5068@@ -317,6 +317,9 @@ extern void device_scan(void); 4975@@ -317,6 +317,9 @@ extern void device_scan(void);
5069 pgprot_t PAGE_SHARED __read_mostly; 4976 pgprot_t PAGE_SHARED __read_mostly;
5070 EXPORT_SYMBOL(PAGE_SHARED); 4977 EXPORT_SYMBOL(PAGE_SHARED);
@@ -5099,9 +5006,21 @@ diff -urNp linux-2.6.32.21/arch/sparc/mm/init_32.c linux-2.6.32.21/arch/sparc/mm
5099 protection_map[12] = PAGE_READONLY; 5006 protection_map[12] = PAGE_READONLY;
5100 protection_map[13] = PAGE_READONLY; 5007 protection_map[13] = PAGE_READONLY;
5101 protection_map[14] = PAGE_SHARED; 5008 protection_map[14] = PAGE_SHARED;
5009diff -urNp linux-2.6.32.21/arch/sparc/mm/Makefile linux-2.6.32.21/arch/sparc/mm/Makefile
5010--- linux-2.6.32.21/arch/sparc/mm/Makefile 2010-08-13 16:24:37.000000000 -0400
5011+++ linux-2.6.32.21/arch/sparc/mm/Makefile 2010-09-04 15:54:51.000000000 -0400
5012@@ -2,7 +2,7 @@
5013 #
5014
5015 asflags-y := -ansi
5016-ccflags-y := -Werror
5017+#ccflags-y := -Werror
5018
5019 obj-$(CONFIG_SPARC64) += ultra.o tlb.o tsb.o
5020 obj-y += fault_$(BITS).o
5102diff -urNp linux-2.6.32.21/arch/sparc/mm/srmmu.c linux-2.6.32.21/arch/sparc/mm/srmmu.c 5021diff -urNp linux-2.6.32.21/arch/sparc/mm/srmmu.c linux-2.6.32.21/arch/sparc/mm/srmmu.c
5103--- linux-2.6.32.21/arch/sparc/mm/srmmu.c 2010-08-26 19:42:20.000000000 -0400 5022--- linux-2.6.32.21/arch/sparc/mm/srmmu.c 2010-08-13 16:24:37.000000000 -0400
5104+++ linux-2.6.32.21/arch/sparc/mm/srmmu.c 2010-09-13 08:10:05.000000000 -0400 5023+++ linux-2.6.32.21/arch/sparc/mm/srmmu.c 2010-09-04 15:54:51.000000000 -0400
5105@@ -2200,6 +2200,13 @@ void __init ld_mmu_srmmu(void) 5024@@ -2200,6 +2200,13 @@ void __init ld_mmu_srmmu(void)
5106 PAGE_SHARED = pgprot_val(SRMMU_PAGE_SHARED); 5025 PAGE_SHARED = pgprot_val(SRMMU_PAGE_SHARED);
5107 BTFIXUPSET_INT(page_copy, pgprot_val(SRMMU_PAGE_COPY)); 5026 BTFIXUPSET_INT(page_copy, pgprot_val(SRMMU_PAGE_COPY));
@@ -5117,8 +5036,8 @@ diff -urNp linux-2.6.32.21/arch/sparc/mm/srmmu.c linux-2.6.32.21/arch/sparc/mm/s
5117 page_kernel = pgprot_val(SRMMU_PAGE_KERNEL); 5036 page_kernel = pgprot_val(SRMMU_PAGE_KERNEL);
5118 5037
5119diff -urNp linux-2.6.32.21/arch/um/include/asm/kmap_types.h linux-2.6.32.21/arch/um/include/asm/kmap_types.h 5038diff -urNp linux-2.6.32.21/arch/um/include/asm/kmap_types.h linux-2.6.32.21/arch/um/include/asm/kmap_types.h
5120--- linux-2.6.32.21/arch/um/include/asm/kmap_types.h 2010-08-26 19:42:20.000000000 -0400 5039--- linux-2.6.32.21/arch/um/include/asm/kmap_types.h 2010-08-13 16:24:37.000000000 -0400
5121+++ linux-2.6.32.21/arch/um/include/asm/kmap_types.h 2010-09-13 08:10:05.000000000 -0400 5040+++ linux-2.6.32.21/arch/um/include/asm/kmap_types.h 2010-09-04 15:54:51.000000000 -0400
5122@@ -23,6 +23,7 @@ enum km_type { 5041@@ -23,6 +23,7 @@ enum km_type {
5123 KM_IRQ1, 5042 KM_IRQ1,
5124 KM_SOFTIRQ0, 5043 KM_SOFTIRQ0,
@@ -5128,8 +5047,8 @@ diff -urNp linux-2.6.32.21/arch/um/include/asm/kmap_types.h linux-2.6.32.21/arch
5128 }; 5047 };
5129 5048
5130diff -urNp linux-2.6.32.21/arch/um/include/asm/page.h linux-2.6.32.21/arch/um/include/asm/page.h 5049diff -urNp linux-2.6.32.21/arch/um/include/asm/page.h linux-2.6.32.21/arch/um/include/asm/page.h
5131--- linux-2.6.32.21/arch/um/include/asm/page.h 2010-08-26 19:42:20.000000000 -0400 5050--- linux-2.6.32.21/arch/um/include/asm/page.h 2010-08-13 16:24:37.000000000 -0400
5132+++ linux-2.6.32.21/arch/um/include/asm/page.h 2010-09-13 08:10:05.000000000 -0400 5051+++ linux-2.6.32.21/arch/um/include/asm/page.h 2010-09-04 15:54:51.000000000 -0400
5133@@ -14,6 +14,9 @@ 5052@@ -14,6 +14,9 @@
5134 #define PAGE_SIZE (_AC(1, UL) << PAGE_SHIFT) 5053 #define PAGE_SIZE (_AC(1, UL) << PAGE_SHIFT)
5135 #define PAGE_MASK (~(PAGE_SIZE-1)) 5054 #define PAGE_MASK (~(PAGE_SIZE-1))
@@ -5141,8 +5060,8 @@ diff -urNp linux-2.6.32.21/arch/um/include/asm/page.h linux-2.6.32.21/arch/um/in
5141 5060
5142 struct page; 5061 struct page;
5143diff -urNp linux-2.6.32.21/arch/um/sys-i386/syscalls.c linux-2.6.32.21/arch/um/sys-i386/syscalls.c 5062diff -urNp linux-2.6.32.21/arch/um/sys-i386/syscalls.c linux-2.6.32.21/arch/um/sys-i386/syscalls.c
5144--- linux-2.6.32.21/arch/um/sys-i386/syscalls.c 2010-08-26 19:42:20.000000000 -0400 5063--- linux-2.6.32.21/arch/um/sys-i386/syscalls.c 2010-08-13 16:24:37.000000000 -0400
5145+++ linux-2.6.32.21/arch/um/sys-i386/syscalls.c 2010-09-13 08:10:05.000000000 -0400 5064+++ linux-2.6.32.21/arch/um/sys-i386/syscalls.c 2010-09-04 15:54:51.000000000 -0400
5146@@ -11,6 +11,21 @@ 5065@@ -11,6 +11,21 @@
5147 #include "asm/uaccess.h" 5066 #include "asm/uaccess.h"
5148 #include "asm/unistd.h" 5067 #include "asm/unistd.h"
@@ -5165,134 +5084,9 @@ diff -urNp linux-2.6.32.21/arch/um/sys-i386/syscalls.c linux-2.6.32.21/arch/um/s
5165 /* 5084 /*
5166 * Perform the select(nd, in, out, ex, tv) and mmap() system 5085 * Perform the select(nd, in, out, ex, tv) and mmap() system
5167 * calls. Linux/i386 didn't use to be able to handle more than 5086 * calls. Linux/i386 didn't use to be able to handle more than
5168diff -urNp linux-2.6.32.21/arch/x86/Kconfig linux-2.6.32.21/arch/x86/Kconfig
5169--- linux-2.6.32.21/arch/x86/Kconfig 2010-08-26 19:42:20.000000000 -0400
5170+++ linux-2.6.32.21/arch/x86/Kconfig 2010-09-13 08:10:06.000000000 -0400
5171@@ -997,7 +997,7 @@ choice
5172
5173 config NOHIGHMEM
5174 bool "off"
5175- depends on !X86_NUMAQ
5176+ depends on !X86_NUMAQ && !(PAX_PAGEEXEC && PAX_ENABLE_PAE)
5177 ---help---
5178 Linux can use up to 64 Gigabytes of physical memory on x86 systems.
5179 However, the address space of 32-bit x86 processors is only 4
5180@@ -1034,7 +1034,7 @@ config NOHIGHMEM
5181
5182 config HIGHMEM4G
5183 bool "4GB"
5184- depends on !X86_NUMAQ
5185+ depends on !X86_NUMAQ && !(PAX_PAGEEXEC && PAX_ENABLE_PAE)
5186 ---help---
5187 Select this if you have a 32-bit processor and between 1 and 4
5188 gigabytes of physical RAM.
5189@@ -1088,7 +1088,7 @@ config PAGE_OFFSET
5190 hex
5191 default 0xB0000000 if VMSPLIT_3G_OPT
5192 default 0x80000000 if VMSPLIT_2G
5193- default 0x78000000 if VMSPLIT_2G_OPT
5194+ default 0x70000000 if VMSPLIT_2G_OPT
5195 default 0x40000000 if VMSPLIT_1G
5196 default 0xC0000000
5197 depends on X86_32
5198@@ -1419,7 +1419,7 @@ config ARCH_USES_PG_UNCACHED
5199
5200 config EFI
5201 bool "EFI runtime service support"
5202- depends on ACPI
5203+ depends on ACPI && !PAX_KERNEXEC
5204 ---help---
5205 This enables the kernel to use EFI runtime services that are
5206 available (such as the EFI variable services).
5207@@ -1506,6 +1506,7 @@ config KEXEC_JUMP
5208 config PHYSICAL_START
5209 hex "Physical address where the kernel is loaded" if (EMBEDDED || CRASH_DUMP)
5210 default "0x1000000"
5211+ range 0x400000 0x40000000
5212 ---help---
5213 This gives the physical address where the kernel is loaded.
5214
5215@@ -1570,6 +1571,7 @@ config PHYSICAL_ALIGN
5216 hex
5217 prompt "Alignment value to which kernel should be aligned" if X86_32
5218 default "0x1000000"
5219+ range 0x400000 0x1000000 if PAX_KERNEXEC
5220 range 0x2000 0x1000000
5221 ---help---
5222 This value puts the alignment restrictions on physical address
5223@@ -1601,9 +1603,10 @@ config HOTPLUG_CPU
5224 Say N if you want to disable CPU hotplug.
5225
5226 config COMPAT_VDSO
5227- def_bool y
5228+ def_bool n
5229 prompt "Compat VDSO support"
5230 depends on X86_32 || IA32_EMULATION
5231+ depends on !PAX_NOEXEC && !PAX_MEMORY_UDEREF
5232 ---help---
5233 Map the 32-bit VDSO to the predictable old-style address too.
5234 ---help---
5235diff -urNp linux-2.6.32.21/arch/x86/Kconfig.cpu linux-2.6.32.21/arch/x86/Kconfig.cpu
5236--- linux-2.6.32.21/arch/x86/Kconfig.cpu 2010-08-26 19:42:20.000000000 -0400
5237+++ linux-2.6.32.21/arch/x86/Kconfig.cpu 2010-09-13 08:10:06.000000000 -0400
5238@@ -340,7 +340,7 @@ config X86_PPRO_FENCE
5239
5240 config X86_F00F_BUG
5241 def_bool y
5242- depends on M586MMX || M586TSC || M586 || M486 || M386
5243+ depends on (M586MMX || M586TSC || M586 || M486 || M386) && !PAX_KERNEXEC
5244
5245 config X86_WP_WORKS_OK
5246 def_bool y
5247@@ -360,7 +360,7 @@ config X86_POPAD_OK
5248
5249 config X86_ALIGNMENT_16
5250 def_bool y
5251- depends on MWINCHIP3D || MWINCHIPC6 || MCYRIXIII || X86_ELAN || MK6 || M586MMX || M586TSC || M586 || M486 || MVIAC3_2 || MGEODEGX1
5252+ depends on MWINCHIP3D || MWINCHIPC6 || MCYRIXIII || X86_ELAN || MK8 || MK7 || MK6 || MCORE2 || MPENTIUM4 || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || M586 || M486 || MVIAC3_2 || MGEODEGX1
5253
5254 config X86_INTEL_USERCOPY
5255 def_bool y
5256@@ -406,7 +406,7 @@ config X86_CMPXCHG64
5257 # generates cmov.
5258 config X86_CMOV
5259 def_bool y
5260- depends on (MK8 || MK7 || MCORE2 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || MVIAC3_2 || MVIAC7 || MCRUSOE || MEFFICEON || X86_64 || MATOM)
5261+ depends on (MK8 || MK7 || MCORE2 || MPSC || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || MVIAC3_2 || MVIAC7 || MCRUSOE || MEFFICEON || X86_64 || MATOM)
5262
5263 config X86_MINIMUM_CPU_FAMILY
5264 int
5265diff -urNp linux-2.6.32.21/arch/x86/Kconfig.debug linux-2.6.32.21/arch/x86/Kconfig.debug
5266--- linux-2.6.32.21/arch/x86/Kconfig.debug 2010-08-26 19:42:20.000000000 -0400
5267+++ linux-2.6.32.21/arch/x86/Kconfig.debug 2010-09-13 08:10:06.000000000 -0400
5268@@ -99,7 +99,7 @@ config X86_PTDUMP
5269 config DEBUG_RODATA
5270 bool "Write protect kernel read-only data structures"
5271 default y
5272- depends on DEBUG_KERNEL
5273+ depends on DEBUG_KERNEL && BROKEN
5274 ---help---
5275 Mark the kernel read-only data as write-protected in the pagetables,
5276 in order to catch accidental (and incorrect) writes to such const
5277diff -urNp linux-2.6.32.21/arch/x86/Makefile linux-2.6.32.21/arch/x86/Makefile
5278--- linux-2.6.32.21/arch/x86/Makefile 2010-08-26 19:42:20.000000000 -0400
5279+++ linux-2.6.32.21/arch/x86/Makefile 2010-09-13 08:10:06.000000000 -0400
5280@@ -189,3 +189,12 @@ define archhelp
5281 echo ' FDARGS="..." arguments for the booted kernel'
5282 echo ' FDINITRD=file initrd for the booted kernel'
5283 endef
5284+
5285+define OLD_LD
5286+
5287+*** ${VERSION}.${PATCHLEVEL} PaX kernels no longer build correctly with old versions of binutils.
5288+*** Please upgrade your binutils to 2.18 or newer
5289+endef
5290+
5291+archprepare:
5292+ $(if $(LDFLAGS_BUILD_ID),,$(error $(OLD_LD)))
5293diff -urNp linux-2.6.32.21/arch/x86/boot/bitops.h linux-2.6.32.21/arch/x86/boot/bitops.h 5087diff -urNp linux-2.6.32.21/arch/x86/boot/bitops.h linux-2.6.32.21/arch/x86/boot/bitops.h
5294--- linux-2.6.32.21/arch/x86/boot/bitops.h 2010-08-26 19:42:20.000000000 -0400 5088--- linux-2.6.32.21/arch/x86/boot/bitops.h 2010-08-13 16:24:37.000000000 -0400
5295+++ linux-2.6.32.21/arch/x86/boot/bitops.h 2010-09-13 08:10:05.000000000 -0400 5089+++ linux-2.6.32.21/arch/x86/boot/bitops.h 2010-09-04 15:54:51.000000000 -0400
5296@@ -26,7 +26,7 @@ static inline int variable_test_bit(int 5090@@ -26,7 +26,7 @@ static inline int variable_test_bit(int
5297 u8 v; 5091 u8 v;
5298 const u32 *p = (const u32 *)addr; 5092 const u32 *p = (const u32 *)addr;
@@ -5312,8 +5106,8 @@ diff -urNp linux-2.6.32.21/arch/x86/boot/bitops.h linux-2.6.32.21/arch/x86/boot/
5312 5106
5313 #endif /* BOOT_BITOPS_H */ 5107 #endif /* BOOT_BITOPS_H */
5314diff -urNp linux-2.6.32.21/arch/x86/boot/boot.h linux-2.6.32.21/arch/x86/boot/boot.h 5108diff -urNp linux-2.6.32.21/arch/x86/boot/boot.h linux-2.6.32.21/arch/x86/boot/boot.h
5315--- linux-2.6.32.21/arch/x86/boot/boot.h 2010-08-26 19:42:20.000000000 -0400 5109--- linux-2.6.32.21/arch/x86/boot/boot.h 2010-08-13 16:24:37.000000000 -0400
5316+++ linux-2.6.32.21/arch/x86/boot/boot.h 2010-09-13 08:10:05.000000000 -0400 5110+++ linux-2.6.32.21/arch/x86/boot/boot.h 2010-09-04 15:54:51.000000000 -0400
5317@@ -82,7 +82,7 @@ static inline void io_delay(void) 5111@@ -82,7 +82,7 @@ static inline void io_delay(void)
5318 static inline u16 ds(void) 5112 static inline u16 ds(void)
5319 { 5113 {
@@ -5333,8 +5127,8 @@ diff -urNp linux-2.6.32.21/arch/x86/boot/boot.h linux-2.6.32.21/arch/x86/boot/bo
5333 return diff; 5127 return diff;
5334 } 5128 }
5335diff -urNp linux-2.6.32.21/arch/x86/boot/compressed/head_32.S linux-2.6.32.21/arch/x86/boot/compressed/head_32.S 5129diff -urNp linux-2.6.32.21/arch/x86/boot/compressed/head_32.S linux-2.6.32.21/arch/x86/boot/compressed/head_32.S
5336--- linux-2.6.32.21/arch/x86/boot/compressed/head_32.S 2010-08-26 19:42:20.000000000 -0400 5130--- linux-2.6.32.21/arch/x86/boot/compressed/head_32.S 2010-08-13 16:24:37.000000000 -0400
5337+++ linux-2.6.32.21/arch/x86/boot/compressed/head_32.S 2010-09-13 08:10:05.000000000 -0400 5131+++ linux-2.6.32.21/arch/x86/boot/compressed/head_32.S 2010-09-04 15:54:51.000000000 -0400
5338@@ -76,7 +76,7 @@ ENTRY(startup_32) 5132@@ -76,7 +76,7 @@ ENTRY(startup_32)
5339 notl %eax 5133 notl %eax
5340 andl %eax, %ebx 5134 andl %eax, %ebx
@@ -5364,8 +5158,8 @@ diff -urNp linux-2.6.32.21/arch/x86/boot/compressed/head_32.S linux-2.6.32.21/ar
5364 jmp 1b 5158 jmp 1b
5365 2: 5159 2:
5366diff -urNp linux-2.6.32.21/arch/x86/boot/compressed/head_64.S linux-2.6.32.21/arch/x86/boot/compressed/head_64.S 5160diff -urNp linux-2.6.32.21/arch/x86/boot/compressed/head_64.S linux-2.6.32.21/arch/x86/boot/compressed/head_64.S
5367--- linux-2.6.32.21/arch/x86/boot/compressed/head_64.S 2010-08-26 19:42:20.000000000 -0400 5161--- linux-2.6.32.21/arch/x86/boot/compressed/head_64.S 2010-08-13 16:24:37.000000000 -0400
5368+++ linux-2.6.32.21/arch/x86/boot/compressed/head_64.S 2010-09-13 08:10:05.000000000 -0400 5162+++ linux-2.6.32.21/arch/x86/boot/compressed/head_64.S 2010-09-04 15:54:51.000000000 -0400
5369@@ -91,7 +91,7 @@ ENTRY(startup_32) 5163@@ -91,7 +91,7 @@ ENTRY(startup_32)
5370 notl %eax 5164 notl %eax
5371 andl %eax, %ebx 5165 andl %eax, %ebx
@@ -5385,8 +5179,8 @@ diff -urNp linux-2.6.32.21/arch/x86/boot/compressed/head_64.S linux-2.6.32.21/ar
5385 5179
5386 /* Target address to relocate to for decompression */ 5180 /* Target address to relocate to for decompression */
5387diff -urNp linux-2.6.32.21/arch/x86/boot/compressed/misc.c linux-2.6.32.21/arch/x86/boot/compressed/misc.c 5181diff -urNp linux-2.6.32.21/arch/x86/boot/compressed/misc.c linux-2.6.32.21/arch/x86/boot/compressed/misc.c
5388--- linux-2.6.32.21/arch/x86/boot/compressed/misc.c 2010-08-26 19:42:20.000000000 -0400 5182--- linux-2.6.32.21/arch/x86/boot/compressed/misc.c 2010-08-13 16:24:37.000000000 -0400
5389+++ linux-2.6.32.21/arch/x86/boot/compressed/misc.c 2010-09-13 08:10:05.000000000 -0400 5183+++ linux-2.6.32.21/arch/x86/boot/compressed/misc.c 2010-09-04 15:54:51.000000000 -0400
5390@@ -288,7 +288,7 @@ static void parse_elf(void *output) 5184@@ -288,7 +288,7 @@ static void parse_elf(void *output)
5391 case PT_LOAD: 5185 case PT_LOAD:
5392 #ifdef CONFIG_RELOCATABLE 5186 #ifdef CONFIG_RELOCATABLE
@@ -5406,8 +5200,8 @@ diff -urNp linux-2.6.32.21/arch/x86/boot/compressed/misc.c linux-2.6.32.21/arch/
5406 #endif 5200 #endif
5407 5201
5408diff -urNp linux-2.6.32.21/arch/x86/boot/compressed/mkpiggy.c linux-2.6.32.21/arch/x86/boot/compressed/mkpiggy.c 5202diff -urNp linux-2.6.32.21/arch/x86/boot/compressed/mkpiggy.c linux-2.6.32.21/arch/x86/boot/compressed/mkpiggy.c
5409--- linux-2.6.32.21/arch/x86/boot/compressed/mkpiggy.c 2010-08-26 19:42:20.000000000 -0400 5203--- linux-2.6.32.21/arch/x86/boot/compressed/mkpiggy.c 2010-08-13 16:24:37.000000000 -0400
5410+++ linux-2.6.32.21/arch/x86/boot/compressed/mkpiggy.c 2010-09-13 08:10:05.000000000 -0400 5204+++ linux-2.6.32.21/arch/x86/boot/compressed/mkpiggy.c 2010-09-04 15:54:51.000000000 -0400
5411@@ -74,7 +74,7 @@ int main(int argc, char *argv[]) 5205@@ -74,7 +74,7 @@ int main(int argc, char *argv[])
5412 5206
5413 offs = (olen > ilen) ? olen - ilen : 0; 5207 offs = (olen > ilen) ? olen - ilen : 0;
@@ -5418,8 +5212,8 @@ diff -urNp linux-2.6.32.21/arch/x86/boot/compressed/mkpiggy.c linux-2.6.32.21/ar
5418 5212
5419 printf(".section \".rodata.compressed\",\"a\",@progbits\n"); 5213 printf(".section \".rodata.compressed\",\"a\",@progbits\n");
5420diff -urNp linux-2.6.32.21/arch/x86/boot/compressed/relocs.c linux-2.6.32.21/arch/x86/boot/compressed/relocs.c 5214diff -urNp linux-2.6.32.21/arch/x86/boot/compressed/relocs.c linux-2.6.32.21/arch/x86/boot/compressed/relocs.c
5421--- linux-2.6.32.21/arch/x86/boot/compressed/relocs.c 2010-08-26 19:42:20.000000000 -0400 5215--- linux-2.6.32.21/arch/x86/boot/compressed/relocs.c 2010-08-13 16:24:37.000000000 -0400
5422+++ linux-2.6.32.21/arch/x86/boot/compressed/relocs.c 2010-09-13 08:10:05.000000000 -0400 5216+++ linux-2.6.32.21/arch/x86/boot/compressed/relocs.c 2010-09-04 15:54:51.000000000 -0400
5423@@ -10,8 +10,11 @@ 5217@@ -10,8 +10,11 @@
5424 #define USE_BSD 5218 #define USE_BSD
5425 #include <endian.h> 5219 #include <endian.h>
@@ -5621,8 +5415,8 @@ diff -urNp linux-2.6.32.21/arch/x86/boot/compressed/relocs.c linux-2.6.32.21/arc
5621 read_strtabs(fp); 5415 read_strtabs(fp);
5622 read_symtabs(fp); 5416 read_symtabs(fp);
5623diff -urNp linux-2.6.32.21/arch/x86/boot/cpucheck.c linux-2.6.32.21/arch/x86/boot/cpucheck.c 5417diff -urNp linux-2.6.32.21/arch/x86/boot/cpucheck.c linux-2.6.32.21/arch/x86/boot/cpucheck.c
5624--- linux-2.6.32.21/arch/x86/boot/cpucheck.c 2010-08-26 19:42:20.000000000 -0400 5418--- linux-2.6.32.21/arch/x86/boot/cpucheck.c 2010-08-13 16:24:37.000000000 -0400
5625+++ linux-2.6.32.21/arch/x86/boot/cpucheck.c 2010-09-13 08:10:05.000000000 -0400 5419+++ linux-2.6.32.21/arch/x86/boot/cpucheck.c 2010-09-04 15:54:51.000000000 -0400
5626@@ -74,7 +74,7 @@ static int has_fpu(void) 5420@@ -74,7 +74,7 @@ static int has_fpu(void)
5627 u16 fcw = -1, fsw = -1; 5421 u16 fcw = -1, fsw = -1;
5628 u32 cr0; 5422 u32 cr0;
@@ -5719,8 +5513,8 @@ diff -urNp linux-2.6.32.21/arch/x86/boot/cpucheck.c linux-2.6.32.21/arch/x86/boo
5719 err = check_flags(); 5513 err = check_flags();
5720 } 5514 }
5721diff -urNp linux-2.6.32.21/arch/x86/boot/header.S linux-2.6.32.21/arch/x86/boot/header.S 5515diff -urNp linux-2.6.32.21/arch/x86/boot/header.S linux-2.6.32.21/arch/x86/boot/header.S
5722--- linux-2.6.32.21/arch/x86/boot/header.S 2010-08-26 19:42:20.000000000 -0400 5516--- linux-2.6.32.21/arch/x86/boot/header.S 2010-08-13 16:24:37.000000000 -0400
5723+++ linux-2.6.32.21/arch/x86/boot/header.S 2010-09-13 08:10:05.000000000 -0400 5517+++ linux-2.6.32.21/arch/x86/boot/header.S 2010-09-04 15:54:51.000000000 -0400
5724@@ -224,7 +224,7 @@ setup_data: .quad 0 # 64-bit physical 5518@@ -224,7 +224,7 @@ setup_data: .quad 0 # 64-bit physical
5725 # single linked list of 5519 # single linked list of
5726 # struct setup_data 5520 # struct setup_data
@@ -5731,8 +5525,8 @@ diff -urNp linux-2.6.32.21/arch/x86/boot/header.S linux-2.6.32.21/arch/x86/boot/
5731 #define ZO_INIT_SIZE (ZO__end - ZO_startup_32 + ZO_z_extract_offset) 5525 #define ZO_INIT_SIZE (ZO__end - ZO_startup_32 + ZO_z_extract_offset)
5732 #define VO_INIT_SIZE (VO__end - VO__text) 5526 #define VO_INIT_SIZE (VO__end - VO__text)
5733diff -urNp linux-2.6.32.21/arch/x86/boot/memory.c linux-2.6.32.21/arch/x86/boot/memory.c 5527diff -urNp linux-2.6.32.21/arch/x86/boot/memory.c linux-2.6.32.21/arch/x86/boot/memory.c
5734--- linux-2.6.32.21/arch/x86/boot/memory.c 2010-08-26 19:42:20.000000000 -0400 5528--- linux-2.6.32.21/arch/x86/boot/memory.c 2010-08-13 16:24:37.000000000 -0400
5735+++ linux-2.6.32.21/arch/x86/boot/memory.c 2010-09-13 08:10:05.000000000 -0400 5529+++ linux-2.6.32.21/arch/x86/boot/memory.c 2010-09-04 15:54:51.000000000 -0400
5736@@ -19,7 +19,7 @@ 5530@@ -19,7 +19,7 @@
5737 5531
5738 static int detect_memory_e820(void) 5532 static int detect_memory_e820(void)
@@ -5742,20 +5536,9 @@ diff -urNp linux-2.6.32.21/arch/x86/boot/memory.c linux-2.6.32.21/arch/x86/boot/
5742 struct biosregs ireg, oreg; 5536 struct biosregs ireg, oreg;
5743 struct e820entry *desc = boot_params.e820_map; 5537 struct e820entry *desc = boot_params.e820_map;
5744 static struct e820entry buf; /* static so it is zeroed */ 5538 static struct e820entry buf; /* static so it is zeroed */
5745diff -urNp linux-2.6.32.21/arch/x86/boot/video-vesa.c linux-2.6.32.21/arch/x86/boot/video-vesa.c
5746--- linux-2.6.32.21/arch/x86/boot/video-vesa.c 2010-08-26 19:42:20.000000000 -0400
5747+++ linux-2.6.32.21/arch/x86/boot/video-vesa.c 2010-09-13 08:10:05.000000000 -0400
5748@@ -200,6 +200,7 @@ static void vesa_store_pm_info(void)
5749
5750 boot_params.screen_info.vesapm_seg = oreg.es;
5751 boot_params.screen_info.vesapm_off = oreg.di;
5752+ boot_params.screen_info.vesapm_size = oreg.cx;
5753 }
5754
5755 /*
5756diff -urNp linux-2.6.32.21/arch/x86/boot/video.c linux-2.6.32.21/arch/x86/boot/video.c 5539diff -urNp linux-2.6.32.21/arch/x86/boot/video.c linux-2.6.32.21/arch/x86/boot/video.c
5757--- linux-2.6.32.21/arch/x86/boot/video.c 2010-08-26 19:42:20.000000000 -0400 5540--- linux-2.6.32.21/arch/x86/boot/video.c 2010-08-13 16:24:37.000000000 -0400
5758+++ linux-2.6.32.21/arch/x86/boot/video.c 2010-09-13 08:10:05.000000000 -0400 5541+++ linux-2.6.32.21/arch/x86/boot/video.c 2010-09-04 15:54:51.000000000 -0400
5759@@ -90,7 +90,7 @@ static void store_mode_params(void) 5542@@ -90,7 +90,7 @@ static void store_mode_params(void)
5760 static unsigned int get_entry(void) 5543 static unsigned int get_entry(void)
5761 { 5544 {
@@ -5765,30 +5548,20 @@ diff -urNp linux-2.6.32.21/arch/x86/boot/video.c linux-2.6.32.21/arch/x86/boot/v
5765 int key; 5548 int key;
5766 unsigned int v; 5549 unsigned int v;
5767 5550
5768diff -urNp linux-2.6.32.21/arch/x86/ia32/ia32_signal.c linux-2.6.32.21/arch/x86/ia32/ia32_signal.c 5551diff -urNp linux-2.6.32.21/arch/x86/boot/video-vesa.c linux-2.6.32.21/arch/x86/boot/video-vesa.c
5769--- linux-2.6.32.21/arch/x86/ia32/ia32_signal.c 2010-08-26 19:42:20.000000000 -0400 5552--- linux-2.6.32.21/arch/x86/boot/video-vesa.c 2010-08-13 16:24:37.000000000 -0400
5770+++ linux-2.6.32.21/arch/x86/ia32/ia32_signal.c 2010-09-13 08:10:05.000000000 -0400 5553+++ linux-2.6.32.21/arch/x86/boot/video-vesa.c 2010-09-04 15:54:51.000000000 -0400
5771@@ -403,7 +403,7 @@ static void __user *get_sigframe(struct 5554@@ -200,6 +200,7 @@ static void vesa_store_pm_info(void)
5772 sp -= frame_size;
5773 /* Align the stack pointer according to the i386 ABI,
5774 * i.e. so that on function entry ((sp + 4) & 15) == 0. */
5775- sp = ((sp + 4) & -16ul) - 4;
5776+ sp = ((sp - 12) & -16ul) - 4;
5777 return (void __user *) sp;
5778 }
5779 5555
5780@@ -503,7 +503,7 @@ int ia32_setup_rt_frame(int sig, struct 5556 boot_params.screen_info.vesapm_seg = oreg.es;
5781 0xb8, 5557 boot_params.screen_info.vesapm_off = oreg.di;
5782 __NR_ia32_rt_sigreturn, 5558+ boot_params.screen_info.vesapm_size = oreg.cx;
5783 0x80cd, 5559 }
5784- 0,
5785+ 0
5786 };
5787 5560
5788 frame = get_sigframe(ka, regs, sizeof(*frame), &fpstate); 5561 /*
5789diff -urNp linux-2.6.32.21/arch/x86/ia32/ia32entry.S linux-2.6.32.21/arch/x86/ia32/ia32entry.S 5562diff -urNp linux-2.6.32.21/arch/x86/ia32/ia32entry.S linux-2.6.32.21/arch/x86/ia32/ia32entry.S
5790--- linux-2.6.32.21/arch/x86/ia32/ia32entry.S 2010-08-26 19:42:20.000000000 -0400 5563--- linux-2.6.32.21/arch/x86/ia32/ia32entry.S 2010-08-13 16:24:37.000000000 -0400
5791+++ linux-2.6.32.21/arch/x86/ia32/ia32entry.S 2010-09-13 08:10:05.000000000 -0400 5564+++ linux-2.6.32.21/arch/x86/ia32/ia32entry.S 2010-09-15 02:02:53.000000000 -0400
5792@@ -13,6 +13,7 @@ 5565@@ -13,6 +13,7 @@
5793 #include <asm/thread_info.h> 5566 #include <asm/thread_info.h>
5794 #include <asm/segment.h> 5567 #include <asm/segment.h>
@@ -5797,7 +5570,29 @@ diff -urNp linux-2.6.32.21/arch/x86/ia32/ia32entry.S linux-2.6.32.21/arch/x86/ia
5797 #include <linux/linkage.h> 5570 #include <linux/linkage.h>
5798 5571
5799 /* Avoid __ASSEMBLER__'ifying <linux/audit.h> just for this. */ 5572 /* Avoid __ASSEMBLER__'ifying <linux/audit.h> just for this. */
5800@@ -114,6 +115,11 @@ ENTRY(ia32_sysenter_target) 5573@@ -50,7 +51,12 @@
5574 /*
5575 * Reload arg registers from stack in case ptrace changed them.
5576 * We don't reload %eax because syscall_trace_enter() returned
5577- * the value it wants us to use in the table lookup.
5578+ * the %rax value we should see. Instead, we just truncate that
5579+ * value to 32 bits again as we did on entry from user mode.
5580+ * If it's a new value set by user_regset during entry tracing,
5581+ * this matches the normal truncation of the user-mode value.
5582+ * If it's -1 to make us punt the syscall, then (u32)-1 is still
5583+ * an appropriately invalid value.
5584 */
5585 .macro LOAD_ARGS32 offset, _r9=0
5586 .if \_r9
5587@@ -60,6 +66,7 @@
5588 movl \offset+48(%rsp),%edx
5589 movl \offset+56(%rsp),%esi
5590 movl \offset+64(%rsp),%edi
5591+ movl %eax,%eax /* zero extension */
5592 .endm
5593
5594 .macro CFI_STARTPROC32 simple
5595@@ -114,6 +121,11 @@ ENTRY(ia32_sysenter_target)
5801 SWAPGS_UNSAFE_STACK 5596 SWAPGS_UNSAFE_STACK
5802 movq PER_CPU_VAR(kernel_stack), %rsp 5597 movq PER_CPU_VAR(kernel_stack), %rsp
5803 addq $(KERNEL_STACK_OFFSET),%rsp 5598 addq $(KERNEL_STACK_OFFSET),%rsp
@@ -5809,7 +5604,7 @@ diff -urNp linux-2.6.32.21/arch/x86/ia32/ia32entry.S linux-2.6.32.21/arch/x86/ia
5809 /* 5604 /*
5810 * No need to follow this irqs on/off section: the syscall 5605 * No need to follow this irqs on/off section: the syscall
5811 * disabled irqs, here we enable it straight after entry: 5606 * disabled irqs, here we enable it straight after entry:
5812@@ -144,6 +150,12 @@ ENTRY(ia32_sysenter_target) 5607@@ -144,6 +156,12 @@ ENTRY(ia32_sysenter_target)
5813 SAVE_ARGS 0,0,1 5608 SAVE_ARGS 0,0,1
5814 /* no need to do an access_ok check here because rbp has been 5609 /* no need to do an access_ok check here because rbp has been
5815 32bit zero extended */ 5610 32bit zero extended */
@@ -5822,7 +5617,16 @@ diff -urNp linux-2.6.32.21/arch/x86/ia32/ia32entry.S linux-2.6.32.21/arch/x86/ia
5822 1: movl (%rbp),%ebp 5617 1: movl (%rbp),%ebp
5823 .section __ex_table,"a" 5618 .section __ex_table,"a"
5824 .quad 1b,ia32_badarg 5619 .quad 1b,ia32_badarg
5825@@ -166,6 +178,11 @@ sysenter_dispatch: 5620@@ -153,7 +171,7 @@ ENTRY(ia32_sysenter_target)
5621 testl $_TIF_WORK_SYSCALL_ENTRY,TI_flags(%r10)
5622 CFI_REMEMBER_STATE
5623 jnz sysenter_tracesys
5624- cmpl $(IA32_NR_syscalls-1),%eax
5625+ cmpq $(IA32_NR_syscalls-1),%rax
5626 ja ia32_badsys
5627 sysenter_do_call:
5628 IA32_ARG_FIXUP
5629@@ -166,6 +184,11 @@ sysenter_dispatch:
5826 testl $_TIF_ALLWORK_MASK,TI_flags(%r10) 5630 testl $_TIF_ALLWORK_MASK,TI_flags(%r10)
5827 jnz sysexit_audit 5631 jnz sysexit_audit
5828 sysexit_from_sys_call: 5632 sysexit_from_sys_call:
@@ -5834,7 +5638,25 @@ diff -urNp linux-2.6.32.21/arch/x86/ia32/ia32entry.S linux-2.6.32.21/arch/x86/ia
5834 andl $~TS_COMPAT,TI_status(%r10) 5638 andl $~TS_COMPAT,TI_status(%r10)
5835 /* clear IF, that popfq doesn't enable interrupts early */ 5639 /* clear IF, that popfq doesn't enable interrupts early */
5836 andl $~0x200,EFLAGS-R11(%rsp) 5640 andl $~0x200,EFLAGS-R11(%rsp)
5837@@ -284,6 +301,11 @@ ENTRY(ia32_cstar_target) 5641@@ -195,7 +218,7 @@ sysexit_from_sys_call:
5642 movl $AUDIT_ARCH_I386,%edi /* 1st arg: audit arch */
5643 call audit_syscall_entry
5644 movl RAX-ARGOFFSET(%rsp),%eax /* reload syscall number */
5645- cmpl $(IA32_NR_syscalls-1),%eax
5646+ cmpq $(IA32_NR_syscalls-1),%rax
5647 ja ia32_badsys
5648 movl %ebx,%edi /* reload 1st syscall arg */
5649 movl RCX-ARGOFFSET(%rsp),%esi /* reload 2nd syscall arg */
5650@@ -248,7 +271,7 @@ sysenter_tracesys:
5651 call syscall_trace_enter
5652 LOAD_ARGS32 ARGOFFSET /* reload args from stack in case ptrace changed it */
5653 RESTORE_REST
5654- cmpl $(IA32_NR_syscalls-1),%eax
5655+ cmpq $(IA32_NR_syscalls-1),%rax
5656 ja int_ret_from_sys_call /* sysenter_tracesys has set RAX(%rsp) */
5657 jmp sysenter_do_call
5658 CFI_ENDPROC
5659@@ -284,6 +307,11 @@ ENTRY(ia32_cstar_target)
5838 movl %esp,%r8d 5660 movl %esp,%r8d
5839 CFI_REGISTER rsp,r8 5661 CFI_REGISTER rsp,r8
5840 movq PER_CPU_VAR(kernel_stack),%rsp 5662 movq PER_CPU_VAR(kernel_stack),%rsp
@@ -5846,7 +5668,7 @@ diff -urNp linux-2.6.32.21/arch/x86/ia32/ia32entry.S linux-2.6.32.21/arch/x86/ia
5846 /* 5668 /*
5847 * No need to follow this irqs on/off section: the syscall 5669 * No need to follow this irqs on/off section: the syscall
5848 * disabled irqs and here we enable it straight after entry: 5670 * disabled irqs and here we enable it straight after entry:
5849@@ -305,6 +327,12 @@ ENTRY(ia32_cstar_target) 5671@@ -305,6 +333,12 @@ ENTRY(ia32_cstar_target)
5850 /* no need to do an access_ok check here because r8 has been 5672 /* no need to do an access_ok check here because r8 has been
5851 32bit zero extended */ 5673 32bit zero extended */
5852 /* hardware stack frame is complete now */ 5674 /* hardware stack frame is complete now */
@@ -5859,7 +5681,16 @@ diff -urNp linux-2.6.32.21/arch/x86/ia32/ia32entry.S linux-2.6.32.21/arch/x86/ia
5859 1: movl (%r8),%r9d 5681 1: movl (%r8),%r9d
5860 .section __ex_table,"a" 5682 .section __ex_table,"a"
5861 .quad 1b,ia32_badarg 5683 .quad 1b,ia32_badarg
5862@@ -327,6 +355,11 @@ cstar_dispatch: 5684@@ -314,7 +348,7 @@ ENTRY(ia32_cstar_target)
5685 testl $_TIF_WORK_SYSCALL_ENTRY,TI_flags(%r10)
5686 CFI_REMEMBER_STATE
5687 jnz cstar_tracesys
5688- cmpl $IA32_NR_syscalls-1,%eax
5689+ cmpq $IA32_NR_syscalls-1,%rax
5690 ja ia32_badsys
5691 cstar_do_call:
5692 IA32_ARG_FIXUP 1
5693@@ -327,6 +361,11 @@ cstar_dispatch:
5863 testl $_TIF_ALLWORK_MASK,TI_flags(%r10) 5694 testl $_TIF_ALLWORK_MASK,TI_flags(%r10)
5864 jnz sysretl_audit 5695 jnz sysretl_audit
5865 sysretl_from_sys_call: 5696 sysretl_from_sys_call:
@@ -5871,7 +5702,16 @@ diff -urNp linux-2.6.32.21/arch/x86/ia32/ia32entry.S linux-2.6.32.21/arch/x86/ia
5871 andl $~TS_COMPAT,TI_status(%r10) 5702 andl $~TS_COMPAT,TI_status(%r10)
5872 RESTORE_ARGS 1,-ARG_SKIP,1,1,1 5703 RESTORE_ARGS 1,-ARG_SKIP,1,1,1
5873 movl RIP-ARGOFFSET(%rsp),%ecx 5704 movl RIP-ARGOFFSET(%rsp),%ecx
5874@@ -409,6 +442,11 @@ ENTRY(ia32_syscall) 5705@@ -367,7 +406,7 @@ cstar_tracesys:
5706 LOAD_ARGS32 ARGOFFSET, 1 /* reload args from stack in case ptrace changed it */
5707 RESTORE_REST
5708 xchgl %ebp,%r9d
5709- cmpl $(IA32_NR_syscalls-1),%eax
5710+ cmpq $(IA32_NR_syscalls-1),%rax
5711 ja int_ret_from_sys_call /* cstar_tracesys has set RAX(%rsp) */
5712 jmp cstar_do_call
5713 END(ia32_cstar_target)
5714@@ -409,6 +448,11 @@ ENTRY(ia32_syscall)
5875 CFI_REL_OFFSET rip,RIP-RIP 5715 CFI_REL_OFFSET rip,RIP-RIP
5876 PARAVIRT_ADJUST_EXCEPTION_FRAME 5716 PARAVIRT_ADJUST_EXCEPTION_FRAME
5877 SWAPGS 5717 SWAPGS
@@ -5883,9 +5723,48 @@ diff -urNp linux-2.6.32.21/arch/x86/ia32/ia32entry.S linux-2.6.32.21/arch/x86/ia
5883 /* 5723 /*
5884 * No need to follow this irqs on/off section: the syscall 5724 * No need to follow this irqs on/off section: the syscall
5885 * disabled irqs and here we enable it straight after entry: 5725 * disabled irqs and here we enable it straight after entry:
5726@@ -425,7 +469,7 @@ ENTRY(ia32_syscall)
5727 orl $TS_COMPAT,TI_status(%r10)
5728 testl $_TIF_WORK_SYSCALL_ENTRY,TI_flags(%r10)
5729 jnz ia32_tracesys
5730- cmpl $(IA32_NR_syscalls-1),%eax
5731+ cmpq $(IA32_NR_syscalls-1),%rax
5732 ja ia32_badsys
5733 ia32_do_call:
5734 IA32_ARG_FIXUP
5735@@ -444,7 +488,7 @@ ia32_tracesys:
5736 call syscall_trace_enter
5737 LOAD_ARGS32 ARGOFFSET /* reload args from stack in case ptrace changed it */
5738 RESTORE_REST
5739- cmpl $(IA32_NR_syscalls-1),%eax
5740+ cmpq $(IA32_NR_syscalls-1),%rax
5741 ja int_ret_from_sys_call /* ia32_tracesys has set RAX(%rsp) */
5742 jmp ia32_do_call
5743 END(ia32_syscall)
5744diff -urNp linux-2.6.32.21/arch/x86/ia32/ia32_signal.c linux-2.6.32.21/arch/x86/ia32/ia32_signal.c
5745--- linux-2.6.32.21/arch/x86/ia32/ia32_signal.c 2010-08-13 16:24:37.000000000 -0400
5746+++ linux-2.6.32.21/arch/x86/ia32/ia32_signal.c 2010-09-04 15:54:51.000000000 -0400
5747@@ -403,7 +403,7 @@ static void __user *get_sigframe(struct
5748 sp -= frame_size;
5749 /* Align the stack pointer according to the i386 ABI,
5750 * i.e. so that on function entry ((sp + 4) & 15) == 0. */
5751- sp = ((sp + 4) & -16ul) - 4;
5752+ sp = ((sp - 12) & -16ul) - 4;
5753 return (void __user *) sp;
5754 }
5755
5756@@ -503,7 +503,7 @@ int ia32_setup_rt_frame(int sig, struct
5757 0xb8,
5758 __NR_ia32_rt_sigreturn,
5759 0x80cd,
5760- 0,
5761+ 0
5762 };
5763
5764 frame = get_sigframe(ka, regs, sizeof(*frame), &fpstate);
5886diff -urNp linux-2.6.32.21/arch/x86/include/asm/alternative.h linux-2.6.32.21/arch/x86/include/asm/alternative.h 5765diff -urNp linux-2.6.32.21/arch/x86/include/asm/alternative.h linux-2.6.32.21/arch/x86/include/asm/alternative.h
5887--- linux-2.6.32.21/arch/x86/include/asm/alternative.h 2010-08-26 19:42:20.000000000 -0400 5766--- linux-2.6.32.21/arch/x86/include/asm/alternative.h 2010-08-13 16:24:37.000000000 -0400
5888+++ linux-2.6.32.21/arch/x86/include/asm/alternative.h 2010-09-13 08:10:05.000000000 -0400 5767+++ linux-2.6.32.21/arch/x86/include/asm/alternative.h 2010-09-04 15:54:51.000000000 -0400
5889@@ -85,7 +85,7 @@ static inline void alternatives_smp_swit 5768@@ -85,7 +85,7 @@ static inline void alternatives_smp_swit
5890 " .byte 662b-661b\n" /* sourcelen */ \ 5769 " .byte 662b-661b\n" /* sourcelen */ \
5891 " .byte 664f-663f\n" /* replacementlen */ \ 5770 " .byte 664f-663f\n" /* replacementlen */ \
@@ -5896,8 +5775,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/alternative.h linux-2.6.32.21/ar
5896 ".previous" 5775 ".previous"
5897 5776
5898diff -urNp linux-2.6.32.21/arch/x86/include/asm/apm.h linux-2.6.32.21/arch/x86/include/asm/apm.h 5777diff -urNp linux-2.6.32.21/arch/x86/include/asm/apm.h linux-2.6.32.21/arch/x86/include/asm/apm.h
5899--- linux-2.6.32.21/arch/x86/include/asm/apm.h 2010-08-26 19:42:20.000000000 -0400 5778--- linux-2.6.32.21/arch/x86/include/asm/apm.h 2010-08-13 16:24:37.000000000 -0400
5900+++ linux-2.6.32.21/arch/x86/include/asm/apm.h 2010-09-13 08:10:05.000000000 -0400 5779+++ linux-2.6.32.21/arch/x86/include/asm/apm.h 2010-09-04 15:54:51.000000000 -0400
5901@@ -34,7 +34,7 @@ static inline void apm_bios_call_asm(u32 5780@@ -34,7 +34,7 @@ static inline void apm_bios_call_asm(u32
5902 __asm__ __volatile__(APM_DO_ZERO_SEGS 5781 __asm__ __volatile__(APM_DO_ZERO_SEGS
5903 "pushl %%edi\n\t" 5782 "pushl %%edi\n\t"
@@ -5917,8 +5796,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/apm.h linux-2.6.32.21/arch/x86/i
5917 "popl %%ebp\n\t" 5796 "popl %%ebp\n\t"
5918 "popl %%edi\n\t" 5797 "popl %%edi\n\t"
5919diff -urNp linux-2.6.32.21/arch/x86/include/asm/atomic_32.h linux-2.6.32.21/arch/x86/include/asm/atomic_32.h 5798diff -urNp linux-2.6.32.21/arch/x86/include/asm/atomic_32.h linux-2.6.32.21/arch/x86/include/asm/atomic_32.h
5920--- linux-2.6.32.21/arch/x86/include/asm/atomic_32.h 2010-08-26 19:42:20.000000000 -0400 5799--- linux-2.6.32.21/arch/x86/include/asm/atomic_32.h 2010-08-13 16:24:37.000000000 -0400
5921+++ linux-2.6.32.21/arch/x86/include/asm/atomic_32.h 2010-09-13 08:10:05.000000000 -0400 5800+++ linux-2.6.32.21/arch/x86/include/asm/atomic_32.h 2010-09-15 02:35:26.000000000 -0400
5922@@ -25,6 +25,17 @@ static inline int atomic_read(const atom 5801@@ -25,6 +25,17 @@ static inline int atomic_read(const atom
5923 } 5802 }
5924 5803
@@ -6207,7 +6086,7 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/atomic_32.h linux-2.6.32.21/arch
6207 asm volatile(LOCK_PREFIX "xaddl %0, %1" 6086 asm volatile(LOCK_PREFIX "xaddl %0, %1"
6208 : "+r" (i), "+m" (v->counter) 6087 : "+r" (i), "+m" (v->counter)
6209 : : "memory"); 6088 : : "memory");
6210@@ -227,22 +422,34 @@ static inline int atomic_xchg(atomic_t * 6089@@ -227,22 +422,37 @@ static inline int atomic_xchg(atomic_t *
6211 */ 6090 */
6212 static inline int atomic_add_unless(atomic_t *v, int a, int u) 6091 static inline int atomic_add_unless(atomic_t *v, int a, int u)
6213 { 6092 {
@@ -6242,11 +6121,14 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/atomic_32.h linux-2.6.32.21/arch
6242 #define atomic_inc_not_zero(v) atomic_add_unless((v), 1, 0) 6121 #define atomic_inc_not_zero(v) atomic_add_unless((v), 1, 0)
6243 6122
6244 #define atomic_inc_return(v) (atomic_add_return(1, v)) 6123 #define atomic_inc_return(v) (atomic_add_return(1, v))
6245+#define atomic_inc_return_unchecked(v) (atomic_add_return_unchecked(1, v)) 6124+static inline int atomic_inc_return_unchecked(atomic_unchecked_t *v)
6125+{
6126+ return atomic_add_return_unchecked(1, v);
6127+}
6246 #define atomic_dec_return(v) (atomic_sub_return(1, v)) 6128 #define atomic_dec_return(v) (atomic_sub_return(1, v))
6247 6129
6248 /* These are x86-specific, used by some header files */ 6130 /* These are x86-specific, used by some header files */
6249@@ -266,6 +473,14 @@ typedef struct { 6131@@ -266,6 +476,14 @@ typedef struct {
6250 u64 __aligned(8) counter; 6132 u64 __aligned(8) counter;
6251 } atomic64_t; 6133 } atomic64_t;
6252 6134
@@ -6262,8 +6144,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/atomic_32.h linux-2.6.32.21/arch
6262 6144
6263 extern u64 atomic64_cmpxchg(atomic64_t *ptr, u64 old_val, u64 new_val); 6145 extern u64 atomic64_cmpxchg(atomic64_t *ptr, u64 old_val, u64 new_val);
6264diff -urNp linux-2.6.32.21/arch/x86/include/asm/atomic_64.h linux-2.6.32.21/arch/x86/include/asm/atomic_64.h 6146diff -urNp linux-2.6.32.21/arch/x86/include/asm/atomic_64.h linux-2.6.32.21/arch/x86/include/asm/atomic_64.h
6265--- linux-2.6.32.21/arch/x86/include/asm/atomic_64.h 2010-08-26 19:42:20.000000000 -0400 6147--- linux-2.6.32.21/arch/x86/include/asm/atomic_64.h 2010-08-13 16:24:37.000000000 -0400
6266+++ linux-2.6.32.21/arch/x86/include/asm/atomic_64.h 2010-09-13 08:10:05.000000000 -0400 6148+++ linux-2.6.32.21/arch/x86/include/asm/atomic_64.h 2010-09-15 02:36:22.000000000 -0400
6267@@ -24,6 +24,17 @@ static inline int atomic_read(const atom 6149@@ -24,6 +24,17 @@ static inline int atomic_read(const atom
6268 } 6150 }
6269 6151
@@ -6815,15 +6697,18 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/atomic_64.h linux-2.6.32.21/arch
6815 : "+r" (i), "+m" (v->counter) 6697 : "+r" (i), "+m" (v->counter)
6816 : : "memory"); 6698 : : "memory");
6817 return i + __i; 6699 return i + __i;
6818@@ -365,6 +723,7 @@ static inline long atomic64_sub_return(l 6700@@ -365,6 +723,10 @@ static inline long atomic64_sub_return(l
6819 } 6701 }
6820 6702
6821 #define atomic64_inc_return(v) (atomic64_add_return(1, (v))) 6703 #define atomic64_inc_return(v) (atomic64_add_return(1, (v)))
6822+#define atomic64_inc_return_unchecked(v) (atomic64_add_return_unchecked(1, (v))) 6704+static inline long atomic64_inc_return_unchecked(atomic64_unchecked_t *v)
6705+{
6706+ return atomic64_add_return_unchecked(1, v);
6707+}
6823 #define atomic64_dec_return(v) (atomic64_sub_return(1, (v))) 6708 #define atomic64_dec_return(v) (atomic64_sub_return(1, (v)))
6824 6709
6825 static inline long atomic64_cmpxchg(atomic64_t *v, long old, long new) 6710 static inline long atomic64_cmpxchg(atomic64_t *v, long old, long new)
6826@@ -398,17 +757,29 @@ static inline long atomic_xchg(atomic_t 6711@@ -398,17 +760,29 @@ static inline long atomic_xchg(atomic_t
6827 */ 6712 */
6828 static inline int atomic_add_unless(atomic_t *v, int a, int u) 6713 static inline int atomic_add_unless(atomic_t *v, int a, int u)
6829 { 6714 {
@@ -6857,7 +6742,7 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/atomic_64.h linux-2.6.32.21/arch
6857 } 6742 }
6858 6743
6859 #define atomic_inc_not_zero(v) atomic_add_unless((v), 1, 0) 6744 #define atomic_inc_not_zero(v) atomic_add_unless((v), 1, 0)
6860@@ -424,17 +795,29 @@ static inline int atomic_add_unless(atom 6745@@ -424,17 +798,29 @@ static inline int atomic_add_unless(atom
6861 */ 6746 */
6862 static inline int atomic64_add_unless(atomic64_t *v, long a, long u) 6747 static inline int atomic64_add_unless(atomic64_t *v, long a, long u)
6863 { 6748 {
@@ -6892,8 +6777,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/atomic_64.h linux-2.6.32.21/arch
6892 6777
6893 /** 6778 /**
6894diff -urNp linux-2.6.32.21/arch/x86/include/asm/boot.h linux-2.6.32.21/arch/x86/include/asm/boot.h 6779diff -urNp linux-2.6.32.21/arch/x86/include/asm/boot.h linux-2.6.32.21/arch/x86/include/asm/boot.h
6895--- linux-2.6.32.21/arch/x86/include/asm/boot.h 2010-08-26 19:42:20.000000000 -0400 6780--- linux-2.6.32.21/arch/x86/include/asm/boot.h 2010-08-13 16:24:37.000000000 -0400
6896+++ linux-2.6.32.21/arch/x86/include/asm/boot.h 2010-09-13 08:10:05.000000000 -0400 6781+++ linux-2.6.32.21/arch/x86/include/asm/boot.h 2010-09-04 15:54:51.000000000 -0400
6897@@ -11,10 +11,15 @@ 6782@@ -11,10 +11,15 @@
6898 #include <asm/pgtable_types.h> 6783 #include <asm/pgtable_types.h>
6899 6784
@@ -6911,20 +6796,9 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/boot.h linux-2.6.32.21/arch/x86/
6911 /* Minimum kernel alignment, as a power of two */ 6796 /* Minimum kernel alignment, as a power of two */
6912 #ifdef CONFIG_X86_64 6797 #ifdef CONFIG_X86_64
6913 #define MIN_KERNEL_ALIGN_LG2 PMD_SHIFT 6798 #define MIN_KERNEL_ALIGN_LG2 PMD_SHIFT
6914diff -urNp linux-2.6.32.21/arch/x86/include/asm/cache.h linux-2.6.32.21/arch/x86/include/asm/cache.h
6915--- linux-2.6.32.21/arch/x86/include/asm/cache.h 2010-08-26 19:42:20.000000000 -0400
6916+++ linux-2.6.32.21/arch/x86/include/asm/cache.h 2010-09-13 08:10:05.000000000 -0400
6917@@ -8,6 +8,7 @@
6918 #define L1_CACHE_BYTES (1 << L1_CACHE_SHIFT)
6919
6920 #define __read_mostly __attribute__((__section__(".data.read_mostly")))
6921+#define __read_only __attribute__((__section__(".data.read_only")))
6922
6923 #ifdef CONFIG_X86_VSMP
6924 /* vSMP Internode cacheline shift */
6925diff -urNp linux-2.6.32.21/arch/x86/include/asm/cacheflush.h linux-2.6.32.21/arch/x86/include/asm/cacheflush.h 6799diff -urNp linux-2.6.32.21/arch/x86/include/asm/cacheflush.h linux-2.6.32.21/arch/x86/include/asm/cacheflush.h
6926--- linux-2.6.32.21/arch/x86/include/asm/cacheflush.h 2010-08-26 19:42:20.000000000 -0400 6800--- linux-2.6.32.21/arch/x86/include/asm/cacheflush.h 2010-08-13 16:24:37.000000000 -0400
6927+++ linux-2.6.32.21/arch/x86/include/asm/cacheflush.h 2010-09-13 08:10:05.000000000 -0400 6801+++ linux-2.6.32.21/arch/x86/include/asm/cacheflush.h 2010-09-04 15:54:51.000000000 -0400
6928@@ -60,7 +60,7 @@ PAGEFLAG(WC, WC) 6802@@ -60,7 +60,7 @@ PAGEFLAG(WC, WC)
6929 static inline unsigned long get_page_memtype(struct page *pg) 6803 static inline unsigned long get_page_memtype(struct page *pg)
6930 { 6804 {
@@ -6943,9 +6817,20 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/cacheflush.h linux-2.6.32.21/arc
6943 ClearPageUncached(pg); 6817 ClearPageUncached(pg);
6944 ClearPageWC(pg); 6818 ClearPageWC(pg);
6945 break; 6819 break;
6820diff -urNp linux-2.6.32.21/arch/x86/include/asm/cache.h linux-2.6.32.21/arch/x86/include/asm/cache.h
6821--- linux-2.6.32.21/arch/x86/include/asm/cache.h 2010-08-13 16:24:37.000000000 -0400
6822+++ linux-2.6.32.21/arch/x86/include/asm/cache.h 2010-09-04 15:54:51.000000000 -0400
6823@@ -8,6 +8,7 @@
6824 #define L1_CACHE_BYTES (1 << L1_CACHE_SHIFT)
6825
6826 #define __read_mostly __attribute__((__section__(".data.read_mostly")))
6827+#define __read_only __attribute__((__section__(".data.read_only")))
6828
6829 #ifdef CONFIG_X86_VSMP
6830 /* vSMP Internode cacheline shift */
6946diff -urNp linux-2.6.32.21/arch/x86/include/asm/checksum_32.h linux-2.6.32.21/arch/x86/include/asm/checksum_32.h 6831diff -urNp linux-2.6.32.21/arch/x86/include/asm/checksum_32.h linux-2.6.32.21/arch/x86/include/asm/checksum_32.h
6947--- linux-2.6.32.21/arch/x86/include/asm/checksum_32.h 2010-08-26 19:42:20.000000000 -0400 6832--- linux-2.6.32.21/arch/x86/include/asm/checksum_32.h 2010-08-13 16:24:37.000000000 -0400
6948+++ linux-2.6.32.21/arch/x86/include/asm/checksum_32.h 2010-09-13 08:10:05.000000000 -0400 6833+++ linux-2.6.32.21/arch/x86/include/asm/checksum_32.h 2010-09-04 15:54:51.000000000 -0400
6949@@ -31,6 +31,14 @@ asmlinkage __wsum csum_partial_copy_gene 6834@@ -31,6 +31,14 @@ asmlinkage __wsum csum_partial_copy_gene
6950 int len, __wsum sum, 6835 int len, __wsum sum,
6951 int *src_err_ptr, int *dst_err_ptr); 6836 int *src_err_ptr, int *dst_err_ptr);
@@ -6979,9 +6864,21 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/checksum_32.h linux-2.6.32.21/ar
6979 len, sum, NULL, err_ptr); 6864 len, sum, NULL, err_ptr);
6980 6865
6981 if (len) 6866 if (len)
6867diff -urNp linux-2.6.32.21/arch/x86/include/asm/compat.h linux-2.6.32.21/arch/x86/include/asm/compat.h
6868--- linux-2.6.32.21/arch/x86/include/asm/compat.h 2010-08-13 16:24:37.000000000 -0400
6869+++ linux-2.6.32.21/arch/x86/include/asm/compat.h 2010-09-15 02:03:09.000000000 -0400
6870@@ -204,7 +204,7 @@ static inline compat_uptr_t ptr_to_compa
6871 return (u32)(unsigned long)uptr;
6872 }
6873
6874-static inline void __user *compat_alloc_user_space(long len)
6875+static inline void __user *arch_compat_alloc_user_space(long len)
6876 {
6877 struct pt_regs *regs = task_pt_regs(current);
6878 return (void __user *)regs->sp - len;
6982diff -urNp linux-2.6.32.21/arch/x86/include/asm/desc.h linux-2.6.32.21/arch/x86/include/asm/desc.h 6879diff -urNp linux-2.6.32.21/arch/x86/include/asm/desc.h linux-2.6.32.21/arch/x86/include/asm/desc.h
6983--- linux-2.6.32.21/arch/x86/include/asm/desc.h 2010-08-26 19:42:20.000000000 -0400 6880--- linux-2.6.32.21/arch/x86/include/asm/desc.h 2010-08-13 16:24:37.000000000 -0400
6984+++ linux-2.6.32.21/arch/x86/include/asm/desc.h 2010-09-13 08:10:05.000000000 -0400 6881+++ linux-2.6.32.21/arch/x86/include/asm/desc.h 2010-09-04 15:54:51.000000000 -0400
6985@@ -4,6 +4,7 @@ 6882@@ -4,6 +4,7 @@
6986 #include <asm/desc_defs.h> 6883 #include <asm/desc_defs.h>
6987 #include <asm/ldt.h> 6884 #include <asm/ldt.h>
@@ -7152,8 +7049,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/desc.h linux-2.6.32.21/arch/x86/
7152+ 7049+
7153 #endif /* _ASM_X86_DESC_H */ 7050 #endif /* _ASM_X86_DESC_H */
7154diff -urNp linux-2.6.32.21/arch/x86/include/asm/device.h linux-2.6.32.21/arch/x86/include/asm/device.h 7051diff -urNp linux-2.6.32.21/arch/x86/include/asm/device.h linux-2.6.32.21/arch/x86/include/asm/device.h
7155--- linux-2.6.32.21/arch/x86/include/asm/device.h 2010-08-26 19:42:20.000000000 -0400 7052--- linux-2.6.32.21/arch/x86/include/asm/device.h 2010-08-13 16:24:37.000000000 -0400
7156+++ linux-2.6.32.21/arch/x86/include/asm/device.h 2010-09-13 08:10:05.000000000 -0400 7053+++ linux-2.6.32.21/arch/x86/include/asm/device.h 2010-09-04 15:54:51.000000000 -0400
7157@@ -6,7 +6,7 @@ struct dev_archdata { 7054@@ -6,7 +6,7 @@ struct dev_archdata {
7158 void *acpi_handle; 7055 void *acpi_handle;
7159 #endif 7056 #endif
@@ -7164,8 +7061,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/device.h linux-2.6.32.21/arch/x8
7164 #ifdef CONFIG_DMAR 7061 #ifdef CONFIG_DMAR
7165 void *iommu; /* hook for IOMMU specific extension */ 7062 void *iommu; /* hook for IOMMU specific extension */
7166diff -urNp linux-2.6.32.21/arch/x86/include/asm/dma-mapping.h linux-2.6.32.21/arch/x86/include/asm/dma-mapping.h 7063diff -urNp linux-2.6.32.21/arch/x86/include/asm/dma-mapping.h linux-2.6.32.21/arch/x86/include/asm/dma-mapping.h
7167--- linux-2.6.32.21/arch/x86/include/asm/dma-mapping.h 2010-08-26 19:42:20.000000000 -0400 7064--- linux-2.6.32.21/arch/x86/include/asm/dma-mapping.h 2010-08-13 16:24:37.000000000 -0400
7168+++ linux-2.6.32.21/arch/x86/include/asm/dma-mapping.h 2010-09-13 08:10:05.000000000 -0400 7065+++ linux-2.6.32.21/arch/x86/include/asm/dma-mapping.h 2010-09-04 15:54:51.000000000 -0400
7169@@ -25,9 +25,9 @@ extern int iommu_merge; 7066@@ -25,9 +25,9 @@ extern int iommu_merge;
7170 extern struct device x86_dma_fallback_dev; 7067 extern struct device x86_dma_fallback_dev;
7171 extern int panic_on_overflow; 7068 extern int panic_on_overflow;
@@ -7206,8 +7103,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/dma-mapping.h linux-2.6.32.21/ar
7206 WARN_ON(irqs_disabled()); /* for portability */ 7103 WARN_ON(irqs_disabled()); /* for portability */
7207 7104
7208diff -urNp linux-2.6.32.21/arch/x86/include/asm/e820.h linux-2.6.32.21/arch/x86/include/asm/e820.h 7105diff -urNp linux-2.6.32.21/arch/x86/include/asm/e820.h linux-2.6.32.21/arch/x86/include/asm/e820.h
7209--- linux-2.6.32.21/arch/x86/include/asm/e820.h 2010-08-26 19:42:20.000000000 -0400 7106--- linux-2.6.32.21/arch/x86/include/asm/e820.h 2010-08-13 16:24:37.000000000 -0400
7210+++ linux-2.6.32.21/arch/x86/include/asm/e820.h 2010-09-13 08:10:05.000000000 -0400 7107+++ linux-2.6.32.21/arch/x86/include/asm/e820.h 2010-09-04 15:54:51.000000000 -0400
7211@@ -133,7 +133,7 @@ extern char *default_machine_specific_me 7108@@ -133,7 +133,7 @@ extern char *default_machine_specific_me
7212 #define ISA_END_ADDRESS 0x100000 7109 #define ISA_END_ADDRESS 0x100000
7213 #define is_ISA_range(s, e) ((s) >= ISA_START_ADDRESS && (e) < ISA_END_ADDRESS) 7110 #define is_ISA_range(s, e) ((s) >= ISA_START_ADDRESS && (e) < ISA_END_ADDRESS)
@@ -7218,8 +7115,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/e820.h linux-2.6.32.21/arch/x86/
7218 7115
7219 #ifdef __KERNEL__ 7116 #ifdef __KERNEL__
7220diff -urNp linux-2.6.32.21/arch/x86/include/asm/elf.h linux-2.6.32.21/arch/x86/include/asm/elf.h 7117diff -urNp linux-2.6.32.21/arch/x86/include/asm/elf.h linux-2.6.32.21/arch/x86/include/asm/elf.h
7221--- linux-2.6.32.21/arch/x86/include/asm/elf.h 2010-08-26 19:42:20.000000000 -0400 7118--- linux-2.6.32.21/arch/x86/include/asm/elf.h 2010-08-13 16:24:37.000000000 -0400
7222+++ linux-2.6.32.21/arch/x86/include/asm/elf.h 2010-09-13 08:10:05.000000000 -0400 7119+++ linux-2.6.32.21/arch/x86/include/asm/elf.h 2010-09-04 15:54:51.000000000 -0400
7223@@ -257,7 +257,25 @@ extern int force_personality32; 7120@@ -257,7 +257,25 @@ extern int force_personality32;
7224 the loader. We need to make sure that it is out of the way of the program 7121 the loader. We need to make sure that it is out of the way of the program
7225 that it will "exec", and that there is sufficient room for the brk. */ 7122 that it will "exec", and that there is sufficient room for the brk. */
@@ -7274,8 +7171,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/elf.h linux-2.6.32.21/arch/x86/i
7274- 7171-
7275 #endif /* _ASM_X86_ELF_H */ 7172 #endif /* _ASM_X86_ELF_H */
7276diff -urNp linux-2.6.32.21/arch/x86/include/asm/futex.h linux-2.6.32.21/arch/x86/include/asm/futex.h 7173diff -urNp linux-2.6.32.21/arch/x86/include/asm/futex.h linux-2.6.32.21/arch/x86/include/asm/futex.h
7277--- linux-2.6.32.21/arch/x86/include/asm/futex.h 2010-08-26 19:42:20.000000000 -0400 7174--- linux-2.6.32.21/arch/x86/include/asm/futex.h 2010-08-13 16:24:37.000000000 -0400
7278+++ linux-2.6.32.21/arch/x86/include/asm/futex.h 2010-09-13 08:10:05.000000000 -0400 7175+++ linux-2.6.32.21/arch/x86/include/asm/futex.h 2010-09-04 15:54:51.000000000 -0400
7279@@ -11,17 +11,54 @@ 7176@@ -11,17 +11,54 @@
7280 #include <asm/processor.h> 7177 #include <asm/processor.h>
7281 #include <asm/system.h> 7178 #include <asm/system.h>
@@ -7413,8 +7310,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/futex.h linux-2.6.32.21/arch/x86
7413 ); 7310 );
7414 7311
7415diff -urNp linux-2.6.32.21/arch/x86/include/asm/i387.h linux-2.6.32.21/arch/x86/include/asm/i387.h 7312diff -urNp linux-2.6.32.21/arch/x86/include/asm/i387.h linux-2.6.32.21/arch/x86/include/asm/i387.h
7416--- linux-2.6.32.21/arch/x86/include/asm/i387.h 2010-08-26 19:42:20.000000000 -0400 7313--- linux-2.6.32.21/arch/x86/include/asm/i387.h 2010-08-13 16:24:37.000000000 -0400
7417+++ linux-2.6.32.21/arch/x86/include/asm/i387.h 2010-09-13 08:10:05.000000000 -0400 7314+++ linux-2.6.32.21/arch/x86/include/asm/i387.h 2010-09-04 15:54:51.000000000 -0400
7418@@ -60,6 +60,11 @@ static inline int fxrstor_checking(struc 7315@@ -60,6 +60,11 @@ static inline int fxrstor_checking(struc
7419 { 7316 {
7420 int err; 7317 int err;
@@ -7456,8 +7353,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/i387.h linux-2.6.32.21/arch/x86/
7456 /* 7353 /*
7457 * These must be called with preempt disabled 7354 * These must be called with preempt disabled
7458diff -urNp linux-2.6.32.21/arch/x86/include/asm/io_64.h linux-2.6.32.21/arch/x86/include/asm/io_64.h 7355diff -urNp linux-2.6.32.21/arch/x86/include/asm/io_64.h linux-2.6.32.21/arch/x86/include/asm/io_64.h
7459--- linux-2.6.32.21/arch/x86/include/asm/io_64.h 2010-08-26 19:42:20.000000000 -0400 7356--- linux-2.6.32.21/arch/x86/include/asm/io_64.h 2010-08-13 16:24:37.000000000 -0400
7460+++ linux-2.6.32.21/arch/x86/include/asm/io_64.h 2010-09-13 08:10:05.000000000 -0400 7357+++ linux-2.6.32.21/arch/x86/include/asm/io_64.h 2010-09-04 15:54:51.000000000 -0400
7461@@ -140,6 +140,17 @@ __OUTS(l) 7358@@ -140,6 +140,17 @@ __OUTS(l)
7462 7359
7463 #include <linux/vmalloc.h> 7360 #include <linux/vmalloc.h>
@@ -7477,8 +7374,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/io_64.h linux-2.6.32.21/arch/x86
7477 7374
7478 void __memcpy_fromio(void *, unsigned long, unsigned); 7375 void __memcpy_fromio(void *, unsigned long, unsigned);
7479diff -urNp linux-2.6.32.21/arch/x86/include/asm/iommu.h linux-2.6.32.21/arch/x86/include/asm/iommu.h 7376diff -urNp linux-2.6.32.21/arch/x86/include/asm/iommu.h linux-2.6.32.21/arch/x86/include/asm/iommu.h
7480--- linux-2.6.32.21/arch/x86/include/asm/iommu.h 2010-08-26 19:42:20.000000000 -0400 7377--- linux-2.6.32.21/arch/x86/include/asm/iommu.h 2010-08-13 16:24:37.000000000 -0400
7481+++ linux-2.6.32.21/arch/x86/include/asm/iommu.h 2010-09-13 08:10:05.000000000 -0400 7378+++ linux-2.6.32.21/arch/x86/include/asm/iommu.h 2010-09-04 15:54:51.000000000 -0400
7482@@ -3,7 +3,7 @@ 7379@@ -3,7 +3,7 @@
7483 7380
7484 extern void pci_iommu_shutdown(void); 7381 extern void pci_iommu_shutdown(void);
@@ -7489,8 +7386,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/iommu.h linux-2.6.32.21/arch/x86
7489 extern int iommu_detected; 7386 extern int iommu_detected;
7490 extern int iommu_pass_through; 7387 extern int iommu_pass_through;
7491diff -urNp linux-2.6.32.21/arch/x86/include/asm/irqflags.h linux-2.6.32.21/arch/x86/include/asm/irqflags.h 7388diff -urNp linux-2.6.32.21/arch/x86/include/asm/irqflags.h linux-2.6.32.21/arch/x86/include/asm/irqflags.h
7492--- linux-2.6.32.21/arch/x86/include/asm/irqflags.h 2010-08-26 19:42:20.000000000 -0400 7389--- linux-2.6.32.21/arch/x86/include/asm/irqflags.h 2010-08-13 16:24:37.000000000 -0400
7493+++ linux-2.6.32.21/arch/x86/include/asm/irqflags.h 2010-09-13 08:10:05.000000000 -0400 7390+++ linux-2.6.32.21/arch/x86/include/asm/irqflags.h 2010-09-04 15:54:51.000000000 -0400
7494@@ -142,6 +142,11 @@ static inline unsigned long __raw_local_ 7391@@ -142,6 +142,11 @@ static inline unsigned long __raw_local_
7495 sti; \ 7392 sti; \
7496 sysexit 7393 sysexit
@@ -7504,8 +7401,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/irqflags.h linux-2.6.32.21/arch/
7504 #define INTERRUPT_RETURN iret 7401 #define INTERRUPT_RETURN iret
7505 #define ENABLE_INTERRUPTS_SYSEXIT sti; sysexit 7402 #define ENABLE_INTERRUPTS_SYSEXIT sti; sysexit
7506diff -urNp linux-2.6.32.21/arch/x86/include/asm/kvm_host.h linux-2.6.32.21/arch/x86/include/asm/kvm_host.h 7403diff -urNp linux-2.6.32.21/arch/x86/include/asm/kvm_host.h linux-2.6.32.21/arch/x86/include/asm/kvm_host.h
7507--- linux-2.6.32.21/arch/x86/include/asm/kvm_host.h 2010-08-26 19:42:20.000000000 -0400 7404--- linux-2.6.32.21/arch/x86/include/asm/kvm_host.h 2010-08-13 16:24:37.000000000 -0400
7508+++ linux-2.6.32.21/arch/x86/include/asm/kvm_host.h 2010-09-13 08:10:06.000000000 -0400 7405+++ linux-2.6.32.21/arch/x86/include/asm/kvm_host.h 2010-09-04 15:54:51.000000000 -0400
7509@@ -533,7 +533,7 @@ struct kvm_x86_ops { 7406@@ -533,7 +533,7 @@ struct kvm_x86_ops {
7510 const struct trace_print_flags *exit_reasons_str; 7407 const struct trace_print_flags *exit_reasons_str;
7511 }; 7408 };
@@ -7516,8 +7413,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/kvm_host.h linux-2.6.32.21/arch/
7516 int kvm_mmu_module_init(void); 7413 int kvm_mmu_module_init(void);
7517 void kvm_mmu_module_exit(void); 7414 void kvm_mmu_module_exit(void);
7518diff -urNp linux-2.6.32.21/arch/x86/include/asm/local.h linux-2.6.32.21/arch/x86/include/asm/local.h 7415diff -urNp linux-2.6.32.21/arch/x86/include/asm/local.h linux-2.6.32.21/arch/x86/include/asm/local.h
7519--- linux-2.6.32.21/arch/x86/include/asm/local.h 2010-08-26 19:42:20.000000000 -0400 7416--- linux-2.6.32.21/arch/x86/include/asm/local.h 2010-08-13 16:24:37.000000000 -0400
7520+++ linux-2.6.32.21/arch/x86/include/asm/local.h 2010-09-13 08:10:06.000000000 -0400 7417+++ linux-2.6.32.21/arch/x86/include/asm/local.h 2010-09-04 15:54:51.000000000 -0400
7521@@ -18,26 +18,90 @@ typedef struct { 7418@@ -18,26 +18,90 @@ typedef struct {
7522 7419
7523 static inline void local_inc(local_t *l) 7420 static inline void local_inc(local_t *l)
@@ -7743,8 +7640,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/local.h linux-2.6.32.21/arch/x86
7743 : : "memory"); 7640 : : "memory");
7744 return i + __i; 7641 return i + __i;
7745diff -urNp linux-2.6.32.21/arch/x86/include/asm/mc146818rtc.h linux-2.6.32.21/arch/x86/include/asm/mc146818rtc.h 7642diff -urNp linux-2.6.32.21/arch/x86/include/asm/mc146818rtc.h linux-2.6.32.21/arch/x86/include/asm/mc146818rtc.h
7746--- linux-2.6.32.21/arch/x86/include/asm/mc146818rtc.h 2010-08-26 19:42:20.000000000 -0400 7643--- linux-2.6.32.21/arch/x86/include/asm/mc146818rtc.h 2010-08-13 16:24:37.000000000 -0400
7747+++ linux-2.6.32.21/arch/x86/include/asm/mc146818rtc.h 2010-09-13 08:10:06.000000000 -0400 7644+++ linux-2.6.32.21/arch/x86/include/asm/mc146818rtc.h 2010-09-04 15:54:51.000000000 -0400
7748@@ -81,8 +81,8 @@ static inline unsigned char current_lock 7645@@ -81,8 +81,8 @@ static inline unsigned char current_lock
7749 #else 7646 #else
7750 #define lock_cmos_prefix(reg) do {} while (0) 7647 #define lock_cmos_prefix(reg) do {} while (0)
@@ -7757,8 +7654,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/mc146818rtc.h linux-2.6.32.21/ar
7757 #define current_lock_cmos_reg() 0 7654 #define current_lock_cmos_reg() 0
7758 #endif 7655 #endif
7759diff -urNp linux-2.6.32.21/arch/x86/include/asm/microcode.h linux-2.6.32.21/arch/x86/include/asm/microcode.h 7656diff -urNp linux-2.6.32.21/arch/x86/include/asm/microcode.h linux-2.6.32.21/arch/x86/include/asm/microcode.h
7760--- linux-2.6.32.21/arch/x86/include/asm/microcode.h 2010-08-26 19:42:20.000000000 -0400 7657--- linux-2.6.32.21/arch/x86/include/asm/microcode.h 2010-08-13 16:24:37.000000000 -0400
7761+++ linux-2.6.32.21/arch/x86/include/asm/microcode.h 2010-09-13 08:10:06.000000000 -0400 7658+++ linux-2.6.32.21/arch/x86/include/asm/microcode.h 2010-09-04 15:54:51.000000000 -0400
7762@@ -12,13 +12,13 @@ struct device; 7659@@ -12,13 +12,13 @@ struct device;
7763 enum ucode_state { UCODE_ERROR, UCODE_OK, UCODE_NFOUND }; 7660 enum ucode_state { UCODE_ERROR, UCODE_OK, UCODE_NFOUND };
7764 7661
@@ -7800,8 +7697,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/microcode.h linux-2.6.32.21/arch
7800 return NULL; 7697 return NULL;
7801 } 7698 }
7802diff -urNp linux-2.6.32.21/arch/x86/include/asm/mman.h linux-2.6.32.21/arch/x86/include/asm/mman.h 7699diff -urNp linux-2.6.32.21/arch/x86/include/asm/mman.h linux-2.6.32.21/arch/x86/include/asm/mman.h
7803--- linux-2.6.32.21/arch/x86/include/asm/mman.h 2010-08-26 19:42:20.000000000 -0400 7700--- linux-2.6.32.21/arch/x86/include/asm/mman.h 2010-08-13 16:24:37.000000000 -0400
7804+++ linux-2.6.32.21/arch/x86/include/asm/mman.h 2010-09-13 08:10:06.000000000 -0400 7701+++ linux-2.6.32.21/arch/x86/include/asm/mman.h 2010-09-04 15:54:51.000000000 -0400
7805@@ -5,4 +5,14 @@ 7702@@ -5,4 +5,14 @@
7806 7703
7807 #include <asm-generic/mman.h> 7704 #include <asm-generic/mman.h>
@@ -7817,38 +7714,9 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/mman.h linux-2.6.32.21/arch/x86/
7817+#endif 7714+#endif
7818+ 7715+
7819 #endif /* _ASM_X86_MMAN_H */ 7716 #endif /* _ASM_X86_MMAN_H */
7820diff -urNp linux-2.6.32.21/arch/x86/include/asm/mmu.h linux-2.6.32.21/arch/x86/include/asm/mmu.h
7821--- linux-2.6.32.21/arch/x86/include/asm/mmu.h 2010-08-26 19:42:20.000000000 -0400
7822+++ linux-2.6.32.21/arch/x86/include/asm/mmu.h 2010-09-13 08:10:06.000000000 -0400
7823@@ -9,10 +9,23 @@
7824 * we put the segment information here.
7825 */
7826 typedef struct {
7827- void *ldt;
7828+ struct desc_struct *ldt;
7829 int size;
7830 struct mutex lock;
7831- void *vdso;
7832+ unsigned long vdso;
7833+
7834+#ifdef CONFIG_X86_32
7835+#if defined(CONFIG_PAX_PAGEEXEC) || defined(CONFIG_PAX_SEGMEXEC)
7836+ unsigned long user_cs_base;
7837+ unsigned long user_cs_limit;
7838+
7839+#if defined(CONFIG_PAX_PAGEEXEC) && defined(CONFIG_SMP)
7840+ cpumask_t cpu_user_cs_mask;
7841+#endif
7842+
7843+#endif
7844+#endif
7845+
7846 } mm_context_t;
7847
7848 #ifdef CONFIG_SMP
7849diff -urNp linux-2.6.32.21/arch/x86/include/asm/mmu_context.h linux-2.6.32.21/arch/x86/include/asm/mmu_context.h 7717diff -urNp linux-2.6.32.21/arch/x86/include/asm/mmu_context.h linux-2.6.32.21/arch/x86/include/asm/mmu_context.h
7850--- linux-2.6.32.21/arch/x86/include/asm/mmu_context.h 2010-08-26 19:42:20.000000000 -0400 7718--- linux-2.6.32.21/arch/x86/include/asm/mmu_context.h 2010-08-13 16:24:37.000000000 -0400
7851+++ linux-2.6.32.21/arch/x86/include/asm/mmu_context.h 2010-09-13 08:10:06.000000000 -0400 7719+++ linux-2.6.32.21/arch/x86/include/asm/mmu_context.h 2010-09-04 15:54:51.000000000 -0400
7852@@ -24,6 +24,21 @@ void destroy_context(struct mm_struct *m 7720@@ -24,6 +24,21 @@ void destroy_context(struct mm_struct *m
7853 7721
7854 static inline void enter_lazy_tlb(struct mm_struct *mm, struct task_struct *tsk) 7722 static inline void enter_lazy_tlb(struct mm_struct *mm, struct task_struct *tsk)
@@ -7973,9 +7841,38 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/mmu_context.h linux-2.6.32.21/ar
7973 } 7841 }
7974 7842
7975 #define activate_mm(prev, next) \ 7843 #define activate_mm(prev, next) \
7844diff -urNp linux-2.6.32.21/arch/x86/include/asm/mmu.h linux-2.6.32.21/arch/x86/include/asm/mmu.h
7845--- linux-2.6.32.21/arch/x86/include/asm/mmu.h 2010-08-13 16:24:37.000000000 -0400
7846+++ linux-2.6.32.21/arch/x86/include/asm/mmu.h 2010-09-04 15:54:51.000000000 -0400
7847@@ -9,10 +9,23 @@
7848 * we put the segment information here.
7849 */
7850 typedef struct {
7851- void *ldt;
7852+ struct desc_struct *ldt;
7853 int size;
7854 struct mutex lock;
7855- void *vdso;
7856+ unsigned long vdso;
7857+
7858+#ifdef CONFIG_X86_32
7859+#if defined(CONFIG_PAX_PAGEEXEC) || defined(CONFIG_PAX_SEGMEXEC)
7860+ unsigned long user_cs_base;
7861+ unsigned long user_cs_limit;
7862+
7863+#if defined(CONFIG_PAX_PAGEEXEC) && defined(CONFIG_SMP)
7864+ cpumask_t cpu_user_cs_mask;
7865+#endif
7866+
7867+#endif
7868+#endif
7869+
7870 } mm_context_t;
7871
7872 #ifdef CONFIG_SMP
7976diff -urNp linux-2.6.32.21/arch/x86/include/asm/module.h linux-2.6.32.21/arch/x86/include/asm/module.h 7873diff -urNp linux-2.6.32.21/arch/x86/include/asm/module.h linux-2.6.32.21/arch/x86/include/asm/module.h
7977--- linux-2.6.32.21/arch/x86/include/asm/module.h 2010-08-26 19:42:20.000000000 -0400 7874--- linux-2.6.32.21/arch/x86/include/asm/module.h 2010-08-13 16:24:37.000000000 -0400
7978+++ linux-2.6.32.21/arch/x86/include/asm/module.h 2010-09-13 08:10:06.000000000 -0400 7875+++ linux-2.6.32.21/arch/x86/include/asm/module.h 2010-09-04 15:54:51.000000000 -0400
7979@@ -59,13 +59,31 @@ 7876@@ -59,13 +59,31 @@
7980 #error unknown processor family 7877 #error unknown processor family
7981 #endif 7878 #endif
@@ -8010,8 +7907,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/module.h linux-2.6.32.21/arch/x8
8010 7907
8011 #endif /* _ASM_X86_MODULE_H */ 7908 #endif /* _ASM_X86_MODULE_H */
8012diff -urNp linux-2.6.32.21/arch/x86/include/asm/page_32_types.h linux-2.6.32.21/arch/x86/include/asm/page_32_types.h 7909diff -urNp linux-2.6.32.21/arch/x86/include/asm/page_32_types.h linux-2.6.32.21/arch/x86/include/asm/page_32_types.h
8013--- linux-2.6.32.21/arch/x86/include/asm/page_32_types.h 2010-08-26 19:42:20.000000000 -0400 7910--- linux-2.6.32.21/arch/x86/include/asm/page_32_types.h 2010-08-13 16:24:37.000000000 -0400
8014+++ linux-2.6.32.21/arch/x86/include/asm/page_32_types.h 2010-09-13 08:10:06.000000000 -0400 7911+++ linux-2.6.32.21/arch/x86/include/asm/page_32_types.h 2010-09-04 15:54:51.000000000 -0400
8015@@ -15,6 +15,10 @@ 7912@@ -15,6 +15,10 @@
8016 */ 7913 */
8017 #define __PAGE_OFFSET _AC(CONFIG_PAGE_OFFSET, UL) 7914 #define __PAGE_OFFSET _AC(CONFIG_PAGE_OFFSET, UL)
@@ -8024,8 +7921,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/page_32_types.h linux-2.6.32.21/
8024 #define THREAD_ORDER 0 7921 #define THREAD_ORDER 0
8025 #else 7922 #else
8026diff -urNp linux-2.6.32.21/arch/x86/include/asm/paravirt.h linux-2.6.32.21/arch/x86/include/asm/paravirt.h 7923diff -urNp linux-2.6.32.21/arch/x86/include/asm/paravirt.h linux-2.6.32.21/arch/x86/include/asm/paravirt.h
8027--- linux-2.6.32.21/arch/x86/include/asm/paravirt.h 2010-08-26 19:42:20.000000000 -0400 7924--- linux-2.6.32.21/arch/x86/include/asm/paravirt.h 2010-08-13 16:24:37.000000000 -0400
8028+++ linux-2.6.32.21/arch/x86/include/asm/paravirt.h 2010-09-13 08:10:06.000000000 -0400 7925+++ linux-2.6.32.21/arch/x86/include/asm/paravirt.h 2010-09-04 15:54:51.000000000 -0400
8029@@ -729,6 +729,21 @@ static inline void __set_fixmap(unsigned 7926@@ -729,6 +729,21 @@ static inline void __set_fixmap(unsigned
8030 pv_mmu_ops.set_fixmap(idx, phys, flags); 7927 pv_mmu_ops.set_fixmap(idx, phys, flags);
8031 } 7928 }
@@ -8080,8 +7977,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/paravirt.h linux-2.6.32.21/arch/
8080 7977
8081 #endif /* __ASSEMBLY__ */ 7978 #endif /* __ASSEMBLY__ */
8082diff -urNp linux-2.6.32.21/arch/x86/include/asm/paravirt_types.h linux-2.6.32.21/arch/x86/include/asm/paravirt_types.h 7979diff -urNp linux-2.6.32.21/arch/x86/include/asm/paravirt_types.h linux-2.6.32.21/arch/x86/include/asm/paravirt_types.h
8083--- linux-2.6.32.21/arch/x86/include/asm/paravirt_types.h 2010-08-26 19:42:20.000000000 -0400 7980--- linux-2.6.32.21/arch/x86/include/asm/paravirt_types.h 2010-08-13 16:24:37.000000000 -0400
8084+++ linux-2.6.32.21/arch/x86/include/asm/paravirt_types.h 2010-09-13 08:10:06.000000000 -0400 7981+++ linux-2.6.32.21/arch/x86/include/asm/paravirt_types.h 2010-09-04 15:54:51.000000000 -0400
8085@@ -316,6 +316,12 @@ struct pv_mmu_ops { 7982@@ -316,6 +316,12 @@ struct pv_mmu_ops {
8086 an mfn. We can tell which is which from the index. */ 7983 an mfn. We can tell which is which from the index. */
8087 void (*set_fixmap)(unsigned /* enum fixed_addresses */ idx, 7984 void (*set_fixmap)(unsigned /* enum fixed_addresses */ idx,
@@ -8096,8 +7993,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/paravirt_types.h linux-2.6.32.21
8096 7993
8097 struct raw_spinlock; 7994 struct raw_spinlock;
8098diff -urNp linux-2.6.32.21/arch/x86/include/asm/pci_x86.h linux-2.6.32.21/arch/x86/include/asm/pci_x86.h 7995diff -urNp linux-2.6.32.21/arch/x86/include/asm/pci_x86.h linux-2.6.32.21/arch/x86/include/asm/pci_x86.h
8099--- linux-2.6.32.21/arch/x86/include/asm/pci_x86.h 2010-08-26 19:42:20.000000000 -0400 7996--- linux-2.6.32.21/arch/x86/include/asm/pci_x86.h 2010-08-13 16:24:37.000000000 -0400
8100+++ linux-2.6.32.21/arch/x86/include/asm/pci_x86.h 2010-09-13 08:10:06.000000000 -0400 7997+++ linux-2.6.32.21/arch/x86/include/asm/pci_x86.h 2010-09-04 15:54:51.000000000 -0400
8101@@ -89,16 +89,16 @@ extern int (*pcibios_enable_irq)(struct 7998@@ -89,16 +89,16 @@ extern int (*pcibios_enable_irq)(struct
8102 extern void (*pcibios_disable_irq)(struct pci_dev *dev); 7999 extern void (*pcibios_disable_irq)(struct pci_dev *dev);
8103 8000
@@ -8121,8 +8018,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/pci_x86.h linux-2.6.32.21/arch/x
8121 8018
8122 /* arch_initcall level */ 8019 /* arch_initcall level */
8123diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgalloc.h linux-2.6.32.21/arch/x86/include/asm/pgalloc.h 8020diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgalloc.h linux-2.6.32.21/arch/x86/include/asm/pgalloc.h
8124--- linux-2.6.32.21/arch/x86/include/asm/pgalloc.h 2010-08-26 19:42:20.000000000 -0400 8021--- linux-2.6.32.21/arch/x86/include/asm/pgalloc.h 2010-08-13 16:24:37.000000000 -0400
8125+++ linux-2.6.32.21/arch/x86/include/asm/pgalloc.h 2010-09-13 08:10:06.000000000 -0400 8022+++ linux-2.6.32.21/arch/x86/include/asm/pgalloc.h 2010-09-04 15:54:51.000000000 -0400
8126@@ -63,6 +63,13 @@ static inline void pmd_populate_kernel(s 8023@@ -63,6 +63,13 @@ static inline void pmd_populate_kernel(s
8127 pmd_t *pmd, pte_t *pte) 8024 pmd_t *pmd, pte_t *pte)
8128 { 8025 {
@@ -8138,8 +8035,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgalloc.h linux-2.6.32.21/arch/x
8138 } 8035 }
8139 8036
8140diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgtable-2level.h linux-2.6.32.21/arch/x86/include/asm/pgtable-2level.h 8037diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgtable-2level.h linux-2.6.32.21/arch/x86/include/asm/pgtable-2level.h
8141--- linux-2.6.32.21/arch/x86/include/asm/pgtable-2level.h 2010-08-26 19:42:20.000000000 -0400 8038--- linux-2.6.32.21/arch/x86/include/asm/pgtable-2level.h 2010-08-13 16:24:37.000000000 -0400
8142+++ linux-2.6.32.21/arch/x86/include/asm/pgtable-2level.h 2010-09-13 08:10:06.000000000 -0400 8039+++ linux-2.6.32.21/arch/x86/include/asm/pgtable-2level.h 2010-09-04 15:54:51.000000000 -0400
8143@@ -18,7 +18,9 @@ static inline void native_set_pte(pte_t 8040@@ -18,7 +18,9 @@ static inline void native_set_pte(pte_t
8144 8041
8145 static inline void native_set_pmd(pmd_t *pmdp, pmd_t pmd) 8042 static inline void native_set_pmd(pmd_t *pmdp, pmd_t pmd)
@@ -8150,9 +8047,85 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgtable-2level.h linux-2.6.32.21
8150 } 8047 }
8151 8048
8152 static inline void native_set_pte_atomic(pte_t *ptep, pte_t pte) 8049 static inline void native_set_pte_atomic(pte_t *ptep, pte_t pte)
8050diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgtable_32.h linux-2.6.32.21/arch/x86/include/asm/pgtable_32.h
8051--- linux-2.6.32.21/arch/x86/include/asm/pgtable_32.h 2010-08-13 16:24:37.000000000 -0400
8052+++ linux-2.6.32.21/arch/x86/include/asm/pgtable_32.h 2010-09-04 15:54:51.000000000 -0400
8053@@ -26,8 +26,6 @@
8054 struct mm_struct;
8055 struct vm_area_struct;
8056
8057-extern pgd_t swapper_pg_dir[1024];
8058-
8059 static inline void pgtable_cache_init(void) { }
8060 static inline void check_pgt_cache(void) { }
8061 void paging_init(void);
8062@@ -48,6 +46,11 @@ extern void set_pmd_pfn(unsigned long, u
8063 # include <asm/pgtable-2level.h>
8064 #endif
8065
8066+extern pgd_t swapper_pg_dir[PTRS_PER_PGD];
8067+#ifdef CONFIG_X86_PAE
8068+extern pmd_t swapper_pm_dir[PTRS_PER_PGD][PTRS_PER_PMD];
8069+#endif
8070+
8071 #if defined(CONFIG_HIGHPTE)
8072 #define __KM_PTE \
8073 (in_nmi() ? KM_NMI_PTE : \
8074@@ -72,7 +75,9 @@ extern void set_pmd_pfn(unsigned long, u
8075 /* Clear a kernel PTE and flush it from the TLB */
8076 #define kpte_clear_flush(ptep, vaddr) \
8077 do { \
8078+ pax_open_kernel(); \
8079 pte_clear(&init_mm, (vaddr), (ptep)); \
8080+ pax_close_kernel(); \
8081 __flush_tlb_one((vaddr)); \
8082 } while (0)
8083
8084@@ -84,6 +89,9 @@ do { \
8085
8086 #endif /* !__ASSEMBLY__ */
8087
8088+#define HAVE_ARCH_UNMAPPED_AREA
8089+#define HAVE_ARCH_UNMAPPED_AREA_TOPDOWN
8090+
8091 /*
8092 * kern_addr_valid() is (1) for FLATMEM and (0) for
8093 * SPARSEMEM and DISCONTIGMEM
8094diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgtable_32_types.h linux-2.6.32.21/arch/x86/include/asm/pgtable_32_types.h
8095--- linux-2.6.32.21/arch/x86/include/asm/pgtable_32_types.h 2010-08-13 16:24:37.000000000 -0400
8096+++ linux-2.6.32.21/arch/x86/include/asm/pgtable_32_types.h 2010-09-04 15:54:51.000000000 -0400
8097@@ -8,7 +8,7 @@
8098 */
8099 #ifdef CONFIG_X86_PAE
8100 # include <asm/pgtable-3level_types.h>
8101-# define PMD_SIZE (1UL << PMD_SHIFT)
8102+# define PMD_SIZE (_AC(1, UL) << PMD_SHIFT)
8103 # define PMD_MASK (~(PMD_SIZE - 1))
8104 #else
8105 # include <asm/pgtable-2level_types.h>
8106@@ -46,6 +46,19 @@ extern bool __vmalloc_start_set; /* set
8107 # define VMALLOC_END (FIXADDR_START - 2 * PAGE_SIZE)
8108 #endif
8109
8110+#ifdef CONFIG_PAX_KERNEXEC
8111+#ifndef __ASSEMBLY__
8112+extern unsigned char MODULES_EXEC_VADDR[];
8113+extern unsigned char MODULES_EXEC_END[];
8114+#endif
8115+#include <asm/boot.h>
8116+#define ktla_ktva(addr) (addr + LOAD_PHYSICAL_ADDR + PAGE_OFFSET)
8117+#define ktva_ktla(addr) (addr - LOAD_PHYSICAL_ADDR - PAGE_OFFSET)
8118+#else
8119+#define ktla_ktva(addr) (addr)
8120+#define ktva_ktla(addr) (addr)
8121+#endif
8122+
8123 #define MODULES_VADDR VMALLOC_START
8124 #define MODULES_END VMALLOC_END
8125 #define MODULES_LEN (MODULES_VADDR - MODULES_END)
8153diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgtable-3level.h linux-2.6.32.21/arch/x86/include/asm/pgtable-3level.h 8126diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgtable-3level.h linux-2.6.32.21/arch/x86/include/asm/pgtable-3level.h
8154--- linux-2.6.32.21/arch/x86/include/asm/pgtable-3level.h 2010-08-26 19:42:20.000000000 -0400 8127--- linux-2.6.32.21/arch/x86/include/asm/pgtable-3level.h 2010-08-13 16:24:37.000000000 -0400
8155+++ linux-2.6.32.21/arch/x86/include/asm/pgtable-3level.h 2010-09-13 08:10:06.000000000 -0400 8128+++ linux-2.6.32.21/arch/x86/include/asm/pgtable-3level.h 2010-09-04 15:54:51.000000000 -0400
8156@@ -38,12 +38,16 @@ static inline void native_set_pte_atomic 8129@@ -38,12 +38,16 @@ static inline void native_set_pte_atomic
8157 8130
8158 static inline void native_set_pmd(pmd_t *pmdp, pmd_t pmd) 8131 static inline void native_set_pmd(pmd_t *pmdp, pmd_t pmd)
@@ -8170,9 +8143,62 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgtable-3level.h linux-2.6.32.21
8170 } 8143 }
8171 8144
8172 /* 8145 /*
8146diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgtable_64.h linux-2.6.32.21/arch/x86/include/asm/pgtable_64.h
8147--- linux-2.6.32.21/arch/x86/include/asm/pgtable_64.h 2010-08-13 16:24:37.000000000 -0400
8148+++ linux-2.6.32.21/arch/x86/include/asm/pgtable_64.h 2010-09-04 15:54:51.000000000 -0400
8149@@ -16,10 +16,13 @@
8150
8151 extern pud_t level3_kernel_pgt[512];
8152 extern pud_t level3_ident_pgt[512];
8153+extern pud_t level3_vmalloc_pgt[512];
8154+extern pud_t level3_vmemmap_pgt[512];
8155+extern pud_t level2_vmemmap_pgt[512];
8156 extern pmd_t level2_kernel_pgt[512];
8157 extern pmd_t level2_fixmap_pgt[512];
8158-extern pmd_t level2_ident_pgt[512];
8159-extern pgd_t init_level4_pgt[];
8160+extern pmd_t level2_ident_pgt[512*2];
8161+extern pgd_t init_level4_pgt[512];
8162
8163 #define swapper_pg_dir init_level4_pgt
8164
8165@@ -74,7 +77,9 @@ static inline pte_t native_ptep_get_and_
8166
8167 static inline void native_set_pmd(pmd_t *pmdp, pmd_t pmd)
8168 {
8169+ pax_open_kernel();
8170 *pmdp = pmd;
8171+ pax_close_kernel();
8172 }
8173
8174 static inline void native_pmd_clear(pmd_t *pmd)
8175@@ -94,7 +99,9 @@ static inline void native_pud_clear(pud_
8176
8177 static inline void native_set_pgd(pgd_t *pgdp, pgd_t pgd)
8178 {
8179+ pax_open_kernel();
8180 *pgdp = pgd;
8181+ pax_close_kernel();
8182 }
8183
8184 static inline void native_pgd_clear(pgd_t *pgd)
8185diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgtable_64_types.h linux-2.6.32.21/arch/x86/include/asm/pgtable_64_types.h
8186--- linux-2.6.32.21/arch/x86/include/asm/pgtable_64_types.h 2010-08-13 16:24:37.000000000 -0400
8187+++ linux-2.6.32.21/arch/x86/include/asm/pgtable_64_types.h 2010-09-04 15:54:51.000000000 -0400
8188@@ -59,5 +59,10 @@ typedef struct { pteval_t pte; } pte_t;
8189 #define MODULES_VADDR _AC(0xffffffffa0000000, UL)
8190 #define MODULES_END _AC(0xffffffffff000000, UL)
8191 #define MODULES_LEN (MODULES_END - MODULES_VADDR)
8192+#define MODULES_EXEC_VADDR MODULES_VADDR
8193+#define MODULES_EXEC_END MODULES_END
8194+
8195+#define ktla_ktva(addr) (addr)
8196+#define ktva_ktla(addr) (addr)
8197
8198 #endif /* _ASM_X86_PGTABLE_64_DEFS_H */
8173diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgtable.h linux-2.6.32.21/arch/x86/include/asm/pgtable.h 8199diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgtable.h linux-2.6.32.21/arch/x86/include/asm/pgtable.h
8174--- linux-2.6.32.21/arch/x86/include/asm/pgtable.h 2010-08-26 19:42:20.000000000 -0400 8200--- linux-2.6.32.21/arch/x86/include/asm/pgtable.h 2010-08-13 16:24:37.000000000 -0400
8175+++ linux-2.6.32.21/arch/x86/include/asm/pgtable.h 2010-09-13 08:10:06.000000000 -0400 8201+++ linux-2.6.32.21/arch/x86/include/asm/pgtable.h 2010-09-04 15:54:51.000000000 -0400
8176@@ -74,12 +74,51 @@ extern struct list_head pgd_list; 8202@@ -74,12 +74,51 @@ extern struct list_head pgd_list;
8177 8203
8178 #define arch_end_context_switch(prev) do {} while(0) 8204 #define arch_end_context_switch(prev) do {} while(0)
@@ -8342,138 +8368,9 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgtable.h linux-2.6.32.21/arch/x
8342 8368
8343 #include <asm-generic/pgtable.h> 8369 #include <asm-generic/pgtable.h>
8344 #endif /* __ASSEMBLY__ */ 8370 #endif /* __ASSEMBLY__ */
8345diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgtable_32.h linux-2.6.32.21/arch/x86/include/asm/pgtable_32.h
8346--- linux-2.6.32.21/arch/x86/include/asm/pgtable_32.h 2010-08-26 19:42:20.000000000 -0400
8347+++ linux-2.6.32.21/arch/x86/include/asm/pgtable_32.h 2010-09-13 08:10:06.000000000 -0400
8348@@ -26,8 +26,6 @@
8349 struct mm_struct;
8350 struct vm_area_struct;
8351
8352-extern pgd_t swapper_pg_dir[1024];
8353-
8354 static inline void pgtable_cache_init(void) { }
8355 static inline void check_pgt_cache(void) { }
8356 void paging_init(void);
8357@@ -48,6 +46,11 @@ extern void set_pmd_pfn(unsigned long, u
8358 # include <asm/pgtable-2level.h>
8359 #endif
8360
8361+extern pgd_t swapper_pg_dir[PTRS_PER_PGD];
8362+#ifdef CONFIG_X86_PAE
8363+extern pmd_t swapper_pm_dir[PTRS_PER_PGD][PTRS_PER_PMD];
8364+#endif
8365+
8366 #if defined(CONFIG_HIGHPTE)
8367 #define __KM_PTE \
8368 (in_nmi() ? KM_NMI_PTE : \
8369@@ -72,7 +75,9 @@ extern void set_pmd_pfn(unsigned long, u
8370 /* Clear a kernel PTE and flush it from the TLB */
8371 #define kpte_clear_flush(ptep, vaddr) \
8372 do { \
8373+ pax_open_kernel(); \
8374 pte_clear(&init_mm, (vaddr), (ptep)); \
8375+ pax_close_kernel(); \
8376 __flush_tlb_one((vaddr)); \
8377 } while (0)
8378
8379@@ -84,6 +89,9 @@ do { \
8380
8381 #endif /* !__ASSEMBLY__ */
8382
8383+#define HAVE_ARCH_UNMAPPED_AREA
8384+#define HAVE_ARCH_UNMAPPED_AREA_TOPDOWN
8385+
8386 /*
8387 * kern_addr_valid() is (1) for FLATMEM and (0) for
8388 * SPARSEMEM and DISCONTIGMEM
8389diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgtable_32_types.h linux-2.6.32.21/arch/x86/include/asm/pgtable_32_types.h
8390--- linux-2.6.32.21/arch/x86/include/asm/pgtable_32_types.h 2010-08-26 19:42:20.000000000 -0400
8391+++ linux-2.6.32.21/arch/x86/include/asm/pgtable_32_types.h 2010-09-13 08:10:06.000000000 -0400
8392@@ -8,7 +8,7 @@
8393 */
8394 #ifdef CONFIG_X86_PAE
8395 # include <asm/pgtable-3level_types.h>
8396-# define PMD_SIZE (1UL << PMD_SHIFT)
8397+# define PMD_SIZE (_AC(1, UL) << PMD_SHIFT)
8398 # define PMD_MASK (~(PMD_SIZE - 1))
8399 #else
8400 # include <asm/pgtable-2level_types.h>
8401@@ -46,6 +46,19 @@ extern bool __vmalloc_start_set; /* set
8402 # define VMALLOC_END (FIXADDR_START - 2 * PAGE_SIZE)
8403 #endif
8404
8405+#ifdef CONFIG_PAX_KERNEXEC
8406+#ifndef __ASSEMBLY__
8407+extern unsigned char MODULES_EXEC_VADDR[];
8408+extern unsigned char MODULES_EXEC_END[];
8409+#endif
8410+#include <asm/boot.h>
8411+#define ktla_ktva(addr) (addr + LOAD_PHYSICAL_ADDR + PAGE_OFFSET)
8412+#define ktva_ktla(addr) (addr - LOAD_PHYSICAL_ADDR - PAGE_OFFSET)
8413+#else
8414+#define ktla_ktva(addr) (addr)
8415+#define ktva_ktla(addr) (addr)
8416+#endif
8417+
8418 #define MODULES_VADDR VMALLOC_START
8419 #define MODULES_END VMALLOC_END
8420 #define MODULES_LEN (MODULES_VADDR - MODULES_END)
8421diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgtable_64.h linux-2.6.32.21/arch/x86/include/asm/pgtable_64.h
8422--- linux-2.6.32.21/arch/x86/include/asm/pgtable_64.h 2010-08-26 19:42:20.000000000 -0400
8423+++ linux-2.6.32.21/arch/x86/include/asm/pgtable_64.h 2010-09-13 08:10:06.000000000 -0400
8424@@ -16,10 +16,13 @@
8425
8426 extern pud_t level3_kernel_pgt[512];
8427 extern pud_t level3_ident_pgt[512];
8428+extern pud_t level3_vmalloc_pgt[512];
8429+extern pud_t level3_vmemmap_pgt[512];
8430+extern pud_t level2_vmemmap_pgt[512];
8431 extern pmd_t level2_kernel_pgt[512];
8432 extern pmd_t level2_fixmap_pgt[512];
8433-extern pmd_t level2_ident_pgt[512];
8434-extern pgd_t init_level4_pgt[];
8435+extern pmd_t level2_ident_pgt[512*2];
8436+extern pgd_t init_level4_pgt[512];
8437
8438 #define swapper_pg_dir init_level4_pgt
8439
8440@@ -74,7 +77,9 @@ static inline pte_t native_ptep_get_and_
8441
8442 static inline void native_set_pmd(pmd_t *pmdp, pmd_t pmd)
8443 {
8444+ pax_open_kernel();
8445 *pmdp = pmd;
8446+ pax_close_kernel();
8447 }
8448
8449 static inline void native_pmd_clear(pmd_t *pmd)
8450@@ -94,7 +99,9 @@ static inline void native_pud_clear(pud_
8451
8452 static inline void native_set_pgd(pgd_t *pgdp, pgd_t pgd)
8453 {
8454+ pax_open_kernel();
8455 *pgdp = pgd;
8456+ pax_close_kernel();
8457 }
8458
8459 static inline void native_pgd_clear(pgd_t *pgd)
8460diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgtable_64_types.h linux-2.6.32.21/arch/x86/include/asm/pgtable_64_types.h
8461--- linux-2.6.32.21/arch/x86/include/asm/pgtable_64_types.h 2010-08-26 19:42:20.000000000 -0400
8462+++ linux-2.6.32.21/arch/x86/include/asm/pgtable_64_types.h 2010-09-13 08:10:06.000000000 -0400
8463@@ -59,5 +59,10 @@ typedef struct { pteval_t pte; } pte_t;
8464 #define MODULES_VADDR _AC(0xffffffffa0000000, UL)
8465 #define MODULES_END _AC(0xffffffffff000000, UL)
8466 #define MODULES_LEN (MODULES_END - MODULES_VADDR)
8467+#define MODULES_EXEC_VADDR MODULES_VADDR
8468+#define MODULES_EXEC_END MODULES_END
8469+
8470+#define ktla_ktva(addr) (addr)
8471+#define ktva_ktla(addr) (addr)
8472
8473 #endif /* _ASM_X86_PGTABLE_64_DEFS_H */
8474diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgtable_types.h linux-2.6.32.21/arch/x86/include/asm/pgtable_types.h 8371diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgtable_types.h linux-2.6.32.21/arch/x86/include/asm/pgtable_types.h
8475--- linux-2.6.32.21/arch/x86/include/asm/pgtable_types.h 2010-08-26 19:42:20.000000000 -0400 8372--- linux-2.6.32.21/arch/x86/include/asm/pgtable_types.h 2010-08-13 16:24:37.000000000 -0400
8476+++ linux-2.6.32.21/arch/x86/include/asm/pgtable_types.h 2010-09-13 08:10:06.000000000 -0400 8373+++ linux-2.6.32.21/arch/x86/include/asm/pgtable_types.h 2010-09-04 15:54:51.000000000 -0400
8477@@ -16,12 +16,11 @@ 8374@@ -16,12 +16,11 @@
8478 #define _PAGE_BIT_PSE 7 /* 4 MB (or 2MB) page */ 8375 #define _PAGE_BIT_PSE 7 /* 4 MB (or 2MB) page */
8479 #define _PAGE_BIT_PAT 7 /* on 4KB pages */ 8376 #define _PAGE_BIT_PAT 7 /* on 4KB pages */
@@ -8595,8 +8492,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/pgtable_types.h linux-2.6.32.21/
8595 #define pgprot_writecombine pgprot_writecombine 8492 #define pgprot_writecombine pgprot_writecombine
8596 extern pgprot_t pgprot_writecombine(pgprot_t prot); 8493 extern pgprot_t pgprot_writecombine(pgprot_t prot);
8597diff -urNp linux-2.6.32.21/arch/x86/include/asm/processor.h linux-2.6.32.21/arch/x86/include/asm/processor.h 8494diff -urNp linux-2.6.32.21/arch/x86/include/asm/processor.h linux-2.6.32.21/arch/x86/include/asm/processor.h
8598--- linux-2.6.32.21/arch/x86/include/asm/processor.h 2010-08-26 19:42:20.000000000 -0400 8495--- linux-2.6.32.21/arch/x86/include/asm/processor.h 2010-08-13 16:24:37.000000000 -0400
8599+++ linux-2.6.32.21/arch/x86/include/asm/processor.h 2010-09-13 08:10:06.000000000 -0400 8496+++ linux-2.6.32.21/arch/x86/include/asm/processor.h 2010-09-04 15:54:51.000000000 -0400
8600@@ -272,7 +272,7 @@ struct tss_struct { 8497@@ -272,7 +272,7 @@ struct tss_struct {
8601 8498
8602 } ____cacheline_aligned; 8499 } ____cacheline_aligned;
@@ -8682,8 +8579,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/processor.h linux-2.6.32.21/arch
8682 8579
8683 /* Get/set a process' ability to use the timestamp counter instruction */ 8580 /* Get/set a process' ability to use the timestamp counter instruction */
8684diff -urNp linux-2.6.32.21/arch/x86/include/asm/ptrace.h linux-2.6.32.21/arch/x86/include/asm/ptrace.h 8581diff -urNp linux-2.6.32.21/arch/x86/include/asm/ptrace.h linux-2.6.32.21/arch/x86/include/asm/ptrace.h
8685--- linux-2.6.32.21/arch/x86/include/asm/ptrace.h 2010-08-26 19:42:20.000000000 -0400 8582--- linux-2.6.32.21/arch/x86/include/asm/ptrace.h 2010-08-13 16:24:37.000000000 -0400
8686+++ linux-2.6.32.21/arch/x86/include/asm/ptrace.h 2010-09-13 08:10:06.000000000 -0400 8583+++ linux-2.6.32.21/arch/x86/include/asm/ptrace.h 2010-09-04 15:54:51.000000000 -0400
8687@@ -151,28 +151,29 @@ static inline unsigned long regs_return_ 8584@@ -151,28 +151,29 @@ static inline unsigned long regs_return_
8688 } 8585 }
8689 8586
@@ -8721,8 +8618,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/ptrace.h linux-2.6.32.21/arch/x8
8721 } 8618 }
8722 8619
8723diff -urNp linux-2.6.32.21/arch/x86/include/asm/reboot.h linux-2.6.32.21/arch/x86/include/asm/reboot.h 8620diff -urNp linux-2.6.32.21/arch/x86/include/asm/reboot.h linux-2.6.32.21/arch/x86/include/asm/reboot.h
8724--- linux-2.6.32.21/arch/x86/include/asm/reboot.h 2010-08-26 19:42:20.000000000 -0400 8621--- linux-2.6.32.21/arch/x86/include/asm/reboot.h 2010-08-13 16:24:37.000000000 -0400
8725+++ linux-2.6.32.21/arch/x86/include/asm/reboot.h 2010-09-13 08:10:06.000000000 -0400 8622+++ linux-2.6.32.21/arch/x86/include/asm/reboot.h 2010-09-04 15:54:51.000000000 -0400
8726@@ -18,7 +18,7 @@ extern struct machine_ops machine_ops; 8623@@ -18,7 +18,7 @@ extern struct machine_ops machine_ops;
8727 8624
8728 void native_machine_crash_shutdown(struct pt_regs *regs); 8625 void native_machine_crash_shutdown(struct pt_regs *regs);
@@ -8733,8 +8630,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/reboot.h linux-2.6.32.21/arch/x8
8733 typedef void (*nmi_shootdown_cb)(int, struct die_args*); 8630 typedef void (*nmi_shootdown_cb)(int, struct die_args*);
8734 void nmi_shootdown_cpus(nmi_shootdown_cb callback); 8631 void nmi_shootdown_cpus(nmi_shootdown_cb callback);
8735diff -urNp linux-2.6.32.21/arch/x86/include/asm/rwsem.h linux-2.6.32.21/arch/x86/include/asm/rwsem.h 8632diff -urNp linux-2.6.32.21/arch/x86/include/asm/rwsem.h linux-2.6.32.21/arch/x86/include/asm/rwsem.h
8736--- linux-2.6.32.21/arch/x86/include/asm/rwsem.h 2010-08-26 19:42:20.000000000 -0400 8633--- linux-2.6.32.21/arch/x86/include/asm/rwsem.h 2010-08-13 16:24:37.000000000 -0400
8737+++ linux-2.6.32.21/arch/x86/include/asm/rwsem.h 2010-09-13 08:10:06.000000000 -0400 8634+++ linux-2.6.32.21/arch/x86/include/asm/rwsem.h 2010-09-04 15:54:51.000000000 -0400
8738@@ -118,10 +118,26 @@ static inline void __down_read(struct rw 8635@@ -118,10 +118,26 @@ static inline void __down_read(struct rw
8739 { 8636 {
8740 asm volatile("# beginning down_read\n\t" 8637 asm volatile("# beginning down_read\n\t"
@@ -8971,8 +8868,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/rwsem.h linux-2.6.32.21/arch/x86
8971 : : "memory"); 8868 : : "memory");
8972 8869
8973diff -urNp linux-2.6.32.21/arch/x86/include/asm/segment.h linux-2.6.32.21/arch/x86/include/asm/segment.h 8870diff -urNp linux-2.6.32.21/arch/x86/include/asm/segment.h linux-2.6.32.21/arch/x86/include/asm/segment.h
8974--- linux-2.6.32.21/arch/x86/include/asm/segment.h 2010-08-26 19:42:20.000000000 -0400 8871--- linux-2.6.32.21/arch/x86/include/asm/segment.h 2010-08-13 16:24:37.000000000 -0400
8975+++ linux-2.6.32.21/arch/x86/include/asm/segment.h 2010-09-13 08:10:06.000000000 -0400 8872+++ linux-2.6.32.21/arch/x86/include/asm/segment.h 2010-09-04 15:54:51.000000000 -0400
8976@@ -62,8 +62,8 @@ 8873@@ -62,8 +62,8 @@
8977 * 26 - ESPFIX small SS 8874 * 26 - ESPFIX small SS
8978 * 27 - per-cpu [ offset to per-cpu data area ] 8875 * 27 - per-cpu [ offset to per-cpu data area ]
@@ -9042,8 +8939,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/segment.h linux-2.6.32.21/arch/x
9042 #define __USER_DS (GDT_ENTRY_DEFAULT_USER_DS* 8 + 3) 8939 #define __USER_DS (GDT_ENTRY_DEFAULT_USER_DS* 8 + 3)
9043 #define __USER_CS (GDT_ENTRY_DEFAULT_USER_CS* 8 + 3) 8940 #define __USER_CS (GDT_ENTRY_DEFAULT_USER_CS* 8 + 3)
9044diff -urNp linux-2.6.32.21/arch/x86/include/asm/spinlock.h linux-2.6.32.21/arch/x86/include/asm/spinlock.h 8941diff -urNp linux-2.6.32.21/arch/x86/include/asm/spinlock.h linux-2.6.32.21/arch/x86/include/asm/spinlock.h
9045--- linux-2.6.32.21/arch/x86/include/asm/spinlock.h 2010-08-26 19:42:20.000000000 -0400 8942--- linux-2.6.32.21/arch/x86/include/asm/spinlock.h 2010-08-13 16:24:37.000000000 -0400
9046+++ linux-2.6.32.21/arch/x86/include/asm/spinlock.h 2010-09-13 08:10:06.000000000 -0400 8943+++ linux-2.6.32.21/arch/x86/include/asm/spinlock.h 2010-09-04 15:54:51.000000000 -0400
9047@@ -249,18 +249,50 @@ static inline int __raw_write_can_lock(r 8944@@ -249,18 +249,50 @@ static inline int __raw_write_can_lock(r
9048 static inline void __raw_read_lock(raw_rwlock_t *rw) 8945 static inline void __raw_read_lock(raw_rwlock_t *rw)
9049 { 8946 {
@@ -9148,8 +9045,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/spinlock.h linux-2.6.32.21/arch/
9148 } 9045 }
9149 9046
9150diff -urNp linux-2.6.32.21/arch/x86/include/asm/system.h linux-2.6.32.21/arch/x86/include/asm/system.h 9047diff -urNp linux-2.6.32.21/arch/x86/include/asm/system.h linux-2.6.32.21/arch/x86/include/asm/system.h
9151--- linux-2.6.32.21/arch/x86/include/asm/system.h 2010-08-26 19:42:20.000000000 -0400 9048--- linux-2.6.32.21/arch/x86/include/asm/system.h 2010-08-13 16:24:37.000000000 -0400
9152+++ linux-2.6.32.21/arch/x86/include/asm/system.h 2010-09-13 08:10:06.000000000 -0400 9049+++ linux-2.6.32.21/arch/x86/include/asm/system.h 2010-09-04 15:54:51.000000000 -0400
9153@@ -200,7 +200,7 @@ static inline unsigned long get_limit(un 9050@@ -200,7 +200,7 @@ static inline unsigned long get_limit(un
9154 { 9051 {
9155 unsigned long __limit; 9052 unsigned long __limit;
@@ -9168,249 +9065,9 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/system.h linux-2.6.32.21/arch/x8
9168 extern void free_init_pages(char *what, unsigned long begin, unsigned long end); 9065 extern void free_init_pages(char *what, unsigned long begin, unsigned long end);
9169 9066
9170 void default_idle(void); 9067 void default_idle(void);
9171diff -urNp linux-2.6.32.21/arch/x86/include/asm/uaccess.h linux-2.6.32.21/arch/x86/include/asm/uaccess.h
9172--- linux-2.6.32.21/arch/x86/include/asm/uaccess.h 2010-08-26 19:42:20.000000000 -0400
9173+++ linux-2.6.32.21/arch/x86/include/asm/uaccess.h 2010-09-13 08:10:06.000000000 -0400
9174@@ -8,12 +8,15 @@
9175 #include <linux/thread_info.h>
9176 #include <linux/prefetch.h>
9177 #include <linux/string.h>
9178+#include <linux/sched.h>
9179 #include <asm/asm.h>
9180 #include <asm/page.h>
9181
9182 #define VERIFY_READ 0
9183 #define VERIFY_WRITE 1
9184
9185+extern void check_object_size(const void *ptr, unsigned long n, bool to);
9186+
9187 /*
9188 * The fs value determines whether argument validity checking should be
9189 * performed or not. If get_fs() == USER_DS, checking is performed, with
9190@@ -29,7 +32,12 @@
9191
9192 #define get_ds() (KERNEL_DS)
9193 #define get_fs() (current_thread_info()->addr_limit)
9194+#ifdef CONFIG_X86_32
9195+void __set_fs(mm_segment_t x, int cpu);
9196+void set_fs(mm_segment_t x);
9197+#else
9198 #define set_fs(x) (current_thread_info()->addr_limit = (x))
9199+#endif
9200
9201 #define segment_eq(a, b) ((a).seg == (b).seg)
9202
9203@@ -77,7 +85,33 @@
9204 * checks that the pointer is in the user space range - after calling
9205 * this function, memory access functions may still return -EFAULT.
9206 */
9207-#define access_ok(type, addr, size) (likely(__range_not_ok(addr, size) == 0))
9208+#define __access_ok(type, addr, size) (likely(__range_not_ok(addr, size) == 0))
9209+#define access_ok(type, addr, size) \
9210+({ \
9211+ long __size = size; \
9212+ unsigned long __addr = (unsigned long)addr; \
9213+ unsigned long __addr_ao = __addr & PAGE_MASK; \
9214+ unsigned long __end_ao = __addr + __size - 1; \
9215+ bool __ret_ao = __range_not_ok(__addr, __size) == 0; \
9216+ if (__ret_ao && unlikely((__end_ao ^ __addr_ao) & PAGE_MASK)) { \
9217+ while(__addr_ao <= __end_ao) { \
9218+ char __c_ao; \
9219+ __addr_ao += PAGE_SIZE; \
9220+ if (__size > PAGE_SIZE) \
9221+ cond_resched(); \
9222+ if (__get_user(__c_ao, (char __user *)__addr)) \
9223+ break; \
9224+ if (type != VERIFY_WRITE) { \
9225+ __addr = __addr_ao; \
9226+ continue; \
9227+ } \
9228+ if (__put_user(__c_ao, (char __user *)__addr)) \
9229+ break; \
9230+ __addr = __addr_ao; \
9231+ } \
9232+ } \
9233+ __ret_ao; \
9234+})
9235
9236 /*
9237 * The exception table consists of pairs of addresses: the first is the
9238@@ -179,17 +213,34 @@ extern int __get_user_bad(void);
9239 __ret_gu; \
9240 })
9241
9242+#if defined(CONFIG_X86_64) && defined(CONFIG_PAX_MEMORY_UDEREF)
9243+#define __put_user_x(size, x, ptr, __ret_pu) \
9244+ ({ \
9245+ int __dummy; \
9246+ asm volatile("call __put_user_" #size : "=a" (__ret_pu), "=c" (__dummy) \
9247+ : "0" ((typeof(*(ptr)))(x)), "c" (ptr) : "ebx"); \
9248+ })
9249+#else
9250 #define __put_user_x(size, x, ptr, __ret_pu) \
9251 asm volatile("call __put_user_" #size : "=a" (__ret_pu) \
9252 : "0" ((typeof(*(ptr)))(x)), "c" (ptr) : "ebx")
9253+#endif
9254
9255-
9256+#ifdef CONFIG_X86_32
9257+#define _ASM_LOAD_USER_DS(ds) "movw %w" #ds ",%%ds\n"
9258+#define _ASM_LOAD_KERNEL_DS "pushl %%ss; popl %%ds\n"
9259+#else
9260+#define _ASM_LOAD_USER_DS(ds)
9261+#define _ASM_LOAD_KERNEL_DS
9262+#endif
9263
9264 #ifdef CONFIG_X86_32
9265 #define __put_user_asm_u64(x, addr, err, errret) \
9266- asm volatile("1: movl %%eax,0(%2)\n" \
9267- "2: movl %%edx,4(%2)\n" \
9268+ asm volatile(_ASM_LOAD_USER_DS(5) \
9269+ "1: movl %%eax,%%ds:0(%2)\n" \
9270+ "2: movl %%edx,%%ds:4(%2)\n" \
9271 "3:\n" \
9272+ _ASM_LOAD_KERNEL_DS \
9273 ".section .fixup,\"ax\"\n" \
9274 "4: movl %3,%0\n" \
9275 " jmp 3b\n" \
9276@@ -197,15 +248,18 @@ extern int __get_user_bad(void);
9277 _ASM_EXTABLE(1b, 4b) \
9278 _ASM_EXTABLE(2b, 4b) \
9279 : "=r" (err) \
9280- : "A" (x), "r" (addr), "i" (errret), "0" (err))
9281+ : "A" (x), "r" (addr), "i" (errret), "0" (err), \
9282+ "r"(__USER_DS))
9283
9284 #define __put_user_asm_ex_u64(x, addr) \
9285- asm volatile("1: movl %%eax,0(%1)\n" \
9286- "2: movl %%edx,4(%1)\n" \
9287+ asm volatile(_ASM_LOAD_USER_DS(2) \
9288+ "1: movl %%eax,%%ds:0(%1)\n" \
9289+ "2: movl %%edx,%%ds:4(%1)\n" \
9290 "3:\n" \
9291+ _ASM_LOAD_KERNEL_DS \
9292 _ASM_EXTABLE(1b, 2b - 1b) \
9293 _ASM_EXTABLE(2b, 3b - 2b) \
9294- : : "A" (x), "r" (addr))
9295+ : : "A" (x), "r" (addr), "r"(__USER_DS))
9296
9297 #define __put_user_x8(x, ptr, __ret_pu) \
9298 asm volatile("call __put_user_8" : "=a" (__ret_pu) \
9299@@ -374,16 +428,18 @@ do { \
9300 } while (0)
9301
9302 #define __get_user_asm(x, addr, err, itype, rtype, ltype, errret) \
9303- asm volatile("1: mov"itype" %2,%"rtype"1\n" \
9304+ asm volatile(_ASM_LOAD_USER_DS(5) \
9305+ "1: mov"itype" %%ds:%2,%"rtype"1\n" \
9306 "2:\n" \
9307+ _ASM_LOAD_KERNEL_DS \
9308 ".section .fixup,\"ax\"\n" \
9309 "3: mov %3,%0\n" \
9310 " xor"itype" %"rtype"1,%"rtype"1\n" \
9311 " jmp 2b\n" \
9312 ".previous\n" \
9313 _ASM_EXTABLE(1b, 3b) \
9314- : "=r" (err), ltype(x) \
9315- : "m" (__m(addr)), "i" (errret), "0" (err))
9316+ : "=r" (err), ltype (x) \
9317+ : "m" (__m(addr)), "i" (errret), "0" (err), "r"(__USER_DS))
9318
9319 #define __get_user_size_ex(x, ptr, size) \
9320 do { \
9321@@ -407,10 +463,12 @@ do { \
9322 } while (0)
9323
9324 #define __get_user_asm_ex(x, addr, itype, rtype, ltype) \
9325- asm volatile("1: mov"itype" %1,%"rtype"0\n" \
9326+ asm volatile(_ASM_LOAD_USER_DS(2) \
9327+ "1: mov"itype" %%ds:%1,%"rtype"0\n" \
9328 "2:\n" \
9329+ _ASM_LOAD_KERNEL_DS \
9330 _ASM_EXTABLE(1b, 2b - 1b) \
9331- : ltype(x) : "m" (__m(addr)))
9332+ : ltype(x) : "m" (__m(addr)), "r"(__USER_DS))
9333
9334 #define __put_user_nocheck(x, ptr, size) \
9335 ({ \
9336@@ -424,13 +482,24 @@ do { \
9337 int __gu_err; \
9338 unsigned long __gu_val; \
9339 __get_user_size(__gu_val, (ptr), (size), __gu_err, -EFAULT); \
9340- (x) = (__force __typeof__(*(ptr)))__gu_val; \
9341+ (x) = (__typeof__(*(ptr)))__gu_val; \
9342 __gu_err; \
9343 })
9344
9345 /* FIXME: this hack is definitely wrong -AK */
9346 struct __large_struct { unsigned long buf[100]; };
9347-#define __m(x) (*(struct __large_struct __user *)(x))
9348+#if defined(CONFIG_X86_64) && defined(CONFIG_PAX_MEMORY_UDEREF)
9349+#define ____m(x) \
9350+({ \
9351+ unsigned long ____x = (unsigned long)(x); \
9352+ if (____x < PAX_USER_SHADOW_BASE) \
9353+ ____x += PAX_USER_SHADOW_BASE; \
9354+ (void __user *)____x; \
9355+})
9356+#else
9357+#define ____m(x) (x)
9358+#endif
9359+#define __m(x) (*(struct __large_struct __user *)____m(x))
9360
9361 /*
9362 * Tell gcc we read from memory instead of writing: this is because
9363@@ -438,21 +507,26 @@ struct __large_struct { unsigned long bu
9364 * aliasing issues.
9365 */
9366 #define __put_user_asm(x, addr, err, itype, rtype, ltype, errret) \
9367- asm volatile("1: mov"itype" %"rtype"1,%2\n" \
9368+ asm volatile(_ASM_LOAD_USER_DS(5) \
9369+ "1: mov"itype" %"rtype"1,%%ds:%2\n" \
9370 "2:\n" \
9371+ _ASM_LOAD_KERNEL_DS \
9372 ".section .fixup,\"ax\"\n" \
9373 "3: mov %3,%0\n" \
9374 " jmp 2b\n" \
9375 ".previous\n" \
9376 _ASM_EXTABLE(1b, 3b) \
9377 : "=r"(err) \
9378- : ltype(x), "m" (__m(addr)), "i" (errret), "0" (err))
9379+ : ltype (x), "m" (__m(addr)), "i" (errret), "0" (err),\
9380+ "r"(__USER_DS))
9381
9382 #define __put_user_asm_ex(x, addr, itype, rtype, ltype) \
9383- asm volatile("1: mov"itype" %"rtype"0,%1\n" \
9384+ asm volatile(_ASM_LOAD_USER_DS(2) \
9385+ "1: mov"itype" %"rtype"0,%%ds:%1\n" \
9386 "2:\n" \
9387+ _ASM_LOAD_KERNEL_DS \
9388 _ASM_EXTABLE(1b, 2b - 1b) \
9389- : : ltype(x), "m" (__m(addr)))
9390+ : : ltype(x), "m" (__m(addr)), "r"(__USER_DS))
9391
9392 /*
9393 * uaccess_try and catch
9394@@ -530,7 +604,7 @@ struct __large_struct { unsigned long bu
9395 #define get_user_ex(x, ptr) do { \
9396 unsigned long __gue_val; \
9397 __get_user_size_ex((__gue_val), (ptr), (sizeof(*(ptr)))); \
9398- (x) = (__force __typeof__(*(ptr)))__gue_val; \
9399+ (x) = (__typeof__(*(ptr)))__gue_val; \
9400 } while (0)
9401
9402 #ifdef CONFIG_X86_WP_WORKS_OK
9403@@ -567,6 +641,7 @@ extern struct movsl_mask {
9404
9405 #define ARCH_HAS_NOCACHE_UACCESS 1
9406
9407+#define ARCH_HAS_SORT_EXTABLE
9408 #ifdef CONFIG_X86_32
9409 # include "uaccess_32.h"
9410 #else
9411diff -urNp linux-2.6.32.21/arch/x86/include/asm/uaccess_32.h linux-2.6.32.21/arch/x86/include/asm/uaccess_32.h 9068diff -urNp linux-2.6.32.21/arch/x86/include/asm/uaccess_32.h linux-2.6.32.21/arch/x86/include/asm/uaccess_32.h
9412--- linux-2.6.32.21/arch/x86/include/asm/uaccess_32.h 2010-08-26 19:42:20.000000000 -0400 9069--- linux-2.6.32.21/arch/x86/include/asm/uaccess_32.h 2010-08-13 16:24:37.000000000 -0400
9413+++ linux-2.6.32.21/arch/x86/include/asm/uaccess_32.h 2010-09-13 08:10:06.000000000 -0400 9070+++ linux-2.6.32.21/arch/x86/include/asm/uaccess_32.h 2010-09-04 15:54:51.000000000 -0400
9414@@ -44,6 +44,9 @@ unsigned long __must_check __copy_from_u 9071@@ -44,6 +44,9 @@ unsigned long __must_check __copy_from_u
9415 static __always_inline unsigned long __must_check 9072 static __always_inline unsigned long __must_check
9416 __copy_to_user_inatomic(void __user *to, const void *from, unsigned long n) 9073 __copy_to_user_inatomic(void __user *to, const void *from, unsigned long n)
@@ -9541,8 +9198,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/uaccess_32.h linux-2.6.32.21/arc
9541 long count); 9198 long count);
9542 long __must_check __strncpy_from_user(char *dst, 9199 long __must_check __strncpy_from_user(char *dst,
9543diff -urNp linux-2.6.32.21/arch/x86/include/asm/uaccess_64.h linux-2.6.32.21/arch/x86/include/asm/uaccess_64.h 9200diff -urNp linux-2.6.32.21/arch/x86/include/asm/uaccess_64.h linux-2.6.32.21/arch/x86/include/asm/uaccess_64.h
9544--- linux-2.6.32.21/arch/x86/include/asm/uaccess_64.h 2010-08-26 19:42:20.000000000 -0400 9201--- linux-2.6.32.21/arch/x86/include/asm/uaccess_64.h 2010-08-13 16:24:37.000000000 -0400
9545+++ linux-2.6.32.21/arch/x86/include/asm/uaccess_64.h 2010-09-13 08:10:06.000000000 -0400 9202+++ linux-2.6.32.21/arch/x86/include/asm/uaccess_64.h 2010-09-04 15:54:51.000000000 -0400
9546@@ -9,6 +9,9 @@ 9203@@ -9,6 +9,9 @@
9547 #include <linux/prefetch.h> 9204 #include <linux/prefetch.h>
9548 #include <linux/lockdep.h> 9205 #include <linux/lockdep.h>
@@ -9734,9 +9391,249 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/uaccess_64.h linux-2.6.32.21/arc
9734 copy_user_handle_tail(char *to, char *from, unsigned len, unsigned zerorest); 9391 copy_user_handle_tail(char *to, char *from, unsigned len, unsigned zerorest);
9735 9392
9736 #endif /* _ASM_X86_UACCESS_64_H */ 9393 #endif /* _ASM_X86_UACCESS_64_H */
9394diff -urNp linux-2.6.32.21/arch/x86/include/asm/uaccess.h linux-2.6.32.21/arch/x86/include/asm/uaccess.h
9395--- linux-2.6.32.21/arch/x86/include/asm/uaccess.h 2010-08-13 16:24:37.000000000 -0400
9396+++ linux-2.6.32.21/arch/x86/include/asm/uaccess.h 2010-09-04 15:54:51.000000000 -0400
9397@@ -8,12 +8,15 @@
9398 #include <linux/thread_info.h>
9399 #include <linux/prefetch.h>
9400 #include <linux/string.h>
9401+#include <linux/sched.h>
9402 #include <asm/asm.h>
9403 #include <asm/page.h>
9404
9405 #define VERIFY_READ 0
9406 #define VERIFY_WRITE 1
9407
9408+extern void check_object_size(const void *ptr, unsigned long n, bool to);
9409+
9410 /*
9411 * The fs value determines whether argument validity checking should be
9412 * performed or not. If get_fs() == USER_DS, checking is performed, with
9413@@ -29,7 +32,12 @@
9414
9415 #define get_ds() (KERNEL_DS)
9416 #define get_fs() (current_thread_info()->addr_limit)
9417+#ifdef CONFIG_X86_32
9418+void __set_fs(mm_segment_t x, int cpu);
9419+void set_fs(mm_segment_t x);
9420+#else
9421 #define set_fs(x) (current_thread_info()->addr_limit = (x))
9422+#endif
9423
9424 #define segment_eq(a, b) ((a).seg == (b).seg)
9425
9426@@ -77,7 +85,33 @@
9427 * checks that the pointer is in the user space range - after calling
9428 * this function, memory access functions may still return -EFAULT.
9429 */
9430-#define access_ok(type, addr, size) (likely(__range_not_ok(addr, size) == 0))
9431+#define __access_ok(type, addr, size) (likely(__range_not_ok(addr, size) == 0))
9432+#define access_ok(type, addr, size) \
9433+({ \
9434+ long __size = size; \
9435+ unsigned long __addr = (unsigned long)addr; \
9436+ unsigned long __addr_ao = __addr & PAGE_MASK; \
9437+ unsigned long __end_ao = __addr + __size - 1; \
9438+ bool __ret_ao = __range_not_ok(__addr, __size) == 0; \
9439+ if (__ret_ao && unlikely((__end_ao ^ __addr_ao) & PAGE_MASK)) { \
9440+ while(__addr_ao <= __end_ao) { \
9441+ char __c_ao; \
9442+ __addr_ao += PAGE_SIZE; \
9443+ if (__size > PAGE_SIZE) \
9444+ cond_resched(); \
9445+ if (__get_user(__c_ao, (char __user *)__addr)) \
9446+ break; \
9447+ if (type != VERIFY_WRITE) { \
9448+ __addr = __addr_ao; \
9449+ continue; \
9450+ } \
9451+ if (__put_user(__c_ao, (char __user *)__addr)) \
9452+ break; \
9453+ __addr = __addr_ao; \
9454+ } \
9455+ } \
9456+ __ret_ao; \
9457+})
9458
9459 /*
9460 * The exception table consists of pairs of addresses: the first is the
9461@@ -179,17 +213,34 @@ extern int __get_user_bad(void);
9462 __ret_gu; \
9463 })
9464
9465+#if defined(CONFIG_X86_64) && defined(CONFIG_PAX_MEMORY_UDEREF)
9466+#define __put_user_x(size, x, ptr, __ret_pu) \
9467+ ({ \
9468+ int __dummy; \
9469+ asm volatile("call __put_user_" #size : "=a" (__ret_pu), "=c" (__dummy) \
9470+ : "0" ((typeof(*(ptr)))(x)), "c" (ptr) : "ebx"); \
9471+ })
9472+#else
9473 #define __put_user_x(size, x, ptr, __ret_pu) \
9474 asm volatile("call __put_user_" #size : "=a" (__ret_pu) \
9475 : "0" ((typeof(*(ptr)))(x)), "c" (ptr) : "ebx")
9476+#endif
9477
9478-
9479+#ifdef CONFIG_X86_32
9480+#define _ASM_LOAD_USER_DS(ds) "movw %w" #ds ",%%ds\n"
9481+#define _ASM_LOAD_KERNEL_DS "pushl %%ss; popl %%ds\n"
9482+#else
9483+#define _ASM_LOAD_USER_DS(ds)
9484+#define _ASM_LOAD_KERNEL_DS
9485+#endif
9486
9487 #ifdef CONFIG_X86_32
9488 #define __put_user_asm_u64(x, addr, err, errret) \
9489- asm volatile("1: movl %%eax,0(%2)\n" \
9490- "2: movl %%edx,4(%2)\n" \
9491+ asm volatile(_ASM_LOAD_USER_DS(5) \
9492+ "1: movl %%eax,%%ds:0(%2)\n" \
9493+ "2: movl %%edx,%%ds:4(%2)\n" \
9494 "3:\n" \
9495+ _ASM_LOAD_KERNEL_DS \
9496 ".section .fixup,\"ax\"\n" \
9497 "4: movl %3,%0\n" \
9498 " jmp 3b\n" \
9499@@ -197,15 +248,18 @@ extern int __get_user_bad(void);
9500 _ASM_EXTABLE(1b, 4b) \
9501 _ASM_EXTABLE(2b, 4b) \
9502 : "=r" (err) \
9503- : "A" (x), "r" (addr), "i" (errret), "0" (err))
9504+ : "A" (x), "r" (addr), "i" (errret), "0" (err), \
9505+ "r"(__USER_DS))
9506
9507 #define __put_user_asm_ex_u64(x, addr) \
9508- asm volatile("1: movl %%eax,0(%1)\n" \
9509- "2: movl %%edx,4(%1)\n" \
9510+ asm volatile(_ASM_LOAD_USER_DS(2) \
9511+ "1: movl %%eax,%%ds:0(%1)\n" \
9512+ "2: movl %%edx,%%ds:4(%1)\n" \
9513 "3:\n" \
9514+ _ASM_LOAD_KERNEL_DS \
9515 _ASM_EXTABLE(1b, 2b - 1b) \
9516 _ASM_EXTABLE(2b, 3b - 2b) \
9517- : : "A" (x), "r" (addr))
9518+ : : "A" (x), "r" (addr), "r"(__USER_DS))
9519
9520 #define __put_user_x8(x, ptr, __ret_pu) \
9521 asm volatile("call __put_user_8" : "=a" (__ret_pu) \
9522@@ -374,16 +428,18 @@ do { \
9523 } while (0)
9524
9525 #define __get_user_asm(x, addr, err, itype, rtype, ltype, errret) \
9526- asm volatile("1: mov"itype" %2,%"rtype"1\n" \
9527+ asm volatile(_ASM_LOAD_USER_DS(5) \
9528+ "1: mov"itype" %%ds:%2,%"rtype"1\n" \
9529 "2:\n" \
9530+ _ASM_LOAD_KERNEL_DS \
9531 ".section .fixup,\"ax\"\n" \
9532 "3: mov %3,%0\n" \
9533 " xor"itype" %"rtype"1,%"rtype"1\n" \
9534 " jmp 2b\n" \
9535 ".previous\n" \
9536 _ASM_EXTABLE(1b, 3b) \
9537- : "=r" (err), ltype(x) \
9538- : "m" (__m(addr)), "i" (errret), "0" (err))
9539+ : "=r" (err), ltype (x) \
9540+ : "m" (__m(addr)), "i" (errret), "0" (err), "r"(__USER_DS))
9541
9542 #define __get_user_size_ex(x, ptr, size) \
9543 do { \
9544@@ -407,10 +463,12 @@ do { \
9545 } while (0)
9546
9547 #define __get_user_asm_ex(x, addr, itype, rtype, ltype) \
9548- asm volatile("1: mov"itype" %1,%"rtype"0\n" \
9549+ asm volatile(_ASM_LOAD_USER_DS(2) \
9550+ "1: mov"itype" %%ds:%1,%"rtype"0\n" \
9551 "2:\n" \
9552+ _ASM_LOAD_KERNEL_DS \
9553 _ASM_EXTABLE(1b, 2b - 1b) \
9554- : ltype(x) : "m" (__m(addr)))
9555+ : ltype(x) : "m" (__m(addr)), "r"(__USER_DS))
9556
9557 #define __put_user_nocheck(x, ptr, size) \
9558 ({ \
9559@@ -424,13 +482,24 @@ do { \
9560 int __gu_err; \
9561 unsigned long __gu_val; \
9562 __get_user_size(__gu_val, (ptr), (size), __gu_err, -EFAULT); \
9563- (x) = (__force __typeof__(*(ptr)))__gu_val; \
9564+ (x) = (__typeof__(*(ptr)))__gu_val; \
9565 __gu_err; \
9566 })
9567
9568 /* FIXME: this hack is definitely wrong -AK */
9569 struct __large_struct { unsigned long buf[100]; };
9570-#define __m(x) (*(struct __large_struct __user *)(x))
9571+#if defined(CONFIG_X86_64) && defined(CONFIG_PAX_MEMORY_UDEREF)
9572+#define ____m(x) \
9573+({ \
9574+ unsigned long ____x = (unsigned long)(x); \
9575+ if (____x < PAX_USER_SHADOW_BASE) \
9576+ ____x += PAX_USER_SHADOW_BASE; \
9577+ (void __user *)____x; \
9578+})
9579+#else
9580+#define ____m(x) (x)
9581+#endif
9582+#define __m(x) (*(struct __large_struct __user *)____m(x))
9583
9584 /*
9585 * Tell gcc we read from memory instead of writing: this is because
9586@@ -438,21 +507,26 @@ struct __large_struct { unsigned long bu
9587 * aliasing issues.
9588 */
9589 #define __put_user_asm(x, addr, err, itype, rtype, ltype, errret) \
9590- asm volatile("1: mov"itype" %"rtype"1,%2\n" \
9591+ asm volatile(_ASM_LOAD_USER_DS(5) \
9592+ "1: mov"itype" %"rtype"1,%%ds:%2\n" \
9593 "2:\n" \
9594+ _ASM_LOAD_KERNEL_DS \
9595 ".section .fixup,\"ax\"\n" \
9596 "3: mov %3,%0\n" \
9597 " jmp 2b\n" \
9598 ".previous\n" \
9599 _ASM_EXTABLE(1b, 3b) \
9600 : "=r"(err) \
9601- : ltype(x), "m" (__m(addr)), "i" (errret), "0" (err))
9602+ : ltype (x), "m" (__m(addr)), "i" (errret), "0" (err),\
9603+ "r"(__USER_DS))
9604
9605 #define __put_user_asm_ex(x, addr, itype, rtype, ltype) \
9606- asm volatile("1: mov"itype" %"rtype"0,%1\n" \
9607+ asm volatile(_ASM_LOAD_USER_DS(2) \
9608+ "1: mov"itype" %"rtype"0,%%ds:%1\n" \
9609 "2:\n" \
9610+ _ASM_LOAD_KERNEL_DS \
9611 _ASM_EXTABLE(1b, 2b - 1b) \
9612- : : ltype(x), "m" (__m(addr)))
9613+ : : ltype(x), "m" (__m(addr)), "r"(__USER_DS))
9614
9615 /*
9616 * uaccess_try and catch
9617@@ -530,7 +604,7 @@ struct __large_struct { unsigned long bu
9618 #define get_user_ex(x, ptr) do { \
9619 unsigned long __gue_val; \
9620 __get_user_size_ex((__gue_val), (ptr), (sizeof(*(ptr)))); \
9621- (x) = (__force __typeof__(*(ptr)))__gue_val; \
9622+ (x) = (__typeof__(*(ptr)))__gue_val; \
9623 } while (0)
9624
9625 #ifdef CONFIG_X86_WP_WORKS_OK
9626@@ -567,6 +641,7 @@ extern struct movsl_mask {
9627
9628 #define ARCH_HAS_NOCACHE_UACCESS 1
9629
9630+#define ARCH_HAS_SORT_EXTABLE
9631 #ifdef CONFIG_X86_32
9632 # include "uaccess_32.h"
9633 #else
9737diff -urNp linux-2.6.32.21/arch/x86/include/asm/vgtod.h linux-2.6.32.21/arch/x86/include/asm/vgtod.h 9634diff -urNp linux-2.6.32.21/arch/x86/include/asm/vgtod.h linux-2.6.32.21/arch/x86/include/asm/vgtod.h
9738--- linux-2.6.32.21/arch/x86/include/asm/vgtod.h 2010-08-26 19:42:20.000000000 -0400 9635--- linux-2.6.32.21/arch/x86/include/asm/vgtod.h 2010-08-13 16:24:37.000000000 -0400
9739+++ linux-2.6.32.21/arch/x86/include/asm/vgtod.h 2010-09-13 08:10:06.000000000 -0400 9636+++ linux-2.6.32.21/arch/x86/include/asm/vgtod.h 2010-09-04 15:54:51.000000000 -0400
9740@@ -14,6 +14,7 @@ struct vsyscall_gtod_data { 9637@@ -14,6 +14,7 @@ struct vsyscall_gtod_data {
9741 int sysctl_enabled; 9638 int sysctl_enabled;
9742 struct timezone sys_tz; 9639 struct timezone sys_tz;
@@ -9746,8 +9643,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/vgtod.h linux-2.6.32.21/arch/x86
9746 cycle_t cycle_last; 9643 cycle_t cycle_last;
9747 cycle_t mask; 9644 cycle_t mask;
9748diff -urNp linux-2.6.32.21/arch/x86/include/asm/vmi.h linux-2.6.32.21/arch/x86/include/asm/vmi.h 9645diff -urNp linux-2.6.32.21/arch/x86/include/asm/vmi.h linux-2.6.32.21/arch/x86/include/asm/vmi.h
9749--- linux-2.6.32.21/arch/x86/include/asm/vmi.h 2010-08-26 19:42:20.000000000 -0400 9646--- linux-2.6.32.21/arch/x86/include/asm/vmi.h 2010-08-13 16:24:37.000000000 -0400
9750+++ linux-2.6.32.21/arch/x86/include/asm/vmi.h 2010-09-13 08:10:06.000000000 -0400 9647+++ linux-2.6.32.21/arch/x86/include/asm/vmi.h 2010-09-04 15:54:51.000000000 -0400
9751@@ -191,6 +191,7 @@ struct vrom_header { 9648@@ -191,6 +191,7 @@ struct vrom_header {
9752 u8 reserved[96]; /* Reserved for headers */ 9649 u8 reserved[96]; /* Reserved for headers */
9753 char vmi_init[8]; /* VMI_Init jump point */ 9650 char vmi_init[8]; /* VMI_Init jump point */
@@ -9757,8 +9654,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/vmi.h linux-2.6.32.21/arch/x86/i
9757 9654
9758 struct pnp_header { 9655 struct pnp_header {
9759diff -urNp linux-2.6.32.21/arch/x86/include/asm/vsyscall.h linux-2.6.32.21/arch/x86/include/asm/vsyscall.h 9656diff -urNp linux-2.6.32.21/arch/x86/include/asm/vsyscall.h linux-2.6.32.21/arch/x86/include/asm/vsyscall.h
9760--- linux-2.6.32.21/arch/x86/include/asm/vsyscall.h 2010-08-26 19:42:20.000000000 -0400 9657--- linux-2.6.32.21/arch/x86/include/asm/vsyscall.h 2010-08-13 16:24:37.000000000 -0400
9761+++ linux-2.6.32.21/arch/x86/include/asm/vsyscall.h 2010-09-13 08:10:06.000000000 -0400 9658+++ linux-2.6.32.21/arch/x86/include/asm/vsyscall.h 2010-09-04 15:54:51.000000000 -0400
9762@@ -15,9 +15,10 @@ enum vsyscall_num { 9659@@ -15,9 +15,10 @@ enum vsyscall_num {
9763 9660
9764 #ifdef __KERNEL__ 9661 #ifdef __KERNEL__
@@ -9790,8 +9687,8 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/vsyscall.h linux-2.6.32.21/arch/
9790 9687
9791 #endif /* _ASM_X86_VSYSCALL_H */ 9688 #endif /* _ASM_X86_VSYSCALL_H */
9792diff -urNp linux-2.6.32.21/arch/x86/include/asm/xsave.h linux-2.6.32.21/arch/x86/include/asm/xsave.h 9689diff -urNp linux-2.6.32.21/arch/x86/include/asm/xsave.h linux-2.6.32.21/arch/x86/include/asm/xsave.h
9793--- linux-2.6.32.21/arch/x86/include/asm/xsave.h 2010-08-26 19:42:20.000000000 -0400 9690--- linux-2.6.32.21/arch/x86/include/asm/xsave.h 2010-08-13 16:24:37.000000000 -0400
9794+++ linux-2.6.32.21/arch/x86/include/asm/xsave.h 2010-09-13 08:10:06.000000000 -0400 9691+++ linux-2.6.32.21/arch/x86/include/asm/xsave.h 2010-09-04 15:54:51.000000000 -0400
9795@@ -56,6 +56,12 @@ static inline int xrstor_checking(struct 9692@@ -56,6 +56,12 @@ static inline int xrstor_checking(struct
9796 static inline int xsave_user(struct xsave_struct __user *buf) 9693 static inline int xsave_user(struct xsave_struct __user *buf)
9797 { 9694 {
@@ -9817,9 +9714,118 @@ diff -urNp linux-2.6.32.21/arch/x86/include/asm/xsave.h linux-2.6.32.21/arch/x86
9817 __asm__ __volatile__("1: .byte " REX_PREFIX "0x0f,0xae,0x2f\n" 9714 __asm__ __volatile__("1: .byte " REX_PREFIX "0x0f,0xae,0x2f\n"
9818 "2:\n" 9715 "2:\n"
9819 ".section .fixup,\"ax\"\n" 9716 ".section .fixup,\"ax\"\n"
9717diff -urNp linux-2.6.32.21/arch/x86/Kconfig linux-2.6.32.21/arch/x86/Kconfig
9718--- linux-2.6.32.21/arch/x86/Kconfig 2010-08-29 21:08:20.000000000 -0400
9719+++ linux-2.6.32.21/arch/x86/Kconfig 2010-09-04 15:54:51.000000000 -0400
9720@@ -997,7 +997,7 @@ choice
9721
9722 config NOHIGHMEM
9723 bool "off"
9724- depends on !X86_NUMAQ
9725+ depends on !X86_NUMAQ && !(PAX_PAGEEXEC && PAX_ENABLE_PAE)
9726 ---help---
9727 Linux can use up to 64 Gigabytes of physical memory on x86 systems.
9728 However, the address space of 32-bit x86 processors is only 4
9729@@ -1034,7 +1034,7 @@ config NOHIGHMEM
9730
9731 config HIGHMEM4G
9732 bool "4GB"
9733- depends on !X86_NUMAQ
9734+ depends on !X86_NUMAQ && !(PAX_PAGEEXEC && PAX_ENABLE_PAE)
9735 ---help---
9736 Select this if you have a 32-bit processor and between 1 and 4
9737 gigabytes of physical RAM.
9738@@ -1088,7 +1088,7 @@ config PAGE_OFFSET
9739 hex
9740 default 0xB0000000 if VMSPLIT_3G_OPT
9741 default 0x80000000 if VMSPLIT_2G
9742- default 0x78000000 if VMSPLIT_2G_OPT
9743+ default 0x70000000 if VMSPLIT_2G_OPT
9744 default 0x40000000 if VMSPLIT_1G
9745 default 0xC0000000
9746 depends on X86_32
9747@@ -1419,7 +1419,7 @@ config ARCH_USES_PG_UNCACHED
9748
9749 config EFI
9750 bool "EFI runtime service support"
9751- depends on ACPI
9752+ depends on ACPI && !PAX_KERNEXEC
9753 ---help---
9754 This enables the kernel to use EFI runtime services that are
9755 available (such as the EFI variable services).
9756@@ -1506,6 +1506,7 @@ config KEXEC_JUMP
9757 config PHYSICAL_START
9758 hex "Physical address where the kernel is loaded" if (EMBEDDED || CRASH_DUMP)
9759 default "0x1000000"
9760+ range 0x400000 0x40000000
9761 ---help---
9762 This gives the physical address where the kernel is loaded.
9763
9764@@ -1570,6 +1571,7 @@ config PHYSICAL_ALIGN
9765 hex
9766 prompt "Alignment value to which kernel should be aligned" if X86_32
9767 default "0x1000000"
9768+ range 0x400000 0x1000000 if PAX_KERNEXEC
9769 range 0x2000 0x1000000
9770 ---help---
9771 This value puts the alignment restrictions on physical address
9772@@ -1601,9 +1603,10 @@ config HOTPLUG_CPU
9773 Say N if you want to disable CPU hotplug.
9774
9775 config COMPAT_VDSO
9776- def_bool y
9777+ def_bool n
9778 prompt "Compat VDSO support"
9779 depends on X86_32 || IA32_EMULATION
9780+ depends on !PAX_NOEXEC && !PAX_MEMORY_UDEREF
9781 ---help---
9782 Map the 32-bit VDSO to the predictable old-style address too.
9783 ---help---
9784diff -urNp linux-2.6.32.21/arch/x86/Kconfig.cpu linux-2.6.32.21/arch/x86/Kconfig.cpu
9785--- linux-2.6.32.21/arch/x86/Kconfig.cpu 2010-08-13 16:24:37.000000000 -0400
9786+++ linux-2.6.32.21/arch/x86/Kconfig.cpu 2010-09-04 15:54:51.000000000 -0400
9787@@ -340,7 +340,7 @@ config X86_PPRO_FENCE
9788
9789 config X86_F00F_BUG
9790 def_bool y
9791- depends on M586MMX || M586TSC || M586 || M486 || M386
9792+ depends on (M586MMX || M586TSC || M586 || M486 || M386) && !PAX_KERNEXEC
9793
9794 config X86_WP_WORKS_OK
9795 def_bool y
9796@@ -360,7 +360,7 @@ config X86_POPAD_OK
9797
9798 config X86_ALIGNMENT_16
9799 def_bool y
9800- depends on MWINCHIP3D || MWINCHIPC6 || MCYRIXIII || X86_ELAN || MK6 || M586MMX || M586TSC || M586 || M486 || MVIAC3_2 || MGEODEGX1
9801+ depends on MWINCHIP3D || MWINCHIPC6 || MCYRIXIII || X86_ELAN || MK8 || MK7 || MK6 || MCORE2 || MPENTIUM4 || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || M586 || M486 || MVIAC3_2 || MGEODEGX1
9802
9803 config X86_INTEL_USERCOPY
9804 def_bool y
9805@@ -406,7 +406,7 @@ config X86_CMPXCHG64
9806 # generates cmov.
9807 config X86_CMOV
9808 def_bool y
9809- depends on (MK8 || MK7 || MCORE2 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || MVIAC3_2 || MVIAC7 || MCRUSOE || MEFFICEON || X86_64 || MATOM)
9810+ depends on (MK8 || MK7 || MCORE2 || MPSC || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || MVIAC3_2 || MVIAC7 || MCRUSOE || MEFFICEON || X86_64 || MATOM)
9811
9812 config X86_MINIMUM_CPU_FAMILY
9813 int
9814diff -urNp linux-2.6.32.21/arch/x86/Kconfig.debug linux-2.6.32.21/arch/x86/Kconfig.debug
9815--- linux-2.6.32.21/arch/x86/Kconfig.debug 2010-08-13 16:24:37.000000000 -0400
9816+++ linux-2.6.32.21/arch/x86/Kconfig.debug 2010-09-04 15:54:51.000000000 -0400
9817@@ -99,7 +99,7 @@ config X86_PTDUMP
9818 config DEBUG_RODATA
9819 bool "Write protect kernel read-only data structures"
9820 default y
9821- depends on DEBUG_KERNEL
9822+ depends on DEBUG_KERNEL && BROKEN
9823 ---help---
9824 Mark the kernel read-only data as write-protected in the pagetables,
9825 in order to catch accidental (and incorrect) writes to such const
9820diff -urNp linux-2.6.32.21/arch/x86/kernel/acpi/boot.c linux-2.6.32.21/arch/x86/kernel/acpi/boot.c 9826diff -urNp linux-2.6.32.21/arch/x86/kernel/acpi/boot.c linux-2.6.32.21/arch/x86/kernel/acpi/boot.c
9821--- linux-2.6.32.21/arch/x86/kernel/acpi/boot.c 2010-08-26 19:42:20.000000000 -0400 9827--- linux-2.6.32.21/arch/x86/kernel/acpi/boot.c 2010-08-13 16:24:37.000000000 -0400
9822+++ linux-2.6.32.21/arch/x86/kernel/acpi/boot.c 2010-09-13 08:10:06.000000000 -0400 9828+++ linux-2.6.32.21/arch/x86/kernel/acpi/boot.c 2010-09-04 15:54:51.000000000 -0400
9823@@ -1502,7 +1502,7 @@ static struct dmi_system_id __initdata a 9829@@ -1502,7 +1502,7 @@ static struct dmi_system_id __initdata a
9824 DMI_MATCH(DMI_PRODUCT_NAME, "HP Compaq 6715b"), 9830 DMI_MATCH(DMI_PRODUCT_NAME, "HP Compaq 6715b"),
9825 }, 9831 },
@@ -9830,8 +9836,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/acpi/boot.c linux-2.6.32.21/arch/x86/
9830 9836
9831 /* 9837 /*
9832diff -urNp linux-2.6.32.21/arch/x86/kernel/acpi/realmode/wakeup.S linux-2.6.32.21/arch/x86/kernel/acpi/realmode/wakeup.S 9838diff -urNp linux-2.6.32.21/arch/x86/kernel/acpi/realmode/wakeup.S linux-2.6.32.21/arch/x86/kernel/acpi/realmode/wakeup.S
9833--- linux-2.6.32.21/arch/x86/kernel/acpi/realmode/wakeup.S 2010-08-26 19:42:20.000000000 -0400 9839--- linux-2.6.32.21/arch/x86/kernel/acpi/realmode/wakeup.S 2010-08-13 16:24:37.000000000 -0400
9834+++ linux-2.6.32.21/arch/x86/kernel/acpi/realmode/wakeup.S 2010-09-13 08:10:06.000000000 -0400 9840+++ linux-2.6.32.21/arch/x86/kernel/acpi/realmode/wakeup.S 2010-09-04 15:54:51.000000000 -0400
9835@@ -104,7 +104,7 @@ _start: 9841@@ -104,7 +104,7 @@ _start:
9836 movl %eax, %ecx 9842 movl %eax, %ecx
9837 orl %edx, %ecx 9843 orl %edx, %ecx
@@ -9842,8 +9848,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/acpi/realmode/wakeup.S linux-2.6.32.2
9842 1: 9848 1:
9843 9849
9844diff -urNp linux-2.6.32.21/arch/x86/kernel/acpi/sleep.c linux-2.6.32.21/arch/x86/kernel/acpi/sleep.c 9850diff -urNp linux-2.6.32.21/arch/x86/kernel/acpi/sleep.c linux-2.6.32.21/arch/x86/kernel/acpi/sleep.c
9845--- linux-2.6.32.21/arch/x86/kernel/acpi/sleep.c 2010-08-26 19:42:20.000000000 -0400 9851--- linux-2.6.32.21/arch/x86/kernel/acpi/sleep.c 2010-08-13 16:24:37.000000000 -0400
9846+++ linux-2.6.32.21/arch/x86/kernel/acpi/sleep.c 2010-09-13 08:10:06.000000000 -0400 9852+++ linux-2.6.32.21/arch/x86/kernel/acpi/sleep.c 2010-09-04 15:54:51.000000000 -0400
9847@@ -11,11 +11,12 @@ 9853@@ -11,11 +11,12 @@
9848 #include <linux/cpumask.h> 9854 #include <linux/cpumask.h>
9849 #include <asm/segment.h> 9855 #include <asm/segment.h>
@@ -9889,8 +9895,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/acpi/sleep.c linux-2.6.32.21/arch/x86
9889 9895
9890 9896
9891diff -urNp linux-2.6.32.21/arch/x86/kernel/acpi/wakeup_32.S linux-2.6.32.21/arch/x86/kernel/acpi/wakeup_32.S 9897diff -urNp linux-2.6.32.21/arch/x86/kernel/acpi/wakeup_32.S linux-2.6.32.21/arch/x86/kernel/acpi/wakeup_32.S
9892--- linux-2.6.32.21/arch/x86/kernel/acpi/wakeup_32.S 2010-08-26 19:42:20.000000000 -0400 9898--- linux-2.6.32.21/arch/x86/kernel/acpi/wakeup_32.S 2010-08-13 16:24:37.000000000 -0400
9893+++ linux-2.6.32.21/arch/x86/kernel/acpi/wakeup_32.S 2010-09-13 08:10:06.000000000 -0400 9899+++ linux-2.6.32.21/arch/x86/kernel/acpi/wakeup_32.S 2010-09-04 15:54:51.000000000 -0400
9894@@ -30,13 +30,11 @@ wakeup_pmode_return: 9900@@ -30,13 +30,11 @@ wakeup_pmode_return:
9895 # and restore the stack ... but you need gdt for this to work 9901 # and restore the stack ... but you need gdt for this to work
9896 movl saved_context_esp, %esp 9902 movl saved_context_esp, %esp
@@ -9908,8 +9914,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/acpi/wakeup_32.S linux-2.6.32.21/arch
9908 bogus_magic: 9914 bogus_magic:
9909 jmp bogus_magic 9915 jmp bogus_magic
9910diff -urNp linux-2.6.32.21/arch/x86/kernel/alternative.c linux-2.6.32.21/arch/x86/kernel/alternative.c 9916diff -urNp linux-2.6.32.21/arch/x86/kernel/alternative.c linux-2.6.32.21/arch/x86/kernel/alternative.c
9911--- linux-2.6.32.21/arch/x86/kernel/alternative.c 2010-08-26 19:42:20.000000000 -0400 9917--- linux-2.6.32.21/arch/x86/kernel/alternative.c 2010-08-13 16:24:37.000000000 -0400
9912+++ linux-2.6.32.21/arch/x86/kernel/alternative.c 2010-09-13 08:10:06.000000000 -0400 9918+++ linux-2.6.32.21/arch/x86/kernel/alternative.c 2010-09-04 15:54:51.000000000 -0400
9913@@ -407,7 +407,7 @@ void __init_or_module apply_paravirt(str 9919@@ -407,7 +407,7 @@ void __init_or_module apply_paravirt(str
9914 9920
9915 BUG_ON(p->len > MAX_PATCH_LEN); 9921 BUG_ON(p->len > MAX_PATCH_LEN);
@@ -9993,8 +9999,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/alternative.c linux-2.6.32.21/arch/x8
9993 return addr; 9999 return addr;
9994 } 10000 }
9995diff -urNp linux-2.6.32.21/arch/x86/kernel/amd_iommu.c linux-2.6.32.21/arch/x86/kernel/amd_iommu.c 10001diff -urNp linux-2.6.32.21/arch/x86/kernel/amd_iommu.c linux-2.6.32.21/arch/x86/kernel/amd_iommu.c
9996--- linux-2.6.32.21/arch/x86/kernel/amd_iommu.c 2010-08-26 19:42:20.000000000 -0400 10002--- linux-2.6.32.21/arch/x86/kernel/amd_iommu.c 2010-08-13 16:24:37.000000000 -0400
9997+++ linux-2.6.32.21/arch/x86/kernel/amd_iommu.c 2010-09-13 08:10:06.000000000 -0400 10003+++ linux-2.6.32.21/arch/x86/kernel/amd_iommu.c 2010-09-04 15:54:51.000000000 -0400
9998@@ -2074,7 +2074,7 @@ static void prealloc_protection_domains( 10004@@ -2074,7 +2074,7 @@ static void prealloc_protection_domains(
9999 } 10005 }
10000 } 10006 }
@@ -10005,8 +10011,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/amd_iommu.c linux-2.6.32.21/arch/x86/
10005 .free_coherent = free_coherent, 10011 .free_coherent = free_coherent,
10006 .map_page = map_page, 10012 .map_page = map_page,
10007diff -urNp linux-2.6.32.21/arch/x86/kernel/apic/io_apic.c linux-2.6.32.21/arch/x86/kernel/apic/io_apic.c 10013diff -urNp linux-2.6.32.21/arch/x86/kernel/apic/io_apic.c linux-2.6.32.21/arch/x86/kernel/apic/io_apic.c
10008--- linux-2.6.32.21/arch/x86/kernel/apic/io_apic.c 2010-08-26 19:42:20.000000000 -0400 10014--- linux-2.6.32.21/arch/x86/kernel/apic/io_apic.c 2010-08-29 21:08:20.000000000 -0400
10009+++ linux-2.6.32.21/arch/x86/kernel/apic/io_apic.c 2010-09-13 08:10:06.000000000 -0400 10015+++ linux-2.6.32.21/arch/x86/kernel/apic/io_apic.c 2010-09-04 15:54:51.000000000 -0400
10010@@ -711,7 +711,7 @@ struct IO_APIC_route_entry **alloc_ioapi 10016@@ -711,7 +711,7 @@ struct IO_APIC_route_entry **alloc_ioapi
10011 ioapic_entries = kzalloc(sizeof(*ioapic_entries) * nr_ioapics, 10017 ioapic_entries = kzalloc(sizeof(*ioapic_entries) * nr_ioapics,
10012 GFP_ATOMIC); 10018 GFP_ATOMIC);
@@ -10044,8 +10050,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/apic/io_apic.c linux-2.6.32.21/arch/x
10044 spin_unlock(&vector_lock); 10050 spin_unlock(&vector_lock);
10045 } 10051 }
10046diff -urNp linux-2.6.32.21/arch/x86/kernel/apm_32.c linux-2.6.32.21/arch/x86/kernel/apm_32.c 10052diff -urNp linux-2.6.32.21/arch/x86/kernel/apm_32.c linux-2.6.32.21/arch/x86/kernel/apm_32.c
10047--- linux-2.6.32.21/arch/x86/kernel/apm_32.c 2010-08-26 19:42:20.000000000 -0400 10053--- linux-2.6.32.21/arch/x86/kernel/apm_32.c 2010-08-13 16:24:37.000000000 -0400
10048+++ linux-2.6.32.21/arch/x86/kernel/apm_32.c 2010-09-13 08:10:06.000000000 -0400 10054+++ linux-2.6.32.21/arch/x86/kernel/apm_32.c 2010-09-04 15:54:51.000000000 -0400
10049@@ -410,7 +410,7 @@ static DEFINE_SPINLOCK(user_list_lock); 10055@@ -410,7 +410,7 @@ static DEFINE_SPINLOCK(user_list_lock);
10050 * This is for buggy BIOS's that refer to (real mode) segment 0x40 10056 * This is for buggy BIOS's that refer to (real mode) segment 0x40
10051 * even though they are called in protected mode. 10057 * even though they are called in protected mode.
@@ -10148,8 +10154,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/apm_32.c linux-2.6.32.21/arch/x86/ker
10148 proc_create("apm", 0, NULL, &apm_file_ops); 10154 proc_create("apm", 0, NULL, &apm_file_ops);
10149 10155
10150diff -urNp linux-2.6.32.21/arch/x86/kernel/asm-offsets_32.c linux-2.6.32.21/arch/x86/kernel/asm-offsets_32.c 10156diff -urNp linux-2.6.32.21/arch/x86/kernel/asm-offsets_32.c linux-2.6.32.21/arch/x86/kernel/asm-offsets_32.c
10151--- linux-2.6.32.21/arch/x86/kernel/asm-offsets_32.c 2010-08-26 19:42:20.000000000 -0400 10157--- linux-2.6.32.21/arch/x86/kernel/asm-offsets_32.c 2010-08-13 16:24:37.000000000 -0400
10152+++ linux-2.6.32.21/arch/x86/kernel/asm-offsets_32.c 2010-09-13 08:10:06.000000000 -0400 10158+++ linux-2.6.32.21/arch/x86/kernel/asm-offsets_32.c 2010-09-04 15:54:51.000000000 -0400
10153@@ -115,6 +115,11 @@ void foo(void) 10159@@ -115,6 +115,11 @@ void foo(void)
10154 OFFSET(PV_CPU_iret, pv_cpu_ops, iret); 10160 OFFSET(PV_CPU_iret, pv_cpu_ops, iret);
10155 OFFSET(PV_CPU_irq_enable_sysexit, pv_cpu_ops, irq_enable_sysexit); 10161 OFFSET(PV_CPU_irq_enable_sysexit, pv_cpu_ops, irq_enable_sysexit);
@@ -10163,8 +10169,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/asm-offsets_32.c linux-2.6.32.21/arch
10163 10169
10164 #ifdef CONFIG_XEN 10170 #ifdef CONFIG_XEN
10165diff -urNp linux-2.6.32.21/arch/x86/kernel/asm-offsets_64.c linux-2.6.32.21/arch/x86/kernel/asm-offsets_64.c 10171diff -urNp linux-2.6.32.21/arch/x86/kernel/asm-offsets_64.c linux-2.6.32.21/arch/x86/kernel/asm-offsets_64.c
10166--- linux-2.6.32.21/arch/x86/kernel/asm-offsets_64.c 2010-08-26 19:42:20.000000000 -0400 10172--- linux-2.6.32.21/arch/x86/kernel/asm-offsets_64.c 2010-08-13 16:24:37.000000000 -0400
10167+++ linux-2.6.32.21/arch/x86/kernel/asm-offsets_64.c 2010-09-13 08:10:06.000000000 -0400 10173+++ linux-2.6.32.21/arch/x86/kernel/asm-offsets_64.c 2010-09-04 15:54:51.000000000 -0400
10168@@ -63,6 +63,18 @@ int main(void) 10174@@ -63,6 +63,18 @@ int main(void)
10169 OFFSET(PV_CPU_irq_enable_sysexit, pv_cpu_ops, irq_enable_sysexit); 10175 OFFSET(PV_CPU_irq_enable_sysexit, pv_cpu_ops, irq_enable_sysexit);
10170 OFFSET(PV_CPU_swapgs, pv_cpu_ops, swapgs); 10176 OFFSET(PV_CPU_swapgs, pv_cpu_ops, swapgs);
@@ -10192,23 +10198,9 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/asm-offsets_64.c linux-2.6.32.21/arch
10192 DEFINE(TSS_ist, offsetof(struct tss_struct, x86_tss.ist)); 10198 DEFINE(TSS_ist, offsetof(struct tss_struct, x86_tss.ist));
10193 BLANK(); 10199 BLANK();
10194 DEFINE(crypto_tfm_ctx_offset, offsetof(struct crypto_tfm, __crt_ctx)); 10200 DEFINE(crypto_tfm_ctx_offset, offsetof(struct crypto_tfm, __crt_ctx));
10195diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/Makefile linux-2.6.32.21/arch/x86/kernel/cpu/Makefile
10196--- linux-2.6.32.21/arch/x86/kernel/cpu/Makefile 2010-08-26 19:42:20.000000000 -0400
10197+++ linux-2.6.32.21/arch/x86/kernel/cpu/Makefile 2010-09-13 08:10:06.000000000 -0400
10198@@ -7,10 +7,6 @@ ifdef CONFIG_FUNCTION_TRACER
10199 CFLAGS_REMOVE_common.o = -pg
10200 endif
10201
10202-# Make sure load_percpu_segment has no stackprotector
10203-nostackp := $(call cc-option, -fno-stack-protector)
10204-CFLAGS_common.o := $(nostackp)
10205-
10206 obj-y := intel_cacheinfo.o addon_cpuid_features.o
10207 obj-y += proc.o capflags.o powerflags.o common.o
10208 obj-y += vmware.o hypervisor.o sched.o
10209diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/common.c linux-2.6.32.21/arch/x86/kernel/cpu/common.c 10201diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/common.c linux-2.6.32.21/arch/x86/kernel/cpu/common.c
10210--- linux-2.6.32.21/arch/x86/kernel/cpu/common.c 2010-08-26 19:42:20.000000000 -0400 10202--- linux-2.6.32.21/arch/x86/kernel/cpu/common.c 2010-08-13 16:24:37.000000000 -0400
10211+++ linux-2.6.32.21/arch/x86/kernel/cpu/common.c 2010-09-13 08:10:06.000000000 -0400 10203+++ linux-2.6.32.21/arch/x86/kernel/cpu/common.c 2010-09-04 15:54:51.000000000 -0400
10212@@ -83,60 +83,6 @@ static const struct cpu_dev __cpuinitcon 10204@@ -83,60 +83,6 @@ static const struct cpu_dev __cpuinitcon
10213 10205
10214 static const struct cpu_dev *this_cpu __cpuinitdata = &default_cpu; 10206 static const struct cpu_dev *this_cpu __cpuinitdata = &default_cpu;
@@ -10318,8 +10310,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/common.c linux-2.6.32.21/arch/x86
10318 10310
10319 if (cpumask_test_and_set_cpu(cpu, cpu_initialized_mask)) { 10311 if (cpumask_test_and_set_cpu(cpu, cpu_initialized_mask)) {
10320diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c linux-2.6.32.21/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c 10312diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c linux-2.6.32.21/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c
10321--- linux-2.6.32.21/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c 2010-08-26 19:42:20.000000000 -0400 10313--- linux-2.6.32.21/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c 2010-08-13 16:24:37.000000000 -0400
10322+++ linux-2.6.32.21/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c 2010-09-13 08:10:06.000000000 -0400 10314+++ linux-2.6.32.21/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c 2010-09-04 15:54:51.000000000 -0400
10323@@ -521,7 +521,7 @@ static const struct dmi_system_id sw_any 10315@@ -521,7 +521,7 @@ static const struct dmi_system_id sw_any
10324 DMI_MATCH(DMI_PRODUCT_NAME, "X6DLP"), 10316 DMI_MATCH(DMI_PRODUCT_NAME, "X6DLP"),
10325 }, 10317 },
@@ -10330,8 +10322,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c linux-2.6.
10330 10322
10331 static int acpi_cpufreq_blacklist(struct cpuinfo_x86 *c) 10323 static int acpi_cpufreq_blacklist(struct cpuinfo_x86 *c)
10332diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/cpufreq/speedstep-centrino.c linux-2.6.32.21/arch/x86/kernel/cpu/cpufreq/speedstep-centrino.c 10324diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/cpufreq/speedstep-centrino.c linux-2.6.32.21/arch/x86/kernel/cpu/cpufreq/speedstep-centrino.c
10333--- linux-2.6.32.21/arch/x86/kernel/cpu/cpufreq/speedstep-centrino.c 2010-08-26 19:42:20.000000000 -0400 10325--- linux-2.6.32.21/arch/x86/kernel/cpu/cpufreq/speedstep-centrino.c 2010-08-13 16:24:37.000000000 -0400
10334+++ linux-2.6.32.21/arch/x86/kernel/cpu/cpufreq/speedstep-centrino.c 2010-09-13 08:10:06.000000000 -0400 10326+++ linux-2.6.32.21/arch/x86/kernel/cpu/cpufreq/speedstep-centrino.c 2010-09-04 15:54:51.000000000 -0400
10335@@ -225,7 +225,7 @@ static struct cpu_model models[] = 10327@@ -225,7 +225,7 @@ static struct cpu_model models[] =
10336 { &cpu_ids[CPU_MP4HT_D0], NULL, 0, NULL }, 10328 { &cpu_ids[CPU_MP4HT_D0], NULL, 0, NULL },
10337 { &cpu_ids[CPU_MP4HT_E0], NULL, 0, NULL }, 10329 { &cpu_ids[CPU_MP4HT_E0], NULL, 0, NULL },
@@ -10342,8 +10334,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/cpufreq/speedstep-centrino.c linu
10342 #undef _BANIAS 10334 #undef _BANIAS
10343 #undef BANIAS 10335 #undef BANIAS
10344diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/intel.c linux-2.6.32.21/arch/x86/kernel/cpu/intel.c 10336diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/intel.c linux-2.6.32.21/arch/x86/kernel/cpu/intel.c
10345--- linux-2.6.32.21/arch/x86/kernel/cpu/intel.c 2010-08-26 19:42:20.000000000 -0400 10337--- linux-2.6.32.21/arch/x86/kernel/cpu/intel.c 2010-08-13 16:24:37.000000000 -0400
10346+++ linux-2.6.32.21/arch/x86/kernel/cpu/intel.c 2010-09-13 08:10:06.000000000 -0400 10338+++ linux-2.6.32.21/arch/x86/kernel/cpu/intel.c 2010-09-04 15:54:51.000000000 -0400
10347@@ -161,7 +161,7 @@ static void __cpuinit trap_init_f00f_bug 10339@@ -161,7 +161,7 @@ static void __cpuinit trap_init_f00f_bug
10348 * Update the IDT descriptor and reload the IDT so that 10340 * Update the IDT descriptor and reload the IDT so that
10349 * it uses the read-only mapped virtual address. 10341 * it uses the read-only mapped virtual address.
@@ -10354,8 +10346,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/intel.c linux-2.6.32.21/arch/x86/
10354 } 10346 }
10355 #endif 10347 #endif
10356diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/intel_cacheinfo.c linux-2.6.32.21/arch/x86/kernel/cpu/intel_cacheinfo.c 10348diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/intel_cacheinfo.c linux-2.6.32.21/arch/x86/kernel/cpu/intel_cacheinfo.c
10357--- linux-2.6.32.21/arch/x86/kernel/cpu/intel_cacheinfo.c 2010-08-26 19:42:20.000000000 -0400 10349--- linux-2.6.32.21/arch/x86/kernel/cpu/intel_cacheinfo.c 2010-08-13 16:24:37.000000000 -0400
10358+++ linux-2.6.32.21/arch/x86/kernel/cpu/intel_cacheinfo.c 2010-09-13 08:10:06.000000000 -0400 10350+++ linux-2.6.32.21/arch/x86/kernel/cpu/intel_cacheinfo.c 2010-09-04 15:54:51.000000000 -0400
10359@@ -921,7 +921,7 @@ static ssize_t store(struct kobject *kob 10351@@ -921,7 +921,7 @@ static ssize_t store(struct kobject *kob
10360 return ret; 10352 return ret;
10361 } 10353 }
@@ -10365,9 +10357,35 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/intel_cacheinfo.c linux-2.6.32.21
10365 .show = show, 10357 .show = show,
10366 .store = store, 10358 .store = store,
10367 }; 10359 };
10360diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/Makefile linux-2.6.32.21/arch/x86/kernel/cpu/Makefile
10361--- linux-2.6.32.21/arch/x86/kernel/cpu/Makefile 2010-08-13 16:24:37.000000000 -0400
10362+++ linux-2.6.32.21/arch/x86/kernel/cpu/Makefile 2010-09-04 15:54:51.000000000 -0400
10363@@ -7,10 +7,6 @@ ifdef CONFIG_FUNCTION_TRACER
10364 CFLAGS_REMOVE_common.o = -pg
10365 endif
10366
10367-# Make sure load_percpu_segment has no stackprotector
10368-nostackp := $(call cc-option, -fno-stack-protector)
10369-CFLAGS_common.o := $(nostackp)
10370-
10371 obj-y := intel_cacheinfo.o addon_cpuid_features.o
10372 obj-y += proc.o capflags.o powerflags.o common.o
10373 obj-y += vmware.o hypervisor.o sched.o
10374diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mcheck/mce_amd.c linux-2.6.32.21/arch/x86/kernel/cpu/mcheck/mce_amd.c
10375--- linux-2.6.32.21/arch/x86/kernel/cpu/mcheck/mce_amd.c 2010-08-13 16:24:37.000000000 -0400
10376+++ linux-2.6.32.21/arch/x86/kernel/cpu/mcheck/mce_amd.c 2010-09-04 15:54:51.000000000 -0400
10377@@ -388,7 +388,7 @@ static ssize_t store(struct kobject *kob
10378 return ret;
10379 }
10380
10381-static struct sysfs_ops threshold_ops = {
10382+static const struct sysfs_ops threshold_ops = {
10383 .show = show,
10384 .store = store,
10385 };
10368diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mcheck/mce.c linux-2.6.32.21/arch/x86/kernel/cpu/mcheck/mce.c 10386diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mcheck/mce.c linux-2.6.32.21/arch/x86/kernel/cpu/mcheck/mce.c
10369--- linux-2.6.32.21/arch/x86/kernel/cpu/mcheck/mce.c 2010-08-26 19:42:20.000000000 -0400 10387--- linux-2.6.32.21/arch/x86/kernel/cpu/mcheck/mce.c 2010-08-13 16:24:37.000000000 -0400
10370+++ linux-2.6.32.21/arch/x86/kernel/cpu/mcheck/mce.c 2010-09-13 08:10:06.000000000 -0400 10388+++ linux-2.6.32.21/arch/x86/kernel/cpu/mcheck/mce.c 2010-09-04 15:54:51.000000000 -0400
10371@@ -187,7 +187,7 @@ static void print_mce(struct mce *m) 10389@@ -187,7 +187,7 @@ static void print_mce(struct mce *m)
10372 !(m->mcgstatus & MCG_STATUS_EIPV) ? " !INEXACT!" : "", 10390 !(m->mcgstatus & MCG_STATUS_EIPV) ? " !INEXACT!" : "",
10373 m->cs, m->ip); 10391 m->cs, m->ip);
@@ -10420,21 +10438,9 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mcheck/mce.c linux-2.6.32.21/arch
10420 }; 10438 };
10421 10439
10422 /* 10440 /*
10423diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mcheck/mce_amd.c linux-2.6.32.21/arch/x86/kernel/cpu/mcheck/mce_amd.c
10424--- linux-2.6.32.21/arch/x86/kernel/cpu/mcheck/mce_amd.c 2010-08-26 19:42:20.000000000 -0400
10425+++ linux-2.6.32.21/arch/x86/kernel/cpu/mcheck/mce_amd.c 2010-09-13 08:10:06.000000000 -0400
10426@@ -388,7 +388,7 @@ static ssize_t store(struct kobject *kob
10427 return ret;
10428 }
10429
10430-static struct sysfs_ops threshold_ops = {
10431+static const struct sysfs_ops threshold_ops = {
10432 .show = show,
10433 .store = store,
10434 };
10435diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/amd.c linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/amd.c 10441diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/amd.c linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/amd.c
10436--- linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/amd.c 2010-08-26 19:42:20.000000000 -0400 10442--- linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/amd.c 2010-08-13 16:24:37.000000000 -0400
10437+++ linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/amd.c 2010-09-13 08:10:06.000000000 -0400 10443+++ linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/amd.c 2010-09-04 15:54:51.000000000 -0400
10438@@ -108,7 +108,7 @@ amd_validate_add_page(unsigned long base 10444@@ -108,7 +108,7 @@ amd_validate_add_page(unsigned long base
10439 return 0; 10445 return 0;
10440 } 10446 }
@@ -10445,8 +10451,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/amd.c linux-2.6.32.21/arch/x
10445 .set = amd_set_mtrr, 10451 .set = amd_set_mtrr,
10446 .get = amd_get_mtrr, 10452 .get = amd_get_mtrr,
10447diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/centaur.c linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/centaur.c 10453diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/centaur.c linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/centaur.c
10448--- linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/centaur.c 2010-08-26 19:42:20.000000000 -0400 10454--- linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/centaur.c 2010-08-13 16:24:37.000000000 -0400
10449+++ linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/centaur.c 2010-09-13 08:10:06.000000000 -0400 10455+++ linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/centaur.c 2010-09-04 15:54:51.000000000 -0400
10450@@ -110,7 +110,7 @@ centaur_validate_add_page(unsigned long 10456@@ -110,7 +110,7 @@ centaur_validate_add_page(unsigned long
10451 return 0; 10457 return 0;
10452 } 10458 }
@@ -10457,8 +10463,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/centaur.c linux-2.6.32.21/ar
10457 .set = centaur_set_mcr, 10463 .set = centaur_set_mcr,
10458 .get = centaur_get_mcr, 10464 .get = centaur_get_mcr,
10459diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/cyrix.c linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/cyrix.c 10465diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/cyrix.c linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/cyrix.c
10460--- linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/cyrix.c 2010-08-26 19:42:20.000000000 -0400 10466--- linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/cyrix.c 2010-08-13 16:24:37.000000000 -0400
10461+++ linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/cyrix.c 2010-09-13 08:10:06.000000000 -0400 10467+++ linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/cyrix.c 2010-09-04 15:54:51.000000000 -0400
10462@@ -265,7 +265,7 @@ static void cyrix_set_all(void) 10468@@ -265,7 +265,7 @@ static void cyrix_set_all(void)
10463 post_set(); 10469 post_set();
10464 } 10470 }
@@ -10469,8 +10475,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/cyrix.c linux-2.6.32.21/arch
10469 .set_all = cyrix_set_all, 10475 .set_all = cyrix_set_all,
10470 .set = cyrix_set_arr, 10476 .set = cyrix_set_arr,
10471diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/generic.c linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/generic.c 10477diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/generic.c linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/generic.c
10472--- linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/generic.c 2010-08-26 19:42:20.000000000 -0400 10478--- linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/generic.c 2010-08-13 16:24:37.000000000 -0400
10473+++ linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/generic.c 2010-09-13 08:10:06.000000000 -0400 10479+++ linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/generic.c 2010-09-04 15:54:51.000000000 -0400
10474@@ -29,7 +29,7 @@ static struct fixed_range_block fixed_ra 10480@@ -29,7 +29,7 @@ static struct fixed_range_block fixed_ra
10475 { MSR_MTRRfix64K_00000, 1 }, /* one 64k MTRR */ 10481 { MSR_MTRRfix64K_00000, 1 }, /* one 64k MTRR */
10476 { MSR_MTRRfix16K_80000, 2 }, /* two 16k MTRRs */ 10482 { MSR_MTRRfix16K_80000, 2 }, /* two 16k MTRRs */
@@ -10490,8 +10496,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/generic.c linux-2.6.32.21/ar
10490 .set_all = generic_set_all, 10496 .set_all = generic_set_all,
10491 .get = generic_get_mtrr, 10497 .get = generic_get_mtrr,
10492diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/main.c linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/main.c 10498diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/main.c linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/main.c
10493--- linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/main.c 2010-08-26 19:42:20.000000000 -0400 10499--- linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/main.c 2010-08-13 16:24:37.000000000 -0400
10494+++ linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/main.c 2010-09-13 08:10:06.000000000 -0400 10500+++ linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/main.c 2010-09-04 15:54:51.000000000 -0400
10495@@ -60,14 +60,14 @@ static DEFINE_MUTEX(mtrr_mutex); 10501@@ -60,14 +60,14 @@ static DEFINE_MUTEX(mtrr_mutex);
10496 u64 size_or_mask, size_and_mask; 10502 u64 size_or_mask, size_and_mask;
10497 static bool mtrr_aps_delayed_init; 10503 static bool mtrr_aps_delayed_init;
@@ -10511,8 +10517,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/main.c linux-2.6.32.21/arch/
10511 if (ops->vendor && ops->vendor < X86_VENDOR_NUM) 10517 if (ops->vendor && ops->vendor < X86_VENDOR_NUM)
10512 mtrr_ops[ops->vendor] = ops; 10518 mtrr_ops[ops->vendor] = ops;
10513diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/mtrr.h linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/mtrr.h 10519diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/mtrr.h linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/mtrr.h
10514--- linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/mtrr.h 2010-08-26 19:42:20.000000000 -0400 10520--- linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/mtrr.h 2010-08-13 16:24:37.000000000 -0400
10515+++ linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/mtrr.h 2010-09-13 08:10:06.000000000 -0400 10521+++ linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/mtrr.h 2010-09-04 15:54:51.000000000 -0400
10516@@ -12,19 +12,19 @@ 10522@@ -12,19 +12,19 @@
10517 extern unsigned int mtrr_usage_table[MTRR_MAX_VAR_RANGES]; 10523 extern unsigned int mtrr_usage_table[MTRR_MAX_VAR_RANGES];
10518 10524
@@ -10563,21 +10569,9 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/mtrr/mtrr.h linux-2.6.32.21/arch/
10563 10569
10564 #define is_cpu(vnd) (mtrr_if && mtrr_if->vendor == X86_VENDOR_##vnd) 10570 #define is_cpu(vnd) (mtrr_if && mtrr_if->vendor == X86_VENDOR_##vnd)
10565 #define use_intel() (mtrr_if && mtrr_if->use_intel_if == 1) 10571 #define use_intel() (mtrr_if && mtrr_if->use_intel_if == 1)
10566diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/perf_event.c linux-2.6.32.21/arch/x86/kernel/cpu/perf_event.c
10567--- linux-2.6.32.21/arch/x86/kernel/cpu/perf_event.c 2010-08-26 19:42:20.000000000 -0400
10568+++ linux-2.6.32.21/arch/x86/kernel/cpu/perf_event.c 2010-09-13 08:10:06.000000000 -0400
10569@@ -2357,7 +2357,7 @@ perf_callchain_user(struct pt_regs *regs
10570 break;
10571
10572 callchain_store(entry, frame.return_address);
10573- fp = frame.next_frame;
10574+ fp = (__force const void __user *)frame.next_frame;
10575 }
10576 }
10577
10578diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/perfctr-watchdog.c linux-2.6.32.21/arch/x86/kernel/cpu/perfctr-watchdog.c 10572diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/perfctr-watchdog.c linux-2.6.32.21/arch/x86/kernel/cpu/perfctr-watchdog.c
10579--- linux-2.6.32.21/arch/x86/kernel/cpu/perfctr-watchdog.c 2010-08-26 19:42:20.000000000 -0400 10573--- linux-2.6.32.21/arch/x86/kernel/cpu/perfctr-watchdog.c 2010-08-13 16:24:37.000000000 -0400
10580+++ linux-2.6.32.21/arch/x86/kernel/cpu/perfctr-watchdog.c 2010-09-13 08:10:06.000000000 -0400 10574+++ linux-2.6.32.21/arch/x86/kernel/cpu/perfctr-watchdog.c 2010-09-04 15:54:51.000000000 -0400
10581@@ -30,11 +30,11 @@ struct nmi_watchdog_ctlblk { 10575@@ -30,11 +30,11 @@ struct nmi_watchdog_ctlblk {
10582 10576
10583 /* Interface defining a CPU specific perfctr watchdog */ 10577 /* Interface defining a CPU specific perfctr watchdog */
@@ -10611,9 +10605,21 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/perfctr-watchdog.c linux-2.6.32.2
10611 static struct wd_ops intel_arch_wd_ops __read_mostly = { 10605 static struct wd_ops intel_arch_wd_ops __read_mostly = {
10612 .reserve = single_msr_reserve, 10606 .reserve = single_msr_reserve,
10613 .unreserve = single_msr_unreserve, 10607 .unreserve = single_msr_unreserve,
10608diff -urNp linux-2.6.32.21/arch/x86/kernel/cpu/perf_event.c linux-2.6.32.21/arch/x86/kernel/cpu/perf_event.c
10609--- linux-2.6.32.21/arch/x86/kernel/cpu/perf_event.c 2010-08-13 16:24:37.000000000 -0400
10610+++ linux-2.6.32.21/arch/x86/kernel/cpu/perf_event.c 2010-09-04 15:54:51.000000000 -0400
10611@@ -2357,7 +2357,7 @@ perf_callchain_user(struct pt_regs *regs
10612 break;
10613
10614 callchain_store(entry, frame.return_address);
10615- fp = frame.next_frame;
10616+ fp = (__force const void __user *)frame.next_frame;
10617 }
10618 }
10619
10614diff -urNp linux-2.6.32.21/arch/x86/kernel/crash.c linux-2.6.32.21/arch/x86/kernel/crash.c 10620diff -urNp linux-2.6.32.21/arch/x86/kernel/crash.c linux-2.6.32.21/arch/x86/kernel/crash.c
10615--- linux-2.6.32.21/arch/x86/kernel/crash.c 2010-08-26 19:42:20.000000000 -0400 10621--- linux-2.6.32.21/arch/x86/kernel/crash.c 2010-08-13 16:24:37.000000000 -0400
10616+++ linux-2.6.32.21/arch/x86/kernel/crash.c 2010-09-13 08:10:06.000000000 -0400 10622+++ linux-2.6.32.21/arch/x86/kernel/crash.c 2010-09-04 15:54:51.000000000 -0400
10617@@ -41,7 +41,7 @@ static void kdump_nmi_callback(int cpu, 10623@@ -41,7 +41,7 @@ static void kdump_nmi_callback(int cpu,
10618 regs = args->regs; 10624 regs = args->regs;
10619 10625
@@ -10624,8 +10630,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/crash.c linux-2.6.32.21/arch/x86/kern
10624 regs = &fixed_regs; 10630 regs = &fixed_regs;
10625 } 10631 }
10626diff -urNp linux-2.6.32.21/arch/x86/kernel/doublefault_32.c linux-2.6.32.21/arch/x86/kernel/doublefault_32.c 10632diff -urNp linux-2.6.32.21/arch/x86/kernel/doublefault_32.c linux-2.6.32.21/arch/x86/kernel/doublefault_32.c
10627--- linux-2.6.32.21/arch/x86/kernel/doublefault_32.c 2010-08-26 19:42:20.000000000 -0400 10633--- linux-2.6.32.21/arch/x86/kernel/doublefault_32.c 2010-08-13 16:24:37.000000000 -0400
10628+++ linux-2.6.32.21/arch/x86/kernel/doublefault_32.c 2010-09-13 08:10:06.000000000 -0400 10634+++ linux-2.6.32.21/arch/x86/kernel/doublefault_32.c 2010-09-04 15:54:51.000000000 -0400
10629@@ -11,7 +11,7 @@ 10635@@ -11,7 +11,7 @@
10630 10636
10631 #define DOUBLEFAULT_STACKSIZE (1024) 10637 #define DOUBLEFAULT_STACKSIZE (1024)
@@ -10657,39 +10663,9 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/doublefault_32.c linux-2.6.32.21/arch
10657 .fs = __KERNEL_PERCPU, 10663 .fs = __KERNEL_PERCPU,
10658 10664
10659 .__cr3 = __pa_nodebug(swapper_pg_dir), 10665 .__cr3 = __pa_nodebug(swapper_pg_dir),
10660diff -urNp linux-2.6.32.21/arch/x86/kernel/dumpstack.c linux-2.6.32.21/arch/x86/kernel/dumpstack.c
10661--- linux-2.6.32.21/arch/x86/kernel/dumpstack.c 2010-08-26 19:42:20.000000000 -0400
10662+++ linux-2.6.32.21/arch/x86/kernel/dumpstack.c 2010-09-13 08:10:06.000000000 -0400
10663@@ -180,7 +180,7 @@ void dump_stack(void)
10664 #endif
10665
10666 printk("Pid: %d, comm: %.20s %s %s %.*s\n",
10667- current->pid, current->comm, print_tainted(),
10668+ task_pid_nr(current), current->comm, print_tainted(),
10669 init_utsname()->release,
10670 (int)strcspn(init_utsname()->version, " "),
10671 init_utsname()->version);
10672@@ -241,7 +241,7 @@ void __kprobes oops_end(unsigned long fl
10673 panic("Fatal exception in interrupt");
10674 if (panic_on_oops)
10675 panic("Fatal exception");
10676- do_exit(signr);
10677+ do_group_exit(signr);
10678 }
10679
10680 int __kprobes __die(const char *str, struct pt_regs *regs, long err)
10681@@ -295,7 +295,7 @@ void die(const char *str, struct pt_regs
10682 unsigned long flags = oops_begin();
10683 int sig = SIGSEGV;
10684
10685- if (!user_mode_vm(regs))
10686+ if (!user_mode(regs))
10687 report_bug(regs->ip, regs);
10688
10689 if (__die(str, regs, err))
10690diff -urNp linux-2.6.32.21/arch/x86/kernel/dumpstack_32.c linux-2.6.32.21/arch/x86/kernel/dumpstack_32.c 10666diff -urNp linux-2.6.32.21/arch/x86/kernel/dumpstack_32.c linux-2.6.32.21/arch/x86/kernel/dumpstack_32.c
10691--- linux-2.6.32.21/arch/x86/kernel/dumpstack_32.c 2010-08-26 19:42:20.000000000 -0400 10667--- linux-2.6.32.21/arch/x86/kernel/dumpstack_32.c 2010-08-13 16:24:37.000000000 -0400
10692+++ linux-2.6.32.21/arch/x86/kernel/dumpstack_32.c 2010-09-13 08:10:06.000000000 -0400 10668+++ linux-2.6.32.21/arch/x86/kernel/dumpstack_32.c 2010-09-04 15:54:51.000000000 -0400
10693@@ -112,11 +112,12 @@ void show_registers(struct pt_regs *regs 10669@@ -112,11 +112,12 @@ void show_registers(struct pt_regs *regs
10694 * When in-kernel, we also print out the stack and code at the 10670 * When in-kernel, we also print out the stack and code at the
10695 * time of the fault.. 10671 * time of the fault..
@@ -10734,9 +10710,39 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/dumpstack_32.c linux-2.6.32.21/arch/x
10734 if (ip < PAGE_OFFSET) 10710 if (ip < PAGE_OFFSET)
10735 return 0; 10711 return 0;
10736 if (probe_kernel_address((unsigned short *)ip, ud2)) 10712 if (probe_kernel_address((unsigned short *)ip, ud2))
10713diff -urNp linux-2.6.32.21/arch/x86/kernel/dumpstack.c linux-2.6.32.21/arch/x86/kernel/dumpstack.c
10714--- linux-2.6.32.21/arch/x86/kernel/dumpstack.c 2010-08-13 16:24:37.000000000 -0400
10715+++ linux-2.6.32.21/arch/x86/kernel/dumpstack.c 2010-09-04 15:54:51.000000000 -0400
10716@@ -180,7 +180,7 @@ void dump_stack(void)
10717 #endif
10718
10719 printk("Pid: %d, comm: %.20s %s %s %.*s\n",
10720- current->pid, current->comm, print_tainted(),
10721+ task_pid_nr(current), current->comm, print_tainted(),
10722 init_utsname()->release,
10723 (int)strcspn(init_utsname()->version, " "),
10724 init_utsname()->version);
10725@@ -241,7 +241,7 @@ void __kprobes oops_end(unsigned long fl
10726 panic("Fatal exception in interrupt");
10727 if (panic_on_oops)
10728 panic("Fatal exception");
10729- do_exit(signr);
10730+ do_group_exit(signr);
10731 }
10732
10733 int __kprobes __die(const char *str, struct pt_regs *regs, long err)
10734@@ -295,7 +295,7 @@ void die(const char *str, struct pt_regs
10735 unsigned long flags = oops_begin();
10736 int sig = SIGSEGV;
10737
10738- if (!user_mode_vm(regs))
10739+ if (!user_mode(regs))
10740 report_bug(regs->ip, regs);
10741
10742 if (__die(str, regs, err))
10737diff -urNp linux-2.6.32.21/arch/x86/kernel/e820.c linux-2.6.32.21/arch/x86/kernel/e820.c 10743diff -urNp linux-2.6.32.21/arch/x86/kernel/e820.c linux-2.6.32.21/arch/x86/kernel/e820.c
10738--- linux-2.6.32.21/arch/x86/kernel/e820.c 2010-08-26 19:42:20.000000000 -0400 10744--- linux-2.6.32.21/arch/x86/kernel/e820.c 2010-08-13 16:24:37.000000000 -0400
10739+++ linux-2.6.32.21/arch/x86/kernel/e820.c 2010-09-13 08:10:06.000000000 -0400 10745+++ linux-2.6.32.21/arch/x86/kernel/e820.c 2010-09-04 15:54:51.000000000 -0400
10740@@ -733,7 +733,7 @@ struct early_res { 10746@@ -733,7 +733,7 @@ struct early_res {
10741 }; 10747 };
10742 static struct early_res early_res[MAX_EARLY_RES] __initdata = { 10748 static struct early_res early_res[MAX_EARLY_RES] __initdata = {
@@ -10747,8 +10753,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/e820.c linux-2.6.32.21/arch/x86/kerne
10747 10753
10748 static int __init find_overlapped_early(u64 start, u64 end) 10754 static int __init find_overlapped_early(u64 start, u64 end)
10749diff -urNp linux-2.6.32.21/arch/x86/kernel/efi_32.c linux-2.6.32.21/arch/x86/kernel/efi_32.c 10755diff -urNp linux-2.6.32.21/arch/x86/kernel/efi_32.c linux-2.6.32.21/arch/x86/kernel/efi_32.c
10750--- linux-2.6.32.21/arch/x86/kernel/efi_32.c 2010-08-26 19:42:20.000000000 -0400 10756--- linux-2.6.32.21/arch/x86/kernel/efi_32.c 2010-08-13 16:24:37.000000000 -0400
10751+++ linux-2.6.32.21/arch/x86/kernel/efi_32.c 2010-09-13 08:10:06.000000000 -0400 10757+++ linux-2.6.32.21/arch/x86/kernel/efi_32.c 2010-09-04 15:54:51.000000000 -0400
10752@@ -38,70 +38,38 @@ 10758@@ -38,70 +38,38 @@
10753 */ 10759 */
10754 10760
@@ -10830,8 +10836,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/efi_32.c linux-2.6.32.21/arch/x86/ker
10830 /* 10836 /*
10831 * After the lock is released, the original page table is restored. 10837 * After the lock is released, the original page table is restored.
10832diff -urNp linux-2.6.32.21/arch/x86/kernel/efi_stub_32.S linux-2.6.32.21/arch/x86/kernel/efi_stub_32.S 10838diff -urNp linux-2.6.32.21/arch/x86/kernel/efi_stub_32.S linux-2.6.32.21/arch/x86/kernel/efi_stub_32.S
10833--- linux-2.6.32.21/arch/x86/kernel/efi_stub_32.S 2010-08-26 19:42:20.000000000 -0400 10839--- linux-2.6.32.21/arch/x86/kernel/efi_stub_32.S 2010-08-13 16:24:37.000000000 -0400
10834+++ linux-2.6.32.21/arch/x86/kernel/efi_stub_32.S 2010-09-13 08:10:06.000000000 -0400 10840+++ linux-2.6.32.21/arch/x86/kernel/efi_stub_32.S 2010-09-04 15:54:51.000000000 -0400
10835@@ -6,6 +6,7 @@ 10841@@ -6,6 +6,7 @@
10836 */ 10842 */
10837 10843
@@ -10931,8 +10937,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/efi_stub_32.S linux-2.6.32.21/arch/x8
10931 .long 0 10937 .long 0
10932 efi_rt_function_ptr: 10938 efi_rt_function_ptr:
10933diff -urNp linux-2.6.32.21/arch/x86/kernel/entry_32.S linux-2.6.32.21/arch/x86/kernel/entry_32.S 10939diff -urNp linux-2.6.32.21/arch/x86/kernel/entry_32.S linux-2.6.32.21/arch/x86/kernel/entry_32.S
10934--- linux-2.6.32.21/arch/x86/kernel/entry_32.S 2010-08-26 19:42:20.000000000 -0400 10940--- linux-2.6.32.21/arch/x86/kernel/entry_32.S 2010-08-13 16:24:37.000000000 -0400
10935+++ linux-2.6.32.21/arch/x86/kernel/entry_32.S 2010-09-13 08:10:06.000000000 -0400 10941+++ linux-2.6.32.21/arch/x86/kernel/entry_32.S 2010-09-04 15:54:51.000000000 -0400
10936@@ -191,7 +191,67 @@ 10942@@ -191,7 +191,67 @@
10937 10943
10938 #endif /* CONFIG_X86_32_LAZY_GS */ 10944 #endif /* CONFIG_X86_32_LAZY_GS */
@@ -11244,8 +11250,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/entry_32.S linux-2.6.32.21/arch/x86/k
11244 lss 12+4(%esp), %esp # back to espfix stack 11250 lss 12+4(%esp), %esp # back to espfix stack
11245 CFI_ADJUST_CFA_OFFSET -24 11251 CFI_ADJUST_CFA_OFFSET -24
11246diff -urNp linux-2.6.32.21/arch/x86/kernel/entry_64.S linux-2.6.32.21/arch/x86/kernel/entry_64.S 11252diff -urNp linux-2.6.32.21/arch/x86/kernel/entry_64.S linux-2.6.32.21/arch/x86/kernel/entry_64.S
11247--- linux-2.6.32.21/arch/x86/kernel/entry_64.S 2010-08-26 19:42:20.000000000 -0400 11253--- linux-2.6.32.21/arch/x86/kernel/entry_64.S 2010-08-13 16:24:37.000000000 -0400
11248+++ linux-2.6.32.21/arch/x86/kernel/entry_64.S 2010-09-13 08:10:06.000000000 -0400 11254+++ linux-2.6.32.21/arch/x86/kernel/entry_64.S 2010-09-04 15:54:51.000000000 -0400
11249@@ -53,6 +53,7 @@ 11255@@ -53,6 +53,7 @@
11250 #include <asm/paravirt.h> 11256 #include <asm/paravirt.h>
11251 #include <asm/ftrace.h> 11257 #include <asm/ftrace.h>
@@ -11704,8 +11710,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/entry_64.S linux-2.6.32.21/arch/x86/k
11704 jmp irq_return 11710 jmp irq_return
11705 nmi_userspace: 11711 nmi_userspace:
11706diff -urNp linux-2.6.32.21/arch/x86/kernel/ftrace.c linux-2.6.32.21/arch/x86/kernel/ftrace.c 11712diff -urNp linux-2.6.32.21/arch/x86/kernel/ftrace.c linux-2.6.32.21/arch/x86/kernel/ftrace.c
11707--- linux-2.6.32.21/arch/x86/kernel/ftrace.c 2010-08-26 19:42:20.000000000 -0400 11713--- linux-2.6.32.21/arch/x86/kernel/ftrace.c 2010-08-13 16:24:37.000000000 -0400
11708+++ linux-2.6.32.21/arch/x86/kernel/ftrace.c 2010-09-13 08:10:06.000000000 -0400 11714+++ linux-2.6.32.21/arch/x86/kernel/ftrace.c 2010-09-04 15:54:51.000000000 -0400
11709@@ -149,7 +149,9 @@ void ftrace_nmi_enter(void) 11715@@ -149,7 +149,9 @@ void ftrace_nmi_enter(void)
11710 { 11716 {
11711 if (atomic_inc_return(&nmi_running) & MOD_CODE_WRITE_FLAG) { 11717 if (atomic_inc_return(&nmi_running) & MOD_CODE_WRITE_FLAG) {
@@ -11772,8 +11778,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/ftrace.c linux-2.6.32.21/arch/x86/ker
11772 return -EFAULT; 11778 return -EFAULT;
11773 11779
11774diff -urNp linux-2.6.32.21/arch/x86/kernel/head32.c linux-2.6.32.21/arch/x86/kernel/head32.c 11780diff -urNp linux-2.6.32.21/arch/x86/kernel/head32.c linux-2.6.32.21/arch/x86/kernel/head32.c
11775--- linux-2.6.32.21/arch/x86/kernel/head32.c 2010-08-26 19:42:20.000000000 -0400 11781--- linux-2.6.32.21/arch/x86/kernel/head32.c 2010-08-13 16:24:37.000000000 -0400
11776+++ linux-2.6.32.21/arch/x86/kernel/head32.c 2010-09-13 08:10:06.000000000 -0400 11782+++ linux-2.6.32.21/arch/x86/kernel/head32.c 2010-09-04 15:54:51.000000000 -0400
11777@@ -16,6 +16,7 @@ 11783@@ -16,6 +16,7 @@
11778 #include <asm/apic.h> 11784 #include <asm/apic.h>
11779 #include <asm/io_apic.h> 11785 #include <asm/io_apic.h>
@@ -11792,8 +11798,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/head32.c linux-2.6.32.21/arch/x86/ker
11792 #ifdef CONFIG_BLK_DEV_INITRD 11798 #ifdef CONFIG_BLK_DEV_INITRD
11793 /* Reserve INITRD */ 11799 /* Reserve INITRD */
11794diff -urNp linux-2.6.32.21/arch/x86/kernel/head_32.S linux-2.6.32.21/arch/x86/kernel/head_32.S 11800diff -urNp linux-2.6.32.21/arch/x86/kernel/head_32.S linux-2.6.32.21/arch/x86/kernel/head_32.S
11795--- linux-2.6.32.21/arch/x86/kernel/head_32.S 2010-08-26 19:42:20.000000000 -0400 11801--- linux-2.6.32.21/arch/x86/kernel/head_32.S 2010-08-13 16:24:37.000000000 -0400
11796+++ linux-2.6.32.21/arch/x86/kernel/head_32.S 2010-09-13 08:10:06.000000000 -0400 11802+++ linux-2.6.32.21/arch/x86/kernel/head_32.S 2010-09-04 15:54:51.000000000 -0400
11797@@ -19,10 +19,17 @@ 11803@@ -19,10 +19,17 @@
11798 #include <asm/setup.h> 11804 #include <asm/setup.h>
11799 #include <asm/processor-flags.h> 11805 #include <asm/processor-flags.h>
@@ -12241,8 +12247,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/head_32.S linux-2.6.32.21/arch/x86/ke
12241+ .fill PAGE_SIZE_asm - GDT_SIZE,1,0 12247+ .fill PAGE_SIZE_asm - GDT_SIZE,1,0
12242+ .endr 12248+ .endr
12243diff -urNp linux-2.6.32.21/arch/x86/kernel/head_64.S linux-2.6.32.21/arch/x86/kernel/head_64.S 12249diff -urNp linux-2.6.32.21/arch/x86/kernel/head_64.S linux-2.6.32.21/arch/x86/kernel/head_64.S
12244--- linux-2.6.32.21/arch/x86/kernel/head_64.S 2010-08-26 19:42:20.000000000 -0400 12250--- linux-2.6.32.21/arch/x86/kernel/head_64.S 2010-08-13 16:24:37.000000000 -0400
12245+++ linux-2.6.32.21/arch/x86/kernel/head_64.S 2010-09-13 08:10:06.000000000 -0400 12251+++ linux-2.6.32.21/arch/x86/kernel/head_64.S 2010-09-04 15:54:51.000000000 -0400
12246@@ -19,6 +19,7 @@ 12252@@ -19,6 +19,7 @@
12247 #include <asm/cache.h> 12253 #include <asm/cache.h>
12248 #include <asm/processor-flags.h> 12254 #include <asm/processor-flags.h>
@@ -12514,8 +12520,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/head_64.S linux-2.6.32.21/arch/x86/ke
12514 __PAGE_ALIGNED_BSS 12520 __PAGE_ALIGNED_BSS
12515 .align PAGE_SIZE 12521 .align PAGE_SIZE
12516diff -urNp linux-2.6.32.21/arch/x86/kernel/i386_ksyms_32.c linux-2.6.32.21/arch/x86/kernel/i386_ksyms_32.c 12522diff -urNp linux-2.6.32.21/arch/x86/kernel/i386_ksyms_32.c linux-2.6.32.21/arch/x86/kernel/i386_ksyms_32.c
12517--- linux-2.6.32.21/arch/x86/kernel/i386_ksyms_32.c 2010-08-26 19:42:20.000000000 -0400 12523--- linux-2.6.32.21/arch/x86/kernel/i386_ksyms_32.c 2010-08-13 16:24:37.000000000 -0400
12518+++ linux-2.6.32.21/arch/x86/kernel/i386_ksyms_32.c 2010-09-13 08:10:06.000000000 -0400 12524+++ linux-2.6.32.21/arch/x86/kernel/i386_ksyms_32.c 2010-09-04 15:54:51.000000000 -0400
12519@@ -20,8 +20,12 @@ extern void cmpxchg8b_emu(void); 12525@@ -20,8 +20,12 @@ extern void cmpxchg8b_emu(void);
12520 EXPORT_SYMBOL(cmpxchg8b_emu); 12526 EXPORT_SYMBOL(cmpxchg8b_emu);
12521 #endif 12527 #endif
@@ -12538,8 +12544,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/i386_ksyms_32.c linux-2.6.32.21/arch/
12538+EXPORT_SYMBOL(__LOAD_PHYSICAL_ADDR); 12544+EXPORT_SYMBOL(__LOAD_PHYSICAL_ADDR);
12539+#endif 12545+#endif
12540diff -urNp linux-2.6.32.21/arch/x86/kernel/init_task.c linux-2.6.32.21/arch/x86/kernel/init_task.c 12546diff -urNp linux-2.6.32.21/arch/x86/kernel/init_task.c linux-2.6.32.21/arch/x86/kernel/init_task.c
12541--- linux-2.6.32.21/arch/x86/kernel/init_task.c 2010-08-26 19:42:20.000000000 -0400 12547--- linux-2.6.32.21/arch/x86/kernel/init_task.c 2010-08-13 16:24:37.000000000 -0400
12542+++ linux-2.6.32.21/arch/x86/kernel/init_task.c 2010-09-13 08:10:06.000000000 -0400 12548+++ linux-2.6.32.21/arch/x86/kernel/init_task.c 2010-09-04 15:54:51.000000000 -0400
12543@@ -38,5 +38,5 @@ EXPORT_SYMBOL(init_task); 12549@@ -38,5 +38,5 @@ EXPORT_SYMBOL(init_task);
12544 * section. Since TSS's are completely CPU-local, we want them 12550 * section. Since TSS's are completely CPU-local, we want them
12545 * on exact cacheline boundaries, to eliminate cacheline ping-pong. 12551 * on exact cacheline boundaries, to eliminate cacheline ping-pong.
@@ -12549,8 +12555,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/init_task.c linux-2.6.32.21/arch/x86/
12549+struct tss_struct init_tss[NR_CPUS] ____cacheline_internodealigned_in_smp = { [0 ... NR_CPUS-1] = INIT_TSS }; 12555+struct tss_struct init_tss[NR_CPUS] ____cacheline_internodealigned_in_smp = { [0 ... NR_CPUS-1] = INIT_TSS };
12550+EXPORT_SYMBOL(init_tss); 12556+EXPORT_SYMBOL(init_tss);
12551diff -urNp linux-2.6.32.21/arch/x86/kernel/ioport.c linux-2.6.32.21/arch/x86/kernel/ioport.c 12557diff -urNp linux-2.6.32.21/arch/x86/kernel/ioport.c linux-2.6.32.21/arch/x86/kernel/ioport.c
12552--- linux-2.6.32.21/arch/x86/kernel/ioport.c 2010-08-26 19:42:20.000000000 -0400 12558--- linux-2.6.32.21/arch/x86/kernel/ioport.c 2010-08-13 16:24:37.000000000 -0400
12553+++ linux-2.6.32.21/arch/x86/kernel/ioport.c 2010-09-13 08:10:06.000000000 -0400 12559+++ linux-2.6.32.21/arch/x86/kernel/ioport.c 2010-09-04 15:54:51.000000000 -0400
12554@@ -6,6 +6,7 @@ 12560@@ -6,6 +6,7 @@
12555 #include <linux/sched.h> 12561 #include <linux/sched.h>
12556 #include <linux/kernel.h> 12562 #include <linux/kernel.h>
@@ -12595,8 +12601,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/ioport.c linux-2.6.32.21/arch/x86/ker
12595 return -EPERM; 12601 return -EPERM;
12596 } 12602 }
12597diff -urNp linux-2.6.32.21/arch/x86/kernel/irq_32.c linux-2.6.32.21/arch/x86/kernel/irq_32.c 12603diff -urNp linux-2.6.32.21/arch/x86/kernel/irq_32.c linux-2.6.32.21/arch/x86/kernel/irq_32.c
12598--- linux-2.6.32.21/arch/x86/kernel/irq_32.c 2010-08-26 19:42:20.000000000 -0400 12604--- linux-2.6.32.21/arch/x86/kernel/irq_32.c 2010-08-13 16:24:37.000000000 -0400
12599+++ linux-2.6.32.21/arch/x86/kernel/irq_32.c 2010-09-13 08:10:06.000000000 -0400 12605+++ linux-2.6.32.21/arch/x86/kernel/irq_32.c 2010-09-04 15:54:51.000000000 -0400
12600@@ -94,7 +94,7 @@ execute_on_irq_stack(int overflow, struc 12606@@ -94,7 +94,7 @@ execute_on_irq_stack(int overflow, struc
12601 return 0; 12607 return 0;
12602 12608
@@ -12616,8 +12622,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/irq_32.c linux-2.6.32.21/arch/x86/ker
12616 call_on_stack(__do_softirq, isp); 12622 call_on_stack(__do_softirq, isp);
12617 /* 12623 /*
12618diff -urNp linux-2.6.32.21/arch/x86/kernel/kgdb.c linux-2.6.32.21/arch/x86/kernel/kgdb.c 12624diff -urNp linux-2.6.32.21/arch/x86/kernel/kgdb.c linux-2.6.32.21/arch/x86/kernel/kgdb.c
12619--- linux-2.6.32.21/arch/x86/kernel/kgdb.c 2010-08-26 19:42:20.000000000 -0400 12625--- linux-2.6.32.21/arch/x86/kernel/kgdb.c 2010-08-13 16:24:37.000000000 -0400
12620+++ linux-2.6.32.21/arch/x86/kernel/kgdb.c 2010-09-13 08:10:06.000000000 -0400 12626+++ linux-2.6.32.21/arch/x86/kernel/kgdb.c 2010-09-04 15:54:51.000000000 -0400
12621@@ -573,7 +573,7 @@ unsigned long kgdb_arch_pc(int exception 12627@@ -573,7 +573,7 @@ unsigned long kgdb_arch_pc(int exception
12622 return instruction_pointer(regs); 12628 return instruction_pointer(regs);
12623 } 12629 }
@@ -12628,8 +12634,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/kgdb.c linux-2.6.32.21/arch/x86/kerne
12628 .gdb_bpt_instr = { 0xcc }, 12634 .gdb_bpt_instr = { 0xcc },
12629 .flags = KGDB_HW_BREAKPOINT, 12635 .flags = KGDB_HW_BREAKPOINT,
12630diff -urNp linux-2.6.32.21/arch/x86/kernel/kprobes.c linux-2.6.32.21/arch/x86/kernel/kprobes.c 12636diff -urNp linux-2.6.32.21/arch/x86/kernel/kprobes.c linux-2.6.32.21/arch/x86/kernel/kprobes.c
12631--- linux-2.6.32.21/arch/x86/kernel/kprobes.c 2010-08-26 19:42:20.000000000 -0400 12637--- linux-2.6.32.21/arch/x86/kernel/kprobes.c 2010-08-13 16:24:37.000000000 -0400
12632+++ linux-2.6.32.21/arch/x86/kernel/kprobes.c 2010-09-13 08:10:06.000000000 -0400 12638+++ linux-2.6.32.21/arch/x86/kernel/kprobes.c 2010-09-04 15:54:51.000000000 -0400
12633@@ -166,9 +166,13 @@ static void __kprobes set_jmp_op(void *f 12639@@ -166,9 +166,13 @@ static void __kprobes set_jmp_op(void *f
12634 char op; 12640 char op;
12635 s32 raddr; 12641 s32 raddr;
@@ -12723,8 +12729,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/kprobes.c linux-2.6.32.21/arch/x86/ke
12723 12729
12724 switch (val) { 12730 switch (val) {
12725diff -urNp linux-2.6.32.21/arch/x86/kernel/ldt.c linux-2.6.32.21/arch/x86/kernel/ldt.c 12731diff -urNp linux-2.6.32.21/arch/x86/kernel/ldt.c linux-2.6.32.21/arch/x86/kernel/ldt.c
12726--- linux-2.6.32.21/arch/x86/kernel/ldt.c 2010-08-26 19:42:20.000000000 -0400 12732--- linux-2.6.32.21/arch/x86/kernel/ldt.c 2010-08-13 16:24:37.000000000 -0400
12727+++ linux-2.6.32.21/arch/x86/kernel/ldt.c 2010-09-13 08:10:06.000000000 -0400 12733+++ linux-2.6.32.21/arch/x86/kernel/ldt.c 2010-09-04 15:54:51.000000000 -0400
12728@@ -66,13 +66,13 @@ static int alloc_ldt(mm_context_t *pc, i 12734@@ -66,13 +66,13 @@ static int alloc_ldt(mm_context_t *pc, i
12729 if (reload) { 12735 if (reload) {
12730 #ifdef CONFIG_SMP 12736 #ifdef CONFIG_SMP
@@ -12790,8 +12796,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/ldt.c linux-2.6.32.21/arch/x86/kernel
12790 if (oldmode) 12796 if (oldmode)
12791 ldt.avl = 0; 12797 ldt.avl = 0;
12792diff -urNp linux-2.6.32.21/arch/x86/kernel/machine_kexec_32.c linux-2.6.32.21/arch/x86/kernel/machine_kexec_32.c 12798diff -urNp linux-2.6.32.21/arch/x86/kernel/machine_kexec_32.c linux-2.6.32.21/arch/x86/kernel/machine_kexec_32.c
12793--- linux-2.6.32.21/arch/x86/kernel/machine_kexec_32.c 2010-08-26 19:42:20.000000000 -0400 12799--- linux-2.6.32.21/arch/x86/kernel/machine_kexec_32.c 2010-08-13 16:24:37.000000000 -0400
12794+++ linux-2.6.32.21/arch/x86/kernel/machine_kexec_32.c 2010-09-13 08:10:06.000000000 -0400 12800+++ linux-2.6.32.21/arch/x86/kernel/machine_kexec_32.c 2010-09-04 15:54:51.000000000 -0400
12795@@ -26,7 +26,7 @@ 12801@@ -26,7 +26,7 @@
12796 #include <asm/system.h> 12802 #include <asm/system.h>
12797 #include <asm/cacheflush.h> 12803 #include <asm/cacheflush.h>
@@ -12820,8 +12826,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/machine_kexec_32.c linux-2.6.32.21/ar
12820 relocate_kernel_ptr = control_page; 12826 relocate_kernel_ptr = control_page;
12821 page_list[PA_CONTROL_PAGE] = __pa(control_page); 12827 page_list[PA_CONTROL_PAGE] = __pa(control_page);
12822diff -urNp linux-2.6.32.21/arch/x86/kernel/microcode_amd.c linux-2.6.32.21/arch/x86/kernel/microcode_amd.c 12828diff -urNp linux-2.6.32.21/arch/x86/kernel/microcode_amd.c linux-2.6.32.21/arch/x86/kernel/microcode_amd.c
12823--- linux-2.6.32.21/arch/x86/kernel/microcode_amd.c 2010-08-26 19:42:20.000000000 -0400 12829--- linux-2.6.32.21/arch/x86/kernel/microcode_amd.c 2010-08-13 16:24:37.000000000 -0400
12824+++ linux-2.6.32.21/arch/x86/kernel/microcode_amd.c 2010-09-13 08:10:06.000000000 -0400 12830+++ linux-2.6.32.21/arch/x86/kernel/microcode_amd.c 2010-09-04 15:54:51.000000000 -0400
12825@@ -346,7 +346,7 @@ static void microcode_fini_cpu_amd(int c 12831@@ -346,7 +346,7 @@ static void microcode_fini_cpu_amd(int c
12826 uci->mc = NULL; 12832 uci->mc = NULL;
12827 } 12833 }
@@ -12841,8 +12847,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/microcode_amd.c linux-2.6.32.21/arch/
12841 return &microcode_amd_ops; 12847 return &microcode_amd_ops;
12842 } 12848 }
12843diff -urNp linux-2.6.32.21/arch/x86/kernel/microcode_core.c linux-2.6.32.21/arch/x86/kernel/microcode_core.c 12849diff -urNp linux-2.6.32.21/arch/x86/kernel/microcode_core.c linux-2.6.32.21/arch/x86/kernel/microcode_core.c
12844--- linux-2.6.32.21/arch/x86/kernel/microcode_core.c 2010-08-26 19:42:20.000000000 -0400 12850--- linux-2.6.32.21/arch/x86/kernel/microcode_core.c 2010-08-13 16:24:37.000000000 -0400
12845+++ linux-2.6.32.21/arch/x86/kernel/microcode_core.c 2010-09-13 08:10:06.000000000 -0400 12851+++ linux-2.6.32.21/arch/x86/kernel/microcode_core.c 2010-09-04 15:54:51.000000000 -0400
12846@@ -90,7 +90,7 @@ MODULE_LICENSE("GPL"); 12852@@ -90,7 +90,7 @@ MODULE_LICENSE("GPL");
12847 12853
12848 #define MICROCODE_VERSION "2.00" 12854 #define MICROCODE_VERSION "2.00"
@@ -12853,8 +12859,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/microcode_core.c linux-2.6.32.21/arch
12853 /* 12859 /*
12854 * Synchronization. 12860 * Synchronization.
12855diff -urNp linux-2.6.32.21/arch/x86/kernel/microcode_intel.c linux-2.6.32.21/arch/x86/kernel/microcode_intel.c 12861diff -urNp linux-2.6.32.21/arch/x86/kernel/microcode_intel.c linux-2.6.32.21/arch/x86/kernel/microcode_intel.c
12856--- linux-2.6.32.21/arch/x86/kernel/microcode_intel.c 2010-08-26 19:42:20.000000000 -0400 12862--- linux-2.6.32.21/arch/x86/kernel/microcode_intel.c 2010-08-13 16:24:37.000000000 -0400
12857+++ linux-2.6.32.21/arch/x86/kernel/microcode_intel.c 2010-09-13 08:10:06.000000000 -0400 12863+++ linux-2.6.32.21/arch/x86/kernel/microcode_intel.c 2010-09-04 15:54:51.000000000 -0400
12858@@ -443,13 +443,13 @@ static enum ucode_state request_microcod 12864@@ -443,13 +443,13 @@ static enum ucode_state request_microcod
12859 12865
12860 static int get_ucode_user(void *to, const void *from, size_t n) 12866 static int get_ucode_user(void *to, const void *from, size_t n)
@@ -12890,8 +12896,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/microcode_intel.c linux-2.6.32.21/arc
12890 return &microcode_intel_ops; 12896 return &microcode_intel_ops;
12891 } 12897 }
12892diff -urNp linux-2.6.32.21/arch/x86/kernel/module.c linux-2.6.32.21/arch/x86/kernel/module.c 12898diff -urNp linux-2.6.32.21/arch/x86/kernel/module.c linux-2.6.32.21/arch/x86/kernel/module.c
12893--- linux-2.6.32.21/arch/x86/kernel/module.c 2010-08-26 19:42:20.000000000 -0400 12899--- linux-2.6.32.21/arch/x86/kernel/module.c 2010-08-13 16:24:37.000000000 -0400
12894+++ linux-2.6.32.21/arch/x86/kernel/module.c 2010-09-13 08:10:06.000000000 -0400 12900+++ linux-2.6.32.21/arch/x86/kernel/module.c 2010-09-04 15:54:51.000000000 -0400
12895@@ -34,7 +34,7 @@ 12901@@ -34,7 +34,7 @@
12896 #define DEBUGP(fmt...) 12902 #define DEBUGP(fmt...)
12897 #endif 12903 #endif
@@ -13032,21 +13038,9 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/module.c linux-2.6.32.21/arch/x86/ker
13032 #if 0 13038 #if 0
13033 if ((s64)val != *(s32 *)loc) 13039 if ((s64)val != *(s32 *)loc)
13034 goto overflow; 13040 goto overflow;
13035diff -urNp linux-2.6.32.21/arch/x86/kernel/paravirt-spinlocks.c linux-2.6.32.21/arch/x86/kernel/paravirt-spinlocks.c
13036--- linux-2.6.32.21/arch/x86/kernel/paravirt-spinlocks.c 2010-08-26 19:42:20.000000000 -0400
13037+++ linux-2.6.32.21/arch/x86/kernel/paravirt-spinlocks.c 2010-09-13 08:10:06.000000000 -0400
13038@@ -13,7 +13,7 @@ default_spin_lock_flags(raw_spinlock_t *
13039 __raw_spin_lock(lock);
13040 }
13041
13042-struct pv_lock_ops pv_lock_ops = {
13043+struct pv_lock_ops pv_lock_ops __read_only = {
13044 #ifdef CONFIG_SMP
13045 .spin_is_locked = __ticket_spin_is_locked,
13046 .spin_is_contended = __ticket_spin_is_contended,
13047diff -urNp linux-2.6.32.21/arch/x86/kernel/paravirt.c linux-2.6.32.21/arch/x86/kernel/paravirt.c 13041diff -urNp linux-2.6.32.21/arch/x86/kernel/paravirt.c linux-2.6.32.21/arch/x86/kernel/paravirt.c
13048--- linux-2.6.32.21/arch/x86/kernel/paravirt.c 2010-08-26 19:42:20.000000000 -0400 13042--- linux-2.6.32.21/arch/x86/kernel/paravirt.c 2010-08-13 16:24:37.000000000 -0400
13049+++ linux-2.6.32.21/arch/x86/kernel/paravirt.c 2010-09-13 08:10:06.000000000 -0400 13043+++ linux-2.6.32.21/arch/x86/kernel/paravirt.c 2010-09-04 15:54:51.000000000 -0400
13050@@ -122,7 +122,7 @@ unsigned paravirt_patch_jmp(void *insnbu 13044@@ -122,7 +122,7 @@ unsigned paravirt_patch_jmp(void *insnbu
13051 * corresponding structure. */ 13045 * corresponding structure. */
13052 static void *get_call_destination(u8 type) 13046 static void *get_call_destination(u8 type)
@@ -13150,9 +13144,21 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/paravirt.c linux-2.6.32.21/arch/x86/k
13150 }; 13144 };
13151 13145
13152 EXPORT_SYMBOL_GPL(pv_time_ops); 13146 EXPORT_SYMBOL_GPL(pv_time_ops);
13147diff -urNp linux-2.6.32.21/arch/x86/kernel/paravirt-spinlocks.c linux-2.6.32.21/arch/x86/kernel/paravirt-spinlocks.c
13148--- linux-2.6.32.21/arch/x86/kernel/paravirt-spinlocks.c 2010-08-13 16:24:37.000000000 -0400
13149+++ linux-2.6.32.21/arch/x86/kernel/paravirt-spinlocks.c 2010-09-04 15:54:51.000000000 -0400
13150@@ -13,7 +13,7 @@ default_spin_lock_flags(raw_spinlock_t *
13151 __raw_spin_lock(lock);
13152 }
13153
13154-struct pv_lock_ops pv_lock_ops = {
13155+struct pv_lock_ops pv_lock_ops __read_only = {
13156 #ifdef CONFIG_SMP
13157 .spin_is_locked = __ticket_spin_is_locked,
13158 .spin_is_contended = __ticket_spin_is_contended,
13153diff -urNp linux-2.6.32.21/arch/x86/kernel/pci-calgary_64.c linux-2.6.32.21/arch/x86/kernel/pci-calgary_64.c 13159diff -urNp linux-2.6.32.21/arch/x86/kernel/pci-calgary_64.c linux-2.6.32.21/arch/x86/kernel/pci-calgary_64.c
13154--- linux-2.6.32.21/arch/x86/kernel/pci-calgary_64.c 2010-08-26 19:42:20.000000000 -0400 13160--- linux-2.6.32.21/arch/x86/kernel/pci-calgary_64.c 2010-08-13 16:24:37.000000000 -0400
13155+++ linux-2.6.32.21/arch/x86/kernel/pci-calgary_64.c 2010-09-13 08:10:06.000000000 -0400 13161+++ linux-2.6.32.21/arch/x86/kernel/pci-calgary_64.c 2010-09-04 15:54:51.000000000 -0400
13156@@ -477,7 +477,7 @@ static void calgary_free_coherent(struct 13162@@ -477,7 +477,7 @@ static void calgary_free_coherent(struct
13157 free_pages((unsigned long)vaddr, get_order(size)); 13163 free_pages((unsigned long)vaddr, get_order(size));
13158 } 13164 }
@@ -13163,8 +13169,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/pci-calgary_64.c linux-2.6.32.21/arch
13163 .free_coherent = calgary_free_coherent, 13169 .free_coherent = calgary_free_coherent,
13164 .map_sg = calgary_map_sg, 13170 .map_sg = calgary_map_sg,
13165diff -urNp linux-2.6.32.21/arch/x86/kernel/pci-dma.c linux-2.6.32.21/arch/x86/kernel/pci-dma.c 13171diff -urNp linux-2.6.32.21/arch/x86/kernel/pci-dma.c linux-2.6.32.21/arch/x86/kernel/pci-dma.c
13166--- linux-2.6.32.21/arch/x86/kernel/pci-dma.c 2010-08-26 19:42:20.000000000 -0400 13172--- linux-2.6.32.21/arch/x86/kernel/pci-dma.c 2010-08-13 16:24:37.000000000 -0400
13167+++ linux-2.6.32.21/arch/x86/kernel/pci-dma.c 2010-09-13 08:10:06.000000000 -0400 13173+++ linux-2.6.32.21/arch/x86/kernel/pci-dma.c 2010-09-04 15:54:51.000000000 -0400
13168@@ -14,7 +14,7 @@ 13174@@ -14,7 +14,7 @@
13169 13175
13170 static int forbid_dac __read_mostly; 13176 static int forbid_dac __read_mostly;
@@ -13184,8 +13190,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/pci-dma.c linux-2.6.32.21/arch/x86/ke
13184 #ifdef CONFIG_PCI 13190 #ifdef CONFIG_PCI
13185 if (mask > 0xffffffff && forbid_dac > 0) { 13191 if (mask > 0xffffffff && forbid_dac > 0) {
13186diff -urNp linux-2.6.32.21/arch/x86/kernel/pci-gart_64.c linux-2.6.32.21/arch/x86/kernel/pci-gart_64.c 13192diff -urNp linux-2.6.32.21/arch/x86/kernel/pci-gart_64.c linux-2.6.32.21/arch/x86/kernel/pci-gart_64.c
13187--- linux-2.6.32.21/arch/x86/kernel/pci-gart_64.c 2010-08-26 19:42:20.000000000 -0400 13193--- linux-2.6.32.21/arch/x86/kernel/pci-gart_64.c 2010-08-13 16:24:37.000000000 -0400
13188+++ linux-2.6.32.21/arch/x86/kernel/pci-gart_64.c 2010-09-13 08:10:06.000000000 -0400 13194+++ linux-2.6.32.21/arch/x86/kernel/pci-gart_64.c 2010-09-04 15:54:51.000000000 -0400
13189@@ -682,7 +682,7 @@ static __init int init_k8_gatt(struct ag 13195@@ -682,7 +682,7 @@ static __init int init_k8_gatt(struct ag
13190 return -1; 13196 return -1;
13191 } 13197 }
@@ -13196,8 +13202,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/pci-gart_64.c linux-2.6.32.21/arch/x8
13196 .unmap_sg = gart_unmap_sg, 13202 .unmap_sg = gart_unmap_sg,
13197 .map_page = gart_map_page, 13203 .map_page = gart_map_page,
13198diff -urNp linux-2.6.32.21/arch/x86/kernel/pci-nommu.c linux-2.6.32.21/arch/x86/kernel/pci-nommu.c 13204diff -urNp linux-2.6.32.21/arch/x86/kernel/pci-nommu.c linux-2.6.32.21/arch/x86/kernel/pci-nommu.c
13199--- linux-2.6.32.21/arch/x86/kernel/pci-nommu.c 2010-08-26 19:42:20.000000000 -0400 13205--- linux-2.6.32.21/arch/x86/kernel/pci-nommu.c 2010-08-13 16:24:37.000000000 -0400
13200+++ linux-2.6.32.21/arch/x86/kernel/pci-nommu.c 2010-09-13 08:10:06.000000000 -0400 13206+++ linux-2.6.32.21/arch/x86/kernel/pci-nommu.c 2010-09-04 15:54:51.000000000 -0400
13201@@ -94,7 +94,7 @@ static void nommu_sync_sg_for_device(str 13207@@ -94,7 +94,7 @@ static void nommu_sync_sg_for_device(str
13202 flush_write_buffers(); 13208 flush_write_buffers();
13203 } 13209 }
@@ -13208,8 +13214,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/pci-nommu.c linux-2.6.32.21/arch/x86/
13208 .free_coherent = nommu_free_coherent, 13214 .free_coherent = nommu_free_coherent,
13209 .map_sg = nommu_map_sg, 13215 .map_sg = nommu_map_sg,
13210diff -urNp linux-2.6.32.21/arch/x86/kernel/pci-swiotlb.c linux-2.6.32.21/arch/x86/kernel/pci-swiotlb.c 13216diff -urNp linux-2.6.32.21/arch/x86/kernel/pci-swiotlb.c linux-2.6.32.21/arch/x86/kernel/pci-swiotlb.c
13211--- linux-2.6.32.21/arch/x86/kernel/pci-swiotlb.c 2010-08-26 19:42:20.000000000 -0400 13217--- linux-2.6.32.21/arch/x86/kernel/pci-swiotlb.c 2010-08-13 16:24:37.000000000 -0400
13212+++ linux-2.6.32.21/arch/x86/kernel/pci-swiotlb.c 2010-09-13 08:10:06.000000000 -0400 13218+++ linux-2.6.32.21/arch/x86/kernel/pci-swiotlb.c 2010-09-04 15:54:51.000000000 -0400
13213@@ -25,7 +25,7 @@ static void *x86_swiotlb_alloc_coherent( 13219@@ -25,7 +25,7 @@ static void *x86_swiotlb_alloc_coherent(
13214 return swiotlb_alloc_coherent(hwdev, size, dma_handle, flags); 13220 return swiotlb_alloc_coherent(hwdev, size, dma_handle, flags);
13215 } 13221 }
@@ -13219,49 +13225,9 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/pci-swiotlb.c linux-2.6.32.21/arch/x8
13219 .mapping_error = swiotlb_dma_mapping_error, 13225 .mapping_error = swiotlb_dma_mapping_error,
13220 .alloc_coherent = x86_swiotlb_alloc_coherent, 13226 .alloc_coherent = x86_swiotlb_alloc_coherent,
13221 .free_coherent = swiotlb_free_coherent, 13227 .free_coherent = swiotlb_free_coherent,
13222diff -urNp linux-2.6.32.21/arch/x86/kernel/process.c linux-2.6.32.21/arch/x86/kernel/process.c
13223--- linux-2.6.32.21/arch/x86/kernel/process.c 2010-08-26 19:42:20.000000000 -0400
13224+++ linux-2.6.32.21/arch/x86/kernel/process.c 2010-09-13 08:10:06.000000000 -0400
13225@@ -73,7 +73,7 @@ void exit_thread(void)
13226 unsigned long *bp = t->io_bitmap_ptr;
13227
13228 if (bp) {
13229- struct tss_struct *tss = &per_cpu(init_tss, get_cpu());
13230+ struct tss_struct *tss = init_tss + get_cpu();
13231
13232 t->io_bitmap_ptr = NULL;
13233 clear_thread_flag(TIF_IO_BITMAP);
13234@@ -93,6 +93,9 @@ void flush_thread(void)
13235
13236 clear_tsk_thread_flag(tsk, TIF_DEBUG);
13237
13238+#if defined(CONFIG_X86_32) && !defined(CONFIG_CC_STACKPROTECTOR)
13239+ loadsegment(gs, 0);
13240+#endif
13241 tsk->thread.debugreg0 = 0;
13242 tsk->thread.debugreg1 = 0;
13243 tsk->thread.debugreg2 = 0;
13244@@ -602,17 +605,3 @@ static int __init idle_setup(char *str)
13245 return 0;
13246 }
13247 early_param("idle", idle_setup);
13248-
13249-unsigned long arch_align_stack(unsigned long sp)
13250-{
13251- if (!(current->personality & ADDR_NO_RANDOMIZE) && randomize_va_space)
13252- sp -= get_random_int() % 8192;
13253- return sp & ~0xf;
13254-}
13255-
13256-unsigned long arch_randomize_brk(struct mm_struct *mm)
13257-{
13258- unsigned long range_end = mm->brk + 0x02000000;
13259- return randomize_range(mm->brk, range_end, 0) ? : mm->brk;
13260-}
13261-
13262diff -urNp linux-2.6.32.21/arch/x86/kernel/process_32.c linux-2.6.32.21/arch/x86/kernel/process_32.c 13228diff -urNp linux-2.6.32.21/arch/x86/kernel/process_32.c linux-2.6.32.21/arch/x86/kernel/process_32.c
13263--- linux-2.6.32.21/arch/x86/kernel/process_32.c 2010-08-26 19:42:20.000000000 -0400 13229--- linux-2.6.32.21/arch/x86/kernel/process_32.c 2010-08-13 16:24:37.000000000 -0400
13264+++ linux-2.6.32.21/arch/x86/kernel/process_32.c 2010-09-13 08:10:06.000000000 -0400 13230+++ linux-2.6.32.21/arch/x86/kernel/process_32.c 2010-09-04 15:54:51.000000000 -0400
13265@@ -67,6 +67,7 @@ asmlinkage void ret_from_fork(void) __as 13231@@ -67,6 +67,7 @@ asmlinkage void ret_from_fork(void) __as
13266 unsigned long thread_saved_pc(struct task_struct *tsk) 13232 unsigned long thread_saved_pc(struct task_struct *tsk)
13267 { 13233 {
@@ -13357,8 +13323,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/process_32.c linux-2.6.32.21/arch/x86
13357+} 13323+}
13358+#endif 13324+#endif
13359diff -urNp linux-2.6.32.21/arch/x86/kernel/process_64.c linux-2.6.32.21/arch/x86/kernel/process_64.c 13325diff -urNp linux-2.6.32.21/arch/x86/kernel/process_64.c linux-2.6.32.21/arch/x86/kernel/process_64.c
13360--- linux-2.6.32.21/arch/x86/kernel/process_64.c 2010-08-26 19:42:20.000000000 -0400 13326--- linux-2.6.32.21/arch/x86/kernel/process_64.c 2010-08-13 16:24:37.000000000 -0400
13361+++ linux-2.6.32.21/arch/x86/kernel/process_64.c 2010-09-13 08:10:06.000000000 -0400 13327+++ linux-2.6.32.21/arch/x86/kernel/process_64.c 2010-09-04 15:54:51.000000000 -0400
13362@@ -91,7 +91,7 @@ static void __exit_idle(void) 13328@@ -91,7 +91,7 @@ static void __exit_idle(void)
13363 void exit_idle(void) 13329 void exit_idle(void)
13364 { 13330 {
@@ -13401,9 +13367,49 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/process_64.c linux-2.6.32.21/arch/x86
13401 return 0; 13367 return 0;
13402 ip = *(u64 *)(fp+8); 13368 ip = *(u64 *)(fp+8);
13403 if (!in_sched_functions(ip)) 13369 if (!in_sched_functions(ip))
13370diff -urNp linux-2.6.32.21/arch/x86/kernel/process.c linux-2.6.32.21/arch/x86/kernel/process.c
13371--- linux-2.6.32.21/arch/x86/kernel/process.c 2010-08-13 16:24:37.000000000 -0400
13372+++ linux-2.6.32.21/arch/x86/kernel/process.c 2010-09-04 15:54:51.000000000 -0400
13373@@ -73,7 +73,7 @@ void exit_thread(void)
13374 unsigned long *bp = t->io_bitmap_ptr;
13375
13376 if (bp) {
13377- struct tss_struct *tss = &per_cpu(init_tss, get_cpu());
13378+ struct tss_struct *tss = init_tss + get_cpu();
13379
13380 t->io_bitmap_ptr = NULL;
13381 clear_thread_flag(TIF_IO_BITMAP);
13382@@ -93,6 +93,9 @@ void flush_thread(void)
13383
13384 clear_tsk_thread_flag(tsk, TIF_DEBUG);
13385
13386+#if defined(CONFIG_X86_32) && !defined(CONFIG_CC_STACKPROTECTOR)
13387+ loadsegment(gs, 0);
13388+#endif
13389 tsk->thread.debugreg0 = 0;
13390 tsk->thread.debugreg1 = 0;
13391 tsk->thread.debugreg2 = 0;
13392@@ -602,17 +605,3 @@ static int __init idle_setup(char *str)
13393 return 0;
13394 }
13395 early_param("idle", idle_setup);
13396-
13397-unsigned long arch_align_stack(unsigned long sp)
13398-{
13399- if (!(current->personality & ADDR_NO_RANDOMIZE) && randomize_va_space)
13400- sp -= get_random_int() % 8192;
13401- return sp & ~0xf;
13402-}
13403-
13404-unsigned long arch_randomize_brk(struct mm_struct *mm)
13405-{
13406- unsigned long range_end = mm->brk + 0x02000000;
13407- return randomize_range(mm->brk, range_end, 0) ? : mm->brk;
13408-}
13409-
13404diff -urNp linux-2.6.32.21/arch/x86/kernel/ptrace.c linux-2.6.32.21/arch/x86/kernel/ptrace.c 13410diff -urNp linux-2.6.32.21/arch/x86/kernel/ptrace.c linux-2.6.32.21/arch/x86/kernel/ptrace.c
13405--- linux-2.6.32.21/arch/x86/kernel/ptrace.c 2010-08-26 19:42:20.000000000 -0400 13411--- linux-2.6.32.21/arch/x86/kernel/ptrace.c 2010-08-13 16:24:37.000000000 -0400
13406+++ linux-2.6.32.21/arch/x86/kernel/ptrace.c 2010-09-13 08:10:06.000000000 -0400 13412+++ linux-2.6.32.21/arch/x86/kernel/ptrace.c 2010-09-04 15:54:51.000000000 -0400
13407@@ -925,7 +925,7 @@ static const struct user_regset_view use 13413@@ -925,7 +925,7 @@ static const struct user_regset_view use
13408 long arch_ptrace(struct task_struct *child, long request, long addr, long data) 13414 long arch_ptrace(struct task_struct *child, long request, long addr, long data)
13409 { 13415 {
@@ -13473,8 +13479,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/ptrace.c linux-2.6.32.21/arch/x86/ker
13473 /* Send us the fake SIGTRAP */ 13479 /* Send us the fake SIGTRAP */
13474 force_sig_info(SIGTRAP, &info, tsk); 13480 force_sig_info(SIGTRAP, &info, tsk);
13475diff -urNp linux-2.6.32.21/arch/x86/kernel/reboot.c linux-2.6.32.21/arch/x86/kernel/reboot.c 13481diff -urNp linux-2.6.32.21/arch/x86/kernel/reboot.c linux-2.6.32.21/arch/x86/kernel/reboot.c
13476--- linux-2.6.32.21/arch/x86/kernel/reboot.c 2010-08-26 19:42:20.000000000 -0400 13482--- linux-2.6.32.21/arch/x86/kernel/reboot.c 2010-08-13 16:24:37.000000000 -0400
13477+++ linux-2.6.32.21/arch/x86/kernel/reboot.c 2010-09-13 08:10:06.000000000 -0400 13483+++ linux-2.6.32.21/arch/x86/kernel/reboot.c 2010-09-04 15:54:51.000000000 -0400
13478@@ -33,7 +33,7 @@ void (*pm_power_off)(void); 13484@@ -33,7 +33,7 @@ void (*pm_power_off)(void);
13479 EXPORT_SYMBOL(pm_power_off); 13485 EXPORT_SYMBOL(pm_power_off);
13480 13486
@@ -13552,8 +13558,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/reboot.c linux-2.6.32.21/arch/x86/ker
13552 /* Set up the IDT for real mode. */ 13558 /* Set up the IDT for real mode. */
13553 load_idt(&real_mode_idt); 13559 load_idt(&real_mode_idt);
13554diff -urNp linux-2.6.32.21/arch/x86/kernel/setup.c linux-2.6.32.21/arch/x86/kernel/setup.c 13560diff -urNp linux-2.6.32.21/arch/x86/kernel/setup.c linux-2.6.32.21/arch/x86/kernel/setup.c
13555--- linux-2.6.32.21/arch/x86/kernel/setup.c 2010-08-26 19:42:20.000000000 -0400 13561--- linux-2.6.32.21/arch/x86/kernel/setup.c 2010-08-13 16:24:37.000000000 -0400
13556+++ linux-2.6.32.21/arch/x86/kernel/setup.c 2010-09-13 08:10:06.000000000 -0400 13562+++ linux-2.6.32.21/arch/x86/kernel/setup.c 2010-09-04 15:54:51.000000000 -0400
13557@@ -782,14 +782,14 @@ void __init setup_arch(char **cmdline_p) 13563@@ -782,14 +782,14 @@ void __init setup_arch(char **cmdline_p)
13558 13564
13559 if (!boot_params.hdr.root_flags) 13565 if (!boot_params.hdr.root_flags)
@@ -13575,8 +13581,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/setup.c linux-2.6.32.21/arch/x86/kern
13575 bss_resource.start = virt_to_phys(&__bss_start); 13581 bss_resource.start = virt_to_phys(&__bss_start);
13576 bss_resource.end = virt_to_phys(&__bss_stop)-1; 13582 bss_resource.end = virt_to_phys(&__bss_stop)-1;
13577diff -urNp linux-2.6.32.21/arch/x86/kernel/setup_percpu.c linux-2.6.32.21/arch/x86/kernel/setup_percpu.c 13583diff -urNp linux-2.6.32.21/arch/x86/kernel/setup_percpu.c linux-2.6.32.21/arch/x86/kernel/setup_percpu.c
13578--- linux-2.6.32.21/arch/x86/kernel/setup_percpu.c 2010-08-26 19:42:20.000000000 -0400 13584--- linux-2.6.32.21/arch/x86/kernel/setup_percpu.c 2010-08-13 16:24:37.000000000 -0400
13579+++ linux-2.6.32.21/arch/x86/kernel/setup_percpu.c 2010-09-13 08:10:06.000000000 -0400 13585+++ linux-2.6.32.21/arch/x86/kernel/setup_percpu.c 2010-09-04 15:54:51.000000000 -0400
13580@@ -25,19 +25,17 @@ 13586@@ -25,19 +25,17 @@
13581 # define DBG(x...) 13587 # define DBG(x...)
13582 #endif 13588 #endif
@@ -13640,8 +13646,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/setup_percpu.c linux-2.6.32.21/arch/x
13640 * Up to this point, the boot CPU has been using .data.init 13646 * Up to this point, the boot CPU has been using .data.init
13641 * area. Reload any changed state for the boot CPU. 13647 * area. Reload any changed state for the boot CPU.
13642diff -urNp linux-2.6.32.21/arch/x86/kernel/signal.c linux-2.6.32.21/arch/x86/kernel/signal.c 13648diff -urNp linux-2.6.32.21/arch/x86/kernel/signal.c linux-2.6.32.21/arch/x86/kernel/signal.c
13643--- linux-2.6.32.21/arch/x86/kernel/signal.c 2010-08-26 19:42:20.000000000 -0400 13649--- linux-2.6.32.21/arch/x86/kernel/signal.c 2010-08-13 16:24:37.000000000 -0400
13644+++ linux-2.6.32.21/arch/x86/kernel/signal.c 2010-09-13 08:10:06.000000000 -0400 13650+++ linux-2.6.32.21/arch/x86/kernel/signal.c 2010-09-04 15:54:51.000000000 -0400
13645@@ -197,7 +197,7 @@ static unsigned long align_sigframe(unsi 13651@@ -197,7 +197,7 @@ static unsigned long align_sigframe(unsi
13646 * Align the stack pointer according to the i386 ABI, 13652 * Align the stack pointer according to the i386 ABI,
13647 * i.e. so that on function entry ((sp + 4) & 15) == 0. 13653 * i.e. so that on function entry ((sp + 4) & 15) == 0.
@@ -13714,8 +13720,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/signal.c linux-2.6.32.21/arch/x86/ker
13714 13720
13715 if (current_thread_info()->status & TS_RESTORE_SIGMASK) 13721 if (current_thread_info()->status & TS_RESTORE_SIGMASK)
13716diff -urNp linux-2.6.32.21/arch/x86/kernel/smpboot.c linux-2.6.32.21/arch/x86/kernel/smpboot.c 13722diff -urNp linux-2.6.32.21/arch/x86/kernel/smpboot.c linux-2.6.32.21/arch/x86/kernel/smpboot.c
13717--- linux-2.6.32.21/arch/x86/kernel/smpboot.c 2010-08-26 19:42:20.000000000 -0400 13723--- linux-2.6.32.21/arch/x86/kernel/smpboot.c 2010-08-29 21:08:20.000000000 -0400
13718+++ linux-2.6.32.21/arch/x86/kernel/smpboot.c 2010-09-13 08:10:06.000000000 -0400 13724+++ linux-2.6.32.21/arch/x86/kernel/smpboot.c 2010-09-04 15:54:51.000000000 -0400
13719@@ -748,7 +748,11 @@ do_rest: 13725@@ -748,7 +748,11 @@ do_rest:
13720 (unsigned long)task_stack_page(c_idle.idle) - 13726 (unsigned long)task_stack_page(c_idle.idle) -
13721 KERNEL_STACK_OFFSET + THREAD_SIZE; 13727 KERNEL_STACK_OFFSET + THREAD_SIZE;
@@ -13742,8 +13748,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/smpboot.c linux-2.6.32.21/arch/x86/ke
13742 /* init low mem mapping */ 13748 /* init low mem mapping */
13743 clone_pgd_range(swapper_pg_dir, swapper_pg_dir + KERNEL_PGD_BOUNDARY, 13749 clone_pgd_range(swapper_pg_dir, swapper_pg_dir + KERNEL_PGD_BOUNDARY,
13744diff -urNp linux-2.6.32.21/arch/x86/kernel/step.c linux-2.6.32.21/arch/x86/kernel/step.c 13750diff -urNp linux-2.6.32.21/arch/x86/kernel/step.c linux-2.6.32.21/arch/x86/kernel/step.c
13745--- linux-2.6.32.21/arch/x86/kernel/step.c 2010-08-26 19:42:20.000000000 -0400 13751--- linux-2.6.32.21/arch/x86/kernel/step.c 2010-08-13 16:24:37.000000000 -0400
13746+++ linux-2.6.32.21/arch/x86/kernel/step.c 2010-09-13 08:10:06.000000000 -0400 13752+++ linux-2.6.32.21/arch/x86/kernel/step.c 2010-09-04 15:54:51.000000000 -0400
13747@@ -27,10 +27,10 @@ unsigned long convert_ip_to_linear(struc 13753@@ -27,10 +27,10 @@ unsigned long convert_ip_to_linear(struc
13748 struct desc_struct *desc; 13754 struct desc_struct *desc;
13749 unsigned long base; 13755 unsigned long base;
@@ -13776,9 +13782,17 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/step.c linux-2.6.32.21/arch/x86/kerne
13776 /* 32-bit mode: register increment */ 13782 /* 32-bit mode: register increment */
13777 return 0; 13783 return 0;
13778 /* 64-bit mode: REX prefix */ 13784 /* 64-bit mode: REX prefix */
13785diff -urNp linux-2.6.32.21/arch/x86/kernel/syscall_table_32.S linux-2.6.32.21/arch/x86/kernel/syscall_table_32.S
13786--- linux-2.6.32.21/arch/x86/kernel/syscall_table_32.S 2010-08-13 16:24:37.000000000 -0400
13787+++ linux-2.6.32.21/arch/x86/kernel/syscall_table_32.S 2010-09-04 15:54:51.000000000 -0400
13788@@ -1,3 +1,4 @@
13789+.section .rodata,"a",@progbits
13790 ENTRY(sys_call_table)
13791 .long sys_restart_syscall /* 0 - old "setup()" system call, used for restarting */
13792 .long sys_exit
13779diff -urNp linux-2.6.32.21/arch/x86/kernel/sys_i386_32.c linux-2.6.32.21/arch/x86/kernel/sys_i386_32.c 13793diff -urNp linux-2.6.32.21/arch/x86/kernel/sys_i386_32.c linux-2.6.32.21/arch/x86/kernel/sys_i386_32.c
13780--- linux-2.6.32.21/arch/x86/kernel/sys_i386_32.c 2010-08-26 19:42:20.000000000 -0400 13794--- linux-2.6.32.21/arch/x86/kernel/sys_i386_32.c 2010-08-13 16:24:37.000000000 -0400
13781+++ linux-2.6.32.21/arch/x86/kernel/sys_i386_32.c 2010-09-13 08:10:06.000000000 -0400 13795+++ linux-2.6.32.21/arch/x86/kernel/sys_i386_32.c 2010-09-04 15:54:51.000000000 -0400
13782@@ -24,6 +24,21 @@ 13796@@ -24,6 +24,21 @@
13783 13797
13784 #include <asm/syscalls.h> 13798 #include <asm/syscalls.h>
@@ -14026,8 +14040,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/sys_i386_32.c linux-2.6.32.21/arch/x8
14026 case 1: /* iBCS2 emulator entry point */ 14040 case 1: /* iBCS2 emulator entry point */
14027 if (!segment_eq(get_fs(), get_ds())) 14041 if (!segment_eq(get_fs(), get_ds()))
14028diff -urNp linux-2.6.32.21/arch/x86/kernel/sys_x86_64.c linux-2.6.32.21/arch/x86/kernel/sys_x86_64.c 14042diff -urNp linux-2.6.32.21/arch/x86/kernel/sys_x86_64.c linux-2.6.32.21/arch/x86/kernel/sys_x86_64.c
14029--- linux-2.6.32.21/arch/x86/kernel/sys_x86_64.c 2010-08-26 19:42:20.000000000 -0400 14043--- linux-2.6.32.21/arch/x86/kernel/sys_x86_64.c 2010-08-13 16:24:37.000000000 -0400
14030+++ linux-2.6.32.21/arch/x86/kernel/sys_x86_64.c 2010-09-13 08:10:06.000000000 -0400 14044+++ linux-2.6.32.21/arch/x86/kernel/sys_x86_64.c 2010-09-04 15:54:51.000000000 -0400
14031@@ -32,8 +32,8 @@ out: 14045@@ -32,8 +32,8 @@ out:
14032 return error; 14046 return error;
14033 } 14047 }
@@ -14109,17 +14123,9 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/sys_x86_64.c linux-2.6.32.21/arch/x86
14109 mm->cached_hole_size = ~0UL; 14123 mm->cached_hole_size = ~0UL;
14110 14124
14111 return addr; 14125 return addr;
14112diff -urNp linux-2.6.32.21/arch/x86/kernel/syscall_table_32.S linux-2.6.32.21/arch/x86/kernel/syscall_table_32.S
14113--- linux-2.6.32.21/arch/x86/kernel/syscall_table_32.S 2010-08-26 19:42:20.000000000 -0400
14114+++ linux-2.6.32.21/arch/x86/kernel/syscall_table_32.S 2010-09-13 08:10:06.000000000 -0400
14115@@ -1,3 +1,4 @@
14116+.section .rodata,"a",@progbits
14117 ENTRY(sys_call_table)
14118 .long sys_restart_syscall /* 0 - old "setup()" system call, used for restarting */
14119 .long sys_exit
14120diff -urNp linux-2.6.32.21/arch/x86/kernel/time.c linux-2.6.32.21/arch/x86/kernel/time.c 14126diff -urNp linux-2.6.32.21/arch/x86/kernel/time.c linux-2.6.32.21/arch/x86/kernel/time.c
14121--- linux-2.6.32.21/arch/x86/kernel/time.c 2010-08-26 19:42:20.000000000 -0400 14127--- linux-2.6.32.21/arch/x86/kernel/time.c 2010-08-13 16:24:37.000000000 -0400
14122+++ linux-2.6.32.21/arch/x86/kernel/time.c 2010-09-13 08:10:06.000000000 -0400 14128+++ linux-2.6.32.21/arch/x86/kernel/time.c 2010-09-04 15:54:51.000000000 -0400
14123@@ -26,17 +26,13 @@ 14129@@ -26,17 +26,13 @@
14124 int timer_ack; 14130 int timer_ack;
14125 #endif 14131 #endif
@@ -14159,8 +14165,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/time.c linux-2.6.32.21/arch/x86/kerne
14159 return pc; 14165 return pc;
14160 } 14166 }
14161diff -urNp linux-2.6.32.21/arch/x86/kernel/tls.c linux-2.6.32.21/arch/x86/kernel/tls.c 14167diff -urNp linux-2.6.32.21/arch/x86/kernel/tls.c linux-2.6.32.21/arch/x86/kernel/tls.c
14162--- linux-2.6.32.21/arch/x86/kernel/tls.c 2010-08-26 19:42:20.000000000 -0400 14168--- linux-2.6.32.21/arch/x86/kernel/tls.c 2010-08-13 16:24:37.000000000 -0400
14163+++ linux-2.6.32.21/arch/x86/kernel/tls.c 2010-09-13 08:10:06.000000000 -0400 14169+++ linux-2.6.32.21/arch/x86/kernel/tls.c 2010-09-04 15:54:51.000000000 -0400
14164@@ -85,6 +85,11 @@ int do_set_thread_area(struct task_struc 14170@@ -85,6 +85,11 @@ int do_set_thread_area(struct task_struc
14165 if (idx < GDT_ENTRY_TLS_MIN || idx > GDT_ENTRY_TLS_MAX) 14171 if (idx < GDT_ENTRY_TLS_MIN || idx > GDT_ENTRY_TLS_MAX)
14166 return -EINVAL; 14172 return -EINVAL;
@@ -14174,8 +14180,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/tls.c linux-2.6.32.21/arch/x86/kernel
14174 14180
14175 return 0; 14181 return 0;
14176diff -urNp linux-2.6.32.21/arch/x86/kernel/trampoline_32.S linux-2.6.32.21/arch/x86/kernel/trampoline_32.S 14182diff -urNp linux-2.6.32.21/arch/x86/kernel/trampoline_32.S linux-2.6.32.21/arch/x86/kernel/trampoline_32.S
14177--- linux-2.6.32.21/arch/x86/kernel/trampoline_32.S 2010-08-26 19:42:20.000000000 -0400 14183--- linux-2.6.32.21/arch/x86/kernel/trampoline_32.S 2010-08-13 16:24:37.000000000 -0400
14178+++ linux-2.6.32.21/arch/x86/kernel/trampoline_32.S 2010-09-13 08:10:06.000000000 -0400 14184+++ linux-2.6.32.21/arch/x86/kernel/trampoline_32.S 2010-09-04 15:54:51.000000000 -0400
14179@@ -32,6 +32,12 @@ 14185@@ -32,6 +32,12 @@
14180 #include <asm/segment.h> 14186 #include <asm/segment.h>
14181 #include <asm/page_types.h> 14187 #include <asm/page_types.h>
@@ -14199,8 +14205,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/trampoline_32.S linux-2.6.32.21/arch/
14199 # These need to be in the same 64K segment as the above; 14205 # These need to be in the same 64K segment as the above;
14200 # hence we don't use the boot_gdt_descr defined in head.S 14206 # hence we don't use the boot_gdt_descr defined in head.S
14201diff -urNp linux-2.6.32.21/arch/x86/kernel/traps.c linux-2.6.32.21/arch/x86/kernel/traps.c 14207diff -urNp linux-2.6.32.21/arch/x86/kernel/traps.c linux-2.6.32.21/arch/x86/kernel/traps.c
14202--- linux-2.6.32.21/arch/x86/kernel/traps.c 2010-08-26 19:42:20.000000000 -0400 14208--- linux-2.6.32.21/arch/x86/kernel/traps.c 2010-08-13 16:24:37.000000000 -0400
14203+++ linux-2.6.32.21/arch/x86/kernel/traps.c 2010-09-13 08:10:06.000000000 -0400 14209+++ linux-2.6.32.21/arch/x86/kernel/traps.c 2010-09-04 15:54:51.000000000 -0400
14204@@ -69,12 +69,6 @@ asmlinkage int system_call(void); 14210@@ -69,12 +69,6 @@ asmlinkage int system_call(void);
14205 14211
14206 /* Do we ignore FPU interrupts ? */ 14212 /* Do we ignore FPU interrupts ? */
@@ -14351,8 +14357,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/traps.c linux-2.6.32.21/arch/x86/kern
14351 return; 14357 return;
14352 } 14358 }
14353diff -urNp linux-2.6.32.21/arch/x86/kernel/tsc.c linux-2.6.32.21/arch/x86/kernel/tsc.c 14359diff -urNp linux-2.6.32.21/arch/x86/kernel/tsc.c linux-2.6.32.21/arch/x86/kernel/tsc.c
14354--- linux-2.6.32.21/arch/x86/kernel/tsc.c 2010-08-26 19:42:20.000000000 -0400 14360--- linux-2.6.32.21/arch/x86/kernel/tsc.c 2010-08-13 16:24:37.000000000 -0400
14355+++ linux-2.6.32.21/arch/x86/kernel/tsc.c 2010-09-13 08:10:06.000000000 -0400 14361+++ linux-2.6.32.21/arch/x86/kernel/tsc.c 2010-09-04 15:54:51.000000000 -0400
14356@@ -795,7 +795,7 @@ static struct dmi_system_id __initdata b 14362@@ -795,7 +795,7 @@ static struct dmi_system_id __initdata b
14357 DMI_MATCH(DMI_BOARD_NAME, "2635FA0"), 14363 DMI_MATCH(DMI_BOARD_NAME, "2635FA0"),
14358 }, 14364 },
@@ -14363,8 +14369,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/tsc.c linux-2.6.32.21/arch/x86/kernel
14363 14369
14364 static void __init check_system_tsc_reliable(void) 14370 static void __init check_system_tsc_reliable(void)
14365diff -urNp linux-2.6.32.21/arch/x86/kernel/vm86_32.c linux-2.6.32.21/arch/x86/kernel/vm86_32.c 14371diff -urNp linux-2.6.32.21/arch/x86/kernel/vm86_32.c linux-2.6.32.21/arch/x86/kernel/vm86_32.c
14366--- linux-2.6.32.21/arch/x86/kernel/vm86_32.c 2010-08-26 19:42:20.000000000 -0400 14372--- linux-2.6.32.21/arch/x86/kernel/vm86_32.c 2010-08-13 16:24:37.000000000 -0400
14367+++ linux-2.6.32.21/arch/x86/kernel/vm86_32.c 2010-09-13 08:10:06.000000000 -0400 14373+++ linux-2.6.32.21/arch/x86/kernel/vm86_32.c 2010-09-04 15:54:51.000000000 -0400
14368@@ -41,6 +41,7 @@ 14374@@ -41,6 +41,7 @@
14369 #include <linux/ptrace.h> 14375 #include <linux/ptrace.h>
14370 #include <linux/audit.h> 14376 #include <linux/audit.h>
@@ -14430,8 +14436,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/vm86_32.c linux-2.6.32.21/arch/x86/ke
14430 goto cannot_handle; 14436 goto cannot_handle;
14431 if ((segoffs >> 16) == BIOSSEG) 14437 if ((segoffs >> 16) == BIOSSEG)
14432diff -urNp linux-2.6.32.21/arch/x86/kernel/vmi_32.c linux-2.6.32.21/arch/x86/kernel/vmi_32.c 14438diff -urNp linux-2.6.32.21/arch/x86/kernel/vmi_32.c linux-2.6.32.21/arch/x86/kernel/vmi_32.c
14433--- linux-2.6.32.21/arch/x86/kernel/vmi_32.c 2010-08-26 19:42:20.000000000 -0400 14439--- linux-2.6.32.21/arch/x86/kernel/vmi_32.c 2010-08-13 16:24:37.000000000 -0400
14434+++ linux-2.6.32.21/arch/x86/kernel/vmi_32.c 2010-09-13 08:10:06.000000000 -0400 14440+++ linux-2.6.32.21/arch/x86/kernel/vmi_32.c 2010-09-04 15:54:51.000000000 -0400
14435@@ -44,12 +44,17 @@ typedef u32 __attribute__((regparm(1))) 14441@@ -44,12 +44,17 @@ typedef u32 __attribute__((regparm(1)))
14436 typedef u64 __attribute__((regparm(2))) (VROMLONGFUNC)(int); 14442 typedef u64 __attribute__((regparm(2))) (VROMLONGFUNC)(int);
14437 14443
@@ -14592,8 +14598,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/vmi_32.c linux-2.6.32.21/arch/x86/ker
14592 14598
14593 local_irq_save(flags); 14599 local_irq_save(flags);
14594diff -urNp linux-2.6.32.21/arch/x86/kernel/vmlinux.lds.S linux-2.6.32.21/arch/x86/kernel/vmlinux.lds.S 14600diff -urNp linux-2.6.32.21/arch/x86/kernel/vmlinux.lds.S linux-2.6.32.21/arch/x86/kernel/vmlinux.lds.S
14595--- linux-2.6.32.21/arch/x86/kernel/vmlinux.lds.S 2010-08-26 19:42:20.000000000 -0400 14601--- linux-2.6.32.21/arch/x86/kernel/vmlinux.lds.S 2010-08-13 16:24:37.000000000 -0400
14596+++ linux-2.6.32.21/arch/x86/kernel/vmlinux.lds.S 2010-09-13 08:10:06.000000000 -0400 14602+++ linux-2.6.32.21/arch/x86/kernel/vmlinux.lds.S 2010-09-04 15:54:51.000000000 -0400
14597@@ -26,6 +26,22 @@ 14603@@ -26,6 +26,22 @@
14598 #include <asm/page_types.h> 14604 #include <asm/page_types.h>
14599 #include <asm/cache.h> 14605 #include <asm/cache.h>
@@ -14887,8 +14893,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/vmlinux.lds.S linux-2.6.32.21/arch/x8
14887 14893
14888 #ifdef CONFIG_SMP 14894 #ifdef CONFIG_SMP
14889diff -urNp linux-2.6.32.21/arch/x86/kernel/vsyscall_64.c linux-2.6.32.21/arch/x86/kernel/vsyscall_64.c 14895diff -urNp linux-2.6.32.21/arch/x86/kernel/vsyscall_64.c linux-2.6.32.21/arch/x86/kernel/vsyscall_64.c
14890--- linux-2.6.32.21/arch/x86/kernel/vsyscall_64.c 2010-08-26 19:42:20.000000000 -0400 14896--- linux-2.6.32.21/arch/x86/kernel/vsyscall_64.c 2010-08-13 16:24:37.000000000 -0400
14891+++ linux-2.6.32.21/arch/x86/kernel/vsyscall_64.c 2010-09-13 08:10:06.000000000 -0400 14897+++ linux-2.6.32.21/arch/x86/kernel/vsyscall_64.c 2010-09-04 15:54:51.000000000 -0400
14892@@ -80,6 +80,7 @@ void update_vsyscall(struct timespec *wa 14898@@ -80,6 +80,7 @@ void update_vsyscall(struct timespec *wa
14893 14899
14894 write_seqlock_irqsave(&vsyscall_gtod_data.lock, flags); 14900 write_seqlock_irqsave(&vsyscall_gtod_data.lock, flags);
@@ -14923,8 +14929,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/vsyscall_64.c linux-2.6.32.21/arch/x8
14923 #endif 14929 #endif
14924 14930
14925diff -urNp linux-2.6.32.21/arch/x86/kernel/x8664_ksyms_64.c linux-2.6.32.21/arch/x86/kernel/x8664_ksyms_64.c 14931diff -urNp linux-2.6.32.21/arch/x86/kernel/x8664_ksyms_64.c linux-2.6.32.21/arch/x86/kernel/x8664_ksyms_64.c
14926--- linux-2.6.32.21/arch/x86/kernel/x8664_ksyms_64.c 2010-08-26 19:42:20.000000000 -0400 14932--- linux-2.6.32.21/arch/x86/kernel/x8664_ksyms_64.c 2010-08-13 16:24:37.000000000 -0400
14927+++ linux-2.6.32.21/arch/x86/kernel/x8664_ksyms_64.c 2010-09-13 08:10:06.000000000 -0400 14933+++ linux-2.6.32.21/arch/x86/kernel/x8664_ksyms_64.c 2010-09-04 15:54:51.000000000 -0400
14928@@ -30,8 +30,6 @@ EXPORT_SYMBOL(__put_user_8); 14934@@ -30,8 +30,6 @@ EXPORT_SYMBOL(__put_user_8);
14929 14935
14930 EXPORT_SYMBOL(copy_user_generic); 14936 EXPORT_SYMBOL(copy_user_generic);
@@ -14935,8 +14941,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/x8664_ksyms_64.c linux-2.6.32.21/arch
14935 14941
14936 EXPORT_SYMBOL(copy_page); 14942 EXPORT_SYMBOL(copy_page);
14937diff -urNp linux-2.6.32.21/arch/x86/kernel/xsave.c linux-2.6.32.21/arch/x86/kernel/xsave.c 14943diff -urNp linux-2.6.32.21/arch/x86/kernel/xsave.c linux-2.6.32.21/arch/x86/kernel/xsave.c
14938--- linux-2.6.32.21/arch/x86/kernel/xsave.c 2010-08-26 19:42:20.000000000 -0400 14944--- linux-2.6.32.21/arch/x86/kernel/xsave.c 2010-08-13 16:24:37.000000000 -0400
14939+++ linux-2.6.32.21/arch/x86/kernel/xsave.c 2010-09-13 08:10:06.000000000 -0400 14945+++ linux-2.6.32.21/arch/x86/kernel/xsave.c 2010-09-04 15:54:51.000000000 -0400
14940@@ -54,7 +54,7 @@ int check_for_xstate(struct i387_fxsave_ 14946@@ -54,7 +54,7 @@ int check_for_xstate(struct i387_fxsave_
14941 fx_sw_user->xstate_size > fx_sw_user->extended_size) 14947 fx_sw_user->xstate_size > fx_sw_user->extended_size)
14942 return -1; 14948 return -1;
@@ -14965,8 +14971,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kernel/xsave.c linux-2.6.32.21/arch/x86/kern
14965 if (unlikely(err)) { 14971 if (unlikely(err)) {
14966 /* 14972 /*
14967diff -urNp linux-2.6.32.21/arch/x86/kvm/emulate.c linux-2.6.32.21/arch/x86/kvm/emulate.c 14973diff -urNp linux-2.6.32.21/arch/x86/kvm/emulate.c linux-2.6.32.21/arch/x86/kvm/emulate.c
14968--- linux-2.6.32.21/arch/x86/kvm/emulate.c 2010-08-26 19:42:20.000000000 -0400 14974--- linux-2.6.32.21/arch/x86/kvm/emulate.c 2010-08-13 16:24:37.000000000 -0400
14969+++ linux-2.6.32.21/arch/x86/kvm/emulate.c 2010-09-13 08:10:06.000000000 -0400 14975+++ linux-2.6.32.21/arch/x86/kvm/emulate.c 2010-09-04 15:54:51.000000000 -0400
14970@@ -81,8 +81,8 @@ 14976@@ -81,8 +81,8 @@
14971 #define Src2CL (1<<29) 14977 #define Src2CL (1<<29)
14972 #define Src2ImmByte (2<<29) 14978 #define Src2ImmByte (2<<29)
@@ -15004,8 +15010,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kvm/emulate.c linux-2.6.32.21/arch/x86/kvm/e
15004 case 1: \ 15010 case 1: \
15005 ____emulate_2op(_op,_src,_dst,_eflags,_bx,_by,"b"); \ 15011 ____emulate_2op(_op,_src,_dst,_eflags,_bx,_by,"b"); \
15006diff -urNp linux-2.6.32.21/arch/x86/kvm/lapic.c linux-2.6.32.21/arch/x86/kvm/lapic.c 15012diff -urNp linux-2.6.32.21/arch/x86/kvm/lapic.c linux-2.6.32.21/arch/x86/kvm/lapic.c
15007--- linux-2.6.32.21/arch/x86/kvm/lapic.c 2010-08-26 19:42:20.000000000 -0400 15013--- linux-2.6.32.21/arch/x86/kvm/lapic.c 2010-08-13 16:24:37.000000000 -0400
15008+++ linux-2.6.32.21/arch/x86/kvm/lapic.c 2010-09-13 08:10:06.000000000 -0400 15014+++ linux-2.6.32.21/arch/x86/kvm/lapic.c 2010-09-04 15:54:51.000000000 -0400
15009@@ -52,7 +52,7 @@ 15015@@ -52,7 +52,7 @@
15010 #define APIC_BUS_CYCLE_NS 1 15016 #define APIC_BUS_CYCLE_NS 1
15011 15017
@@ -15016,8 +15022,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kvm/lapic.c linux-2.6.32.21/arch/x86/kvm/lap
15016 #define APIC_LVT_NUM 6 15022 #define APIC_LVT_NUM 6
15017 /* 14 is the version for Xeon and Pentium 8.4.8*/ 15023 /* 14 is the version for Xeon and Pentium 8.4.8*/
15018diff -urNp linux-2.6.32.21/arch/x86/kvm/svm.c linux-2.6.32.21/arch/x86/kvm/svm.c 15024diff -urNp linux-2.6.32.21/arch/x86/kvm/svm.c linux-2.6.32.21/arch/x86/kvm/svm.c
15019--- linux-2.6.32.21/arch/x86/kvm/svm.c 2010-08-26 19:42:20.000000000 -0400 15025--- linux-2.6.32.21/arch/x86/kvm/svm.c 2010-08-13 16:24:37.000000000 -0400
15020+++ linux-2.6.32.21/arch/x86/kvm/svm.c 2010-09-13 08:10:06.000000000 -0400 15026+++ linux-2.6.32.21/arch/x86/kvm/svm.c 2010-09-04 15:54:51.000000000 -0400
15021@@ -2482,9 +2482,12 @@ static int handle_exit(struct kvm_run *k 15027@@ -2482,9 +2482,12 @@ static int handle_exit(struct kvm_run *k
15022 static void reload_tss(struct kvm_vcpu *vcpu) 15028 static void reload_tss(struct kvm_vcpu *vcpu)
15023 { 15029 {
@@ -15042,8 +15048,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kvm/svm.c linux-2.6.32.21/arch/x86/kvm/svm.c
15042 .disabled_by_bios = is_disabled, 15048 .disabled_by_bios = is_disabled,
15043 .hardware_setup = svm_hardware_setup, 15049 .hardware_setup = svm_hardware_setup,
15044diff -urNp linux-2.6.32.21/arch/x86/kvm/vmx.c linux-2.6.32.21/arch/x86/kvm/vmx.c 15050diff -urNp linux-2.6.32.21/arch/x86/kvm/vmx.c linux-2.6.32.21/arch/x86/kvm/vmx.c
15045--- linux-2.6.32.21/arch/x86/kvm/vmx.c 2010-08-26 19:42:20.000000000 -0400 15051--- linux-2.6.32.21/arch/x86/kvm/vmx.c 2010-08-13 16:24:37.000000000 -0400
15046+++ linux-2.6.32.21/arch/x86/kvm/vmx.c 2010-09-13 08:10:06.000000000 -0400 15052+++ linux-2.6.32.21/arch/x86/kvm/vmx.c 2010-09-04 15:54:51.000000000 -0400
15047@@ -569,7 +569,11 @@ static void reload_tss(void) 15053@@ -569,7 +569,11 @@ static void reload_tss(void)
15048 15054
15049 kvm_get_gdt(&gdt); 15055 kvm_get_gdt(&gdt);
@@ -15126,8 +15132,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kvm/vmx.c linux-2.6.32.21/arch/x86/kvm/vmx.c
15126 .disabled_by_bios = vmx_disabled_by_bios, 15132 .disabled_by_bios = vmx_disabled_by_bios,
15127 .hardware_setup = hardware_setup, 15133 .hardware_setup = hardware_setup,
15128diff -urNp linux-2.6.32.21/arch/x86/kvm/x86.c linux-2.6.32.21/arch/x86/kvm/x86.c 15134diff -urNp linux-2.6.32.21/arch/x86/kvm/x86.c linux-2.6.32.21/arch/x86/kvm/x86.c
15129--- linux-2.6.32.21/arch/x86/kvm/x86.c 2010-08-26 19:42:20.000000000 -0400 15135--- linux-2.6.32.21/arch/x86/kvm/x86.c 2010-08-13 16:24:37.000000000 -0400
15130+++ linux-2.6.32.21/arch/x86/kvm/x86.c 2010-09-13 08:10:06.000000000 -0400 15136+++ linux-2.6.32.21/arch/x86/kvm/x86.c 2010-09-04 15:54:51.000000000 -0400
15131@@ -81,45 +81,45 @@ static void update_cr8_intercept(struct 15137@@ -81,45 +81,45 @@ static void update_cr8_intercept(struct
15132 static int kvm_dev_ioctl_get_supported_cpuid(struct kvm_cpuid2 *cpuid, 15138 static int kvm_dev_ioctl_get_supported_cpuid(struct kvm_cpuid2 *cpuid,
15133 struct kvm_cpuid_entry2 __user *entries); 15139 struct kvm_cpuid_entry2 __user *entries);
@@ -15230,8 +15236,8 @@ diff -urNp linux-2.6.32.21/arch/x86/kvm/x86.c linux-2.6.32.21/arch/x86/kvm/x86.c
15230 if (kvm_x86_ops) { 15236 if (kvm_x86_ops) {
15231 printk(KERN_ERR "kvm: already loaded the other module\n"); 15237 printk(KERN_ERR "kvm: already loaded the other module\n");
15232diff -urNp linux-2.6.32.21/arch/x86/lib/checksum_32.S linux-2.6.32.21/arch/x86/lib/checksum_32.S 15238diff -urNp linux-2.6.32.21/arch/x86/lib/checksum_32.S linux-2.6.32.21/arch/x86/lib/checksum_32.S
15233--- linux-2.6.32.21/arch/x86/lib/checksum_32.S 2010-08-26 19:42:20.000000000 -0400 15239--- linux-2.6.32.21/arch/x86/lib/checksum_32.S 2010-08-13 16:24:37.000000000 -0400
15234+++ linux-2.6.32.21/arch/x86/lib/checksum_32.S 2010-09-13 08:10:06.000000000 -0400 15240+++ linux-2.6.32.21/arch/x86/lib/checksum_32.S 2010-09-04 15:54:51.000000000 -0400
15235@@ -28,7 +28,8 @@ 15241@@ -28,7 +28,8 @@
15236 #include <linux/linkage.h> 15242 #include <linux/linkage.h>
15237 #include <asm/dwarf2.h> 15243 #include <asm/dwarf2.h>
@@ -15478,8 +15484,8 @@ diff -urNp linux-2.6.32.21/arch/x86/lib/checksum_32.S linux-2.6.32.21/arch/x86/l
15478 #undef ROUND 15484 #undef ROUND
15479 #undef ROUND1 15485 #undef ROUND1
15480diff -urNp linux-2.6.32.21/arch/x86/lib/clear_page_64.S linux-2.6.32.21/arch/x86/lib/clear_page_64.S 15486diff -urNp linux-2.6.32.21/arch/x86/lib/clear_page_64.S linux-2.6.32.21/arch/x86/lib/clear_page_64.S
15481--- linux-2.6.32.21/arch/x86/lib/clear_page_64.S 2010-08-26 19:42:20.000000000 -0400 15487--- linux-2.6.32.21/arch/x86/lib/clear_page_64.S 2010-08-13 16:24:37.000000000 -0400
15482+++ linux-2.6.32.21/arch/x86/lib/clear_page_64.S 2010-09-13 08:10:06.000000000 -0400 15488+++ linux-2.6.32.21/arch/x86/lib/clear_page_64.S 2010-09-04 15:54:51.000000000 -0400
15483@@ -43,7 +43,7 @@ ENDPROC(clear_page) 15489@@ -43,7 +43,7 @@ ENDPROC(clear_page)
15484 15490
15485 #include <asm/cpufeature.h> 15491 #include <asm/cpufeature.h>
@@ -15490,8 +15496,8 @@ diff -urNp linux-2.6.32.21/arch/x86/lib/clear_page_64.S linux-2.6.32.21/arch/x86
15490 .byte (clear_page_c - clear_page) - (2f - 1b) /* offset */ 15496 .byte (clear_page_c - clear_page) - (2f - 1b) /* offset */
15491 2: 15497 2:
15492diff -urNp linux-2.6.32.21/arch/x86/lib/copy_page_64.S linux-2.6.32.21/arch/x86/lib/copy_page_64.S 15498diff -urNp linux-2.6.32.21/arch/x86/lib/copy_page_64.S linux-2.6.32.21/arch/x86/lib/copy_page_64.S
15493--- linux-2.6.32.21/arch/x86/lib/copy_page_64.S 2010-08-26 19:42:20.000000000 -0400 15499--- linux-2.6.32.21/arch/x86/lib/copy_page_64.S 2010-08-13 16:24:37.000000000 -0400
15494+++ linux-2.6.32.21/arch/x86/lib/copy_page_64.S 2010-09-13 08:10:06.000000000 -0400 15500+++ linux-2.6.32.21/arch/x86/lib/copy_page_64.S 2010-09-04 15:54:51.000000000 -0400
15495@@ -104,7 +104,7 @@ ENDPROC(copy_page) 15501@@ -104,7 +104,7 @@ ENDPROC(copy_page)
15496 15502
15497 #include <asm/cpufeature.h> 15503 #include <asm/cpufeature.h>
@@ -15502,8 +15508,8 @@ diff -urNp linux-2.6.32.21/arch/x86/lib/copy_page_64.S linux-2.6.32.21/arch/x86/
15502 .byte (copy_page_c - copy_page) - (2f - 1b) /* offset */ 15508 .byte (copy_page_c - copy_page) - (2f - 1b) /* offset */
15503 2: 15509 2:
15504diff -urNp linux-2.6.32.21/arch/x86/lib/copy_user_64.S linux-2.6.32.21/arch/x86/lib/copy_user_64.S 15510diff -urNp linux-2.6.32.21/arch/x86/lib/copy_user_64.S linux-2.6.32.21/arch/x86/lib/copy_user_64.S
15505--- linux-2.6.32.21/arch/x86/lib/copy_user_64.S 2010-08-26 19:42:20.000000000 -0400 15511--- linux-2.6.32.21/arch/x86/lib/copy_user_64.S 2010-08-13 16:24:37.000000000 -0400
15506+++ linux-2.6.32.21/arch/x86/lib/copy_user_64.S 2010-09-13 08:10:06.000000000 -0400 15512+++ linux-2.6.32.21/arch/x86/lib/copy_user_64.S 2010-09-04 15:54:51.000000000 -0400
15507@@ -15,13 +15,14 @@ 15513@@ -15,13 +15,14 @@
15508 #include <asm/asm-offsets.h> 15514 #include <asm/asm-offsets.h>
15509 #include <asm/thread_info.h> 15515 #include <asm/thread_info.h>
@@ -15579,8 +15585,8 @@ diff -urNp linux-2.6.32.21/arch/x86/lib/copy_user_64.S linux-2.6.32.21/arch/x86/
15579 xorl %eax,%eax 15585 xorl %eax,%eax
15580 rep 15586 rep
15581diff -urNp linux-2.6.32.21/arch/x86/lib/copy_user_nocache_64.S linux-2.6.32.21/arch/x86/lib/copy_user_nocache_64.S 15587diff -urNp linux-2.6.32.21/arch/x86/lib/copy_user_nocache_64.S linux-2.6.32.21/arch/x86/lib/copy_user_nocache_64.S
15582--- linux-2.6.32.21/arch/x86/lib/copy_user_nocache_64.S 2010-08-26 19:42:20.000000000 -0400 15588--- linux-2.6.32.21/arch/x86/lib/copy_user_nocache_64.S 2010-08-13 16:24:37.000000000 -0400
15583+++ linux-2.6.32.21/arch/x86/lib/copy_user_nocache_64.S 2010-09-13 08:10:06.000000000 -0400 15589+++ linux-2.6.32.21/arch/x86/lib/copy_user_nocache_64.S 2010-09-04 15:54:51.000000000 -0400
15584@@ -14,6 +14,7 @@ 15590@@ -14,6 +14,7 @@
15585 #include <asm/current.h> 15591 #include <asm/current.h>
15586 #include <asm/asm-offsets.h> 15592 #include <asm/asm-offsets.h>
@@ -15606,8 +15612,8 @@ diff -urNp linux-2.6.32.21/arch/x86/lib/copy_user_nocache_64.S linux-2.6.32.21/a
15606 jb 20f /* less then 8 bytes, go to byte copy loop */ 15612 jb 20f /* less then 8 bytes, go to byte copy loop */
15607 ALIGN_DESTINATION 15613 ALIGN_DESTINATION
15608diff -urNp linux-2.6.32.21/arch/x86/lib/csum-wrappers_64.c linux-2.6.32.21/arch/x86/lib/csum-wrappers_64.c 15614diff -urNp linux-2.6.32.21/arch/x86/lib/csum-wrappers_64.c linux-2.6.32.21/arch/x86/lib/csum-wrappers_64.c
15609--- linux-2.6.32.21/arch/x86/lib/csum-wrappers_64.c 2010-08-26 19:42:20.000000000 -0400 15615--- linux-2.6.32.21/arch/x86/lib/csum-wrappers_64.c 2010-08-13 16:24:37.000000000 -0400
15610+++ linux-2.6.32.21/arch/x86/lib/csum-wrappers_64.c 2010-09-13 08:10:06.000000000 -0400 15616+++ linux-2.6.32.21/arch/x86/lib/csum-wrappers_64.c 2010-09-04 15:54:51.000000000 -0400
15611@@ -52,6 +52,8 @@ csum_partial_copy_from_user(const void _ 15617@@ -52,6 +52,8 @@ csum_partial_copy_from_user(const void _
15612 len -= 2; 15618 len -= 2;
15613 } 15619 }
@@ -15627,8 +15633,8 @@ diff -urNp linux-2.6.32.21/arch/x86/lib/csum-wrappers_64.c linux-2.6.32.21/arch/
15627 len, isum, NULL, errp); 15633 len, isum, NULL, errp);
15628 } 15634 }
15629diff -urNp linux-2.6.32.21/arch/x86/lib/getuser.S linux-2.6.32.21/arch/x86/lib/getuser.S 15635diff -urNp linux-2.6.32.21/arch/x86/lib/getuser.S linux-2.6.32.21/arch/x86/lib/getuser.S
15630--- linux-2.6.32.21/arch/x86/lib/getuser.S 2010-08-26 19:42:20.000000000 -0400 15636--- linux-2.6.32.21/arch/x86/lib/getuser.S 2010-08-13 16:24:37.000000000 -0400
15631+++ linux-2.6.32.21/arch/x86/lib/getuser.S 2010-09-13 08:10:06.000000000 -0400 15637+++ linux-2.6.32.21/arch/x86/lib/getuser.S 2010-09-04 15:54:51.000000000 -0400
15632@@ -33,14 +33,38 @@ 15638@@ -33,14 +33,38 @@
15633 #include <asm/asm-offsets.h> 15639 #include <asm/asm-offsets.h>
15634 #include <asm/thread_info.h> 15640 #include <asm/thread_info.h>
@@ -15766,8 +15772,8 @@ diff -urNp linux-2.6.32.21/arch/x86/lib/getuser.S linux-2.6.32.21/arch/x86/lib/g
15766 mov $(-EFAULT),%_ASM_AX 15772 mov $(-EFAULT),%_ASM_AX
15767 ret 15773 ret
15768diff -urNp linux-2.6.32.21/arch/x86/lib/memcpy_64.S linux-2.6.32.21/arch/x86/lib/memcpy_64.S 15774diff -urNp linux-2.6.32.21/arch/x86/lib/memcpy_64.S linux-2.6.32.21/arch/x86/lib/memcpy_64.S
15769--- linux-2.6.32.21/arch/x86/lib/memcpy_64.S 2010-08-26 19:42:20.000000000 -0400 15775--- linux-2.6.32.21/arch/x86/lib/memcpy_64.S 2010-08-13 16:24:37.000000000 -0400
15770+++ linux-2.6.32.21/arch/x86/lib/memcpy_64.S 2010-09-13 08:10:06.000000000 -0400 15776+++ linux-2.6.32.21/arch/x86/lib/memcpy_64.S 2010-09-04 15:54:51.000000000 -0400
15771@@ -128,7 +128,7 @@ ENDPROC(__memcpy) 15777@@ -128,7 +128,7 @@ ENDPROC(__memcpy)
15772 * It is also a lot simpler. Use this when possible: 15778 * It is also a lot simpler. Use this when possible:
15773 */ 15779 */
@@ -15778,8 +15784,8 @@ diff -urNp linux-2.6.32.21/arch/x86/lib/memcpy_64.S linux-2.6.32.21/arch/x86/lib
15778 .byte (memcpy_c - memcpy) - (2f - 1b) /* offset */ 15784 .byte (memcpy_c - memcpy) - (2f - 1b) /* offset */
15779 2: 15785 2:
15780diff -urNp linux-2.6.32.21/arch/x86/lib/memset_64.S linux-2.6.32.21/arch/x86/lib/memset_64.S 15786diff -urNp linux-2.6.32.21/arch/x86/lib/memset_64.S linux-2.6.32.21/arch/x86/lib/memset_64.S
15781--- linux-2.6.32.21/arch/x86/lib/memset_64.S 2010-08-26 19:42:20.000000000 -0400 15787--- linux-2.6.32.21/arch/x86/lib/memset_64.S 2010-08-13 16:24:37.000000000 -0400
15782+++ linux-2.6.32.21/arch/x86/lib/memset_64.S 2010-09-13 08:10:06.000000000 -0400 15788+++ linux-2.6.32.21/arch/x86/lib/memset_64.S 2010-09-04 15:54:51.000000000 -0400
15783@@ -118,7 +118,7 @@ ENDPROC(__memset) 15789@@ -118,7 +118,7 @@ ENDPROC(__memset)
15784 15790
15785 #include <asm/cpufeature.h> 15791 #include <asm/cpufeature.h>
@@ -15790,8 +15796,8 @@ diff -urNp linux-2.6.32.21/arch/x86/lib/memset_64.S linux-2.6.32.21/arch/x86/lib
15790 .byte (memset_c - memset) - (2f - 1b) /* offset */ 15796 .byte (memset_c - memset) - (2f - 1b) /* offset */
15791 2: 15797 2:
15792diff -urNp linux-2.6.32.21/arch/x86/lib/mmx_32.c linux-2.6.32.21/arch/x86/lib/mmx_32.c 15798diff -urNp linux-2.6.32.21/arch/x86/lib/mmx_32.c linux-2.6.32.21/arch/x86/lib/mmx_32.c
15793--- linux-2.6.32.21/arch/x86/lib/mmx_32.c 2010-08-26 19:42:20.000000000 -0400 15799--- linux-2.6.32.21/arch/x86/lib/mmx_32.c 2010-08-13 16:24:37.000000000 -0400
15794+++ linux-2.6.32.21/arch/x86/lib/mmx_32.c 2010-09-13 08:10:06.000000000 -0400 15800+++ linux-2.6.32.21/arch/x86/lib/mmx_32.c 2010-09-04 15:54:51.000000000 -0400
15795@@ -29,6 +29,7 @@ void *_mmx_memcpy(void *to, const void * 15801@@ -29,6 +29,7 @@ void *_mmx_memcpy(void *to, const void *
15796 { 15802 {
15797 void *p; 15803 void *p;
@@ -16108,8 +16114,8 @@ diff -urNp linux-2.6.32.21/arch/x86/lib/mmx_32.c linux-2.6.32.21/arch/x86/lib/mm
16108 from += 64; 16114 from += 64;
16109 to += 64; 16115 to += 64;
16110diff -urNp linux-2.6.32.21/arch/x86/lib/putuser.S linux-2.6.32.21/arch/x86/lib/putuser.S 16116diff -urNp linux-2.6.32.21/arch/x86/lib/putuser.S linux-2.6.32.21/arch/x86/lib/putuser.S
16111--- linux-2.6.32.21/arch/x86/lib/putuser.S 2010-08-26 19:42:20.000000000 -0400 16117--- linux-2.6.32.21/arch/x86/lib/putuser.S 2010-08-13 16:24:37.000000000 -0400
16112+++ linux-2.6.32.21/arch/x86/lib/putuser.S 2010-09-13 08:10:06.000000000 -0400 16118+++ linux-2.6.32.21/arch/x86/lib/putuser.S 2010-09-04 15:54:51.000000000 -0400
16113@@ -15,7 +15,8 @@ 16119@@ -15,7 +15,8 @@
16114 #include <asm/thread_info.h> 16120 #include <asm/thread_info.h>
16115 #include <asm/errno.h> 16121 #include <asm/errno.h>
@@ -16291,8 +16297,8 @@ diff -urNp linux-2.6.32.21/arch/x86/lib/putuser.S linux-2.6.32.21/arch/x86/lib/p
16291 EXIT 16297 EXIT
16292 END(bad_put_user) 16298 END(bad_put_user)
16293diff -urNp linux-2.6.32.21/arch/x86/lib/usercopy_32.c linux-2.6.32.21/arch/x86/lib/usercopy_32.c 16299diff -urNp linux-2.6.32.21/arch/x86/lib/usercopy_32.c linux-2.6.32.21/arch/x86/lib/usercopy_32.c
16294--- linux-2.6.32.21/arch/x86/lib/usercopy_32.c 2010-08-26 19:42:20.000000000 -0400 16300--- linux-2.6.32.21/arch/x86/lib/usercopy_32.c 2010-08-13 16:24:37.000000000 -0400
16295+++ linux-2.6.32.21/arch/x86/lib/usercopy_32.c 2010-09-13 08:10:06.000000000 -0400 16301+++ linux-2.6.32.21/arch/x86/lib/usercopy_32.c 2010-09-04 15:54:51.000000000 -0400
16296@@ -36,31 +36,38 @@ static inline int __movsl_is_ok(unsigned 16302@@ -36,31 +36,38 @@ static inline int __movsl_is_ok(unsigned
16297 * Copy a null terminated string from userspace. 16303 * Copy a null terminated string from userspace.
16298 */ 16304 */
@@ -17262,8 +17268,8 @@ diff -urNp linux-2.6.32.21/arch/x86/lib/usercopy_32.c linux-2.6.32.21/arch/x86/l
17262+ 17268+
17263+EXPORT_SYMBOL(set_fs); 17269+EXPORT_SYMBOL(set_fs);
17264diff -urNp linux-2.6.32.21/arch/x86/lib/usercopy_64.c linux-2.6.32.21/arch/x86/lib/usercopy_64.c 17270diff -urNp linux-2.6.32.21/arch/x86/lib/usercopy_64.c linux-2.6.32.21/arch/x86/lib/usercopy_64.c
17265--- linux-2.6.32.21/arch/x86/lib/usercopy_64.c 2010-08-26 19:42:20.000000000 -0400 17271--- linux-2.6.32.21/arch/x86/lib/usercopy_64.c 2010-08-13 16:24:37.000000000 -0400
17266+++ linux-2.6.32.21/arch/x86/lib/usercopy_64.c 2010-09-13 08:10:06.000000000 -0400 17272+++ linux-2.6.32.21/arch/x86/lib/usercopy_64.c 2010-09-04 15:54:51.000000000 -0400
17267@@ -42,6 +42,8 @@ long 17273@@ -42,6 +42,8 @@ long
17268 __strncpy_from_user(char *dst, const char __user *src, long count) 17274 __strncpy_from_user(char *dst, const char __user *src, long count)
17269 { 17275 {
@@ -17300,9 +17306,25 @@ diff -urNp linux-2.6.32.21/arch/x86/lib/usercopy_64.c linux-2.6.32.21/arch/x86/l
17300 } 17306 }
17301 EXPORT_SYMBOL(copy_in_user); 17307 EXPORT_SYMBOL(copy_in_user);
17302 17308
17309diff -urNp linux-2.6.32.21/arch/x86/Makefile linux-2.6.32.21/arch/x86/Makefile
17310--- linux-2.6.32.21/arch/x86/Makefile 2010-08-13 16:24:37.000000000 -0400
17311+++ linux-2.6.32.21/arch/x86/Makefile 2010-09-04 15:54:51.000000000 -0400
17312@@ -189,3 +189,12 @@ define archhelp
17313 echo ' FDARGS="..." arguments for the booted kernel'
17314 echo ' FDINITRD=file initrd for the booted kernel'
17315 endef
17316+
17317+define OLD_LD
17318+
17319+*** ${VERSION}.${PATCHLEVEL} PaX kernels no longer build correctly with old versions of binutils.
17320+*** Please upgrade your binutils to 2.18 or newer
17321+endef
17322+
17323+archprepare:
17324+ $(if $(LDFLAGS_BUILD_ID),,$(error $(OLD_LD)))
17303diff -urNp linux-2.6.32.21/arch/x86/mm/extable.c linux-2.6.32.21/arch/x86/mm/extable.c 17325diff -urNp linux-2.6.32.21/arch/x86/mm/extable.c linux-2.6.32.21/arch/x86/mm/extable.c
17304--- linux-2.6.32.21/arch/x86/mm/extable.c 2010-08-26 19:42:20.000000000 -0400 17326--- linux-2.6.32.21/arch/x86/mm/extable.c 2010-08-13 16:24:37.000000000 -0400
17305+++ linux-2.6.32.21/arch/x86/mm/extable.c 2010-09-13 08:10:06.000000000 -0400 17327+++ linux-2.6.32.21/arch/x86/mm/extable.c 2010-09-04 15:54:51.000000000 -0400
17306@@ -1,14 +1,71 @@ 17328@@ -1,14 +1,71 @@
17307 #include <linux/module.h> 17329 #include <linux/module.h>
17308 #include <linux/spinlock.h> 17330 #include <linux/spinlock.h>
@@ -17377,8 +17399,8 @@ diff -urNp linux-2.6.32.21/arch/x86/mm/extable.c linux-2.6.32.21/arch/x86/mm/ext
17377 extern u32 pnp_bios_is_utter_crap; 17399 extern u32 pnp_bios_is_utter_crap;
17378 pnp_bios_is_utter_crap = 1; 17400 pnp_bios_is_utter_crap = 1;
17379diff -urNp linux-2.6.32.21/arch/x86/mm/fault.c linux-2.6.32.21/arch/x86/mm/fault.c 17401diff -urNp linux-2.6.32.21/arch/x86/mm/fault.c linux-2.6.32.21/arch/x86/mm/fault.c
17380--- linux-2.6.32.21/arch/x86/mm/fault.c 2010-08-26 19:42:20.000000000 -0400 17402--- linux-2.6.32.21/arch/x86/mm/fault.c 2010-08-13 16:24:37.000000000 -0400
17381+++ linux-2.6.32.21/arch/x86/mm/fault.c 2010-09-13 08:10:06.000000000 -0400 17403+++ linux-2.6.32.21/arch/x86/mm/fault.c 2010-09-04 15:54:51.000000000 -0400
17382@@ -11,10 +11,19 @@ 17404@@ -11,10 +11,19 @@
17383 #include <linux/kprobes.h> /* __kprobes, ... */ 17405 #include <linux/kprobes.h> /* __kprobes, ... */
17384 #include <linux/mmiotrace.h> /* kmmio_handler, ... */ 17406 #include <linux/mmiotrace.h> /* kmmio_handler, ... */
@@ -18047,8 +18069,8 @@ diff -urNp linux-2.6.32.21/arch/x86/mm/fault.c linux-2.6.32.21/arch/x86/mm/fault
18047+ return ret ? -EFAULT : 0; 18069+ return ret ? -EFAULT : 0;
18048+} 18070+}
18049diff -urNp linux-2.6.32.21/arch/x86/mm/gup.c linux-2.6.32.21/arch/x86/mm/gup.c 18071diff -urNp linux-2.6.32.21/arch/x86/mm/gup.c linux-2.6.32.21/arch/x86/mm/gup.c
18050--- linux-2.6.32.21/arch/x86/mm/gup.c 2010-08-26 19:42:20.000000000 -0400 18072--- linux-2.6.32.21/arch/x86/mm/gup.c 2010-08-13 16:24:37.000000000 -0400
18051+++ linux-2.6.32.21/arch/x86/mm/gup.c 2010-09-13 08:10:06.000000000 -0400 18073+++ linux-2.6.32.21/arch/x86/mm/gup.c 2010-09-04 15:54:51.000000000 -0400
18052@@ -237,7 +237,7 @@ int __get_user_pages_fast(unsigned long 18074@@ -237,7 +237,7 @@ int __get_user_pages_fast(unsigned long
18053 addr = start; 18075 addr = start;
18054 len = (unsigned long) nr_pages << PAGE_SHIFT; 18076 len = (unsigned long) nr_pages << PAGE_SHIFT;
@@ -18059,8 +18081,8 @@ diff -urNp linux-2.6.32.21/arch/x86/mm/gup.c linux-2.6.32.21/arch/x86/mm/gup.c
18059 return 0; 18081 return 0;
18060 18082
18061diff -urNp linux-2.6.32.21/arch/x86/mm/highmem_32.c linux-2.6.32.21/arch/x86/mm/highmem_32.c 18083diff -urNp linux-2.6.32.21/arch/x86/mm/highmem_32.c linux-2.6.32.21/arch/x86/mm/highmem_32.c
18062--- linux-2.6.32.21/arch/x86/mm/highmem_32.c 2010-08-26 19:42:20.000000000 -0400 18084--- linux-2.6.32.21/arch/x86/mm/highmem_32.c 2010-08-13 16:24:37.000000000 -0400
18063+++ linux-2.6.32.21/arch/x86/mm/highmem_32.c 2010-09-13 08:10:06.000000000 -0400 18085+++ linux-2.6.32.21/arch/x86/mm/highmem_32.c 2010-09-04 15:54:51.000000000 -0400
18064@@ -43,7 +43,10 @@ void *kmap_atomic_prot(struct page *page 18086@@ -43,7 +43,10 @@ void *kmap_atomic_prot(struct page *page
18065 idx = type + KM_TYPE_NR*smp_processor_id(); 18087 idx = type + KM_TYPE_NR*smp_processor_id();
18066 vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx); 18088 vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
@@ -18073,8 +18095,8 @@ diff -urNp linux-2.6.32.21/arch/x86/mm/highmem_32.c linux-2.6.32.21/arch/x86/mm/
18073 return (void *)vaddr; 18095 return (void *)vaddr;
18074 } 18096 }
18075diff -urNp linux-2.6.32.21/arch/x86/mm/hugetlbpage.c linux-2.6.32.21/arch/x86/mm/hugetlbpage.c 18097diff -urNp linux-2.6.32.21/arch/x86/mm/hugetlbpage.c linux-2.6.32.21/arch/x86/mm/hugetlbpage.c
18076--- linux-2.6.32.21/arch/x86/mm/hugetlbpage.c 2010-08-26 19:42:20.000000000 -0400 18098--- linux-2.6.32.21/arch/x86/mm/hugetlbpage.c 2010-08-13 16:24:37.000000000 -0400
18077+++ linux-2.6.32.21/arch/x86/mm/hugetlbpage.c 2010-09-13 08:10:06.000000000 -0400 18099+++ linux-2.6.32.21/arch/x86/mm/hugetlbpage.c 2010-09-04 15:54:51.000000000 -0400
18078@@ -267,13 +267,18 @@ static unsigned long hugetlb_get_unmappe 18100@@ -267,13 +267,18 @@ static unsigned long hugetlb_get_unmappe
18079 struct hstate *h = hstate_file(file); 18101 struct hstate *h = hstate_file(file);
18080 struct mm_struct *mm = current->mm; 18102 struct mm_struct *mm = current->mm;
@@ -18209,138 +18231,9 @@ diff -urNp linux-2.6.32.21/arch/x86/mm/hugetlbpage.c linux-2.6.32.21/arch/x86/mm
18209 (!vma || addr + len <= vma->vm_start)) 18231 (!vma || addr + len <= vma->vm_start))
18210 return addr; 18232 return addr;
18211 } 18233 }
18212diff -urNp linux-2.6.32.21/arch/x86/mm/init.c linux-2.6.32.21/arch/x86/mm/init.c
18213--- linux-2.6.32.21/arch/x86/mm/init.c 2010-08-26 19:42:20.000000000 -0400
18214+++ linux-2.6.32.21/arch/x86/mm/init.c 2010-09-13 08:10:22.000000000 -0400
18215@@ -69,11 +69,7 @@ static void __init find_early_table_spac
18216 * cause a hotspot and fill up ZONE_DMA. The page tables
18217 * need roughly 0.5KB per GB.
18218 */
18219-#ifdef CONFIG_X86_32
18220- start = 0x7000;
18221-#else
18222- start = 0x8000;
18223-#endif
18224+ start = 0x100000;
18225 e820_table_start = find_e820_area(start, max_pfn_mapped<<PAGE_SHIFT,
18226 tables, PAGE_SIZE);
18227 if (e820_table_start == -1UL)
18228@@ -147,7 +143,7 @@ unsigned long __init_refok init_memory_m
18229 #endif
18230
18231 set_nx();
18232- if (nx_enabled)
18233+ if (nx_enabled && cpu_has_nx)
18234 printk(KERN_INFO "NX (Execute Disable) protection: active\n");
18235
18236 /* Enable PSE if available */
18237@@ -331,7 +327,13 @@ unsigned long __init_refok init_memory_m
18238 */
18239 int devmem_is_allowed(unsigned long pagenr)
18240 {
18241- if (pagenr <= 256)
18242+ if (!pagenr)
18243+ return 1;
18244+#ifdef CONFIG_VM86
18245+ if (pagenr < (ISA_START_ADDRESS >> PAGE_SHIFT))
18246+ return 1;
18247+#endif
18248+ if ((ISA_START_ADDRESS >> PAGE_SHIFT) <= pagenr && pagenr < (ISA_END_ADDRESS >> PAGE_SHIFT))
18249 return 1;
18250 if (iomem_is_exclusive(pagenr << PAGE_SHIFT))
18251 return 0;
18252@@ -379,6 +381,88 @@ void free_init_pages(char *what, unsigne
18253
18254 void free_initmem(void)
18255 {
18256+
18257+#ifdef CONFIG_PAX_KERNEXEC
18258+#ifdef CONFIG_X86_32
18259+ /* PaX: limit KERNEL_CS to actual size */
18260+ unsigned long addr, limit;
18261+ struct desc_struct d;
18262+ int cpu;
18263+
18264+ limit = paravirt_enabled() ? ktva_ktla(0xffffffff) : (unsigned long)&_etext;
18265+ limit = (limit - 1UL) >> PAGE_SHIFT;
18266+
18267+ memset(__LOAD_PHYSICAL_ADDR + PAGE_OFFSET, POISON_FREE_INITMEM, PAGE_SIZE);
18268+ for (cpu = 0; cpu < NR_CPUS; cpu++) {
18269+ pack_descriptor(&d, get_desc_base(&get_cpu_gdt_table(cpu)[GDT_ENTRY_KERNEL_CS]), limit, 0x9B, 0xC);
18270+ write_gdt_entry(get_cpu_gdt_table(cpu), GDT_ENTRY_KERNEL_CS, &d, DESCTYPE_S);
18271+ }
18272+
18273+ /* PaX: make KERNEL_CS read-only */
18274+ addr = PFN_ALIGN(ktla_ktva((unsigned long)&_text));
18275+ if (!paravirt_enabled())
18276+ set_memory_ro(addr, (PFN_ALIGN(_sdata) - addr) >> PAGE_SHIFT);
18277+/*
18278+ for (addr = ktla_ktva((unsigned long)&_text); addr < (unsigned long)&_sdata; addr += PMD_SIZE) {
18279+ pgd = pgd_offset_k(addr);
18280+ pud = pud_offset(pgd, addr);
18281+ pmd = pmd_offset(pud, addr);
18282+ set_pmd(pmd, __pmd(pmd_val(*pmd) & ~_PAGE_RW));
18283+ }
18284+*/
18285+#ifdef CONFIG_X86_PAE
18286+ set_memory_nx(PFN_ALIGN(__init_begin), (PFN_ALIGN(__init_end) - PFN_ALIGN(__init_begin)) >> PAGE_SHIFT);
18287+/*
18288+ for (addr = (unsigned long)&__init_begin; addr < (unsigned long)&__init_end; addr += PMD_SIZE) {
18289+ pgd = pgd_offset_k(addr);
18290+ pud = pud_offset(pgd, addr);
18291+ pmd = pmd_offset(pud, addr);
18292+ set_pmd(pmd, __pmd(pmd_val(*pmd) | (_PAGE_NX & __supported_pte_mask)));
18293+ }
18294+*/
18295+#endif
18296+
18297+#ifdef CONFIG_MODULES
18298+ set_memory_4k((unsigned long)MODULES_EXEC_VADDR, (MODULES_EXEC_END - MODULES_EXEC_VADDR) >> PAGE_SHIFT);
18299+#endif
18300+
18301+#else
18302+ pgd_t *pgd;
18303+ pud_t *pud;
18304+ pmd_t *pmd;
18305+ unsigned long addr, end;
18306+
18307+ /* PaX: make kernel code/rodata read-only, rest non-executable */
18308+ for (addr = __START_KERNEL_map; addr < __START_KERNEL_map + KERNEL_IMAGE_SIZE; addr += PMD_SIZE) {
18309+ pgd = pgd_offset_k(addr);
18310+ pud = pud_offset(pgd, addr);
18311+ pmd = pmd_offset(pud, addr);
18312+ if (!pmd_present(*pmd))
18313+ continue;
18314+ if ((unsigned long)_text <= addr && addr < (unsigned long)_sdata)
18315+ set_pmd(pmd, __pmd(pmd_val(*pmd) & ~_PAGE_RW));
18316+ else
18317+ set_pmd(pmd, __pmd(pmd_val(*pmd) | (_PAGE_NX & __supported_pte_mask)));
18318+ }
18319+
18320+ addr = (unsigned long)__va(__pa(__START_KERNEL_map));
18321+ end = addr + KERNEL_IMAGE_SIZE;
18322+ for (; addr < end; addr += PMD_SIZE) {
18323+ pgd = pgd_offset_k(addr);
18324+ pud = pud_offset(pgd, addr);
18325+ pmd = pmd_offset(pud, addr);
18326+ if (!pmd_present(*pmd))
18327+ continue;
18328+ if ((unsigned long)__va(__pa(_text)) <= addr && addr < (unsigned long)__va(__pa(_sdata)))
18329+ set_pmd(pmd, __pmd(pmd_val(*pmd) & ~_PAGE_RW));
18330+ else
18331+ set_pmd(pmd, __pmd(pmd_val(*pmd) | (_PAGE_NX & __supported_pte_mask)));
18332+ }
18333+#endif
18334+
18335+ flush_tlb_all();
18336+#endif
18337+
18338 free_init_pages("unused kernel memory",
18339 (unsigned long)(&__init_begin),
18340 (unsigned long)(&__init_end));
18341diff -urNp linux-2.6.32.21/arch/x86/mm/init_32.c linux-2.6.32.21/arch/x86/mm/init_32.c 18234diff -urNp linux-2.6.32.21/arch/x86/mm/init_32.c linux-2.6.32.21/arch/x86/mm/init_32.c
18342--- linux-2.6.32.21/arch/x86/mm/init_32.c 2010-08-26 19:42:20.000000000 -0400 18235--- linux-2.6.32.21/arch/x86/mm/init_32.c 2010-08-13 16:24:37.000000000 -0400
18343+++ linux-2.6.32.21/arch/x86/mm/init_32.c 2010-09-13 08:10:06.000000000 -0400 18236+++ linux-2.6.32.21/arch/x86/mm/init_32.c 2010-09-04 15:54:51.000000000 -0400
18344@@ -72,36 +72,6 @@ static __init void *alloc_low_page(void) 18237@@ -72,36 +72,6 @@ static __init void *alloc_low_page(void)
18345 } 18238 }
18346 18239
@@ -18645,8 +18538,8 @@ diff -urNp linux-2.6.32.21/arch/x86/mm/init_32.c linux-2.6.32.21/arch/x86/mm/ini
18645 printk(KERN_INFO "Write protecting the kernel text: %luk\n", 18538 printk(KERN_INFO "Write protecting the kernel text: %luk\n",
18646 size >> 10); 18539 size >> 10);
18647diff -urNp linux-2.6.32.21/arch/x86/mm/init_64.c linux-2.6.32.21/arch/x86/mm/init_64.c 18540diff -urNp linux-2.6.32.21/arch/x86/mm/init_64.c linux-2.6.32.21/arch/x86/mm/init_64.c
18648--- linux-2.6.32.21/arch/x86/mm/init_64.c 2010-08-26 19:42:20.000000000 -0400 18541--- linux-2.6.32.21/arch/x86/mm/init_64.c 2010-08-13 16:24:37.000000000 -0400
18649+++ linux-2.6.32.21/arch/x86/mm/init_64.c 2010-09-13 08:10:06.000000000 -0400 18542+++ linux-2.6.32.21/arch/x86/mm/init_64.c 2010-09-04 15:54:51.000000000 -0400
18650@@ -164,7 +164,9 @@ void set_pte_vaddr_pud(pud_t *pud_page, 18543@@ -164,7 +164,9 @@ void set_pte_vaddr_pud(pud_t *pud_page,
18651 pmd = fill_pmd(pud, vaddr); 18544 pmd = fill_pmd(pud, vaddr);
18652 pte = fill_pte(pmd, vaddr); 18545 pte = fill_pte(pmd, vaddr);
@@ -18707,9 +18600,129 @@ diff -urNp linux-2.6.32.21/arch/x86/mm/init_64.c linux-2.6.32.21/arch/x86/mm/ini
18707 return "[vdso]"; 18600 return "[vdso]";
18708 if (vma == &gate_vma) 18601 if (vma == &gate_vma)
18709 return "[vsyscall]"; 18602 return "[vsyscall]";
18603diff -urNp linux-2.6.32.21/arch/x86/mm/init.c linux-2.6.32.21/arch/x86/mm/init.c
18604--- linux-2.6.32.21/arch/x86/mm/init.c 2010-08-13 16:24:37.000000000 -0400
18605+++ linux-2.6.32.21/arch/x86/mm/init.c 2010-09-04 15:54:51.000000000 -0400
18606@@ -69,11 +69,7 @@ static void __init find_early_table_spac
18607 * cause a hotspot and fill up ZONE_DMA. The page tables
18608 * need roughly 0.5KB per GB.
18609 */
18610-#ifdef CONFIG_X86_32
18611- start = 0x7000;
18612-#else
18613- start = 0x8000;
18614-#endif
18615+ start = 0x100000;
18616 e820_table_start = find_e820_area(start, max_pfn_mapped<<PAGE_SHIFT,
18617 tables, PAGE_SIZE);
18618 if (e820_table_start == -1UL)
18619@@ -331,7 +327,13 @@ unsigned long __init_refok init_memory_m
18620 */
18621 int devmem_is_allowed(unsigned long pagenr)
18622 {
18623- if (pagenr <= 256)
18624+ if (!pagenr)
18625+ return 1;
18626+#ifdef CONFIG_VM86
18627+ if (pagenr < (ISA_START_ADDRESS >> PAGE_SHIFT))
18628+ return 1;
18629+#endif
18630+ if ((ISA_START_ADDRESS >> PAGE_SHIFT) <= pagenr && pagenr < (ISA_END_ADDRESS >> PAGE_SHIFT))
18631 return 1;
18632 if (iomem_is_exclusive(pagenr << PAGE_SHIFT))
18633 return 0;
18634@@ -379,6 +381,88 @@ void free_init_pages(char *what, unsigne
18635
18636 void free_initmem(void)
18637 {
18638+
18639+#ifdef CONFIG_PAX_KERNEXEC
18640+#ifdef CONFIG_X86_32
18641+ /* PaX: limit KERNEL_CS to actual size */
18642+ unsigned long addr, limit;
18643+ struct desc_struct d;
18644+ int cpu;
18645+
18646+ limit = paravirt_enabled() ? ktva_ktla(0xffffffff) : (unsigned long)&_etext;
18647+ limit = (limit - 1UL) >> PAGE_SHIFT;
18648+
18649+ memset(__LOAD_PHYSICAL_ADDR + PAGE_OFFSET, POISON_FREE_INITMEM, PAGE_SIZE);
18650+ for (cpu = 0; cpu < NR_CPUS; cpu++) {
18651+ pack_descriptor(&d, get_desc_base(&get_cpu_gdt_table(cpu)[GDT_ENTRY_KERNEL_CS]), limit, 0x9B, 0xC);
18652+ write_gdt_entry(get_cpu_gdt_table(cpu), GDT_ENTRY_KERNEL_CS, &d, DESCTYPE_S);
18653+ }
18654+
18655+ /* PaX: make KERNEL_CS read-only */
18656+ addr = PFN_ALIGN(ktla_ktva((unsigned long)&_text));
18657+ if (!paravirt_enabled())
18658+ set_memory_ro(addr, (PFN_ALIGN(_sdata) - addr) >> PAGE_SHIFT);
18659+/*
18660+ for (addr = ktla_ktva((unsigned long)&_text); addr < (unsigned long)&_sdata; addr += PMD_SIZE) {
18661+ pgd = pgd_offset_k(addr);
18662+ pud = pud_offset(pgd, addr);
18663+ pmd = pmd_offset(pud, addr);
18664+ set_pmd(pmd, __pmd(pmd_val(*pmd) & ~_PAGE_RW));
18665+ }
18666+*/
18667+#ifdef CONFIG_X86_PAE
18668+ set_memory_nx(PFN_ALIGN(__init_begin), (PFN_ALIGN(__init_end) - PFN_ALIGN(__init_begin)) >> PAGE_SHIFT);
18669+/*
18670+ for (addr = (unsigned long)&__init_begin; addr < (unsigned long)&__init_end; addr += PMD_SIZE) {
18671+ pgd = pgd_offset_k(addr);
18672+ pud = pud_offset(pgd, addr);
18673+ pmd = pmd_offset(pud, addr);
18674+ set_pmd(pmd, __pmd(pmd_val(*pmd) | (_PAGE_NX & __supported_pte_mask)));
18675+ }
18676+*/
18677+#endif
18678+
18679+#ifdef CONFIG_MODULES
18680+ set_memory_4k((unsigned long)MODULES_EXEC_VADDR, (MODULES_EXEC_END - MODULES_EXEC_VADDR) >> PAGE_SHIFT);
18681+#endif
18682+
18683+#else
18684+ pgd_t *pgd;
18685+ pud_t *pud;
18686+ pmd_t *pmd;
18687+ unsigned long addr, end;
18688+
18689+ /* PaX: make kernel code/rodata read-only, rest non-executable */
18690+ for (addr = __START_KERNEL_map; addr < __START_KERNEL_map + KERNEL_IMAGE_SIZE; addr += PMD_SIZE) {
18691+ pgd = pgd_offset_k(addr);
18692+ pud = pud_offset(pgd, addr);
18693+ pmd = pmd_offset(pud, addr);
18694+ if (!pmd_present(*pmd))
18695+ continue;
18696+ if ((unsigned long)_text <= addr && addr < (unsigned long)_sdata)
18697+ set_pmd(pmd, __pmd(pmd_val(*pmd) & ~_PAGE_RW));
18698+ else
18699+ set_pmd(pmd, __pmd(pmd_val(*pmd) | (_PAGE_NX & __supported_pte_mask)));
18700+ }
18701+
18702+ addr = (unsigned long)__va(__pa(__START_KERNEL_map));
18703+ end = addr + KERNEL_IMAGE_SIZE;
18704+ for (; addr < end; addr += PMD_SIZE) {
18705+ pgd = pgd_offset_k(addr);
18706+ pud = pud_offset(pgd, addr);
18707+ pmd = pmd_offset(pud, addr);
18708+ if (!pmd_present(*pmd))
18709+ continue;
18710+ if ((unsigned long)__va(__pa(_text)) <= addr && addr < (unsigned long)__va(__pa(_sdata)))
18711+ set_pmd(pmd, __pmd(pmd_val(*pmd) & ~_PAGE_RW));
18712+ else
18713+ set_pmd(pmd, __pmd(pmd_val(*pmd) | (_PAGE_NX & __supported_pte_mask)));
18714+ }
18715+#endif
18716+
18717+ flush_tlb_all();
18718+#endif
18719+
18720 free_init_pages("unused kernel memory",
18721 (unsigned long)(&__init_begin),
18722 (unsigned long)(&__init_end));
18710diff -urNp linux-2.6.32.21/arch/x86/mm/iomap_32.c linux-2.6.32.21/arch/x86/mm/iomap_32.c 18723diff -urNp linux-2.6.32.21/arch/x86/mm/iomap_32.c linux-2.6.32.21/arch/x86/mm/iomap_32.c
18711--- linux-2.6.32.21/arch/x86/mm/iomap_32.c 2010-08-26 19:42:20.000000000 -0400 18724--- linux-2.6.32.21/arch/x86/mm/iomap_32.c 2010-08-13 16:24:37.000000000 -0400
18712+++ linux-2.6.32.21/arch/x86/mm/iomap_32.c 2010-09-13 08:10:07.000000000 -0400 18725+++ linux-2.6.32.21/arch/x86/mm/iomap_32.c 2010-09-04 15:54:51.000000000 -0400
18713@@ -65,7 +65,11 @@ void *kmap_atomic_prot_pfn(unsigned long 18726@@ -65,7 +65,11 @@ void *kmap_atomic_prot_pfn(unsigned long
18714 debug_kmap_atomic(type); 18727 debug_kmap_atomic(type);
18715 idx = type + KM_TYPE_NR * smp_processor_id(); 18728 idx = type + KM_TYPE_NR * smp_processor_id();
@@ -18723,8 +18736,8 @@ diff -urNp linux-2.6.32.21/arch/x86/mm/iomap_32.c linux-2.6.32.21/arch/x86/mm/io
18723 18736
18724 return (void *)vaddr; 18737 return (void *)vaddr;
18725diff -urNp linux-2.6.32.21/arch/x86/mm/ioremap.c linux-2.6.32.21/arch/x86/mm/ioremap.c 18738diff -urNp linux-2.6.32.21/arch/x86/mm/ioremap.c linux-2.6.32.21/arch/x86/mm/ioremap.c
18726--- linux-2.6.32.21/arch/x86/mm/ioremap.c 2010-08-26 19:42:20.000000000 -0400 18739--- linux-2.6.32.21/arch/x86/mm/ioremap.c 2010-08-13 16:24:37.000000000 -0400
18727+++ linux-2.6.32.21/arch/x86/mm/ioremap.c 2010-09-13 08:10:07.000000000 -0400 18740+++ linux-2.6.32.21/arch/x86/mm/ioremap.c 2010-09-04 15:54:51.000000000 -0400
18728@@ -41,8 +41,8 @@ int page_is_ram(unsigned long pagenr) 18741@@ -41,8 +41,8 @@ int page_is_ram(unsigned long pagenr)
18729 * Second special case: Some BIOSen report the PC BIOS 18742 * Second special case: Some BIOSen report the PC BIOS
18730 * area (640->1Mb) as ram even though it is not. 18743 * area (640->1Mb) as ram even though it is not.
@@ -18772,8 +18785,8 @@ diff -urNp linux-2.6.32.21/arch/x86/mm/ioremap.c linux-2.6.32.21/arch/x86/mm/ior
18772 /* 18785 /*
18773 * The boot-ioremap range spans multiple pmds, for which 18786 * The boot-ioremap range spans multiple pmds, for which
18774diff -urNp linux-2.6.32.21/arch/x86/mm/kmemcheck/kmemcheck.c linux-2.6.32.21/arch/x86/mm/kmemcheck/kmemcheck.c 18787diff -urNp linux-2.6.32.21/arch/x86/mm/kmemcheck/kmemcheck.c linux-2.6.32.21/arch/x86/mm/kmemcheck/kmemcheck.c
18775--- linux-2.6.32.21/arch/x86/mm/kmemcheck/kmemcheck.c 2010-08-26 19:42:20.000000000 -0400 18788--- linux-2.6.32.21/arch/x86/mm/kmemcheck/kmemcheck.c 2010-08-13 16:24:37.000000000 -0400
18776+++ linux-2.6.32.21/arch/x86/mm/kmemcheck/kmemcheck.c 2010-09-13 08:10:07.000000000 -0400 18789+++ linux-2.6.32.21/arch/x86/mm/kmemcheck/kmemcheck.c 2010-09-04 15:54:51.000000000 -0400
18777@@ -622,9 +622,9 @@ bool kmemcheck_fault(struct pt_regs *reg 18790@@ -622,9 +622,9 @@ bool kmemcheck_fault(struct pt_regs *reg
18778 * memory (e.g. tracked pages)? For now, we need this to avoid 18791 * memory (e.g. tracked pages)? For now, we need this to avoid
18779 * invoking kmemcheck for PnP BIOS calls. 18792 * invoking kmemcheck for PnP BIOS calls.
@@ -18787,8 +18800,8 @@ diff -urNp linux-2.6.32.21/arch/x86/mm/kmemcheck/kmemcheck.c linux-2.6.32.21/arc
18787 18800
18788 pte = kmemcheck_pte_lookup(address); 18801 pte = kmemcheck_pte_lookup(address);
18789diff -urNp linux-2.6.32.21/arch/x86/mm/mmap.c linux-2.6.32.21/arch/x86/mm/mmap.c 18802diff -urNp linux-2.6.32.21/arch/x86/mm/mmap.c linux-2.6.32.21/arch/x86/mm/mmap.c
18790--- linux-2.6.32.21/arch/x86/mm/mmap.c 2010-08-26 19:42:20.000000000 -0400 18803--- linux-2.6.32.21/arch/x86/mm/mmap.c 2010-08-13 16:24:37.000000000 -0400
18791+++ linux-2.6.32.21/arch/x86/mm/mmap.c 2010-09-13 08:10:07.000000000 -0400 18804+++ linux-2.6.32.21/arch/x86/mm/mmap.c 2010-09-04 15:54:51.000000000 -0400
18792@@ -49,7 +49,7 @@ static unsigned int stack_maxrandom_size 18805@@ -49,7 +49,7 @@ static unsigned int stack_maxrandom_size
18793 * Leave an at least ~128 MB hole with possible stack randomization. 18806 * Leave an at least ~128 MB hole with possible stack randomization.
18794 */ 18807 */
@@ -18871,8 +18884,8 @@ diff -urNp linux-2.6.32.21/arch/x86/mm/mmap.c linux-2.6.32.21/arch/x86/mm/mmap.c
18871 mm->unmap_area = arch_unmap_area_topdown; 18884 mm->unmap_area = arch_unmap_area_topdown;
18872 } 18885 }
18873diff -urNp linux-2.6.32.21/arch/x86/mm/numa_32.c linux-2.6.32.21/arch/x86/mm/numa_32.c 18886diff -urNp linux-2.6.32.21/arch/x86/mm/numa_32.c linux-2.6.32.21/arch/x86/mm/numa_32.c
18874--- linux-2.6.32.21/arch/x86/mm/numa_32.c 2010-08-26 19:42:20.000000000 -0400 18887--- linux-2.6.32.21/arch/x86/mm/numa_32.c 2010-08-13 16:24:37.000000000 -0400
18875+++ linux-2.6.32.21/arch/x86/mm/numa_32.c 2010-09-13 08:10:07.000000000 -0400 18888+++ linux-2.6.32.21/arch/x86/mm/numa_32.c 2010-09-04 15:54:51.000000000 -0400
18876@@ -98,7 +98,6 @@ unsigned long node_memmap_size_bytes(int 18889@@ -98,7 +98,6 @@ unsigned long node_memmap_size_bytes(int
18877 } 18890 }
18878 #endif 18891 #endif
@@ -18881,21 +18894,9 @@ diff -urNp linux-2.6.32.21/arch/x86/mm/numa_32.c linux-2.6.32.21/arch/x86/mm/num
18881 extern unsigned long highend_pfn, highstart_pfn; 18894 extern unsigned long highend_pfn, highstart_pfn;
18882 18895
18883 #define LARGE_PAGE_BYTES (PTRS_PER_PTE * PAGE_SIZE) 18896 #define LARGE_PAGE_BYTES (PTRS_PER_PTE * PAGE_SIZE)
18884diff -urNp linux-2.6.32.21/arch/x86/mm/pageattr-test.c linux-2.6.32.21/arch/x86/mm/pageattr-test.c
18885--- linux-2.6.32.21/arch/x86/mm/pageattr-test.c 2010-08-26 19:42:20.000000000 -0400
18886+++ linux-2.6.32.21/arch/x86/mm/pageattr-test.c 2010-09-13 08:10:07.000000000 -0400
18887@@ -36,7 +36,7 @@ enum {
18888
18889 static int pte_testbit(pte_t pte)
18890 {
18891- return pte_flags(pte) & _PAGE_UNUSED1;
18892+ return pte_flags(pte) & _PAGE_CPA_TEST;
18893 }
18894
18895 struct split_state {
18896diff -urNp linux-2.6.32.21/arch/x86/mm/pageattr.c linux-2.6.32.21/arch/x86/mm/pageattr.c 18897diff -urNp linux-2.6.32.21/arch/x86/mm/pageattr.c linux-2.6.32.21/arch/x86/mm/pageattr.c
18897--- linux-2.6.32.21/arch/x86/mm/pageattr.c 2010-08-26 19:42:20.000000000 -0400 18898--- linux-2.6.32.21/arch/x86/mm/pageattr.c 2010-08-13 16:24:37.000000000 -0400
18898+++ linux-2.6.32.21/arch/x86/mm/pageattr.c 2010-09-13 08:10:07.000000000 -0400 18899+++ linux-2.6.32.21/arch/x86/mm/pageattr.c 2010-09-04 15:54:51.000000000 -0400
18899@@ -261,16 +261,17 @@ static inline pgprot_t static_protection 18900@@ -261,16 +261,17 @@ static inline pgprot_t static_protection
18900 * PCI BIOS based config access (CONFIG_PCI_GOBIOS) support. 18901 * PCI BIOS based config access (CONFIG_PCI_GOBIOS) support.
18901 */ 18902 */
@@ -18972,9 +18973,21 @@ diff -urNp linux-2.6.32.21/arch/x86/mm/pageattr.c linux-2.6.32.21/arch/x86/mm/pa
18972 } 18973 }
18973 18974
18974 static int 18975 static int
18976diff -urNp linux-2.6.32.21/arch/x86/mm/pageattr-test.c linux-2.6.32.21/arch/x86/mm/pageattr-test.c
18977--- linux-2.6.32.21/arch/x86/mm/pageattr-test.c 2010-08-13 16:24:37.000000000 -0400
18978+++ linux-2.6.32.21/arch/x86/mm/pageattr-test.c 2010-09-04 15:54:51.000000000 -0400
18979@@ -36,7 +36,7 @@ enum {
18980
18981 static int pte_testbit(pte_t pte)
18982 {
18983- return pte_flags(pte) & _PAGE_UNUSED1;
18984+ return pte_flags(pte) & _PAGE_CPA_TEST;
18985 }
18986
18987 struct split_state {
18975diff -urNp linux-2.6.32.21/arch/x86/mm/pat.c linux-2.6.32.21/arch/x86/mm/pat.c 18988diff -urNp linux-2.6.32.21/arch/x86/mm/pat.c linux-2.6.32.21/arch/x86/mm/pat.c
18976--- linux-2.6.32.21/arch/x86/mm/pat.c 2010-08-26 19:42:20.000000000 -0400 18989--- linux-2.6.32.21/arch/x86/mm/pat.c 2010-08-13 16:24:37.000000000 -0400
18977+++ linux-2.6.32.21/arch/x86/mm/pat.c 2010-09-13 08:10:07.000000000 -0400 18990+++ linux-2.6.32.21/arch/x86/mm/pat.c 2010-09-04 15:54:51.000000000 -0400
18978@@ -258,7 +258,7 @@ chk_conflict(struct memtype *new, struct 18991@@ -258,7 +258,7 @@ chk_conflict(struct memtype *new, struct
18979 18992
18980 conflict: 18993 conflict:
@@ -19022,9 +19035,26 @@ diff -urNp linux-2.6.32.21/arch/x86/mm/pat.c linux-2.6.32.21/arch/x86/mm/pat.c
19022 cattr_name(want_flags), 19035 cattr_name(want_flags),
19023 (unsigned long long)paddr, 19036 (unsigned long long)paddr,
19024 (unsigned long long)(paddr + size), 19037 (unsigned long long)(paddr + size),
19038diff -urNp linux-2.6.32.21/arch/x86/mm/pgtable_32.c linux-2.6.32.21/arch/x86/mm/pgtable_32.c
19039--- linux-2.6.32.21/arch/x86/mm/pgtable_32.c 2010-08-13 16:24:37.000000000 -0400
19040+++ linux-2.6.32.21/arch/x86/mm/pgtable_32.c 2010-09-04 15:54:51.000000000 -0400
19041@@ -49,10 +49,13 @@ void set_pte_vaddr(unsigned long vaddr,
19042 return;
19043 }
19044 pte = pte_offset_kernel(pmd, vaddr);
19045+
19046+ pax_open_kernel();
19047 if (pte_val(pteval))
19048 set_pte_at(&init_mm, vaddr, pte, pteval);
19049 else
19050 pte_clear(&init_mm, vaddr, pte);
19051+ pax_close_kernel();
19052
19053 /*
19054 * It's enough to flush this one mapping.
19025diff -urNp linux-2.6.32.21/arch/x86/mm/pgtable.c linux-2.6.32.21/arch/x86/mm/pgtable.c 19055diff -urNp linux-2.6.32.21/arch/x86/mm/pgtable.c linux-2.6.32.21/arch/x86/mm/pgtable.c
19026--- linux-2.6.32.21/arch/x86/mm/pgtable.c 2010-08-26 19:42:20.000000000 -0400 19056--- linux-2.6.32.21/arch/x86/mm/pgtable.c 2010-08-13 16:24:37.000000000 -0400
19027+++ linux-2.6.32.21/arch/x86/mm/pgtable.c 2010-09-13 08:10:07.000000000 -0400 19057+++ linux-2.6.32.21/arch/x86/mm/pgtable.c 2010-09-04 15:54:51.000000000 -0400
19028@@ -83,8 +83,59 @@ static inline void pgd_list_del(pgd_t *p 19058@@ -83,8 +83,59 @@ static inline void pgd_list_del(pgd_t *p
19029 list_del(&page->lru); 19059 list_del(&page->lru);
19030 } 19060 }
@@ -19278,26 +19308,9 @@ diff -urNp linux-2.6.32.21/arch/x86/mm/pgtable.c linux-2.6.32.21/arch/x86/mm/pgt
19278 pgd_dtor(pgd); 19308 pgd_dtor(pgd);
19279 paravirt_pgd_free(mm, pgd); 19309 paravirt_pgd_free(mm, pgd);
19280 free_page((unsigned long)pgd); 19310 free_page((unsigned long)pgd);
19281diff -urNp linux-2.6.32.21/arch/x86/mm/pgtable_32.c linux-2.6.32.21/arch/x86/mm/pgtable_32.c
19282--- linux-2.6.32.21/arch/x86/mm/pgtable_32.c 2010-08-26 19:42:20.000000000 -0400
19283+++ linux-2.6.32.21/arch/x86/mm/pgtable_32.c 2010-09-13 08:10:07.000000000 -0400
19284@@ -49,10 +49,13 @@ void set_pte_vaddr(unsigned long vaddr,
19285 return;
19286 }
19287 pte = pte_offset_kernel(pmd, vaddr);
19288+
19289+ pax_open_kernel();
19290 if (pte_val(pteval))
19291 set_pte_at(&init_mm, vaddr, pte, pteval);
19292 else
19293 pte_clear(&init_mm, vaddr, pte);
19294+ pax_close_kernel();
19295
19296 /*
19297 * It's enough to flush this one mapping.
19298diff -urNp linux-2.6.32.21/arch/x86/mm/setup_nx.c linux-2.6.32.21/arch/x86/mm/setup_nx.c 19311diff -urNp linux-2.6.32.21/arch/x86/mm/setup_nx.c linux-2.6.32.21/arch/x86/mm/setup_nx.c
19299--- linux-2.6.32.21/arch/x86/mm/setup_nx.c 2010-08-26 19:42:20.000000000 -0400 19312--- linux-2.6.32.21/arch/x86/mm/setup_nx.c 2010-08-13 16:24:37.000000000 -0400
19300+++ linux-2.6.32.21/arch/x86/mm/setup_nx.c 2010-09-13 08:10:07.000000000 -0400 19313+++ linux-2.6.32.21/arch/x86/mm/setup_nx.c 2010-09-04 15:54:51.000000000 -0400
19301@@ -4,11 +4,10 @@ 19314@@ -4,11 +4,10 @@
19302 19315
19303 #include <asm/pgtable.h> 19316 #include <asm/pgtable.h>
@@ -19364,8 +19377,8 @@ diff -urNp linux-2.6.32.21/arch/x86/mm/setup_nx.c linux-2.6.32.21/arch/x86/mm/se
19364 } 19377 }
19365 #endif 19378 #endif
19366diff -urNp linux-2.6.32.21/arch/x86/mm/tlb.c linux-2.6.32.21/arch/x86/mm/tlb.c 19379diff -urNp linux-2.6.32.21/arch/x86/mm/tlb.c linux-2.6.32.21/arch/x86/mm/tlb.c
19367--- linux-2.6.32.21/arch/x86/mm/tlb.c 2010-08-26 19:42:20.000000000 -0400 19380--- linux-2.6.32.21/arch/x86/mm/tlb.c 2010-08-13 16:24:37.000000000 -0400
19368+++ linux-2.6.32.21/arch/x86/mm/tlb.c 2010-09-13 08:10:07.000000000 -0400 19381+++ linux-2.6.32.21/arch/x86/mm/tlb.c 2010-09-04 15:54:51.000000000 -0400
19369@@ -12,7 +12,7 @@ 19382@@ -12,7 +12,7 @@
19370 #include <asm/uv/uv.h> 19383 #include <asm/uv/uv.h>
19371 19384
@@ -19388,8 +19401,8 @@ diff -urNp linux-2.6.32.21/arch/x86/mm/tlb.c linux-2.6.32.21/arch/x86/mm/tlb.c
19388 EXPORT_SYMBOL_GPL(leave_mm); 19401 EXPORT_SYMBOL_GPL(leave_mm);
19389 19402
19390diff -urNp linux-2.6.32.21/arch/x86/oprofile/backtrace.c linux-2.6.32.21/arch/x86/oprofile/backtrace.c 19403diff -urNp linux-2.6.32.21/arch/x86/oprofile/backtrace.c linux-2.6.32.21/arch/x86/oprofile/backtrace.c
19391--- linux-2.6.32.21/arch/x86/oprofile/backtrace.c 2010-08-26 19:42:20.000000000 -0400 19404--- linux-2.6.32.21/arch/x86/oprofile/backtrace.c 2010-08-13 16:24:37.000000000 -0400
19392+++ linux-2.6.32.21/arch/x86/oprofile/backtrace.c 2010-09-13 08:10:07.000000000 -0400 19405+++ linux-2.6.32.21/arch/x86/oprofile/backtrace.c 2010-09-04 15:54:51.000000000 -0400
19393@@ -57,7 +57,7 @@ static struct frame_head *dump_user_back 19406@@ -57,7 +57,7 @@ static struct frame_head *dump_user_back
19394 struct frame_head bufhead[2]; 19407 struct frame_head bufhead[2];
19395 19408
@@ -19409,8 +19422,8 @@ diff -urNp linux-2.6.32.21/arch/x86/oprofile/backtrace.c linux-2.6.32.21/arch/x8
19409 if (depth) 19422 if (depth)
19410 dump_trace(NULL, regs, (unsigned long *)stack, 0, 19423 dump_trace(NULL, regs, (unsigned long *)stack, 0,
19411diff -urNp linux-2.6.32.21/arch/x86/oprofile/op_model_p4.c linux-2.6.32.21/arch/x86/oprofile/op_model_p4.c 19424diff -urNp linux-2.6.32.21/arch/x86/oprofile/op_model_p4.c linux-2.6.32.21/arch/x86/oprofile/op_model_p4.c
19412--- linux-2.6.32.21/arch/x86/oprofile/op_model_p4.c 2010-08-26 19:42:20.000000000 -0400 19425--- linux-2.6.32.21/arch/x86/oprofile/op_model_p4.c 2010-08-13 16:24:37.000000000 -0400
19413+++ linux-2.6.32.21/arch/x86/oprofile/op_model_p4.c 2010-09-13 08:10:07.000000000 -0400 19426+++ linux-2.6.32.21/arch/x86/oprofile/op_model_p4.c 2010-09-04 15:54:51.000000000 -0400
19414@@ -50,7 +50,7 @@ static inline void setup_num_counters(vo 19427@@ -50,7 +50,7 @@ static inline void setup_num_counters(vo
19415 #endif 19428 #endif
19416 } 19429 }
@@ -19421,8 +19434,8 @@ diff -urNp linux-2.6.32.21/arch/x86/oprofile/op_model_p4.c linux-2.6.32.21/arch/
19421 #ifdef CONFIG_SMP 19434 #ifdef CONFIG_SMP
19422 return smp_num_siblings == 2 ? 2 : 1; 19435 return smp_num_siblings == 2 ? 2 : 1;
19423diff -urNp linux-2.6.32.21/arch/x86/pci/common.c linux-2.6.32.21/arch/x86/pci/common.c 19436diff -urNp linux-2.6.32.21/arch/x86/pci/common.c linux-2.6.32.21/arch/x86/pci/common.c
19424--- linux-2.6.32.21/arch/x86/pci/common.c 2010-08-26 19:42:20.000000000 -0400 19437--- linux-2.6.32.21/arch/x86/pci/common.c 2010-08-13 16:24:37.000000000 -0400
19425+++ linux-2.6.32.21/arch/x86/pci/common.c 2010-09-13 08:10:07.000000000 -0400 19438+++ linux-2.6.32.21/arch/x86/pci/common.c 2010-09-04 15:54:51.000000000 -0400
19426@@ -31,8 +31,8 @@ int noioapicreroute = 1; 19439@@ -31,8 +31,8 @@ int noioapicreroute = 1;
19427 int pcibios_last_bus = -1; 19440 int pcibios_last_bus = -1;
19428 unsigned long pirq_table_addr; 19441 unsigned long pirq_table_addr;
@@ -19444,8 +19457,8 @@ diff -urNp linux-2.6.32.21/arch/x86/pci/common.c linux-2.6.32.21/arch/x86/pci/co
19444 19457
19445 void __init dmi_check_pciprobe(void) 19458 void __init dmi_check_pciprobe(void)
19446diff -urNp linux-2.6.32.21/arch/x86/pci/direct.c linux-2.6.32.21/arch/x86/pci/direct.c 19459diff -urNp linux-2.6.32.21/arch/x86/pci/direct.c linux-2.6.32.21/arch/x86/pci/direct.c
19447--- linux-2.6.32.21/arch/x86/pci/direct.c 2010-08-26 19:42:20.000000000 -0400 19460--- linux-2.6.32.21/arch/x86/pci/direct.c 2010-08-13 16:24:37.000000000 -0400
19448+++ linux-2.6.32.21/arch/x86/pci/direct.c 2010-09-13 08:10:07.000000000 -0400 19461+++ linux-2.6.32.21/arch/x86/pci/direct.c 2010-09-04 15:54:51.000000000 -0400
19449@@ -79,7 +79,7 @@ static int pci_conf1_write(unsigned int 19462@@ -79,7 +79,7 @@ static int pci_conf1_write(unsigned int
19450 19463
19451 #undef PCI_CONF1_ADDRESS 19464 #undef PCI_CONF1_ADDRESS
@@ -19474,8 +19487,8 @@ diff -urNp linux-2.6.32.21/arch/x86/pci/direct.c linux-2.6.32.21/arch/x86/pci/di
19474 u32 x = 0; 19487 u32 x = 0;
19475 int year, devfn; 19488 int year, devfn;
19476diff -urNp linux-2.6.32.21/arch/x86/pci/fixup.c linux-2.6.32.21/arch/x86/pci/fixup.c 19489diff -urNp linux-2.6.32.21/arch/x86/pci/fixup.c linux-2.6.32.21/arch/x86/pci/fixup.c
19477--- linux-2.6.32.21/arch/x86/pci/fixup.c 2010-08-26 19:42:20.000000000 -0400 19490--- linux-2.6.32.21/arch/x86/pci/fixup.c 2010-08-13 16:24:37.000000000 -0400
19478+++ linux-2.6.32.21/arch/x86/pci/fixup.c 2010-09-13 08:10:07.000000000 -0400 19491+++ linux-2.6.32.21/arch/x86/pci/fixup.c 2010-09-04 15:54:51.000000000 -0400
19479@@ -364,7 +364,7 @@ static const struct dmi_system_id __devi 19492@@ -364,7 +364,7 @@ static const struct dmi_system_id __devi
19480 DMI_MATCH(DMI_PRODUCT_NAME, "MS-6702E"), 19493 DMI_MATCH(DMI_PRODUCT_NAME, "MS-6702E"),
19481 }, 19494 },
@@ -19495,8 +19508,8 @@ diff -urNp linux-2.6.32.21/arch/x86/pci/fixup.c linux-2.6.32.21/arch/x86/pci/fix
19495 19508
19496 static void __devinit pci_pre_fixup_toshiba_ohci1394(struct pci_dev *dev) 19509 static void __devinit pci_pre_fixup_toshiba_ohci1394(struct pci_dev *dev)
19497diff -urNp linux-2.6.32.21/arch/x86/pci/irq.c linux-2.6.32.21/arch/x86/pci/irq.c 19510diff -urNp linux-2.6.32.21/arch/x86/pci/irq.c linux-2.6.32.21/arch/x86/pci/irq.c
19498--- linux-2.6.32.21/arch/x86/pci/irq.c 2010-08-26 19:42:20.000000000 -0400 19511--- linux-2.6.32.21/arch/x86/pci/irq.c 2010-08-13 16:24:37.000000000 -0400
19499+++ linux-2.6.32.21/arch/x86/pci/irq.c 2010-09-13 08:10:07.000000000 -0400 19512+++ linux-2.6.32.21/arch/x86/pci/irq.c 2010-09-04 15:54:51.000000000 -0400
19500@@ -543,7 +543,7 @@ static __init int intel_router_probe(str 19513@@ -543,7 +543,7 @@ static __init int intel_router_probe(str
19501 static struct pci_device_id __initdata pirq_440gx[] = { 19514 static struct pci_device_id __initdata pirq_440gx[] = {
19502 { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82443GX_0) }, 19515 { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82443GX_0) },
@@ -19516,8 +19529,8 @@ diff -urNp linux-2.6.32.21/arch/x86/pci/irq.c linux-2.6.32.21/arch/x86/pci/irq.c
19516 19529
19517 int __init pcibios_irq_init(void) 19530 int __init pcibios_irq_init(void)
19518diff -urNp linux-2.6.32.21/arch/x86/pci/mmconfig_32.c linux-2.6.32.21/arch/x86/pci/mmconfig_32.c 19531diff -urNp linux-2.6.32.21/arch/x86/pci/mmconfig_32.c linux-2.6.32.21/arch/x86/pci/mmconfig_32.c
19519--- linux-2.6.32.21/arch/x86/pci/mmconfig_32.c 2010-08-26 19:42:20.000000000 -0400 19532--- linux-2.6.32.21/arch/x86/pci/mmconfig_32.c 2010-08-13 16:24:37.000000000 -0400
19520+++ linux-2.6.32.21/arch/x86/pci/mmconfig_32.c 2010-09-13 08:10:07.000000000 -0400 19533+++ linux-2.6.32.21/arch/x86/pci/mmconfig_32.c 2010-09-04 15:54:51.000000000 -0400
19521@@ -125,7 +125,7 @@ static int pci_mmcfg_write(unsigned int 19534@@ -125,7 +125,7 @@ static int pci_mmcfg_write(unsigned int
19522 return 0; 19535 return 0;
19523 } 19536 }
@@ -19528,8 +19541,8 @@ diff -urNp linux-2.6.32.21/arch/x86/pci/mmconfig_32.c linux-2.6.32.21/arch/x86/p
19528 .write = pci_mmcfg_write, 19541 .write = pci_mmcfg_write,
19529 }; 19542 };
19530diff -urNp linux-2.6.32.21/arch/x86/pci/mmconfig_64.c linux-2.6.32.21/arch/x86/pci/mmconfig_64.c 19543diff -urNp linux-2.6.32.21/arch/x86/pci/mmconfig_64.c linux-2.6.32.21/arch/x86/pci/mmconfig_64.c
19531--- linux-2.6.32.21/arch/x86/pci/mmconfig_64.c 2010-08-26 19:42:20.000000000 -0400 19544--- linux-2.6.32.21/arch/x86/pci/mmconfig_64.c 2010-08-13 16:24:37.000000000 -0400
19532+++ linux-2.6.32.21/arch/x86/pci/mmconfig_64.c 2010-09-13 08:10:07.000000000 -0400 19545+++ linux-2.6.32.21/arch/x86/pci/mmconfig_64.c 2010-09-04 15:54:51.000000000 -0400
19533@@ -104,7 +104,7 @@ static int pci_mmcfg_write(unsigned int 19546@@ -104,7 +104,7 @@ static int pci_mmcfg_write(unsigned int
19534 return 0; 19547 return 0;
19535 } 19548 }
@@ -19540,8 +19553,8 @@ diff -urNp linux-2.6.32.21/arch/x86/pci/mmconfig_64.c linux-2.6.32.21/arch/x86/p
19540 .write = pci_mmcfg_write, 19553 .write = pci_mmcfg_write,
19541 }; 19554 };
19542diff -urNp linux-2.6.32.21/arch/x86/pci/numaq_32.c linux-2.6.32.21/arch/x86/pci/numaq_32.c 19555diff -urNp linux-2.6.32.21/arch/x86/pci/numaq_32.c linux-2.6.32.21/arch/x86/pci/numaq_32.c
19543--- linux-2.6.32.21/arch/x86/pci/numaq_32.c 2010-08-26 19:42:20.000000000 -0400 19556--- linux-2.6.32.21/arch/x86/pci/numaq_32.c 2010-08-13 16:24:37.000000000 -0400
19544+++ linux-2.6.32.21/arch/x86/pci/numaq_32.c 2010-09-13 08:10:07.000000000 -0400 19557+++ linux-2.6.32.21/arch/x86/pci/numaq_32.c 2010-09-04 15:54:51.000000000 -0400
19545@@ -112,7 +112,7 @@ static int pci_conf1_mq_write(unsigned i 19558@@ -112,7 +112,7 @@ static int pci_conf1_mq_write(unsigned i
19546 19559
19547 #undef PCI_CONF1_MQ_ADDRESS 19560 #undef PCI_CONF1_MQ_ADDRESS
@@ -19552,8 +19565,8 @@ diff -urNp linux-2.6.32.21/arch/x86/pci/numaq_32.c linux-2.6.32.21/arch/x86/pci/
19552 .write = pci_conf1_mq_write 19565 .write = pci_conf1_mq_write
19553 }; 19566 };
19554diff -urNp linux-2.6.32.21/arch/x86/pci/olpc.c linux-2.6.32.21/arch/x86/pci/olpc.c 19567diff -urNp linux-2.6.32.21/arch/x86/pci/olpc.c linux-2.6.32.21/arch/x86/pci/olpc.c
19555--- linux-2.6.32.21/arch/x86/pci/olpc.c 2010-08-26 19:42:20.000000000 -0400 19568--- linux-2.6.32.21/arch/x86/pci/olpc.c 2010-08-13 16:24:37.000000000 -0400
19556+++ linux-2.6.32.21/arch/x86/pci/olpc.c 2010-09-13 08:10:07.000000000 -0400 19569+++ linux-2.6.32.21/arch/x86/pci/olpc.c 2010-09-04 15:54:51.000000000 -0400
19557@@ -297,7 +297,7 @@ static int pci_olpc_write(unsigned int s 19570@@ -297,7 +297,7 @@ static int pci_olpc_write(unsigned int s
19558 return 0; 19571 return 0;
19559 } 19572 }
@@ -19564,8 +19577,8 @@ diff -urNp linux-2.6.32.21/arch/x86/pci/olpc.c linux-2.6.32.21/arch/x86/pci/olpc
19564 .write = pci_olpc_write, 19577 .write = pci_olpc_write,
19565 }; 19578 };
19566diff -urNp linux-2.6.32.21/arch/x86/pci/pcbios.c linux-2.6.32.21/arch/x86/pci/pcbios.c 19579diff -urNp linux-2.6.32.21/arch/x86/pci/pcbios.c linux-2.6.32.21/arch/x86/pci/pcbios.c
19567--- linux-2.6.32.21/arch/x86/pci/pcbios.c 2010-08-26 19:42:20.000000000 -0400 19580--- linux-2.6.32.21/arch/x86/pci/pcbios.c 2010-08-13 16:24:37.000000000 -0400
19568+++ linux-2.6.32.21/arch/x86/pci/pcbios.c 2010-09-13 08:10:07.000000000 -0400 19581+++ linux-2.6.32.21/arch/x86/pci/pcbios.c 2010-09-04 15:54:51.000000000 -0400
19569@@ -56,50 +56,93 @@ union bios32 { 19582@@ -56,50 +56,93 @@ union bios32 {
19570 static struct { 19583 static struct {
19571 unsigned long address; 19584 unsigned long address;
@@ -19889,8 +19902,8 @@ diff -urNp linux-2.6.32.21/arch/x86/pci/pcbios.c linux-2.6.32.21/arch/x86/pci/pc
19889 } 19902 }
19890 EXPORT_SYMBOL(pcibios_set_irq_routing); 19903 EXPORT_SYMBOL(pcibios_set_irq_routing);
19891diff -urNp linux-2.6.32.21/arch/x86/power/cpu.c linux-2.6.32.21/arch/x86/power/cpu.c 19904diff -urNp linux-2.6.32.21/arch/x86/power/cpu.c linux-2.6.32.21/arch/x86/power/cpu.c
19892--- linux-2.6.32.21/arch/x86/power/cpu.c 2010-08-26 19:42:20.000000000 -0400 19905--- linux-2.6.32.21/arch/x86/power/cpu.c 2010-08-13 16:24:37.000000000 -0400
19893+++ linux-2.6.32.21/arch/x86/power/cpu.c 2010-09-13 08:10:07.000000000 -0400 19906+++ linux-2.6.32.21/arch/x86/power/cpu.c 2010-09-04 15:54:51.000000000 -0400
19894@@ -128,7 +128,7 @@ static void do_fpu_end(void) 19907@@ -128,7 +128,7 @@ static void do_fpu_end(void)
19895 static void fix_processor_context(void) 19908 static void fix_processor_context(void)
19896 { 19909 {
@@ -19911,8 +19924,8 @@ diff -urNp linux-2.6.32.21/arch/x86/power/cpu.c linux-2.6.32.21/arch/x86/power/c
19911 syscall_init(); /* This sets MSR_*STAR and related */ 19924 syscall_init(); /* This sets MSR_*STAR and related */
19912 #endif 19925 #endif
19913diff -urNp linux-2.6.32.21/arch/x86/vdso/Makefile linux-2.6.32.21/arch/x86/vdso/Makefile 19926diff -urNp linux-2.6.32.21/arch/x86/vdso/Makefile linux-2.6.32.21/arch/x86/vdso/Makefile
19914--- linux-2.6.32.21/arch/x86/vdso/Makefile 2010-08-26 19:42:20.000000000 -0400 19927--- linux-2.6.32.21/arch/x86/vdso/Makefile 2010-08-13 16:24:37.000000000 -0400
19915+++ linux-2.6.32.21/arch/x86/vdso/Makefile 2010-09-13 08:10:07.000000000 -0400 19928+++ linux-2.6.32.21/arch/x86/vdso/Makefile 2010-09-04 15:54:51.000000000 -0400
19916@@ -122,7 +122,7 @@ quiet_cmd_vdso = VDSO $@ 19929@@ -122,7 +122,7 @@ quiet_cmd_vdso = VDSO $@
19917 $(VDSO_LDFLAGS) $(VDSO_LDFLAGS_$(filter %.lds,$(^F))) \ 19930 $(VDSO_LDFLAGS) $(VDSO_LDFLAGS_$(filter %.lds,$(^F))) \
19918 -Wl,-T,$(filter %.lds,$^) $(filter %.o,$^) 19931 -Wl,-T,$(filter %.lds,$^) $(filter %.o,$^)
@@ -19923,8 +19936,8 @@ diff -urNp linux-2.6.32.21/arch/x86/vdso/Makefile linux-2.6.32.21/arch/x86/vdso/
19923 19936
19924 # 19937 #
19925diff -urNp linux-2.6.32.21/arch/x86/vdso/vclock_gettime.c linux-2.6.32.21/arch/x86/vdso/vclock_gettime.c 19938diff -urNp linux-2.6.32.21/arch/x86/vdso/vclock_gettime.c linux-2.6.32.21/arch/x86/vdso/vclock_gettime.c
19926--- linux-2.6.32.21/arch/x86/vdso/vclock_gettime.c 2010-08-26 19:42:20.000000000 -0400 19939--- linux-2.6.32.21/arch/x86/vdso/vclock_gettime.c 2010-08-13 16:24:37.000000000 -0400
19927+++ linux-2.6.32.21/arch/x86/vdso/vclock_gettime.c 2010-09-13 08:10:07.000000000 -0400 19940+++ linux-2.6.32.21/arch/x86/vdso/vclock_gettime.c 2010-09-04 15:54:51.000000000 -0400
19928@@ -22,24 +22,48 @@ 19941@@ -22,24 +22,48 @@
19929 #include <asm/hpet.h> 19942 #include <asm/hpet.h>
19930 #include <asm/unistd.h> 19943 #include <asm/unistd.h>
@@ -20023,22 +20036,9 @@ diff -urNp linux-2.6.32.21/arch/x86/vdso/vclock_gettime.c linux-2.6.32.21/arch/x
20023 } 20036 }
20024 int gettimeofday(struct timeval *, struct timezone *) 20037 int gettimeofday(struct timeval *, struct timezone *)
20025 __attribute__((weak, alias("__vdso_gettimeofday"))); 20038 __attribute__((weak, alias("__vdso_gettimeofday")));
20026diff -urNp linux-2.6.32.21/arch/x86/vdso/vdso.lds.S linux-2.6.32.21/arch/x86/vdso/vdso.lds.S
20027--- linux-2.6.32.21/arch/x86/vdso/vdso.lds.S 2010-08-26 19:42:20.000000000 -0400
20028+++ linux-2.6.32.21/arch/x86/vdso/vdso.lds.S 2010-09-13 08:10:07.000000000 -0400
20029@@ -35,3 +35,9 @@ VDSO64_PRELINK = VDSO_PRELINK;
20030 #define VEXTERN(x) VDSO64_ ## x = vdso_ ## x;
20031 #include "vextern.h"
20032 #undef VEXTERN
20033+
20034+#define VEXTERN(x) VDSO64_ ## x = __vdso_ ## x;
20035+VEXTERN(fallback_gettimeofday)
20036+VEXTERN(fallback_time)
20037+VEXTERN(getcpu)
20038+#undef VEXTERN
20039diff -urNp linux-2.6.32.21/arch/x86/vdso/vdso32-setup.c linux-2.6.32.21/arch/x86/vdso/vdso32-setup.c 20039diff -urNp linux-2.6.32.21/arch/x86/vdso/vdso32-setup.c linux-2.6.32.21/arch/x86/vdso/vdso32-setup.c
20040--- linux-2.6.32.21/arch/x86/vdso/vdso32-setup.c 2010-08-26 19:42:20.000000000 -0400 20040--- linux-2.6.32.21/arch/x86/vdso/vdso32-setup.c 2010-08-13 16:24:37.000000000 -0400
20041+++ linux-2.6.32.21/arch/x86/vdso/vdso32-setup.c 2010-09-13 08:10:07.000000000 -0400 20041+++ linux-2.6.32.21/arch/x86/vdso/vdso32-setup.c 2010-09-04 15:54:51.000000000 -0400
20042@@ -25,6 +25,7 @@ 20042@@ -25,6 +25,7 @@
20043 #include <asm/tlbflush.h> 20043 #include <asm/tlbflush.h>
20044 #include <asm/vdso.h> 20044 #include <asm/vdso.h>
@@ -20139,9 +20139,22 @@ diff -urNp linux-2.6.32.21/arch/x86/vdso/vdso32-setup.c linux-2.6.32.21/arch/x86
20139 return &gate_vma; 20139 return &gate_vma;
20140 return NULL; 20140 return NULL;
20141 } 20141 }
20142diff -urNp linux-2.6.32.21/arch/x86/vdso/vdso.lds.S linux-2.6.32.21/arch/x86/vdso/vdso.lds.S
20143--- linux-2.6.32.21/arch/x86/vdso/vdso.lds.S 2010-08-13 16:24:37.000000000 -0400
20144+++ linux-2.6.32.21/arch/x86/vdso/vdso.lds.S 2010-09-04 15:54:51.000000000 -0400
20145@@ -35,3 +35,9 @@ VDSO64_PRELINK = VDSO_PRELINK;
20146 #define VEXTERN(x) VDSO64_ ## x = vdso_ ## x;
20147 #include "vextern.h"
20148 #undef VEXTERN
20149+
20150+#define VEXTERN(x) VDSO64_ ## x = __vdso_ ## x;
20151+VEXTERN(fallback_gettimeofday)
20152+VEXTERN(fallback_time)
20153+VEXTERN(getcpu)
20154+#undef VEXTERN
20142diff -urNp linux-2.6.32.21/arch/x86/vdso/vextern.h linux-2.6.32.21/arch/x86/vdso/vextern.h 20155diff -urNp linux-2.6.32.21/arch/x86/vdso/vextern.h linux-2.6.32.21/arch/x86/vdso/vextern.h
20143--- linux-2.6.32.21/arch/x86/vdso/vextern.h 2010-08-26 19:42:20.000000000 -0400 20156--- linux-2.6.32.21/arch/x86/vdso/vextern.h 2010-08-13 16:24:37.000000000 -0400
20144+++ linux-2.6.32.21/arch/x86/vdso/vextern.h 2010-09-13 08:10:07.000000000 -0400 20157+++ linux-2.6.32.21/arch/x86/vdso/vextern.h 2010-09-04 15:54:51.000000000 -0400
20145@@ -11,6 +11,5 @@ 20158@@ -11,6 +11,5 @@
20146 put into vextern.h and be referenced as a pointer with vdso prefix. 20159 put into vextern.h and be referenced as a pointer with vdso prefix.
20147 The main kernel later fills in the values. */ 20160 The main kernel later fills in the values. */
@@ -20150,8 +20163,8 @@ diff -urNp linux-2.6.32.21/arch/x86/vdso/vextern.h linux-2.6.32.21/arch/x86/vdso
20150 VEXTERN(vgetcpu_mode) 20163 VEXTERN(vgetcpu_mode)
20151 VEXTERN(vsyscall_gtod_data) 20164 VEXTERN(vsyscall_gtod_data)
20152diff -urNp linux-2.6.32.21/arch/x86/vdso/vma.c linux-2.6.32.21/arch/x86/vdso/vma.c 20165diff -urNp linux-2.6.32.21/arch/x86/vdso/vma.c linux-2.6.32.21/arch/x86/vdso/vma.c
20153--- linux-2.6.32.21/arch/x86/vdso/vma.c 2010-08-26 19:42:20.000000000 -0400 20166--- linux-2.6.32.21/arch/x86/vdso/vma.c 2010-08-13 16:24:37.000000000 -0400
20154+++ linux-2.6.32.21/arch/x86/vdso/vma.c 2010-09-13 08:10:07.000000000 -0400 20167+++ linux-2.6.32.21/arch/x86/vdso/vma.c 2010-09-04 15:54:51.000000000 -0400
20155@@ -57,7 +57,7 @@ static int __init init_vdso_vars(void) 20168@@ -57,7 +57,7 @@ static int __init init_vdso_vars(void)
20156 if (!vbase) 20169 if (!vbase)
20157 goto oom; 20170 goto oom;
@@ -20199,8 +20212,8 @@ diff -urNp linux-2.6.32.21/arch/x86/vdso/vma.c linux-2.6.32.21/arch/x86/vdso/vma
20199-} 20212-}
20200-__setup("vdso=", vdso_setup); 20213-__setup("vdso=", vdso_setup);
20201diff -urNp linux-2.6.32.21/arch/x86/xen/enlighten.c linux-2.6.32.21/arch/x86/xen/enlighten.c 20214diff -urNp linux-2.6.32.21/arch/x86/xen/enlighten.c linux-2.6.32.21/arch/x86/xen/enlighten.c
20202--- linux-2.6.32.21/arch/x86/xen/enlighten.c 2010-08-26 19:42:20.000000000 -0400 20215--- linux-2.6.32.21/arch/x86/xen/enlighten.c 2010-08-13 16:24:37.000000000 -0400
20203+++ linux-2.6.32.21/arch/x86/xen/enlighten.c 2010-09-13 08:10:07.000000000 -0400 20216+++ linux-2.6.32.21/arch/x86/xen/enlighten.c 2010-09-04 15:54:51.000000000 -0400
20204@@ -71,8 +71,6 @@ EXPORT_SYMBOL_GPL(xen_start_info); 20217@@ -71,8 +71,6 @@ EXPORT_SYMBOL_GPL(xen_start_info);
20205 20218
20206 struct shared_info xen_dummy_shared_info; 20219 struct shared_info xen_dummy_shared_info;
@@ -20257,8 +20270,8 @@ diff -urNp linux-2.6.32.21/arch/x86/xen/enlighten.c linux-2.6.32.21/arch/x86/xen
20257 20270
20258 pgd = (pgd_t *)xen_start_info->pt_base; 20271 pgd = (pgd_t *)xen_start_info->pt_base;
20259diff -urNp linux-2.6.32.21/arch/x86/xen/mmu.c linux-2.6.32.21/arch/x86/xen/mmu.c 20272diff -urNp linux-2.6.32.21/arch/x86/xen/mmu.c linux-2.6.32.21/arch/x86/xen/mmu.c
20260--- linux-2.6.32.21/arch/x86/xen/mmu.c 2010-08-26 19:42:20.000000000 -0400 20273--- linux-2.6.32.21/arch/x86/xen/mmu.c 2010-08-13 16:24:37.000000000 -0400
20261+++ linux-2.6.32.21/arch/x86/xen/mmu.c 2010-09-13 08:10:07.000000000 -0400 20274+++ linux-2.6.32.21/arch/x86/xen/mmu.c 2010-09-04 15:54:51.000000000 -0400
20262@@ -1711,6 +1711,8 @@ __init pgd_t *xen_setup_kernel_pagetable 20275@@ -1711,6 +1711,8 @@ __init pgd_t *xen_setup_kernel_pagetable
20263 convert_pfn_mfn(init_level4_pgt); 20276 convert_pfn_mfn(init_level4_pgt);
20264 convert_pfn_mfn(level3_ident_pgt); 20277 convert_pfn_mfn(level3_ident_pgt);
@@ -20280,8 +20293,8 @@ diff -urNp linux-2.6.32.21/arch/x86/xen/mmu.c linux-2.6.32.21/arch/x86/xen/mmu.c
20280 set_page_prot(level2_fixmap_pgt, PAGE_KERNEL_RO); 20293 set_page_prot(level2_fixmap_pgt, PAGE_KERNEL_RO);
20281 20294
20282diff -urNp linux-2.6.32.21/arch/x86/xen/smp.c linux-2.6.32.21/arch/x86/xen/smp.c 20295diff -urNp linux-2.6.32.21/arch/x86/xen/smp.c linux-2.6.32.21/arch/x86/xen/smp.c
20283--- linux-2.6.32.21/arch/x86/xen/smp.c 2010-08-26 19:42:20.000000000 -0400 20296--- linux-2.6.32.21/arch/x86/xen/smp.c 2010-08-13 16:24:37.000000000 -0400
20284+++ linux-2.6.32.21/arch/x86/xen/smp.c 2010-09-13 08:10:07.000000000 -0400 20297+++ linux-2.6.32.21/arch/x86/xen/smp.c 2010-09-04 15:54:51.000000000 -0400
20285@@ -167,11 +167,6 @@ static void __init xen_smp_prepare_boot_ 20298@@ -167,11 +167,6 @@ static void __init xen_smp_prepare_boot_
20286 { 20299 {
20287 BUG_ON(smp_processor_id() != 0); 20300 BUG_ON(smp_processor_id() != 0);
@@ -20306,8 +20319,8 @@ diff -urNp linux-2.6.32.21/arch/x86/xen/smp.c linux-2.6.32.21/arch/x86/xen/smp.c
20306 #ifdef CONFIG_X86_32 20319 #ifdef CONFIG_X86_32
20307 ctxt->user_regs.fs = __KERNEL_PERCPU; 20320 ctxt->user_regs.fs = __KERNEL_PERCPU;
20308diff -urNp linux-2.6.32.21/arch/x86/xen/xen-head.S linux-2.6.32.21/arch/x86/xen/xen-head.S 20321diff -urNp linux-2.6.32.21/arch/x86/xen/xen-head.S linux-2.6.32.21/arch/x86/xen/xen-head.S
20309--- linux-2.6.32.21/arch/x86/xen/xen-head.S 2010-08-26 19:42:20.000000000 -0400 20322--- linux-2.6.32.21/arch/x86/xen/xen-head.S 2010-08-13 16:24:37.000000000 -0400
20310+++ linux-2.6.32.21/arch/x86/xen/xen-head.S 2010-09-13 08:10:07.000000000 -0400 20323+++ linux-2.6.32.21/arch/x86/xen/xen-head.S 2010-09-04 15:54:51.000000000 -0400
20311@@ -19,6 +19,17 @@ ENTRY(startup_xen) 20324@@ -19,6 +19,17 @@ ENTRY(startup_xen)
20312 #ifdef CONFIG_X86_32 20325 #ifdef CONFIG_X86_32
20313 mov %esi,xen_start_info 20326 mov %esi,xen_start_info
@@ -20327,8 +20340,8 @@ diff -urNp linux-2.6.32.21/arch/x86/xen/xen-head.S linux-2.6.32.21/arch/x86/xen/
20327 mov %rsi,xen_start_info 20340 mov %rsi,xen_start_info
20328 mov $init_thread_union+THREAD_SIZE,%rsp 20341 mov $init_thread_union+THREAD_SIZE,%rsp
20329diff -urNp linux-2.6.32.21/arch/x86/xen/xen-ops.h linux-2.6.32.21/arch/x86/xen/xen-ops.h 20342diff -urNp linux-2.6.32.21/arch/x86/xen/xen-ops.h linux-2.6.32.21/arch/x86/xen/xen-ops.h
20330--- linux-2.6.32.21/arch/x86/xen/xen-ops.h 2010-08-26 19:42:20.000000000 -0400 20343--- linux-2.6.32.21/arch/x86/xen/xen-ops.h 2010-08-13 16:24:37.000000000 -0400
20331+++ linux-2.6.32.21/arch/x86/xen/xen-ops.h 2010-09-13 08:10:07.000000000 -0400 20344+++ linux-2.6.32.21/arch/x86/xen/xen-ops.h 2010-09-04 15:54:51.000000000 -0400
20332@@ -10,8 +10,6 @@ 20345@@ -10,8 +10,6 @@
20333 extern const char xen_hypervisor_callback[]; 20346 extern const char xen_hypervisor_callback[];
20334 extern const char xen_failsafe_callback[]; 20347 extern const char xen_failsafe_callback[];
@@ -20339,8 +20352,8 @@ diff -urNp linux-2.6.32.21/arch/x86/xen/xen-ops.h linux-2.6.32.21/arch/x86/xen/x
20339 void xen_copy_trap_info(struct trap_info *traps); 20352 void xen_copy_trap_info(struct trap_info *traps);
20340 20353
20341diff -urNp linux-2.6.32.21/block/blk-integrity.c linux-2.6.32.21/block/blk-integrity.c 20354diff -urNp linux-2.6.32.21/block/blk-integrity.c linux-2.6.32.21/block/blk-integrity.c
20342--- linux-2.6.32.21/block/blk-integrity.c 2010-08-26 19:42:20.000000000 -0400 20355--- linux-2.6.32.21/block/blk-integrity.c 2010-08-13 16:24:37.000000000 -0400
20343+++ linux-2.6.32.21/block/blk-integrity.c 2010-09-13 08:10:07.000000000 -0400 20356+++ linux-2.6.32.21/block/blk-integrity.c 2010-09-04 15:54:51.000000000 -0400
20344@@ -278,7 +278,7 @@ static struct attribute *integrity_attrs 20357@@ -278,7 +278,7 @@ static struct attribute *integrity_attrs
20345 NULL, 20358 NULL,
20346 }; 20359 };
@@ -20351,8 +20364,8 @@ diff -urNp linux-2.6.32.21/block/blk-integrity.c linux-2.6.32.21/block/blk-integ
20351 .store = &integrity_attr_store, 20364 .store = &integrity_attr_store,
20352 }; 20365 };
20353diff -urNp linux-2.6.32.21/block/blk-iopoll.c linux-2.6.32.21/block/blk-iopoll.c 20366diff -urNp linux-2.6.32.21/block/blk-iopoll.c linux-2.6.32.21/block/blk-iopoll.c
20354--- linux-2.6.32.21/block/blk-iopoll.c 2010-08-26 19:42:20.000000000 -0400 20367--- linux-2.6.32.21/block/blk-iopoll.c 2010-08-13 16:24:37.000000000 -0400
20355+++ linux-2.6.32.21/block/blk-iopoll.c 2010-09-13 08:10:07.000000000 -0400 20368+++ linux-2.6.32.21/block/blk-iopoll.c 2010-09-04 15:54:51.000000000 -0400
20356@@ -77,7 +77,7 @@ void blk_iopoll_complete(struct blk_iopo 20369@@ -77,7 +77,7 @@ void blk_iopoll_complete(struct blk_iopo
20357 } 20370 }
20358 EXPORT_SYMBOL(blk_iopoll_complete); 20371 EXPORT_SYMBOL(blk_iopoll_complete);
@@ -20363,8 +20376,8 @@ diff -urNp linux-2.6.32.21/block/blk-iopoll.c linux-2.6.32.21/block/blk-iopoll.c
20363 struct list_head *list = &__get_cpu_var(blk_cpu_iopoll); 20376 struct list_head *list = &__get_cpu_var(blk_cpu_iopoll);
20364 int rearm = 0, budget = blk_iopoll_budget; 20377 int rearm = 0, budget = blk_iopoll_budget;
20365diff -urNp linux-2.6.32.21/block/blk-map.c linux-2.6.32.21/block/blk-map.c 20378diff -urNp linux-2.6.32.21/block/blk-map.c linux-2.6.32.21/block/blk-map.c
20366--- linux-2.6.32.21/block/blk-map.c 2010-08-26 19:42:20.000000000 -0400 20379--- linux-2.6.32.21/block/blk-map.c 2010-08-13 16:24:37.000000000 -0400
20367+++ linux-2.6.32.21/block/blk-map.c 2010-09-13 08:10:07.000000000 -0400 20380+++ linux-2.6.32.21/block/blk-map.c 2010-09-04 15:54:51.000000000 -0400
20368@@ -54,7 +54,7 @@ static int __blk_rq_map_user(struct requ 20381@@ -54,7 +54,7 @@ static int __blk_rq_map_user(struct requ
20369 * direct dma. else, set up kernel bounce buffers 20382 * direct dma. else, set up kernel bounce buffers
20370 */ 20383 */
@@ -20384,8 +20397,8 @@ diff -urNp linux-2.6.32.21/block/blk-map.c linux-2.6.32.21/block/blk-map.c
20384 bio = bio_copy_kern(q, kbuf, len, gfp_mask, reading); 20397 bio = bio_copy_kern(q, kbuf, len, gfp_mask, reading);
20385 else 20398 else
20386diff -urNp linux-2.6.32.21/block/blk-softirq.c linux-2.6.32.21/block/blk-softirq.c 20399diff -urNp linux-2.6.32.21/block/blk-softirq.c linux-2.6.32.21/block/blk-softirq.c
20387--- linux-2.6.32.21/block/blk-softirq.c 2010-08-26 19:42:20.000000000 -0400 20400--- linux-2.6.32.21/block/blk-softirq.c 2010-08-13 16:24:37.000000000 -0400
20388+++ linux-2.6.32.21/block/blk-softirq.c 2010-09-13 08:10:07.000000000 -0400 20401+++ linux-2.6.32.21/block/blk-softirq.c 2010-09-04 15:54:51.000000000 -0400
20389@@ -17,7 +17,7 @@ static DEFINE_PER_CPU(struct list_head, 20402@@ -17,7 +17,7 @@ static DEFINE_PER_CPU(struct list_head,
20390 * Softirq action handler - move entries to local list and loop over them 20403 * Softirq action handler - move entries to local list and loop over them
20391 * while passing them to the queue registered handler. 20404 * while passing them to the queue registered handler.
@@ -20396,8 +20409,8 @@ diff -urNp linux-2.6.32.21/block/blk-softirq.c linux-2.6.32.21/block/blk-softirq
20396 struct list_head *cpu_list, local_list; 20409 struct list_head *cpu_list, local_list;
20397 20410
20398diff -urNp linux-2.6.32.21/block/blk-sysfs.c linux-2.6.32.21/block/blk-sysfs.c 20411diff -urNp linux-2.6.32.21/block/blk-sysfs.c linux-2.6.32.21/block/blk-sysfs.c
20399--- linux-2.6.32.21/block/blk-sysfs.c 2010-08-26 19:42:20.000000000 -0400 20412--- linux-2.6.32.21/block/blk-sysfs.c 2010-08-13 16:24:37.000000000 -0400
20400+++ linux-2.6.32.21/block/blk-sysfs.c 2010-09-13 08:10:07.000000000 -0400 20413+++ linux-2.6.32.21/block/blk-sysfs.c 2010-09-04 15:54:51.000000000 -0400
20401@@ -414,7 +414,7 @@ static void blk_release_queue(struct kob 20414@@ -414,7 +414,7 @@ static void blk_release_queue(struct kob
20402 kmem_cache_free(blk_requestq_cachep, q); 20415 kmem_cache_free(blk_requestq_cachep, q);
20403 } 20416 }
@@ -20408,8 +20421,8 @@ diff -urNp linux-2.6.32.21/block/blk-sysfs.c linux-2.6.32.21/block/blk-sysfs.c
20408 .store = queue_attr_store, 20421 .store = queue_attr_store,
20409 }; 20422 };
20410diff -urNp linux-2.6.32.21/block/elevator.c linux-2.6.32.21/block/elevator.c 20423diff -urNp linux-2.6.32.21/block/elevator.c linux-2.6.32.21/block/elevator.c
20411--- linux-2.6.32.21/block/elevator.c 2010-08-26 19:42:20.000000000 -0400 20424--- linux-2.6.32.21/block/elevator.c 2010-08-13 16:24:37.000000000 -0400
20412+++ linux-2.6.32.21/block/elevator.c 2010-09-13 08:10:07.000000000 -0400 20425+++ linux-2.6.32.21/block/elevator.c 2010-09-04 15:54:51.000000000 -0400
20413@@ -889,7 +889,7 @@ elv_attr_store(struct kobject *kobj, str 20426@@ -889,7 +889,7 @@ elv_attr_store(struct kobject *kobj, str
20414 return error; 20427 return error;
20415 } 20428 }
@@ -20420,8 +20433,8 @@ diff -urNp linux-2.6.32.21/block/elevator.c linux-2.6.32.21/block/elevator.c
20420 .store = elv_attr_store, 20433 .store = elv_attr_store,
20421 }; 20434 };
20422diff -urNp linux-2.6.32.21/crypto/lrw.c linux-2.6.32.21/crypto/lrw.c 20435diff -urNp linux-2.6.32.21/crypto/lrw.c linux-2.6.32.21/crypto/lrw.c
20423--- linux-2.6.32.21/crypto/lrw.c 2010-08-26 19:42:20.000000000 -0400 20436--- linux-2.6.32.21/crypto/lrw.c 2010-08-13 16:24:37.000000000 -0400
20424+++ linux-2.6.32.21/crypto/lrw.c 2010-09-13 08:10:07.000000000 -0400 20437+++ linux-2.6.32.21/crypto/lrw.c 2010-09-04 15:54:51.000000000 -0400
20425@@ -60,7 +60,7 @@ static int setkey(struct crypto_tfm *par 20438@@ -60,7 +60,7 @@ static int setkey(struct crypto_tfm *par
20426 struct priv *ctx = crypto_tfm_ctx(parent); 20439 struct priv *ctx = crypto_tfm_ctx(parent);
20427 struct crypto_cipher *child = ctx->child; 20440 struct crypto_cipher *child = ctx->child;
@@ -20431,9 +20444,145 @@ diff -urNp linux-2.6.32.21/crypto/lrw.c linux-2.6.32.21/crypto/lrw.c
20431 int bsize = crypto_cipher_blocksize(child); 20444 int bsize = crypto_cipher_blocksize(child);
20432 20445
20433 crypto_cipher_clear_flags(child, CRYPTO_TFM_REQ_MASK); 20446 crypto_cipher_clear_flags(child, CRYPTO_TFM_REQ_MASK);
20447diff -urNp linux-2.6.32.21/Documentation/dontdiff linux-2.6.32.21/Documentation/dontdiff
20448--- linux-2.6.32.21/Documentation/dontdiff 2010-08-13 16:24:37.000000000 -0400
20449+++ linux-2.6.32.21/Documentation/dontdiff 2010-09-04 15:54:51.000000000 -0400
20450@@ -3,6 +3,7 @@
20451 *.bin
20452 *.cpio
20453 *.csp
20454+*.dbg
20455 *.dsp
20456 *.dvi
20457 *.elf
20458@@ -38,8 +39,10 @@
20459 *.tab.h
20460 *.tex
20461 *.ver
20462+*.vim
20463 *.xml
20464 *_MODULES
20465+*_reg_safe.h
20466 *_vga16.c
20467 *~
20468 *.9
20469@@ -49,11 +52,16 @@
20470 53c700_d.h
20471 CVS
20472 ChangeSet
20473+GPATH
20474+GRTAGS
20475+GSYMS
20476+GTAGS
20477 Image
20478 Kerntypes
20479 Module.markers
20480 Module.symvers
20481 PENDING
20482+PERF*
20483 SCCS
20484 System.map*
20485 TAGS
20486@@ -76,7 +84,10 @@ btfixupprep
20487 build
20488 bvmlinux
20489 bzImage*
20490+capflags.c
20491 classlist.h*
20492+clut_vga16.c
20493+common-cmds.h
20494 comp*.log
20495 compile.h*
20496 conf
20497@@ -103,13 +114,14 @@ gen_crc32table
20498 gen_init_cpio
20499 genksyms
20500 *_gray256.c
20501+hash
20502 ihex2fw
20503 ikconfig.h*
20504 initramfs_data.cpio
20505+initramfs_data.cpio.bz2
20506 initramfs_data.cpio.gz
20507 initramfs_list
20508 kallsyms
20509-kconfig
20510 keywords.c
20511 ksym.c*
20512 ksym.h*
20513@@ -133,7 +145,9 @@ mkboot
20514 mkbugboot
20515 mkcpustr
20516 mkdep
20517+mkpiggy
20518 mkprep
20519+mkregtable
20520 mktables
20521 mktree
20522 modpost
20523@@ -149,6 +163,7 @@ patches*
20524 pca200e.bin
20525 pca200e_ecd.bin2
20526 piggy.gz
20527+piggy.S
20528 piggyback
20529 pnmtologo
20530 ppc_defs.h*
20531@@ -157,12 +172,14 @@ qconf
20532 raid6altivec*.c
20533 raid6int*.c
20534 raid6tables.c
20535+regdb.c
20536 relocs
20537 series
20538 setup
20539 setup.bin
20540 setup.elf
20541 sImage
20542+slabinfo
20543 sm_tbl*
20544 split-include
20545 syscalltab.h
20546@@ -186,14 +203,20 @@ version.h*
20547 vmlinux
20548 vmlinux-*
20549 vmlinux.aout
20550+vmlinux.bin.all
20551+vmlinux.bin.bz2
20552 vmlinux.lds
20553+vmlinux.relocs
20554+voffset.h
20555 vsyscall.lds
20556 vsyscall_32.lds
20557 wanxlfw.inc
20558 uImage
20559 unifdef
20560+utsrelease.h
20561 wakeup.bin
20562 wakeup.elf
20563 wakeup.lds
20564 zImage*
20565 zconf.hash.c
20566+zoffset.h
20567diff -urNp linux-2.6.32.21/Documentation/kernel-parameters.txt linux-2.6.32.21/Documentation/kernel-parameters.txt
20568--- linux-2.6.32.21/Documentation/kernel-parameters.txt 2010-08-13 16:24:37.000000000 -0400
20569+++ linux-2.6.32.21/Documentation/kernel-parameters.txt 2010-09-04 15:54:51.000000000 -0400
20570@@ -1836,6 +1836,12 @@ and is between 256 and 4096 characters.
20571 the specified number of seconds. This is to be used if
20572 your oopses keep scrolling off the screen.
20573
20574+ pax_nouderef [X86-32] disables UDEREF. Most likely needed under certain
20575+ virtualization environments that don't cope well with the
20576+ expand down segment used by UDEREF on X86-32.
20577+
20578+ pax_softmode= [X86-32] 0/1 to disable/enable PaX softmode on boot already.
20579+
20580 pcbit= [HW,ISDN]
20581
20582 pcd. [PARIDE]
20434diff -urNp linux-2.6.32.21/drivers/acpi/acpi_pad.c linux-2.6.32.21/drivers/acpi/acpi_pad.c 20583diff -urNp linux-2.6.32.21/drivers/acpi/acpi_pad.c linux-2.6.32.21/drivers/acpi/acpi_pad.c
20435--- linux-2.6.32.21/drivers/acpi/acpi_pad.c 2010-08-26 19:42:20.000000000 -0400 20584--- linux-2.6.32.21/drivers/acpi/acpi_pad.c 2010-08-13 16:24:37.000000000 -0400
20436+++ linux-2.6.32.21/drivers/acpi/acpi_pad.c 2010-09-13 08:10:07.000000000 -0400 20585+++ linux-2.6.32.21/drivers/acpi/acpi_pad.c 2010-09-04 15:54:51.000000000 -0400
20437@@ -30,7 +30,7 @@ 20586@@ -30,7 +30,7 @@
20438 #include <acpi/acpi_bus.h> 20587 #include <acpi/acpi_bus.h>
20439 #include <acpi/acpi_drivers.h> 20588 #include <acpi/acpi_drivers.h>
@@ -20444,8 +20593,8 @@ diff -urNp linux-2.6.32.21/drivers/acpi/acpi_pad.c linux-2.6.32.21/drivers/acpi/
20444 #define ACPI_PROCESSOR_AGGREGATOR_NOTIFY 0x80 20593 #define ACPI_PROCESSOR_AGGREGATOR_NOTIFY 0x80
20445 static DEFINE_MUTEX(isolated_cpus_lock); 20594 static DEFINE_MUTEX(isolated_cpus_lock);
20446diff -urNp linux-2.6.32.21/drivers/acpi/battery.c linux-2.6.32.21/drivers/acpi/battery.c 20595diff -urNp linux-2.6.32.21/drivers/acpi/battery.c linux-2.6.32.21/drivers/acpi/battery.c
20447--- linux-2.6.32.21/drivers/acpi/battery.c 2010-08-26 19:42:20.000000000 -0400 20596--- linux-2.6.32.21/drivers/acpi/battery.c 2010-08-13 16:24:37.000000000 -0400
20448+++ linux-2.6.32.21/drivers/acpi/battery.c 2010-09-13 08:10:07.000000000 -0400 20597+++ linux-2.6.32.21/drivers/acpi/battery.c 2010-09-04 15:54:51.000000000 -0400
20449@@ -763,7 +763,7 @@ DECLARE_FILE_FUNCTIONS(alarm); 20598@@ -763,7 +763,7 @@ DECLARE_FILE_FUNCTIONS(alarm);
20450 } 20599 }
20451 20600
@@ -20456,8 +20605,8 @@ diff -urNp linux-2.6.32.21/drivers/acpi/battery.c linux-2.6.32.21/drivers/acpi/b
20456 const char *name; 20605 const char *name;
20457 } acpi_battery_file[] = { 20606 } acpi_battery_file[] = {
20458diff -urNp linux-2.6.32.21/drivers/acpi/blacklist.c linux-2.6.32.21/drivers/acpi/blacklist.c 20607diff -urNp linux-2.6.32.21/drivers/acpi/blacklist.c linux-2.6.32.21/drivers/acpi/blacklist.c
20459--- linux-2.6.32.21/drivers/acpi/blacklist.c 2010-08-26 19:42:20.000000000 -0400 20608--- linux-2.6.32.21/drivers/acpi/blacklist.c 2010-08-13 16:24:37.000000000 -0400
20460+++ linux-2.6.32.21/drivers/acpi/blacklist.c 2010-09-13 08:10:07.000000000 -0400 20609+++ linux-2.6.32.21/drivers/acpi/blacklist.c 2010-09-04 15:54:51.000000000 -0400
20461@@ -73,7 +73,7 @@ static struct acpi_blacklist_item acpi_b 20610@@ -73,7 +73,7 @@ static struct acpi_blacklist_item acpi_b
20462 {"IBM ", "TP600E ", 0x00000105, ACPI_SIG_DSDT, less_than_or_equal, 20611 {"IBM ", "TP600E ", 0x00000105, ACPI_SIG_DSDT, less_than_or_equal,
20463 "Incorrect _ADR", 1}, 20612 "Incorrect _ADR", 1},
@@ -20468,8 +20617,8 @@ diff -urNp linux-2.6.32.21/drivers/acpi/blacklist.c linux-2.6.32.21/drivers/acpi
20468 20617
20469 #if CONFIG_ACPI_BLACKLIST_YEAR 20618 #if CONFIG_ACPI_BLACKLIST_YEAR
20470diff -urNp linux-2.6.32.21/drivers/acpi/dock.c linux-2.6.32.21/drivers/acpi/dock.c 20619diff -urNp linux-2.6.32.21/drivers/acpi/dock.c linux-2.6.32.21/drivers/acpi/dock.c
20471--- linux-2.6.32.21/drivers/acpi/dock.c 2010-08-26 19:42:20.000000000 -0400 20620--- linux-2.6.32.21/drivers/acpi/dock.c 2010-08-13 16:24:37.000000000 -0400
20472+++ linux-2.6.32.21/drivers/acpi/dock.c 2010-09-13 08:10:07.000000000 -0400 20621+++ linux-2.6.32.21/drivers/acpi/dock.c 2010-09-04 15:54:51.000000000 -0400
20473@@ -77,7 +77,7 @@ struct dock_dependent_device { 20622@@ -77,7 +77,7 @@ struct dock_dependent_device {
20474 struct list_head list; 20623 struct list_head list;
20475 struct list_head hotplug_list; 20624 struct list_head hotplug_list;
@@ -20489,8 +20638,8 @@ diff -urNp linux-2.6.32.21/drivers/acpi/dock.c linux-2.6.32.21/drivers/acpi/dock
20489 { 20638 {
20490 struct dock_dependent_device *dd; 20639 struct dock_dependent_device *dd;
20491diff -urNp linux-2.6.32.21/drivers/acpi/osl.c linux-2.6.32.21/drivers/acpi/osl.c 20640diff -urNp linux-2.6.32.21/drivers/acpi/osl.c linux-2.6.32.21/drivers/acpi/osl.c
20492--- linux-2.6.32.21/drivers/acpi/osl.c 2010-08-26 19:42:20.000000000 -0400 20641--- linux-2.6.32.21/drivers/acpi/osl.c 2010-08-13 16:24:37.000000000 -0400
20493+++ linux-2.6.32.21/drivers/acpi/osl.c 2010-09-13 08:10:07.000000000 -0400 20642+++ linux-2.6.32.21/drivers/acpi/osl.c 2010-09-04 15:54:51.000000000 -0400
20494@@ -523,6 +523,8 @@ acpi_os_read_memory(acpi_physical_addres 20643@@ -523,6 +523,8 @@ acpi_os_read_memory(acpi_physical_addres
20495 void __iomem *virt_addr; 20644 void __iomem *virt_addr;
20496 20645
@@ -20510,8 +20659,8 @@ diff -urNp linux-2.6.32.21/drivers/acpi/osl.c linux-2.6.32.21/drivers/acpi/osl.c
20510 switch (width) { 20659 switch (width) {
20511 case 8: 20660 case 8:
20512diff -urNp linux-2.6.32.21/drivers/acpi/power_meter.c linux-2.6.32.21/drivers/acpi/power_meter.c 20661diff -urNp linux-2.6.32.21/drivers/acpi/power_meter.c linux-2.6.32.21/drivers/acpi/power_meter.c
20513--- linux-2.6.32.21/drivers/acpi/power_meter.c 2010-08-26 19:42:20.000000000 -0400 20662--- linux-2.6.32.21/drivers/acpi/power_meter.c 2010-08-13 16:24:37.000000000 -0400
20514+++ linux-2.6.32.21/drivers/acpi/power_meter.c 2010-09-13 08:10:07.000000000 -0400 20663+++ linux-2.6.32.21/drivers/acpi/power_meter.c 2010-09-04 15:54:51.000000000 -0400
20515@@ -315,8 +315,6 @@ static ssize_t set_trip(struct device *d 20664@@ -315,8 +315,6 @@ static ssize_t set_trip(struct device *d
20516 return res; 20665 return res;
20517 20666
@@ -20522,8 +20671,8 @@ diff -urNp linux-2.6.32.21/drivers/acpi/power_meter.c linux-2.6.32.21/drivers/ac
20522 mutex_lock(&resource->lock); 20671 mutex_lock(&resource->lock);
20523 resource->trip[attr->index - 7] = temp; 20672 resource->trip[attr->index - 7] = temp;
20524diff -urNp linux-2.6.32.21/drivers/acpi/proc.c linux-2.6.32.21/drivers/acpi/proc.c 20673diff -urNp linux-2.6.32.21/drivers/acpi/proc.c linux-2.6.32.21/drivers/acpi/proc.c
20525--- linux-2.6.32.21/drivers/acpi/proc.c 2010-08-26 19:42:20.000000000 -0400 20674--- linux-2.6.32.21/drivers/acpi/proc.c 2010-08-13 16:24:37.000000000 -0400
20526+++ linux-2.6.32.21/drivers/acpi/proc.c 2010-09-13 08:10:07.000000000 -0400 20675+++ linux-2.6.32.21/drivers/acpi/proc.c 2010-09-04 15:54:51.000000000 -0400
20527@@ -391,20 +391,15 @@ acpi_system_write_wakeup_device(struct f 20676@@ -391,20 +391,15 @@ acpi_system_write_wakeup_device(struct f
20528 size_t count, loff_t * ppos) 20677 size_t count, loff_t * ppos)
20529 { 20678 {
@@ -20560,8 +20709,8 @@ diff -urNp linux-2.6.32.21/drivers/acpi/proc.c linux-2.6.32.21/drivers/acpi/proc
20560 dev->wakeup.state.enabled ? 0 : 1; 20709 dev->wakeup.state.enabled ? 0 : 1;
20561 found_dev = dev; 20710 found_dev = dev;
20562diff -urNp linux-2.6.32.21/drivers/acpi/processor_core.c linux-2.6.32.21/drivers/acpi/processor_core.c 20711diff -urNp linux-2.6.32.21/drivers/acpi/processor_core.c linux-2.6.32.21/drivers/acpi/processor_core.c
20563--- linux-2.6.32.21/drivers/acpi/processor_core.c 2010-08-26 19:42:20.000000000 -0400 20712--- linux-2.6.32.21/drivers/acpi/processor_core.c 2010-08-13 16:24:37.000000000 -0400
20564+++ linux-2.6.32.21/drivers/acpi/processor_core.c 2010-09-13 08:10:07.000000000 -0400 20713+++ linux-2.6.32.21/drivers/acpi/processor_core.c 2010-09-04 15:54:51.000000000 -0400
20565@@ -796,7 +796,7 @@ static int __cpuinit acpi_processor_add( 20714@@ -796,7 +796,7 @@ static int __cpuinit acpi_processor_add(
20566 return 0; 20715 return 0;
20567 } 20716 }
@@ -20572,8 +20721,8 @@ diff -urNp linux-2.6.32.21/drivers/acpi/processor_core.c linux-2.6.32.21/drivers
20572 /* 20721 /*
20573 * Buggy BIOS check 20722 * Buggy BIOS check
20574diff -urNp linux-2.6.32.21/drivers/acpi/processor_idle.c linux-2.6.32.21/drivers/acpi/processor_idle.c 20723diff -urNp linux-2.6.32.21/drivers/acpi/processor_idle.c linux-2.6.32.21/drivers/acpi/processor_idle.c
20575--- linux-2.6.32.21/drivers/acpi/processor_idle.c 2010-08-26 19:42:20.000000000 -0400 20724--- linux-2.6.32.21/drivers/acpi/processor_idle.c 2010-08-13 16:24:37.000000000 -0400
20576+++ linux-2.6.32.21/drivers/acpi/processor_idle.c 2010-09-13 08:10:07.000000000 -0400 20725+++ linux-2.6.32.21/drivers/acpi/processor_idle.c 2010-09-04 15:54:51.000000000 -0400
20577@@ -118,7 +118,7 @@ static struct dmi_system_id __cpuinitdat 20726@@ -118,7 +118,7 @@ static struct dmi_system_id __cpuinitdat
20578 DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK Computer Inc."), 20727 DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK Computer Inc."),
20579 DMI_MATCH(DMI_PRODUCT_NAME,"L8400B series Notebook PC")}, 20728 DMI_MATCH(DMI_PRODUCT_NAME,"L8400B series Notebook PC")},
@@ -20584,8 +20733,8 @@ diff -urNp linux-2.6.32.21/drivers/acpi/processor_idle.c linux-2.6.32.21/drivers
20584 20733
20585 20734
20586diff -urNp linux-2.6.32.21/drivers/acpi/sbshc.c linux-2.6.32.21/drivers/acpi/sbshc.c 20735diff -urNp linux-2.6.32.21/drivers/acpi/sbshc.c linux-2.6.32.21/drivers/acpi/sbshc.c
20587--- linux-2.6.32.21/drivers/acpi/sbshc.c 2010-08-26 19:42:20.000000000 -0400 20736--- linux-2.6.32.21/drivers/acpi/sbshc.c 2010-08-13 16:24:37.000000000 -0400
20588+++ linux-2.6.32.21/drivers/acpi/sbshc.c 2010-09-13 08:10:07.000000000 -0400 20737+++ linux-2.6.32.21/drivers/acpi/sbshc.c 2010-09-04 15:54:51.000000000 -0400
20589@@ -17,7 +17,7 @@ 20738@@ -17,7 +17,7 @@
20590 20739
20591 #define PREFIX "ACPI: " 20740 #define PREFIX "ACPI: "
@@ -20596,8 +20745,8 @@ diff -urNp linux-2.6.32.21/drivers/acpi/sbshc.c linux-2.6.32.21/drivers/acpi/sbs
20596 20745
20597 struct acpi_smb_hc { 20746 struct acpi_smb_hc {
20598diff -urNp linux-2.6.32.21/drivers/acpi/sleep.c linux-2.6.32.21/drivers/acpi/sleep.c 20747diff -urNp linux-2.6.32.21/drivers/acpi/sleep.c linux-2.6.32.21/drivers/acpi/sleep.c
20599--- linux-2.6.32.21/drivers/acpi/sleep.c 2010-08-26 19:42:20.000000000 -0400 20748--- linux-2.6.32.21/drivers/acpi/sleep.c 2010-08-13 16:24:37.000000000 -0400
20600+++ linux-2.6.32.21/drivers/acpi/sleep.c 2010-09-13 08:10:07.000000000 -0400 20749+++ linux-2.6.32.21/drivers/acpi/sleep.c 2010-09-04 15:54:51.000000000 -0400
20601@@ -283,7 +283,7 @@ static int acpi_suspend_state_valid(susp 20750@@ -283,7 +283,7 @@ static int acpi_suspend_state_valid(susp
20602 } 20751 }
20603 } 20752 }
@@ -20635,8 +20784,8 @@ diff -urNp linux-2.6.32.21/drivers/acpi/sleep.c linux-2.6.32.21/drivers/acpi/sle
20635 .end = acpi_pm_end, 20784 .end = acpi_pm_end,
20636 .pre_snapshot = acpi_hibernation_pre_snapshot_old, 20785 .pre_snapshot = acpi_hibernation_pre_snapshot_old,
20637diff -urNp linux-2.6.32.21/drivers/acpi/video.c linux-2.6.32.21/drivers/acpi/video.c 20786diff -urNp linux-2.6.32.21/drivers/acpi/video.c linux-2.6.32.21/drivers/acpi/video.c
20638--- linux-2.6.32.21/drivers/acpi/video.c 2010-08-26 19:42:20.000000000 -0400 20787--- linux-2.6.32.21/drivers/acpi/video.c 2010-08-13 16:24:37.000000000 -0400
20639+++ linux-2.6.32.21/drivers/acpi/video.c 2010-09-13 08:10:07.000000000 -0400 20788+++ linux-2.6.32.21/drivers/acpi/video.c 2010-09-04 15:54:51.000000000 -0400
20640@@ -359,7 +359,7 @@ static int acpi_video_set_brightness(str 20789@@ -359,7 +359,7 @@ static int acpi_video_set_brightness(str
20641 vd->brightness->levels[request_level]); 20790 vd->brightness->levels[request_level]);
20642 } 20791 }
@@ -20647,8 +20796,8 @@ diff -urNp linux-2.6.32.21/drivers/acpi/video.c linux-2.6.32.21/drivers/acpi/vid
20647 .update_status = acpi_video_set_brightness, 20796 .update_status = acpi_video_set_brightness,
20648 }; 20797 };
20649diff -urNp linux-2.6.32.21/drivers/ata/ahci.c linux-2.6.32.21/drivers/ata/ahci.c 20798diff -urNp linux-2.6.32.21/drivers/ata/ahci.c linux-2.6.32.21/drivers/ata/ahci.c
20650--- linux-2.6.32.21/drivers/ata/ahci.c 2010-08-26 19:42:20.000000000 -0400 20799--- linux-2.6.32.21/drivers/ata/ahci.c 2010-08-13 16:24:37.000000000 -0400
20651+++ linux-2.6.32.21/drivers/ata/ahci.c 2010-09-13 08:10:07.000000000 -0400 20800+++ linux-2.6.32.21/drivers/ata/ahci.c 2010-09-04 15:54:51.000000000 -0400
20652@@ -387,7 +387,7 @@ static struct scsi_host_template ahci_sh 20801@@ -387,7 +387,7 @@ static struct scsi_host_template ahci_sh
20653 .sdev_attrs = ahci_sdev_attrs, 20802 .sdev_attrs = ahci_sdev_attrs,
20654 }; 20803 };
@@ -20689,8 +20838,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/ahci.c linux-2.6.32.21/drivers/ata/ahci.c
20689 20838
20690 20839
20691diff -urNp linux-2.6.32.21/drivers/ata/ata_generic.c linux-2.6.32.21/drivers/ata/ata_generic.c 20840diff -urNp linux-2.6.32.21/drivers/ata/ata_generic.c linux-2.6.32.21/drivers/ata/ata_generic.c
20692--- linux-2.6.32.21/drivers/ata/ata_generic.c 2010-08-26 19:42:20.000000000 -0400 20841--- linux-2.6.32.21/drivers/ata/ata_generic.c 2010-08-13 16:24:37.000000000 -0400
20693+++ linux-2.6.32.21/drivers/ata/ata_generic.c 2010-09-13 08:10:07.000000000 -0400 20842+++ linux-2.6.32.21/drivers/ata/ata_generic.c 2010-09-04 15:54:51.000000000 -0400
20694@@ -95,7 +95,7 @@ static struct scsi_host_template generic 20843@@ -95,7 +95,7 @@ static struct scsi_host_template generic
20695 ATA_BMDMA_SHT(DRV_NAME), 20844 ATA_BMDMA_SHT(DRV_NAME),
20696 }; 20845 };
@@ -20701,8 +20850,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/ata_generic.c linux-2.6.32.21/drivers/ata
20701 .cable_detect = ata_cable_unknown, 20850 .cable_detect = ata_cable_unknown,
20702 .set_mode = generic_set_mode, 20851 .set_mode = generic_set_mode,
20703diff -urNp linux-2.6.32.21/drivers/ata/ata_piix.c linux-2.6.32.21/drivers/ata/ata_piix.c 20852diff -urNp linux-2.6.32.21/drivers/ata/ata_piix.c linux-2.6.32.21/drivers/ata/ata_piix.c
20704--- linux-2.6.32.21/drivers/ata/ata_piix.c 2010-08-26 19:42:20.000000000 -0400 20853--- linux-2.6.32.21/drivers/ata/ata_piix.c 2010-08-13 16:24:37.000000000 -0400
20705+++ linux-2.6.32.21/drivers/ata/ata_piix.c 2010-09-13 08:10:07.000000000 -0400 20854+++ linux-2.6.32.21/drivers/ata/ata_piix.c 2010-09-04 15:54:51.000000000 -0400
20706@@ -300,7 +300,7 @@ static const struct pci_device_id piix_p 20855@@ -300,7 +300,7 @@ static const struct pci_device_id piix_p
20707 { 0x8086, 0x1c08, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, 20856 { 0x8086, 0x1c08, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata },
20708 /* SATA Controller IDE (CPT) */ 20857 /* SATA Controller IDE (CPT) */
@@ -20767,8 +20916,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/ata_piix.c linux-2.6.32.21/drivers/ata/at
20767 static const char *oemstrs[] = { 20916 static const char *oemstrs[] = {
20768 "Tecra M3,", 20917 "Tecra M3,",
20769diff -urNp linux-2.6.32.21/drivers/ata/libata-acpi.c linux-2.6.32.21/drivers/ata/libata-acpi.c 20918diff -urNp linux-2.6.32.21/drivers/ata/libata-acpi.c linux-2.6.32.21/drivers/ata/libata-acpi.c
20770--- linux-2.6.32.21/drivers/ata/libata-acpi.c 2010-08-26 19:42:20.000000000 -0400 20919--- linux-2.6.32.21/drivers/ata/libata-acpi.c 2010-08-13 16:24:37.000000000 -0400
20771+++ linux-2.6.32.21/drivers/ata/libata-acpi.c 2010-09-13 08:10:07.000000000 -0400 20920+++ linux-2.6.32.21/drivers/ata/libata-acpi.c 2010-09-04 15:54:51.000000000 -0400
20772@@ -223,12 +223,12 @@ static void ata_acpi_dev_uevent(acpi_han 20921@@ -223,12 +223,12 @@ static void ata_acpi_dev_uevent(acpi_han
20773 ata_acpi_uevent(dev->link->ap, dev, event); 20922 ata_acpi_uevent(dev->link->ap, dev, event);
20774 } 20923 }
@@ -20785,8 +20934,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/libata-acpi.c linux-2.6.32.21/drivers/ata
20785 .uevent = ata_acpi_ap_uevent, 20934 .uevent = ata_acpi_ap_uevent,
20786 }; 20935 };
20787diff -urNp linux-2.6.32.21/drivers/ata/libata-core.c linux-2.6.32.21/drivers/ata/libata-core.c 20936diff -urNp linux-2.6.32.21/drivers/ata/libata-core.c linux-2.6.32.21/drivers/ata/libata-core.c
20788--- linux-2.6.32.21/drivers/ata/libata-core.c 2010-08-26 19:42:20.000000000 -0400 20937--- linux-2.6.32.21/drivers/ata/libata-core.c 2010-08-13 16:24:37.000000000 -0400
20789+++ linux-2.6.32.21/drivers/ata/libata-core.c 2010-09-13 08:10:07.000000000 -0400 20938+++ linux-2.6.32.21/drivers/ata/libata-core.c 2010-09-04 15:54:51.000000000 -0400
20790@@ -900,7 +900,7 @@ static const struct ata_xfer_ent { 20939@@ -900,7 +900,7 @@ static const struct ata_xfer_ent {
20791 { ATA_SHIFT_PIO, ATA_NR_PIO_MODES, XFER_PIO_0 }, 20940 { ATA_SHIFT_PIO, ATA_NR_PIO_MODES, XFER_PIO_0 },
20792 { ATA_SHIFT_MWDMA, ATA_NR_MWDMA_MODES, XFER_MW_DMA_0 }, 20941 { ATA_SHIFT_MWDMA, ATA_NR_MWDMA_MODES, XFER_MW_DMA_0 },
@@ -20861,8 +21010,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/libata-core.c linux-2.6.32.21/drivers/ata
20861 .qc_issue = ata_dummy_qc_issue, 21010 .qc_issue = ata_dummy_qc_issue,
20862 .error_handler = ata_dummy_error_handler, 21011 .error_handler = ata_dummy_error_handler,
20863diff -urNp linux-2.6.32.21/drivers/ata/libata-eh.c linux-2.6.32.21/drivers/ata/libata-eh.c 21012diff -urNp linux-2.6.32.21/drivers/ata/libata-eh.c linux-2.6.32.21/drivers/ata/libata-eh.c
20864--- linux-2.6.32.21/drivers/ata/libata-eh.c 2010-08-26 19:42:20.000000000 -0400 21013--- linux-2.6.32.21/drivers/ata/libata-eh.c 2010-08-13 16:24:37.000000000 -0400
20865+++ linux-2.6.32.21/drivers/ata/libata-eh.c 2010-09-13 08:10:07.000000000 -0400 21014+++ linux-2.6.32.21/drivers/ata/libata-eh.c 2010-09-04 15:54:51.000000000 -0400
20866@@ -3586,7 +3586,7 @@ void ata_do_eh(struct ata_port *ap, ata_ 21015@@ -3586,7 +3586,7 @@ void ata_do_eh(struct ata_port *ap, ata_
20867 */ 21016 */
20868 void ata_std_error_handler(struct ata_port *ap) 21017 void ata_std_error_handler(struct ata_port *ap)
@@ -20873,8 +21022,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/libata-eh.c linux-2.6.32.21/drivers/ata/l
20873 21022
20874 /* ignore built-in hardreset if SCR access is not available */ 21023 /* ignore built-in hardreset if SCR access is not available */
20875diff -urNp linux-2.6.32.21/drivers/ata/libata-pmp.c linux-2.6.32.21/drivers/ata/libata-pmp.c 21024diff -urNp linux-2.6.32.21/drivers/ata/libata-pmp.c linux-2.6.32.21/drivers/ata/libata-pmp.c
20876--- linux-2.6.32.21/drivers/ata/libata-pmp.c 2010-08-26 19:42:20.000000000 -0400 21025--- linux-2.6.32.21/drivers/ata/libata-pmp.c 2010-08-13 16:24:37.000000000 -0400
20877+++ linux-2.6.32.21/drivers/ata/libata-pmp.c 2010-09-13 08:10:07.000000000 -0400 21026+++ linux-2.6.32.21/drivers/ata/libata-pmp.c 2010-09-04 15:54:51.000000000 -0400
20878@@ -841,7 +841,7 @@ static int sata_pmp_handle_link_fail(str 21027@@ -841,7 +841,7 @@ static int sata_pmp_handle_link_fail(str
20879 */ 21028 */
20880 static int sata_pmp_eh_recover(struct ata_port *ap) 21029 static int sata_pmp_eh_recover(struct ata_port *ap)
@@ -20885,8 +21034,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/libata-pmp.c linux-2.6.32.21/drivers/ata/
20885 struct ata_link *pmp_link = &ap->link; 21034 struct ata_link *pmp_link = &ap->link;
20886 struct ata_device *pmp_dev = pmp_link->device; 21035 struct ata_device *pmp_dev = pmp_link->device;
20887diff -urNp linux-2.6.32.21/drivers/ata/pata_acpi.c linux-2.6.32.21/drivers/ata/pata_acpi.c 21036diff -urNp linux-2.6.32.21/drivers/ata/pata_acpi.c linux-2.6.32.21/drivers/ata/pata_acpi.c
20888--- linux-2.6.32.21/drivers/ata/pata_acpi.c 2010-08-26 19:42:20.000000000 -0400 21037--- linux-2.6.32.21/drivers/ata/pata_acpi.c 2010-08-13 16:24:37.000000000 -0400
20889+++ linux-2.6.32.21/drivers/ata/pata_acpi.c 2010-09-13 08:10:07.000000000 -0400 21038+++ linux-2.6.32.21/drivers/ata/pata_acpi.c 2010-09-04 15:54:51.000000000 -0400
20890@@ -215,7 +215,7 @@ static struct scsi_host_template pacpi_s 21039@@ -215,7 +215,7 @@ static struct scsi_host_template pacpi_s
20891 ATA_BMDMA_SHT(DRV_NAME), 21040 ATA_BMDMA_SHT(DRV_NAME),
20892 }; 21041 };
@@ -20897,8 +21046,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_acpi.c linux-2.6.32.21/drivers/ata/p
20897 .qc_issue = pacpi_qc_issue, 21046 .qc_issue = pacpi_qc_issue,
20898 .cable_detect = pacpi_cable_detect, 21047 .cable_detect = pacpi_cable_detect,
20899diff -urNp linux-2.6.32.21/drivers/ata/pata_ali.c linux-2.6.32.21/drivers/ata/pata_ali.c 21048diff -urNp linux-2.6.32.21/drivers/ata/pata_ali.c linux-2.6.32.21/drivers/ata/pata_ali.c
20900--- linux-2.6.32.21/drivers/ata/pata_ali.c 2010-08-26 19:42:20.000000000 -0400 21049--- linux-2.6.32.21/drivers/ata/pata_ali.c 2010-08-13 16:24:37.000000000 -0400
20901+++ linux-2.6.32.21/drivers/ata/pata_ali.c 2010-09-13 08:10:07.000000000 -0400 21050+++ linux-2.6.32.21/drivers/ata/pata_ali.c 2010-09-04 15:54:51.000000000 -0400
20902@@ -365,7 +365,7 @@ static struct scsi_host_template ali_sht 21051@@ -365,7 +365,7 @@ static struct scsi_host_template ali_sht
20903 * Port operations for PIO only ALi 21052 * Port operations for PIO only ALi
20904 */ 21053 */
@@ -20945,8 +21094,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_ali.c linux-2.6.32.21/drivers/ata/pa
20945 .check_atapi_dma = ali_check_atapi_dma, 21094 .check_atapi_dma = ali_check_atapi_dma,
20946 .dev_config = ali_warn_atapi_dma, 21095 .dev_config = ali_warn_atapi_dma,
20947diff -urNp linux-2.6.32.21/drivers/ata/pata_amd.c linux-2.6.32.21/drivers/ata/pata_amd.c 21096diff -urNp linux-2.6.32.21/drivers/ata/pata_amd.c linux-2.6.32.21/drivers/ata/pata_amd.c
20948--- linux-2.6.32.21/drivers/ata/pata_amd.c 2010-08-26 19:42:20.000000000 -0400 21097--- linux-2.6.32.21/drivers/ata/pata_amd.c 2010-08-13 16:24:37.000000000 -0400
20949+++ linux-2.6.32.21/drivers/ata/pata_amd.c 2010-09-13 08:10:07.000000000 -0400 21098+++ linux-2.6.32.21/drivers/ata/pata_amd.c 2010-09-04 15:54:51.000000000 -0400
20950@@ -397,28 +397,28 @@ static const struct ata_port_operations 21099@@ -397,28 +397,28 @@ static const struct ata_port_operations
20951 .prereset = amd_pre_reset, 21100 .prereset = amd_pre_reset,
20952 }; 21101 };
@@ -20997,8 +21146,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_amd.c linux-2.6.32.21/drivers/ata/pa
20997 .set_piomode = nv133_set_piomode, 21146 .set_piomode = nv133_set_piomode,
20998 .set_dmamode = nv133_set_dmamode, 21147 .set_dmamode = nv133_set_dmamode,
20999diff -urNp linux-2.6.32.21/drivers/ata/pata_artop.c linux-2.6.32.21/drivers/ata/pata_artop.c 21148diff -urNp linux-2.6.32.21/drivers/ata/pata_artop.c linux-2.6.32.21/drivers/ata/pata_artop.c
21000--- linux-2.6.32.21/drivers/ata/pata_artop.c 2010-08-26 19:42:20.000000000 -0400 21149--- linux-2.6.32.21/drivers/ata/pata_artop.c 2010-08-13 16:24:37.000000000 -0400
21001+++ linux-2.6.32.21/drivers/ata/pata_artop.c 2010-09-13 08:10:07.000000000 -0400 21150+++ linux-2.6.32.21/drivers/ata/pata_artop.c 2010-09-04 15:54:51.000000000 -0400
21002@@ -311,7 +311,7 @@ static struct scsi_host_template artop_s 21151@@ -311,7 +311,7 @@ static struct scsi_host_template artop_s
21003 ATA_BMDMA_SHT(DRV_NAME), 21152 ATA_BMDMA_SHT(DRV_NAME),
21004 }; 21153 };
@@ -21018,8 +21167,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_artop.c linux-2.6.32.21/drivers/ata/
21018 .cable_detect = artop6260_cable_detect, 21167 .cable_detect = artop6260_cable_detect,
21019 .set_piomode = artop6260_set_piomode, 21168 .set_piomode = artop6260_set_piomode,
21020diff -urNp linux-2.6.32.21/drivers/ata/pata_at32.c linux-2.6.32.21/drivers/ata/pata_at32.c 21169diff -urNp linux-2.6.32.21/drivers/ata/pata_at32.c linux-2.6.32.21/drivers/ata/pata_at32.c
21021--- linux-2.6.32.21/drivers/ata/pata_at32.c 2010-08-26 19:42:20.000000000 -0400 21170--- linux-2.6.32.21/drivers/ata/pata_at32.c 2010-08-13 16:24:37.000000000 -0400
21022+++ linux-2.6.32.21/drivers/ata/pata_at32.c 2010-09-13 08:10:07.000000000 -0400 21171+++ linux-2.6.32.21/drivers/ata/pata_at32.c 2010-09-04 15:54:51.000000000 -0400
21023@@ -172,7 +172,7 @@ static struct scsi_host_template at32_sh 21172@@ -172,7 +172,7 @@ static struct scsi_host_template at32_sh
21024 ATA_PIO_SHT(DRV_NAME), 21173 ATA_PIO_SHT(DRV_NAME),
21025 }; 21174 };
@@ -21030,8 +21179,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_at32.c linux-2.6.32.21/drivers/ata/p
21030 .cable_detect = ata_cable_40wire, 21179 .cable_detect = ata_cable_40wire,
21031 .set_piomode = pata_at32_set_piomode, 21180 .set_piomode = pata_at32_set_piomode,
21032diff -urNp linux-2.6.32.21/drivers/ata/pata_at91.c linux-2.6.32.21/drivers/ata/pata_at91.c 21181diff -urNp linux-2.6.32.21/drivers/ata/pata_at91.c linux-2.6.32.21/drivers/ata/pata_at91.c
21033--- linux-2.6.32.21/drivers/ata/pata_at91.c 2010-08-26 19:42:20.000000000 -0400 21182--- linux-2.6.32.21/drivers/ata/pata_at91.c 2010-08-13 16:24:37.000000000 -0400
21034+++ linux-2.6.32.21/drivers/ata/pata_at91.c 2010-09-13 08:10:07.000000000 -0400 21183+++ linux-2.6.32.21/drivers/ata/pata_at91.c 2010-09-04 15:54:51.000000000 -0400
21035@@ -195,7 +195,7 @@ static struct scsi_host_template pata_at 21184@@ -195,7 +195,7 @@ static struct scsi_host_template pata_at
21036 ATA_PIO_SHT(DRV_NAME), 21185 ATA_PIO_SHT(DRV_NAME),
21037 }; 21186 };
@@ -21042,8 +21191,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_at91.c linux-2.6.32.21/drivers/ata/p
21042 21191
21043 .sff_data_xfer = pata_at91_data_xfer_noirq, 21192 .sff_data_xfer = pata_at91_data_xfer_noirq,
21044diff -urNp linux-2.6.32.21/drivers/ata/pata_atiixp.c linux-2.6.32.21/drivers/ata/pata_atiixp.c 21193diff -urNp linux-2.6.32.21/drivers/ata/pata_atiixp.c linux-2.6.32.21/drivers/ata/pata_atiixp.c
21045--- linux-2.6.32.21/drivers/ata/pata_atiixp.c 2010-08-26 19:42:20.000000000 -0400 21194--- linux-2.6.32.21/drivers/ata/pata_atiixp.c 2010-08-13 16:24:37.000000000 -0400
21046+++ linux-2.6.32.21/drivers/ata/pata_atiixp.c 2010-09-13 08:10:07.000000000 -0400 21195+++ linux-2.6.32.21/drivers/ata/pata_atiixp.c 2010-09-04 15:54:51.000000000 -0400
21047@@ -205,7 +205,7 @@ static struct scsi_host_template atiixp_ 21196@@ -205,7 +205,7 @@ static struct scsi_host_template atiixp_
21048 .sg_tablesize = LIBATA_DUMB_MAX_PRD, 21197 .sg_tablesize = LIBATA_DUMB_MAX_PRD,
21049 }; 21198 };
@@ -21054,8 +21203,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_atiixp.c linux-2.6.32.21/drivers/ata
21054 21203
21055 .qc_prep = ata_sff_dumb_qc_prep, 21204 .qc_prep = ata_sff_dumb_qc_prep,
21056diff -urNp linux-2.6.32.21/drivers/ata/pata_atp867x.c linux-2.6.32.21/drivers/ata/pata_atp867x.c 21205diff -urNp linux-2.6.32.21/drivers/ata/pata_atp867x.c linux-2.6.32.21/drivers/ata/pata_atp867x.c
21057--- linux-2.6.32.21/drivers/ata/pata_atp867x.c 2010-08-26 19:42:20.000000000 -0400 21206--- linux-2.6.32.21/drivers/ata/pata_atp867x.c 2010-08-13 16:24:37.000000000 -0400
21058+++ linux-2.6.32.21/drivers/ata/pata_atp867x.c 2010-09-13 08:10:07.000000000 -0400 21207+++ linux-2.6.32.21/drivers/ata/pata_atp867x.c 2010-09-04 15:54:51.000000000 -0400
21059@@ -274,7 +274,7 @@ static struct scsi_host_template atp867x 21208@@ -274,7 +274,7 @@ static struct scsi_host_template atp867x
21060 ATA_BMDMA_SHT(DRV_NAME), 21209 ATA_BMDMA_SHT(DRV_NAME),
21061 }; 21210 };
@@ -21066,8 +21215,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_atp867x.c linux-2.6.32.21/drivers/at
21066 .cable_detect = atp867x_cable_detect, 21215 .cable_detect = atp867x_cable_detect,
21067 .set_piomode = atp867x_set_piomode, 21216 .set_piomode = atp867x_set_piomode,
21068diff -urNp linux-2.6.32.21/drivers/ata/pata_bf54x.c linux-2.6.32.21/drivers/ata/pata_bf54x.c 21217diff -urNp linux-2.6.32.21/drivers/ata/pata_bf54x.c linux-2.6.32.21/drivers/ata/pata_bf54x.c
21069--- linux-2.6.32.21/drivers/ata/pata_bf54x.c 2010-08-26 19:42:20.000000000 -0400 21218--- linux-2.6.32.21/drivers/ata/pata_bf54x.c 2010-08-13 16:24:37.000000000 -0400
21070+++ linux-2.6.32.21/drivers/ata/pata_bf54x.c 2010-09-13 08:10:07.000000000 -0400 21219+++ linux-2.6.32.21/drivers/ata/pata_bf54x.c 2010-09-04 15:54:51.000000000 -0400
21071@@ -1464,7 +1464,7 @@ static struct scsi_host_template bfin_sh 21220@@ -1464,7 +1464,7 @@ static struct scsi_host_template bfin_sh
21072 .dma_boundary = ATA_DMA_BOUNDARY, 21221 .dma_boundary = ATA_DMA_BOUNDARY,
21073 }; 21222 };
@@ -21078,8 +21227,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_bf54x.c linux-2.6.32.21/drivers/ata/
21078 21227
21079 .set_piomode = bfin_set_piomode, 21228 .set_piomode = bfin_set_piomode,
21080diff -urNp linux-2.6.32.21/drivers/ata/pata_cmd640.c linux-2.6.32.21/drivers/ata/pata_cmd640.c 21229diff -urNp linux-2.6.32.21/drivers/ata/pata_cmd640.c linux-2.6.32.21/drivers/ata/pata_cmd640.c
21081--- linux-2.6.32.21/drivers/ata/pata_cmd640.c 2010-08-26 19:42:20.000000000 -0400 21230--- linux-2.6.32.21/drivers/ata/pata_cmd640.c 2010-08-13 16:24:37.000000000 -0400
21082+++ linux-2.6.32.21/drivers/ata/pata_cmd640.c 2010-09-13 08:10:07.000000000 -0400 21231+++ linux-2.6.32.21/drivers/ata/pata_cmd640.c 2010-09-04 15:54:51.000000000 -0400
21083@@ -168,7 +168,7 @@ static struct scsi_host_template cmd640_ 21232@@ -168,7 +168,7 @@ static struct scsi_host_template cmd640_
21084 ATA_BMDMA_SHT(DRV_NAME), 21233 ATA_BMDMA_SHT(DRV_NAME),
21085 }; 21234 };
@@ -21090,8 +21239,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_cmd640.c linux-2.6.32.21/drivers/ata
21090 /* In theory xfer_noirq is not needed once we kill the prefetcher */ 21239 /* In theory xfer_noirq is not needed once we kill the prefetcher */
21091 .sff_data_xfer = ata_sff_data_xfer_noirq, 21240 .sff_data_xfer = ata_sff_data_xfer_noirq,
21092diff -urNp linux-2.6.32.21/drivers/ata/pata_cmd64x.c linux-2.6.32.21/drivers/ata/pata_cmd64x.c 21241diff -urNp linux-2.6.32.21/drivers/ata/pata_cmd64x.c linux-2.6.32.21/drivers/ata/pata_cmd64x.c
21093--- linux-2.6.32.21/drivers/ata/pata_cmd64x.c 2010-08-26 19:42:20.000000000 -0400 21242--- linux-2.6.32.21/drivers/ata/pata_cmd64x.c 2010-08-13 16:24:37.000000000 -0400
21094+++ linux-2.6.32.21/drivers/ata/pata_cmd64x.c 2010-09-13 08:10:07.000000000 -0400 21243+++ linux-2.6.32.21/drivers/ata/pata_cmd64x.c 2010-09-04 15:54:51.000000000 -0400
21095@@ -275,18 +275,18 @@ static const struct ata_port_operations 21244@@ -275,18 +275,18 @@ static const struct ata_port_operations
21096 .set_dmamode = cmd64x_set_dmamode, 21245 .set_dmamode = cmd64x_set_dmamode,
21097 }; 21246 };
@@ -21115,8 +21264,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_cmd64x.c linux-2.6.32.21/drivers/ata
21115 .bmdma_stop = cmd648_bmdma_stop, 21264 .bmdma_stop = cmd648_bmdma_stop,
21116 .cable_detect = cmd648_cable_detect, 21265 .cable_detect = cmd648_cable_detect,
21117diff -urNp linux-2.6.32.21/drivers/ata/pata_cs5520.c linux-2.6.32.21/drivers/ata/pata_cs5520.c 21266diff -urNp linux-2.6.32.21/drivers/ata/pata_cs5520.c linux-2.6.32.21/drivers/ata/pata_cs5520.c
21118--- linux-2.6.32.21/drivers/ata/pata_cs5520.c 2010-08-26 19:42:20.000000000 -0400 21267--- linux-2.6.32.21/drivers/ata/pata_cs5520.c 2010-08-13 16:24:37.000000000 -0400
21119+++ linux-2.6.32.21/drivers/ata/pata_cs5520.c 2010-09-13 08:10:07.000000000 -0400 21268+++ linux-2.6.32.21/drivers/ata/pata_cs5520.c 2010-09-04 15:54:51.000000000 -0400
21120@@ -144,7 +144,7 @@ static struct scsi_host_template cs5520_ 21269@@ -144,7 +144,7 @@ static struct scsi_host_template cs5520_
21121 .sg_tablesize = LIBATA_DUMB_MAX_PRD, 21270 .sg_tablesize = LIBATA_DUMB_MAX_PRD,
21122 }; 21271 };
@@ -21127,8 +21276,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_cs5520.c linux-2.6.32.21/drivers/ata
21127 .qc_prep = ata_sff_dumb_qc_prep, 21276 .qc_prep = ata_sff_dumb_qc_prep,
21128 .cable_detect = ata_cable_40wire, 21277 .cable_detect = ata_cable_40wire,
21129diff -urNp linux-2.6.32.21/drivers/ata/pata_cs5530.c linux-2.6.32.21/drivers/ata/pata_cs5530.c 21278diff -urNp linux-2.6.32.21/drivers/ata/pata_cs5530.c linux-2.6.32.21/drivers/ata/pata_cs5530.c
21130--- linux-2.6.32.21/drivers/ata/pata_cs5530.c 2010-08-26 19:42:20.000000000 -0400 21279--- linux-2.6.32.21/drivers/ata/pata_cs5530.c 2010-08-13 16:24:37.000000000 -0400
21131+++ linux-2.6.32.21/drivers/ata/pata_cs5530.c 2010-09-13 08:10:07.000000000 -0400 21280+++ linux-2.6.32.21/drivers/ata/pata_cs5530.c 2010-09-04 15:54:51.000000000 -0400
21132@@ -164,7 +164,7 @@ static struct scsi_host_template cs5530_ 21281@@ -164,7 +164,7 @@ static struct scsi_host_template cs5530_
21133 .sg_tablesize = LIBATA_DUMB_MAX_PRD, 21282 .sg_tablesize = LIBATA_DUMB_MAX_PRD,
21134 }; 21283 };
@@ -21139,8 +21288,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_cs5530.c linux-2.6.32.21/drivers/ata
21139 21288
21140 .qc_prep = ata_sff_dumb_qc_prep, 21289 .qc_prep = ata_sff_dumb_qc_prep,
21141diff -urNp linux-2.6.32.21/drivers/ata/pata_cs5535.c linux-2.6.32.21/drivers/ata/pata_cs5535.c 21290diff -urNp linux-2.6.32.21/drivers/ata/pata_cs5535.c linux-2.6.32.21/drivers/ata/pata_cs5535.c
21142--- linux-2.6.32.21/drivers/ata/pata_cs5535.c 2010-08-26 19:42:20.000000000 -0400 21291--- linux-2.6.32.21/drivers/ata/pata_cs5535.c 2010-08-13 16:24:37.000000000 -0400
21143+++ linux-2.6.32.21/drivers/ata/pata_cs5535.c 2010-09-13 08:10:07.000000000 -0400 21292+++ linux-2.6.32.21/drivers/ata/pata_cs5535.c 2010-09-04 15:54:51.000000000 -0400
21144@@ -160,7 +160,7 @@ static struct scsi_host_template cs5535_ 21293@@ -160,7 +160,7 @@ static struct scsi_host_template cs5535_
21145 ATA_BMDMA_SHT(DRV_NAME), 21294 ATA_BMDMA_SHT(DRV_NAME),
21146 }; 21295 };
@@ -21151,8 +21300,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_cs5535.c linux-2.6.32.21/drivers/ata
21151 .cable_detect = cs5535_cable_detect, 21300 .cable_detect = cs5535_cable_detect,
21152 .set_piomode = cs5535_set_piomode, 21301 .set_piomode = cs5535_set_piomode,
21153diff -urNp linux-2.6.32.21/drivers/ata/pata_cs5536.c linux-2.6.32.21/drivers/ata/pata_cs5536.c 21302diff -urNp linux-2.6.32.21/drivers/ata/pata_cs5536.c linux-2.6.32.21/drivers/ata/pata_cs5536.c
21154--- linux-2.6.32.21/drivers/ata/pata_cs5536.c 2010-08-26 19:42:20.000000000 -0400 21303--- linux-2.6.32.21/drivers/ata/pata_cs5536.c 2010-08-13 16:24:37.000000000 -0400
21155+++ linux-2.6.32.21/drivers/ata/pata_cs5536.c 2010-09-13 08:10:07.000000000 -0400 21304+++ linux-2.6.32.21/drivers/ata/pata_cs5536.c 2010-09-04 15:54:51.000000000 -0400
21156@@ -223,7 +223,7 @@ static struct scsi_host_template cs5536_ 21305@@ -223,7 +223,7 @@ static struct scsi_host_template cs5536_
21157 ATA_BMDMA_SHT(DRV_NAME), 21306 ATA_BMDMA_SHT(DRV_NAME),
21158 }; 21307 };
@@ -21163,8 +21312,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_cs5536.c linux-2.6.32.21/drivers/ata
21163 .cable_detect = cs5536_cable_detect, 21312 .cable_detect = cs5536_cable_detect,
21164 .set_piomode = cs5536_set_piomode, 21313 .set_piomode = cs5536_set_piomode,
21165diff -urNp linux-2.6.32.21/drivers/ata/pata_cypress.c linux-2.6.32.21/drivers/ata/pata_cypress.c 21314diff -urNp linux-2.6.32.21/drivers/ata/pata_cypress.c linux-2.6.32.21/drivers/ata/pata_cypress.c
21166--- linux-2.6.32.21/drivers/ata/pata_cypress.c 2010-08-26 19:42:20.000000000 -0400 21315--- linux-2.6.32.21/drivers/ata/pata_cypress.c 2010-08-13 16:24:37.000000000 -0400
21167+++ linux-2.6.32.21/drivers/ata/pata_cypress.c 2010-09-13 08:10:07.000000000 -0400 21316+++ linux-2.6.32.21/drivers/ata/pata_cypress.c 2010-09-04 15:54:51.000000000 -0400
21168@@ -113,7 +113,7 @@ static struct scsi_host_template cy82c69 21317@@ -113,7 +113,7 @@ static struct scsi_host_template cy82c69
21169 ATA_BMDMA_SHT(DRV_NAME), 21318 ATA_BMDMA_SHT(DRV_NAME),
21170 }; 21319 };
@@ -21175,8 +21324,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_cypress.c linux-2.6.32.21/drivers/at
21175 .cable_detect = ata_cable_40wire, 21324 .cable_detect = ata_cable_40wire,
21176 .set_piomode = cy82c693_set_piomode, 21325 .set_piomode = cy82c693_set_piomode,
21177diff -urNp linux-2.6.32.21/drivers/ata/pata_efar.c linux-2.6.32.21/drivers/ata/pata_efar.c 21326diff -urNp linux-2.6.32.21/drivers/ata/pata_efar.c linux-2.6.32.21/drivers/ata/pata_efar.c
21178--- linux-2.6.32.21/drivers/ata/pata_efar.c 2010-08-26 19:42:20.000000000 -0400 21327--- linux-2.6.32.21/drivers/ata/pata_efar.c 2010-08-13 16:24:37.000000000 -0400
21179+++ linux-2.6.32.21/drivers/ata/pata_efar.c 2010-09-13 08:10:07.000000000 -0400 21328+++ linux-2.6.32.21/drivers/ata/pata_efar.c 2010-09-04 15:54:51.000000000 -0400
21180@@ -222,7 +222,7 @@ static struct scsi_host_template efar_sh 21329@@ -222,7 +222,7 @@ static struct scsi_host_template efar_sh
21181 ATA_BMDMA_SHT(DRV_NAME), 21330 ATA_BMDMA_SHT(DRV_NAME),
21182 }; 21331 };
@@ -21187,8 +21336,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_efar.c linux-2.6.32.21/drivers/ata/p
21187 .cable_detect = efar_cable_detect, 21336 .cable_detect = efar_cable_detect,
21188 .set_piomode = efar_set_piomode, 21337 .set_piomode = efar_set_piomode,
21189diff -urNp linux-2.6.32.21/drivers/ata/pata_hpt366.c linux-2.6.32.21/drivers/ata/pata_hpt366.c 21338diff -urNp linux-2.6.32.21/drivers/ata/pata_hpt366.c linux-2.6.32.21/drivers/ata/pata_hpt366.c
21190--- linux-2.6.32.21/drivers/ata/pata_hpt366.c 2010-08-26 19:42:20.000000000 -0400 21339--- linux-2.6.32.21/drivers/ata/pata_hpt366.c 2010-08-13 16:24:37.000000000 -0400
21191+++ linux-2.6.32.21/drivers/ata/pata_hpt366.c 2010-09-13 08:10:07.000000000 -0400 21340+++ linux-2.6.32.21/drivers/ata/pata_hpt366.c 2010-09-04 15:54:51.000000000 -0400
21192@@ -282,7 +282,7 @@ static struct scsi_host_template hpt36x_ 21341@@ -282,7 +282,7 @@ static struct scsi_host_template hpt36x_
21193 * Configuration for HPT366/68 21342 * Configuration for HPT366/68
21194 */ 21343 */
@@ -21199,8 +21348,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_hpt366.c linux-2.6.32.21/drivers/ata
21199 .cable_detect = hpt36x_cable_detect, 21348 .cable_detect = hpt36x_cable_detect,
21200 .mode_filter = hpt366_filter, 21349 .mode_filter = hpt366_filter,
21201diff -urNp linux-2.6.32.21/drivers/ata/pata_hpt37x.c linux-2.6.32.21/drivers/ata/pata_hpt37x.c 21350diff -urNp linux-2.6.32.21/drivers/ata/pata_hpt37x.c linux-2.6.32.21/drivers/ata/pata_hpt37x.c
21202--- linux-2.6.32.21/drivers/ata/pata_hpt37x.c 2010-08-26 19:42:20.000000000 -0400 21351--- linux-2.6.32.21/drivers/ata/pata_hpt37x.c 2010-08-13 16:24:37.000000000 -0400
21203+++ linux-2.6.32.21/drivers/ata/pata_hpt37x.c 2010-09-13 08:10:07.000000000 -0400 21352+++ linux-2.6.32.21/drivers/ata/pata_hpt37x.c 2010-09-04 15:54:51.000000000 -0400
21204@@ -576,7 +576,7 @@ static struct scsi_host_template hpt37x_ 21353@@ -576,7 +576,7 @@ static struct scsi_host_template hpt37x_
21205 * Configuration for HPT370 21354 * Configuration for HPT370
21206 */ 21355 */
@@ -21238,8 +21387,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_hpt37x.c linux-2.6.32.21/drivers/ata
21238 .prereset = hpt374_fn1_pre_reset, 21387 .prereset = hpt374_fn1_pre_reset,
21239 }; 21388 };
21240diff -urNp linux-2.6.32.21/drivers/ata/pata_hpt3x2n.c linux-2.6.32.21/drivers/ata/pata_hpt3x2n.c 21389diff -urNp linux-2.6.32.21/drivers/ata/pata_hpt3x2n.c linux-2.6.32.21/drivers/ata/pata_hpt3x2n.c
21241--- linux-2.6.32.21/drivers/ata/pata_hpt3x2n.c 2010-08-26 19:42:20.000000000 -0400 21390--- linux-2.6.32.21/drivers/ata/pata_hpt3x2n.c 2010-08-13 16:24:37.000000000 -0400
21242+++ linux-2.6.32.21/drivers/ata/pata_hpt3x2n.c 2010-09-13 08:10:07.000000000 -0400 21391+++ linux-2.6.32.21/drivers/ata/pata_hpt3x2n.c 2010-09-04 15:54:51.000000000 -0400
21243@@ -337,7 +337,7 @@ static struct scsi_host_template hpt3x2n 21392@@ -337,7 +337,7 @@ static struct scsi_host_template hpt3x2n
21244 * Configuration for HPT3x2n. 21393 * Configuration for HPT3x2n.
21245 */ 21394 */
@@ -21250,8 +21399,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_hpt3x2n.c linux-2.6.32.21/drivers/at
21250 21399
21251 .bmdma_stop = hpt3x2n_bmdma_stop, 21400 .bmdma_stop = hpt3x2n_bmdma_stop,
21252diff -urNp linux-2.6.32.21/drivers/ata/pata_hpt3x3.c linux-2.6.32.21/drivers/ata/pata_hpt3x3.c 21401diff -urNp linux-2.6.32.21/drivers/ata/pata_hpt3x3.c linux-2.6.32.21/drivers/ata/pata_hpt3x3.c
21253--- linux-2.6.32.21/drivers/ata/pata_hpt3x3.c 2010-08-26 19:42:20.000000000 -0400 21402--- linux-2.6.32.21/drivers/ata/pata_hpt3x3.c 2010-08-13 16:24:37.000000000 -0400
21254+++ linux-2.6.32.21/drivers/ata/pata_hpt3x3.c 2010-09-13 08:10:07.000000000 -0400 21403+++ linux-2.6.32.21/drivers/ata/pata_hpt3x3.c 2010-09-04 15:54:51.000000000 -0400
21255@@ -141,7 +141,7 @@ static struct scsi_host_template hpt3x3_ 21404@@ -141,7 +141,7 @@ static struct scsi_host_template hpt3x3_
21256 ATA_BMDMA_SHT(DRV_NAME), 21405 ATA_BMDMA_SHT(DRV_NAME),
21257 }; 21406 };
@@ -21262,8 +21411,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_hpt3x3.c linux-2.6.32.21/drivers/ata
21262 .cable_detect = ata_cable_40wire, 21411 .cable_detect = ata_cable_40wire,
21263 .set_piomode = hpt3x3_set_piomode, 21412 .set_piomode = hpt3x3_set_piomode,
21264diff -urNp linux-2.6.32.21/drivers/ata/pata_icside.c linux-2.6.32.21/drivers/ata/pata_icside.c 21413diff -urNp linux-2.6.32.21/drivers/ata/pata_icside.c linux-2.6.32.21/drivers/ata/pata_icside.c
21265--- linux-2.6.32.21/drivers/ata/pata_icside.c 2010-08-26 19:42:20.000000000 -0400 21414--- linux-2.6.32.21/drivers/ata/pata_icside.c 2010-08-13 16:24:37.000000000 -0400
21266+++ linux-2.6.32.21/drivers/ata/pata_icside.c 2010-09-13 08:10:07.000000000 -0400 21415+++ linux-2.6.32.21/drivers/ata/pata_icside.c 2010-09-04 15:54:51.000000000 -0400
21267@@ -319,7 +319,7 @@ static void pata_icside_postreset(struct 21416@@ -319,7 +319,7 @@ static void pata_icside_postreset(struct
21268 } 21417 }
21269 } 21418 }
@@ -21274,8 +21423,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_icside.c linux-2.6.32.21/drivers/ata
21274 /* no need to build any PRD tables for DMA */ 21423 /* no need to build any PRD tables for DMA */
21275 .qc_prep = ata_noop_qc_prep, 21424 .qc_prep = ata_noop_qc_prep,
21276diff -urNp linux-2.6.32.21/drivers/ata/pata_isapnp.c linux-2.6.32.21/drivers/ata/pata_isapnp.c 21425diff -urNp linux-2.6.32.21/drivers/ata/pata_isapnp.c linux-2.6.32.21/drivers/ata/pata_isapnp.c
21277--- linux-2.6.32.21/drivers/ata/pata_isapnp.c 2010-08-26 19:42:20.000000000 -0400 21426--- linux-2.6.32.21/drivers/ata/pata_isapnp.c 2010-08-13 16:24:37.000000000 -0400
21278+++ linux-2.6.32.21/drivers/ata/pata_isapnp.c 2010-09-13 08:10:07.000000000 -0400 21427+++ linux-2.6.32.21/drivers/ata/pata_isapnp.c 2010-09-04 15:54:51.000000000 -0400
21279@@ -23,12 +23,12 @@ static struct scsi_host_template isapnp_ 21428@@ -23,12 +23,12 @@ static struct scsi_host_template isapnp_
21280 ATA_PIO_SHT(DRV_NAME), 21429 ATA_PIO_SHT(DRV_NAME),
21281 }; 21430 };
@@ -21292,8 +21441,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_isapnp.c linux-2.6.32.21/drivers/ata
21292 .cable_detect = ata_cable_40wire, 21441 .cable_detect = ata_cable_40wire,
21293 /* No altstatus so we don't want to use the lost interrupt poll */ 21442 /* No altstatus so we don't want to use the lost interrupt poll */
21294diff -urNp linux-2.6.32.21/drivers/ata/pata_it8213.c linux-2.6.32.21/drivers/ata/pata_it8213.c 21443diff -urNp linux-2.6.32.21/drivers/ata/pata_it8213.c linux-2.6.32.21/drivers/ata/pata_it8213.c
21295--- linux-2.6.32.21/drivers/ata/pata_it8213.c 2010-08-26 19:42:20.000000000 -0400 21444--- linux-2.6.32.21/drivers/ata/pata_it8213.c 2010-08-13 16:24:37.000000000 -0400
21296+++ linux-2.6.32.21/drivers/ata/pata_it8213.c 2010-09-13 08:10:07.000000000 -0400 21445+++ linux-2.6.32.21/drivers/ata/pata_it8213.c 2010-09-04 15:54:51.000000000 -0400
21297@@ -234,7 +234,7 @@ static struct scsi_host_template it8213_ 21446@@ -234,7 +234,7 @@ static struct scsi_host_template it8213_
21298 }; 21447 };
21299 21448
@@ -21304,8 +21453,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_it8213.c linux-2.6.32.21/drivers/ata
21304 .cable_detect = it8213_cable_detect, 21453 .cable_detect = it8213_cable_detect,
21305 .set_piomode = it8213_set_piomode, 21454 .set_piomode = it8213_set_piomode,
21306diff -urNp linux-2.6.32.21/drivers/ata/pata_it821x.c linux-2.6.32.21/drivers/ata/pata_it821x.c 21455diff -urNp linux-2.6.32.21/drivers/ata/pata_it821x.c linux-2.6.32.21/drivers/ata/pata_it821x.c
21307--- linux-2.6.32.21/drivers/ata/pata_it821x.c 2010-08-26 19:42:20.000000000 -0400 21456--- linux-2.6.32.21/drivers/ata/pata_it821x.c 2010-08-13 16:24:37.000000000 -0400
21308+++ linux-2.6.32.21/drivers/ata/pata_it821x.c 2010-09-13 08:10:07.000000000 -0400 21457+++ linux-2.6.32.21/drivers/ata/pata_it821x.c 2010-09-04 15:54:51.000000000 -0400
21309@@ -800,7 +800,7 @@ static struct scsi_host_template it821x_ 21458@@ -800,7 +800,7 @@ static struct scsi_host_template it821x_
21310 ATA_BMDMA_SHT(DRV_NAME), 21459 ATA_BMDMA_SHT(DRV_NAME),
21311 }; 21460 };
@@ -21334,8 +21483,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_it821x.c linux-2.6.32.21/drivers/ata
21334 21483
21335 .check_atapi_dma= it821x_check_atapi_dma, 21484 .check_atapi_dma= it821x_check_atapi_dma,
21336diff -urNp linux-2.6.32.21/drivers/ata/pata_ixp4xx_cf.c linux-2.6.32.21/drivers/ata/pata_ixp4xx_cf.c 21485diff -urNp linux-2.6.32.21/drivers/ata/pata_ixp4xx_cf.c linux-2.6.32.21/drivers/ata/pata_ixp4xx_cf.c
21337--- linux-2.6.32.21/drivers/ata/pata_ixp4xx_cf.c 2010-08-26 19:42:20.000000000 -0400 21486--- linux-2.6.32.21/drivers/ata/pata_ixp4xx_cf.c 2010-08-13 16:24:37.000000000 -0400
21338+++ linux-2.6.32.21/drivers/ata/pata_ixp4xx_cf.c 2010-09-13 08:10:07.000000000 -0400 21487+++ linux-2.6.32.21/drivers/ata/pata_ixp4xx_cf.c 2010-09-04 15:54:51.000000000 -0400
21339@@ -89,7 +89,7 @@ static struct scsi_host_template ixp4xx_ 21488@@ -89,7 +89,7 @@ static struct scsi_host_template ixp4xx_
21340 ATA_PIO_SHT(DRV_NAME), 21489 ATA_PIO_SHT(DRV_NAME),
21341 }; 21490 };
@@ -21346,8 +21495,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_ixp4xx_cf.c linux-2.6.32.21/drivers/
21346 .sff_data_xfer = ixp4xx_mmio_data_xfer, 21495 .sff_data_xfer = ixp4xx_mmio_data_xfer,
21347 .cable_detect = ata_cable_40wire, 21496 .cable_detect = ata_cable_40wire,
21348diff -urNp linux-2.6.32.21/drivers/ata/pata_jmicron.c linux-2.6.32.21/drivers/ata/pata_jmicron.c 21497diff -urNp linux-2.6.32.21/drivers/ata/pata_jmicron.c linux-2.6.32.21/drivers/ata/pata_jmicron.c
21349--- linux-2.6.32.21/drivers/ata/pata_jmicron.c 2010-08-26 19:42:20.000000000 -0400 21498--- linux-2.6.32.21/drivers/ata/pata_jmicron.c 2010-08-13 16:24:37.000000000 -0400
21350+++ linux-2.6.32.21/drivers/ata/pata_jmicron.c 2010-09-13 08:10:07.000000000 -0400 21499+++ linux-2.6.32.21/drivers/ata/pata_jmicron.c 2010-09-04 15:54:51.000000000 -0400
21351@@ -111,7 +111,7 @@ static struct scsi_host_template jmicron 21500@@ -111,7 +111,7 @@ static struct scsi_host_template jmicron
21352 ATA_BMDMA_SHT(DRV_NAME), 21501 ATA_BMDMA_SHT(DRV_NAME),
21353 }; 21502 };
@@ -21358,8 +21507,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_jmicron.c linux-2.6.32.21/drivers/at
21358 .prereset = jmicron_pre_reset, 21507 .prereset = jmicron_pre_reset,
21359 }; 21508 };
21360diff -urNp linux-2.6.32.21/drivers/ata/pata_legacy.c linux-2.6.32.21/drivers/ata/pata_legacy.c 21509diff -urNp linux-2.6.32.21/drivers/ata/pata_legacy.c linux-2.6.32.21/drivers/ata/pata_legacy.c
21361--- linux-2.6.32.21/drivers/ata/pata_legacy.c 2010-08-26 19:42:20.000000000 -0400 21510--- linux-2.6.32.21/drivers/ata/pata_legacy.c 2010-08-13 16:24:37.000000000 -0400
21362+++ linux-2.6.32.21/drivers/ata/pata_legacy.c 2010-09-13 08:10:07.000000000 -0400 21511+++ linux-2.6.32.21/drivers/ata/pata_legacy.c 2010-09-04 15:54:51.000000000 -0400
21363@@ -106,7 +106,7 @@ struct legacy_probe { 21512@@ -106,7 +106,7 @@ struct legacy_probe {
21364 21513
21365 struct legacy_controller { 21514 struct legacy_controller {
@@ -21472,8 +21621,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_legacy.c linux-2.6.32.21/drivers/ata
21472 struct ata_host *host = NULL; 21621 struct ata_host *host = NULL;
21473 struct ata_port *ap; 21622 struct ata_port *ap;
21474diff -urNp linux-2.6.32.21/drivers/ata/pata_marvell.c linux-2.6.32.21/drivers/ata/pata_marvell.c 21623diff -urNp linux-2.6.32.21/drivers/ata/pata_marvell.c linux-2.6.32.21/drivers/ata/pata_marvell.c
21475--- linux-2.6.32.21/drivers/ata/pata_marvell.c 2010-08-26 19:42:20.000000000 -0400 21624--- linux-2.6.32.21/drivers/ata/pata_marvell.c 2010-08-13 16:24:37.000000000 -0400
21476+++ linux-2.6.32.21/drivers/ata/pata_marvell.c 2010-09-13 08:10:07.000000000 -0400 21625+++ linux-2.6.32.21/drivers/ata/pata_marvell.c 2010-09-04 15:54:51.000000000 -0400
21477@@ -100,7 +100,7 @@ static struct scsi_host_template marvell 21626@@ -100,7 +100,7 @@ static struct scsi_host_template marvell
21478 ATA_BMDMA_SHT(DRV_NAME), 21627 ATA_BMDMA_SHT(DRV_NAME),
21479 }; 21628 };
@@ -21484,8 +21633,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_marvell.c linux-2.6.32.21/drivers/at
21484 .cable_detect = marvell_cable_detect, 21633 .cable_detect = marvell_cable_detect,
21485 .prereset = marvell_pre_reset, 21634 .prereset = marvell_pre_reset,
21486diff -urNp linux-2.6.32.21/drivers/ata/pata_mpc52xx.c linux-2.6.32.21/drivers/ata/pata_mpc52xx.c 21635diff -urNp linux-2.6.32.21/drivers/ata/pata_mpc52xx.c linux-2.6.32.21/drivers/ata/pata_mpc52xx.c
21487--- linux-2.6.32.21/drivers/ata/pata_mpc52xx.c 2010-08-26 19:42:20.000000000 -0400 21636--- linux-2.6.32.21/drivers/ata/pata_mpc52xx.c 2010-08-13 16:24:37.000000000 -0400
21488+++ linux-2.6.32.21/drivers/ata/pata_mpc52xx.c 2010-09-13 08:10:07.000000000 -0400 21637+++ linux-2.6.32.21/drivers/ata/pata_mpc52xx.c 2010-09-04 15:54:51.000000000 -0400
21489@@ -609,7 +609,7 @@ static struct scsi_host_template mpc52xx 21638@@ -609,7 +609,7 @@ static struct scsi_host_template mpc52xx
21490 ATA_PIO_SHT(DRV_NAME), 21639 ATA_PIO_SHT(DRV_NAME),
21491 }; 21640 };
@@ -21496,8 +21645,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_mpc52xx.c linux-2.6.32.21/drivers/at
21496 .sff_dev_select = mpc52xx_ata_dev_select, 21645 .sff_dev_select = mpc52xx_ata_dev_select,
21497 .set_piomode = mpc52xx_ata_set_piomode, 21646 .set_piomode = mpc52xx_ata_set_piomode,
21498diff -urNp linux-2.6.32.21/drivers/ata/pata_mpiix.c linux-2.6.32.21/drivers/ata/pata_mpiix.c 21647diff -urNp linux-2.6.32.21/drivers/ata/pata_mpiix.c linux-2.6.32.21/drivers/ata/pata_mpiix.c
21499--- linux-2.6.32.21/drivers/ata/pata_mpiix.c 2010-08-26 19:42:20.000000000 -0400 21648--- linux-2.6.32.21/drivers/ata/pata_mpiix.c 2010-08-13 16:24:37.000000000 -0400
21500+++ linux-2.6.32.21/drivers/ata/pata_mpiix.c 2010-09-13 08:10:07.000000000 -0400 21649+++ linux-2.6.32.21/drivers/ata/pata_mpiix.c 2010-09-04 15:54:51.000000000 -0400
21501@@ -140,7 +140,7 @@ static struct scsi_host_template mpiix_s 21650@@ -140,7 +140,7 @@ static struct scsi_host_template mpiix_s
21502 ATA_PIO_SHT(DRV_NAME), 21651 ATA_PIO_SHT(DRV_NAME),
21503 }; 21652 };
@@ -21508,8 +21657,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_mpiix.c linux-2.6.32.21/drivers/ata/
21508 .qc_issue = mpiix_qc_issue, 21657 .qc_issue = mpiix_qc_issue,
21509 .cable_detect = ata_cable_40wire, 21658 .cable_detect = ata_cable_40wire,
21510diff -urNp linux-2.6.32.21/drivers/ata/pata_netcell.c linux-2.6.32.21/drivers/ata/pata_netcell.c 21659diff -urNp linux-2.6.32.21/drivers/ata/pata_netcell.c linux-2.6.32.21/drivers/ata/pata_netcell.c
21511--- linux-2.6.32.21/drivers/ata/pata_netcell.c 2010-08-26 19:42:20.000000000 -0400 21660--- linux-2.6.32.21/drivers/ata/pata_netcell.c 2010-08-13 16:24:37.000000000 -0400
21512+++ linux-2.6.32.21/drivers/ata/pata_netcell.c 2010-09-13 08:10:07.000000000 -0400 21661+++ linux-2.6.32.21/drivers/ata/pata_netcell.c 2010-09-04 15:54:51.000000000 -0400
21513@@ -34,7 +34,7 @@ static struct scsi_host_template netcell 21662@@ -34,7 +34,7 @@ static struct scsi_host_template netcell
21514 ATA_BMDMA_SHT(DRV_NAME), 21663 ATA_BMDMA_SHT(DRV_NAME),
21515 }; 21664 };
@@ -21520,8 +21669,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_netcell.c linux-2.6.32.21/drivers/at
21520 .cable_detect = ata_cable_80wire, 21669 .cable_detect = ata_cable_80wire,
21521 .read_id = netcell_read_id, 21670 .read_id = netcell_read_id,
21522diff -urNp linux-2.6.32.21/drivers/ata/pata_ninja32.c linux-2.6.32.21/drivers/ata/pata_ninja32.c 21671diff -urNp linux-2.6.32.21/drivers/ata/pata_ninja32.c linux-2.6.32.21/drivers/ata/pata_ninja32.c
21523--- linux-2.6.32.21/drivers/ata/pata_ninja32.c 2010-08-26 19:42:20.000000000 -0400 21672--- linux-2.6.32.21/drivers/ata/pata_ninja32.c 2010-08-13 16:24:37.000000000 -0400
21524+++ linux-2.6.32.21/drivers/ata/pata_ninja32.c 2010-09-13 08:10:07.000000000 -0400 21673+++ linux-2.6.32.21/drivers/ata/pata_ninja32.c 2010-09-04 15:54:51.000000000 -0400
21525@@ -81,7 +81,7 @@ static struct scsi_host_template ninja32 21674@@ -81,7 +81,7 @@ static struct scsi_host_template ninja32
21526 ATA_BMDMA_SHT(DRV_NAME), 21675 ATA_BMDMA_SHT(DRV_NAME),
21527 }; 21676 };
@@ -21532,8 +21681,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_ninja32.c linux-2.6.32.21/drivers/at
21532 .sff_dev_select = ninja32_dev_select, 21681 .sff_dev_select = ninja32_dev_select,
21533 .cable_detect = ata_cable_40wire, 21682 .cable_detect = ata_cable_40wire,
21534diff -urNp linux-2.6.32.21/drivers/ata/pata_ns87410.c linux-2.6.32.21/drivers/ata/pata_ns87410.c 21683diff -urNp linux-2.6.32.21/drivers/ata/pata_ns87410.c linux-2.6.32.21/drivers/ata/pata_ns87410.c
21535--- linux-2.6.32.21/drivers/ata/pata_ns87410.c 2010-08-26 19:42:20.000000000 -0400 21684--- linux-2.6.32.21/drivers/ata/pata_ns87410.c 2010-08-13 16:24:37.000000000 -0400
21536+++ linux-2.6.32.21/drivers/ata/pata_ns87410.c 2010-09-13 08:10:07.000000000 -0400 21685+++ linux-2.6.32.21/drivers/ata/pata_ns87410.c 2010-09-04 15:54:51.000000000 -0400
21537@@ -132,7 +132,7 @@ static struct scsi_host_template ns87410 21686@@ -132,7 +132,7 @@ static struct scsi_host_template ns87410
21538 ATA_PIO_SHT(DRV_NAME), 21687 ATA_PIO_SHT(DRV_NAME),
21539 }; 21688 };
@@ -21544,8 +21693,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_ns87410.c linux-2.6.32.21/drivers/at
21544 .qc_issue = ns87410_qc_issue, 21693 .qc_issue = ns87410_qc_issue,
21545 .cable_detect = ata_cable_40wire, 21694 .cable_detect = ata_cable_40wire,
21546diff -urNp linux-2.6.32.21/drivers/ata/pata_ns87415.c linux-2.6.32.21/drivers/ata/pata_ns87415.c 21695diff -urNp linux-2.6.32.21/drivers/ata/pata_ns87415.c linux-2.6.32.21/drivers/ata/pata_ns87415.c
21547--- linux-2.6.32.21/drivers/ata/pata_ns87415.c 2010-08-26 19:42:20.000000000 -0400 21696--- linux-2.6.32.21/drivers/ata/pata_ns87415.c 2010-08-13 16:24:37.000000000 -0400
21548+++ linux-2.6.32.21/drivers/ata/pata_ns87415.c 2010-09-13 08:10:07.000000000 -0400 21697+++ linux-2.6.32.21/drivers/ata/pata_ns87415.c 2010-09-04 15:54:51.000000000 -0400
21549@@ -299,7 +299,7 @@ static u8 ns87560_bmdma_status(struct at 21698@@ -299,7 +299,7 @@ static u8 ns87560_bmdma_status(struct at
21550 } 21699 }
21551 #endif /* 87560 SuperIO Support */ 21700 #endif /* 87560 SuperIO Support */
@@ -21565,8 +21714,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_ns87415.c linux-2.6.32.21/drivers/at
21565 .sff_tf_read = ns87560_tf_read, 21714 .sff_tf_read = ns87560_tf_read,
21566 .sff_check_status = ns87560_check_status, 21715 .sff_check_status = ns87560_check_status,
21567diff -urNp linux-2.6.32.21/drivers/ata/pata_octeon_cf.c linux-2.6.32.21/drivers/ata/pata_octeon_cf.c 21716diff -urNp linux-2.6.32.21/drivers/ata/pata_octeon_cf.c linux-2.6.32.21/drivers/ata/pata_octeon_cf.c
21568--- linux-2.6.32.21/drivers/ata/pata_octeon_cf.c 2010-08-26 19:42:20.000000000 -0400 21717--- linux-2.6.32.21/drivers/ata/pata_octeon_cf.c 2010-08-13 16:24:37.000000000 -0400
21569+++ linux-2.6.32.21/drivers/ata/pata_octeon_cf.c 2010-09-13 08:10:07.000000000 -0400 21718+++ linux-2.6.32.21/drivers/ata/pata_octeon_cf.c 2010-09-04 15:54:51.000000000 -0400
21570@@ -801,6 +801,7 @@ static unsigned int octeon_cf_qc_issue(s 21719@@ -801,6 +801,7 @@ static unsigned int octeon_cf_qc_issue(s
21571 return 0; 21720 return 0;
21572 } 21721 }
@@ -21576,8 +21725,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_octeon_cf.c linux-2.6.32.21/drivers/
21576 .inherits = &ata_sff_port_ops, 21725 .inherits = &ata_sff_port_ops,
21577 .check_atapi_dma = octeon_cf_check_atapi_dma, 21726 .check_atapi_dma = octeon_cf_check_atapi_dma,
21578diff -urNp linux-2.6.32.21/drivers/ata/pata_oldpiix.c linux-2.6.32.21/drivers/ata/pata_oldpiix.c 21727diff -urNp linux-2.6.32.21/drivers/ata/pata_oldpiix.c linux-2.6.32.21/drivers/ata/pata_oldpiix.c
21579--- linux-2.6.32.21/drivers/ata/pata_oldpiix.c 2010-08-26 19:42:20.000000000 -0400 21728--- linux-2.6.32.21/drivers/ata/pata_oldpiix.c 2010-08-13 16:24:37.000000000 -0400
21580+++ linux-2.6.32.21/drivers/ata/pata_oldpiix.c 2010-09-13 08:10:07.000000000 -0400 21729+++ linux-2.6.32.21/drivers/ata/pata_oldpiix.c 2010-09-04 15:54:51.000000000 -0400
21581@@ -208,7 +208,7 @@ static struct scsi_host_template oldpiix 21730@@ -208,7 +208,7 @@ static struct scsi_host_template oldpiix
21582 ATA_BMDMA_SHT(DRV_NAME), 21731 ATA_BMDMA_SHT(DRV_NAME),
21583 }; 21732 };
@@ -21588,8 +21737,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_oldpiix.c linux-2.6.32.21/drivers/at
21588 .qc_issue = oldpiix_qc_issue, 21737 .qc_issue = oldpiix_qc_issue,
21589 .cable_detect = ata_cable_40wire, 21738 .cable_detect = ata_cable_40wire,
21590diff -urNp linux-2.6.32.21/drivers/ata/pata_opti.c linux-2.6.32.21/drivers/ata/pata_opti.c 21739diff -urNp linux-2.6.32.21/drivers/ata/pata_opti.c linux-2.6.32.21/drivers/ata/pata_opti.c
21591--- linux-2.6.32.21/drivers/ata/pata_opti.c 2010-08-26 19:42:20.000000000 -0400 21740--- linux-2.6.32.21/drivers/ata/pata_opti.c 2010-08-13 16:24:37.000000000 -0400
21592+++ linux-2.6.32.21/drivers/ata/pata_opti.c 2010-09-13 08:10:07.000000000 -0400 21741+++ linux-2.6.32.21/drivers/ata/pata_opti.c 2010-09-04 15:54:51.000000000 -0400
21593@@ -152,7 +152,7 @@ static struct scsi_host_template opti_sh 21742@@ -152,7 +152,7 @@ static struct scsi_host_template opti_sh
21594 ATA_PIO_SHT(DRV_NAME), 21743 ATA_PIO_SHT(DRV_NAME),
21595 }; 21744 };
@@ -21600,8 +21749,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_opti.c linux-2.6.32.21/drivers/ata/p
21600 .cable_detect = ata_cable_40wire, 21749 .cable_detect = ata_cable_40wire,
21601 .set_piomode = opti_set_piomode, 21750 .set_piomode = opti_set_piomode,
21602diff -urNp linux-2.6.32.21/drivers/ata/pata_optidma.c linux-2.6.32.21/drivers/ata/pata_optidma.c 21751diff -urNp linux-2.6.32.21/drivers/ata/pata_optidma.c linux-2.6.32.21/drivers/ata/pata_optidma.c
21603--- linux-2.6.32.21/drivers/ata/pata_optidma.c 2010-08-26 19:42:20.000000000 -0400 21752--- linux-2.6.32.21/drivers/ata/pata_optidma.c 2010-08-13 16:24:37.000000000 -0400
21604+++ linux-2.6.32.21/drivers/ata/pata_optidma.c 2010-09-13 08:10:07.000000000 -0400 21753+++ linux-2.6.32.21/drivers/ata/pata_optidma.c 2010-09-04 15:54:51.000000000 -0400
21605@@ -337,7 +337,7 @@ static struct scsi_host_template optidma 21754@@ -337,7 +337,7 @@ static struct scsi_host_template optidma
21606 ATA_BMDMA_SHT(DRV_NAME), 21755 ATA_BMDMA_SHT(DRV_NAME),
21607 }; 21756 };
@@ -21621,8 +21770,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_optidma.c linux-2.6.32.21/drivers/at
21621 .set_piomode = optiplus_set_pio_mode, 21770 .set_piomode = optiplus_set_pio_mode,
21622 .set_dmamode = optiplus_set_dma_mode, 21771 .set_dmamode = optiplus_set_dma_mode,
21623diff -urNp linux-2.6.32.21/drivers/ata/pata_palmld.c linux-2.6.32.21/drivers/ata/pata_palmld.c 21772diff -urNp linux-2.6.32.21/drivers/ata/pata_palmld.c linux-2.6.32.21/drivers/ata/pata_palmld.c
21624--- linux-2.6.32.21/drivers/ata/pata_palmld.c 2010-08-26 19:42:20.000000000 -0400 21773--- linux-2.6.32.21/drivers/ata/pata_palmld.c 2010-08-13 16:24:37.000000000 -0400
21625+++ linux-2.6.32.21/drivers/ata/pata_palmld.c 2010-09-13 08:10:07.000000000 -0400 21774+++ linux-2.6.32.21/drivers/ata/pata_palmld.c 2010-09-04 15:54:52.000000000 -0400
21626@@ -37,7 +37,7 @@ static struct scsi_host_template palmld_ 21775@@ -37,7 +37,7 @@ static struct scsi_host_template palmld_
21627 ATA_PIO_SHT(DRV_NAME), 21776 ATA_PIO_SHT(DRV_NAME),
21628 }; 21777 };
@@ -21633,8 +21782,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_palmld.c linux-2.6.32.21/drivers/ata
21633 .sff_data_xfer = ata_sff_data_xfer_noirq, 21782 .sff_data_xfer = ata_sff_data_xfer_noirq,
21634 .cable_detect = ata_cable_40wire, 21783 .cable_detect = ata_cable_40wire,
21635diff -urNp linux-2.6.32.21/drivers/ata/pata_pcmcia.c linux-2.6.32.21/drivers/ata/pata_pcmcia.c 21784diff -urNp linux-2.6.32.21/drivers/ata/pata_pcmcia.c linux-2.6.32.21/drivers/ata/pata_pcmcia.c
21636--- linux-2.6.32.21/drivers/ata/pata_pcmcia.c 2010-08-26 19:42:20.000000000 -0400 21785--- linux-2.6.32.21/drivers/ata/pata_pcmcia.c 2010-08-13 16:24:37.000000000 -0400
21637+++ linux-2.6.32.21/drivers/ata/pata_pcmcia.c 2010-09-13 08:10:07.000000000 -0400 21786+++ linux-2.6.32.21/drivers/ata/pata_pcmcia.c 2010-09-04 15:54:52.000000000 -0400
21638@@ -162,14 +162,14 @@ static struct scsi_host_template pcmcia_ 21787@@ -162,14 +162,14 @@ static struct scsi_host_template pcmcia_
21639 ATA_PIO_SHT(DRV_NAME), 21788 ATA_PIO_SHT(DRV_NAME),
21640 }; 21789 };
@@ -21662,8 +21811,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_pcmcia.c linux-2.6.32.21/drivers/ata
21662 info = kzalloc(sizeof(*info), GFP_KERNEL); 21811 info = kzalloc(sizeof(*info), GFP_KERNEL);
21663 if (info == NULL) 21812 if (info == NULL)
21664diff -urNp linux-2.6.32.21/drivers/ata/pata_pdc2027x.c linux-2.6.32.21/drivers/ata/pata_pdc2027x.c 21813diff -urNp linux-2.6.32.21/drivers/ata/pata_pdc2027x.c linux-2.6.32.21/drivers/ata/pata_pdc2027x.c
21665--- linux-2.6.32.21/drivers/ata/pata_pdc2027x.c 2010-08-26 19:42:20.000000000 -0400 21814--- linux-2.6.32.21/drivers/ata/pata_pdc2027x.c 2010-08-13 16:24:37.000000000 -0400
21666+++ linux-2.6.32.21/drivers/ata/pata_pdc2027x.c 2010-09-13 08:10:07.000000000 -0400 21815+++ linux-2.6.32.21/drivers/ata/pata_pdc2027x.c 2010-09-04 15:54:52.000000000 -0400
21667@@ -132,14 +132,14 @@ static struct scsi_host_template pdc2027 21816@@ -132,14 +132,14 @@ static struct scsi_host_template pdc2027
21668 ATA_BMDMA_SHT(DRV_NAME), 21817 ATA_BMDMA_SHT(DRV_NAME),
21669 }; 21818 };
@@ -21682,8 +21831,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_pdc2027x.c linux-2.6.32.21/drivers/a
21682 .mode_filter = pdc2027x_mode_filter, 21831 .mode_filter = pdc2027x_mode_filter,
21683 .set_piomode = pdc2027x_set_piomode, 21832 .set_piomode = pdc2027x_set_piomode,
21684diff -urNp linux-2.6.32.21/drivers/ata/pata_pdc202xx_old.c linux-2.6.32.21/drivers/ata/pata_pdc202xx_old.c 21833diff -urNp linux-2.6.32.21/drivers/ata/pata_pdc202xx_old.c linux-2.6.32.21/drivers/ata/pata_pdc202xx_old.c
21685--- linux-2.6.32.21/drivers/ata/pata_pdc202xx_old.c 2010-08-26 19:42:20.000000000 -0400 21834--- linux-2.6.32.21/drivers/ata/pata_pdc202xx_old.c 2010-08-13 16:24:37.000000000 -0400
21686+++ linux-2.6.32.21/drivers/ata/pata_pdc202xx_old.c 2010-09-13 08:10:07.000000000 -0400 21835+++ linux-2.6.32.21/drivers/ata/pata_pdc202xx_old.c 2010-09-04 15:54:52.000000000 -0400
21687@@ -265,7 +265,7 @@ static struct scsi_host_template pdc202x 21836@@ -265,7 +265,7 @@ static struct scsi_host_template pdc202x
21688 ATA_BMDMA_SHT(DRV_NAME), 21837 ATA_BMDMA_SHT(DRV_NAME),
21689 }; 21838 };
@@ -21703,8 +21852,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_pdc202xx_old.c linux-2.6.32.21/drive
21703 21852
21704 .check_atapi_dma = pdc2026x_check_atapi_dma, 21853 .check_atapi_dma = pdc2026x_check_atapi_dma,
21705diff -urNp linux-2.6.32.21/drivers/ata/pata_platform.c linux-2.6.32.21/drivers/ata/pata_platform.c 21854diff -urNp linux-2.6.32.21/drivers/ata/pata_platform.c linux-2.6.32.21/drivers/ata/pata_platform.c
21706--- linux-2.6.32.21/drivers/ata/pata_platform.c 2010-08-26 19:42:20.000000000 -0400 21855--- linux-2.6.32.21/drivers/ata/pata_platform.c 2010-08-13 16:24:37.000000000 -0400
21707+++ linux-2.6.32.21/drivers/ata/pata_platform.c 2010-09-13 08:10:07.000000000 -0400 21856+++ linux-2.6.32.21/drivers/ata/pata_platform.c 2010-09-04 15:54:52.000000000 -0400
21708@@ -48,7 +48,7 @@ static struct scsi_host_template pata_pl 21857@@ -48,7 +48,7 @@ static struct scsi_host_template pata_pl
21709 ATA_PIO_SHT(DRV_NAME), 21858 ATA_PIO_SHT(DRV_NAME),
21710 }; 21859 };
@@ -21715,8 +21864,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_platform.c linux-2.6.32.21/drivers/a
21715 .sff_data_xfer = ata_sff_data_xfer_noirq, 21864 .sff_data_xfer = ata_sff_data_xfer_noirq,
21716 .cable_detect = ata_cable_unknown, 21865 .cable_detect = ata_cable_unknown,
21717diff -urNp linux-2.6.32.21/drivers/ata/pata_qdi.c linux-2.6.32.21/drivers/ata/pata_qdi.c 21866diff -urNp linux-2.6.32.21/drivers/ata/pata_qdi.c linux-2.6.32.21/drivers/ata/pata_qdi.c
21718--- linux-2.6.32.21/drivers/ata/pata_qdi.c 2010-08-26 19:42:20.000000000 -0400 21867--- linux-2.6.32.21/drivers/ata/pata_qdi.c 2010-08-13 16:24:37.000000000 -0400
21719+++ linux-2.6.32.21/drivers/ata/pata_qdi.c 2010-09-13 08:10:07.000000000 -0400 21868+++ linux-2.6.32.21/drivers/ata/pata_qdi.c 2010-09-04 15:54:52.000000000 -0400
21720@@ -157,7 +157,7 @@ static struct scsi_host_template qdi_sht 21869@@ -157,7 +157,7 @@ static struct scsi_host_template qdi_sht
21721 ATA_PIO_SHT(DRV_NAME), 21870 ATA_PIO_SHT(DRV_NAME),
21722 }; 21871 };
@@ -21736,8 +21885,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_qdi.c linux-2.6.32.21/drivers/ata/pa
21736 .set_piomode = qdi6580_set_piomode, 21885 .set_piomode = qdi6580_set_piomode,
21737 }; 21886 };
21738diff -urNp linux-2.6.32.21/drivers/ata/pata_radisys.c linux-2.6.32.21/drivers/ata/pata_radisys.c 21887diff -urNp linux-2.6.32.21/drivers/ata/pata_radisys.c linux-2.6.32.21/drivers/ata/pata_radisys.c
21739--- linux-2.6.32.21/drivers/ata/pata_radisys.c 2010-08-26 19:42:20.000000000 -0400 21888--- linux-2.6.32.21/drivers/ata/pata_radisys.c 2010-08-13 16:24:37.000000000 -0400
21740+++ linux-2.6.32.21/drivers/ata/pata_radisys.c 2010-09-13 08:10:07.000000000 -0400 21889+++ linux-2.6.32.21/drivers/ata/pata_radisys.c 2010-09-04 15:54:52.000000000 -0400
21741@@ -187,7 +187,7 @@ static struct scsi_host_template radisys 21890@@ -187,7 +187,7 @@ static struct scsi_host_template radisys
21742 ATA_BMDMA_SHT(DRV_NAME), 21891 ATA_BMDMA_SHT(DRV_NAME),
21743 }; 21892 };
@@ -21748,8 +21897,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_radisys.c linux-2.6.32.21/drivers/at
21748 .qc_issue = radisys_qc_issue, 21897 .qc_issue = radisys_qc_issue,
21749 .cable_detect = ata_cable_unknown, 21898 .cable_detect = ata_cable_unknown,
21750diff -urNp linux-2.6.32.21/drivers/ata/pata_rb532_cf.c linux-2.6.32.21/drivers/ata/pata_rb532_cf.c 21899diff -urNp linux-2.6.32.21/drivers/ata/pata_rb532_cf.c linux-2.6.32.21/drivers/ata/pata_rb532_cf.c
21751--- linux-2.6.32.21/drivers/ata/pata_rb532_cf.c 2010-08-26 19:42:20.000000000 -0400 21900--- linux-2.6.32.21/drivers/ata/pata_rb532_cf.c 2010-08-13 16:24:37.000000000 -0400
21752+++ linux-2.6.32.21/drivers/ata/pata_rb532_cf.c 2010-09-13 08:10:07.000000000 -0400 21901+++ linux-2.6.32.21/drivers/ata/pata_rb532_cf.c 2010-09-04 15:54:52.000000000 -0400
21753@@ -68,7 +68,7 @@ static irqreturn_t rb532_pata_irq_handle 21902@@ -68,7 +68,7 @@ static irqreturn_t rb532_pata_irq_handle
21754 return IRQ_HANDLED; 21903 return IRQ_HANDLED;
21755 } 21904 }
@@ -21760,8 +21909,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_rb532_cf.c linux-2.6.32.21/drivers/a
21760 .sff_data_xfer = ata_sff_data_xfer32, 21909 .sff_data_xfer = ata_sff_data_xfer32,
21761 }; 21910 };
21762diff -urNp linux-2.6.32.21/drivers/ata/pata_rdc.c linux-2.6.32.21/drivers/ata/pata_rdc.c 21911diff -urNp linux-2.6.32.21/drivers/ata/pata_rdc.c linux-2.6.32.21/drivers/ata/pata_rdc.c
21763--- linux-2.6.32.21/drivers/ata/pata_rdc.c 2010-08-26 19:42:20.000000000 -0400 21912--- linux-2.6.32.21/drivers/ata/pata_rdc.c 2010-08-13 16:24:37.000000000 -0400
21764+++ linux-2.6.32.21/drivers/ata/pata_rdc.c 2010-09-13 08:10:07.000000000 -0400 21913+++ linux-2.6.32.21/drivers/ata/pata_rdc.c 2010-09-04 15:54:52.000000000 -0400
21765@@ -272,7 +272,7 @@ static void rdc_set_dmamode(struct ata_p 21914@@ -272,7 +272,7 @@ static void rdc_set_dmamode(struct ata_p
21766 pci_write_config_byte(dev, 0x48, udma_enable); 21915 pci_write_config_byte(dev, 0x48, udma_enable);
21767 } 21916 }
@@ -21772,8 +21921,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_rdc.c linux-2.6.32.21/drivers/ata/pa
21772 .cable_detect = rdc_pata_cable_detect, 21921 .cable_detect = rdc_pata_cable_detect,
21773 .set_piomode = rdc_set_piomode, 21922 .set_piomode = rdc_set_piomode,
21774diff -urNp linux-2.6.32.21/drivers/ata/pata_rz1000.c linux-2.6.32.21/drivers/ata/pata_rz1000.c 21923diff -urNp linux-2.6.32.21/drivers/ata/pata_rz1000.c linux-2.6.32.21/drivers/ata/pata_rz1000.c
21775--- linux-2.6.32.21/drivers/ata/pata_rz1000.c 2010-08-26 19:42:20.000000000 -0400 21924--- linux-2.6.32.21/drivers/ata/pata_rz1000.c 2010-08-13 16:24:37.000000000 -0400
21776+++ linux-2.6.32.21/drivers/ata/pata_rz1000.c 2010-09-13 08:10:07.000000000 -0400 21925+++ linux-2.6.32.21/drivers/ata/pata_rz1000.c 2010-09-04 15:54:52.000000000 -0400
21777@@ -54,7 +54,7 @@ static struct scsi_host_template rz1000_ 21926@@ -54,7 +54,7 @@ static struct scsi_host_template rz1000_
21778 ATA_PIO_SHT(DRV_NAME), 21927 ATA_PIO_SHT(DRV_NAME),
21779 }; 21928 };
@@ -21784,8 +21933,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_rz1000.c linux-2.6.32.21/drivers/ata
21784 .cable_detect = ata_cable_40wire, 21933 .cable_detect = ata_cable_40wire,
21785 .set_mode = rz1000_set_mode, 21934 .set_mode = rz1000_set_mode,
21786diff -urNp linux-2.6.32.21/drivers/ata/pata_sc1200.c linux-2.6.32.21/drivers/ata/pata_sc1200.c 21935diff -urNp linux-2.6.32.21/drivers/ata/pata_sc1200.c linux-2.6.32.21/drivers/ata/pata_sc1200.c
21787--- linux-2.6.32.21/drivers/ata/pata_sc1200.c 2010-08-26 19:42:20.000000000 -0400 21936--- linux-2.6.32.21/drivers/ata/pata_sc1200.c 2010-08-13 16:24:37.000000000 -0400
21788+++ linux-2.6.32.21/drivers/ata/pata_sc1200.c 2010-09-13 08:10:07.000000000 -0400 21937+++ linux-2.6.32.21/drivers/ata/pata_sc1200.c 2010-09-04 15:54:52.000000000 -0400
21789@@ -207,7 +207,7 @@ static struct scsi_host_template sc1200_ 21938@@ -207,7 +207,7 @@ static struct scsi_host_template sc1200_
21790 .sg_tablesize = LIBATA_DUMB_MAX_PRD, 21939 .sg_tablesize = LIBATA_DUMB_MAX_PRD,
21791 }; 21940 };
@@ -21796,8 +21945,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_sc1200.c linux-2.6.32.21/drivers/ata
21796 .qc_prep = ata_sff_dumb_qc_prep, 21945 .qc_prep = ata_sff_dumb_qc_prep,
21797 .qc_issue = sc1200_qc_issue, 21946 .qc_issue = sc1200_qc_issue,
21798diff -urNp linux-2.6.32.21/drivers/ata/pata_scc.c linux-2.6.32.21/drivers/ata/pata_scc.c 21947diff -urNp linux-2.6.32.21/drivers/ata/pata_scc.c linux-2.6.32.21/drivers/ata/pata_scc.c
21799--- linux-2.6.32.21/drivers/ata/pata_scc.c 2010-08-26 19:42:20.000000000 -0400 21948--- linux-2.6.32.21/drivers/ata/pata_scc.c 2010-08-13 16:24:37.000000000 -0400
21800+++ linux-2.6.32.21/drivers/ata/pata_scc.c 2010-09-13 08:10:07.000000000 -0400 21949+++ linux-2.6.32.21/drivers/ata/pata_scc.c 2010-09-04 15:54:52.000000000 -0400
21801@@ -965,7 +965,7 @@ static struct scsi_host_template scc_sht 21950@@ -965,7 +965,7 @@ static struct scsi_host_template scc_sht
21802 ATA_BMDMA_SHT(DRV_NAME), 21951 ATA_BMDMA_SHT(DRV_NAME),
21803 }; 21952 };
@@ -21808,8 +21957,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_scc.c linux-2.6.32.21/drivers/ata/pa
21808 21957
21809 .set_piomode = scc_set_piomode, 21958 .set_piomode = scc_set_piomode,
21810diff -urNp linux-2.6.32.21/drivers/ata/pata_sch.c linux-2.6.32.21/drivers/ata/pata_sch.c 21959diff -urNp linux-2.6.32.21/drivers/ata/pata_sch.c linux-2.6.32.21/drivers/ata/pata_sch.c
21811--- linux-2.6.32.21/drivers/ata/pata_sch.c 2010-08-26 19:42:20.000000000 -0400 21960--- linux-2.6.32.21/drivers/ata/pata_sch.c 2010-08-13 16:24:37.000000000 -0400
21812+++ linux-2.6.32.21/drivers/ata/pata_sch.c 2010-09-13 08:10:07.000000000 -0400 21961+++ linux-2.6.32.21/drivers/ata/pata_sch.c 2010-09-04 15:54:52.000000000 -0400
21813@@ -75,7 +75,7 @@ static struct scsi_host_template sch_sht 21962@@ -75,7 +75,7 @@ static struct scsi_host_template sch_sht
21814 ATA_BMDMA_SHT(DRV_NAME), 21963 ATA_BMDMA_SHT(DRV_NAME),
21815 }; 21964 };
@@ -21820,8 +21969,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_sch.c linux-2.6.32.21/drivers/ata/pa
21820 .cable_detect = ata_cable_unknown, 21969 .cable_detect = ata_cable_unknown,
21821 .set_piomode = sch_set_piomode, 21970 .set_piomode = sch_set_piomode,
21822diff -urNp linux-2.6.32.21/drivers/ata/pata_serverworks.c linux-2.6.32.21/drivers/ata/pata_serverworks.c 21971diff -urNp linux-2.6.32.21/drivers/ata/pata_serverworks.c linux-2.6.32.21/drivers/ata/pata_serverworks.c
21823--- linux-2.6.32.21/drivers/ata/pata_serverworks.c 2010-08-26 19:42:20.000000000 -0400 21972--- linux-2.6.32.21/drivers/ata/pata_serverworks.c 2010-08-13 16:24:37.000000000 -0400
21824+++ linux-2.6.32.21/drivers/ata/pata_serverworks.c 2010-09-13 08:10:07.000000000 -0400 21973+++ linux-2.6.32.21/drivers/ata/pata_serverworks.c 2010-09-04 15:54:52.000000000 -0400
21825@@ -299,7 +299,7 @@ static struct scsi_host_template serverw 21974@@ -299,7 +299,7 @@ static struct scsi_host_template serverw
21826 ATA_BMDMA_SHT(DRV_NAME), 21975 ATA_BMDMA_SHT(DRV_NAME),
21827 }; 21976 };
@@ -21841,8 +21990,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_serverworks.c linux-2.6.32.21/driver
21841 .mode_filter = serverworks_csb_filter, 21990 .mode_filter = serverworks_csb_filter,
21842 }; 21991 };
21843diff -urNp linux-2.6.32.21/drivers/ata/pata_sil680.c linux-2.6.32.21/drivers/ata/pata_sil680.c 21992diff -urNp linux-2.6.32.21/drivers/ata/pata_sil680.c linux-2.6.32.21/drivers/ata/pata_sil680.c
21844--- linux-2.6.32.21/drivers/ata/pata_sil680.c 2010-08-26 19:42:20.000000000 -0400 21993--- linux-2.6.32.21/drivers/ata/pata_sil680.c 2010-08-13 16:24:37.000000000 -0400
21845+++ linux-2.6.32.21/drivers/ata/pata_sil680.c 2010-09-13 08:10:07.000000000 -0400 21994+++ linux-2.6.32.21/drivers/ata/pata_sil680.c 2010-09-04 15:54:52.000000000 -0400
21846@@ -194,7 +194,7 @@ static struct scsi_host_template sil680_ 21995@@ -194,7 +194,7 @@ static struct scsi_host_template sil680_
21847 ATA_BMDMA_SHT(DRV_NAME), 21996 ATA_BMDMA_SHT(DRV_NAME),
21848 }; 21997 };
@@ -21853,8 +22002,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_sil680.c linux-2.6.32.21/drivers/ata
21853 .cable_detect = sil680_cable_detect, 22002 .cable_detect = sil680_cable_detect,
21854 .set_piomode = sil680_set_piomode, 22003 .set_piomode = sil680_set_piomode,
21855diff -urNp linux-2.6.32.21/drivers/ata/pata_sis.c linux-2.6.32.21/drivers/ata/pata_sis.c 22004diff -urNp linux-2.6.32.21/drivers/ata/pata_sis.c linux-2.6.32.21/drivers/ata/pata_sis.c
21856--- linux-2.6.32.21/drivers/ata/pata_sis.c 2010-08-26 19:42:20.000000000 -0400 22005--- linux-2.6.32.21/drivers/ata/pata_sis.c 2010-08-13 16:24:37.000000000 -0400
21857+++ linux-2.6.32.21/drivers/ata/pata_sis.c 2010-09-13 08:10:07.000000000 -0400 22006+++ linux-2.6.32.21/drivers/ata/pata_sis.c 2010-09-04 15:54:52.000000000 -0400
21858@@ -503,47 +503,47 @@ static struct scsi_host_template sis_sht 22007@@ -503,47 +503,47 @@ static struct scsi_host_template sis_sht
21859 ATA_BMDMA_SHT(DRV_NAME), 22008 ATA_BMDMA_SHT(DRV_NAME),
21860 }; 22009 };
@@ -21911,8 +22060,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_sis.c linux-2.6.32.21/drivers/ata/pa
21911 .set_piomode = sis_old_set_piomode, 22060 .set_piomode = sis_old_set_piomode,
21912 .set_dmamode = sis_old_set_dmamode, 22061 .set_dmamode = sis_old_set_dmamode,
21913diff -urNp linux-2.6.32.21/drivers/ata/pata_sl82c105.c linux-2.6.32.21/drivers/ata/pata_sl82c105.c 22062diff -urNp linux-2.6.32.21/drivers/ata/pata_sl82c105.c linux-2.6.32.21/drivers/ata/pata_sl82c105.c
21914--- linux-2.6.32.21/drivers/ata/pata_sl82c105.c 2010-08-26 19:42:20.000000000 -0400 22063--- linux-2.6.32.21/drivers/ata/pata_sl82c105.c 2010-08-13 16:24:37.000000000 -0400
21915+++ linux-2.6.32.21/drivers/ata/pata_sl82c105.c 2010-09-13 08:10:07.000000000 -0400 22064+++ linux-2.6.32.21/drivers/ata/pata_sl82c105.c 2010-09-04 15:54:52.000000000 -0400
21916@@ -231,7 +231,7 @@ static struct scsi_host_template sl82c10 22065@@ -231,7 +231,7 @@ static struct scsi_host_template sl82c10
21917 ATA_BMDMA_SHT(DRV_NAME), 22066 ATA_BMDMA_SHT(DRV_NAME),
21918 }; 22067 };
@@ -21923,8 +22072,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_sl82c105.c linux-2.6.32.21/drivers/a
21923 .qc_defer = sl82c105_qc_defer, 22072 .qc_defer = sl82c105_qc_defer,
21924 .bmdma_start = sl82c105_bmdma_start, 22073 .bmdma_start = sl82c105_bmdma_start,
21925diff -urNp linux-2.6.32.21/drivers/ata/pata_triflex.c linux-2.6.32.21/drivers/ata/pata_triflex.c 22074diff -urNp linux-2.6.32.21/drivers/ata/pata_triflex.c linux-2.6.32.21/drivers/ata/pata_triflex.c
21926--- linux-2.6.32.21/drivers/ata/pata_triflex.c 2010-08-26 19:42:20.000000000 -0400 22075--- linux-2.6.32.21/drivers/ata/pata_triflex.c 2010-08-13 16:24:37.000000000 -0400
21927+++ linux-2.6.32.21/drivers/ata/pata_triflex.c 2010-09-13 08:10:07.000000000 -0400 22076+++ linux-2.6.32.21/drivers/ata/pata_triflex.c 2010-09-04 15:54:52.000000000 -0400
21928@@ -178,7 +178,7 @@ static struct scsi_host_template triflex 22077@@ -178,7 +178,7 @@ static struct scsi_host_template triflex
21929 ATA_BMDMA_SHT(DRV_NAME), 22078 ATA_BMDMA_SHT(DRV_NAME),
21930 }; 22079 };
@@ -21935,8 +22084,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_triflex.c linux-2.6.32.21/drivers/at
21935 .bmdma_start = triflex_bmdma_start, 22084 .bmdma_start = triflex_bmdma_start,
21936 .bmdma_stop = triflex_bmdma_stop, 22085 .bmdma_stop = triflex_bmdma_stop,
21937diff -urNp linux-2.6.32.21/drivers/ata/pata_via.c linux-2.6.32.21/drivers/ata/pata_via.c 22086diff -urNp linux-2.6.32.21/drivers/ata/pata_via.c linux-2.6.32.21/drivers/ata/pata_via.c
21938--- linux-2.6.32.21/drivers/ata/pata_via.c 2010-08-26 19:42:20.000000000 -0400 22087--- linux-2.6.32.21/drivers/ata/pata_via.c 2010-08-13 16:24:37.000000000 -0400
21939+++ linux-2.6.32.21/drivers/ata/pata_via.c 2010-09-13 08:10:07.000000000 -0400 22088+++ linux-2.6.32.21/drivers/ata/pata_via.c 2010-09-04 15:54:52.000000000 -0400
21940@@ -419,7 +419,7 @@ static struct scsi_host_template via_sht 22089@@ -419,7 +419,7 @@ static struct scsi_host_template via_sht
21941 ATA_BMDMA_SHT(DRV_NAME), 22090 ATA_BMDMA_SHT(DRV_NAME),
21942 }; 22091 };
@@ -21956,8 +22105,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_via.c linux-2.6.32.21/drivers/ata/pa
21956 .sff_data_xfer = ata_sff_data_xfer_noirq, 22105 .sff_data_xfer = ata_sff_data_xfer_noirq,
21957 }; 22106 };
21958diff -urNp linux-2.6.32.21/drivers/ata/pata_winbond.c linux-2.6.32.21/drivers/ata/pata_winbond.c 22107diff -urNp linux-2.6.32.21/drivers/ata/pata_winbond.c linux-2.6.32.21/drivers/ata/pata_winbond.c
21959--- linux-2.6.32.21/drivers/ata/pata_winbond.c 2010-08-26 19:42:20.000000000 -0400 22108--- linux-2.6.32.21/drivers/ata/pata_winbond.c 2010-08-13 16:24:37.000000000 -0400
21960+++ linux-2.6.32.21/drivers/ata/pata_winbond.c 2010-09-13 08:10:07.000000000 -0400 22109+++ linux-2.6.32.21/drivers/ata/pata_winbond.c 2010-09-04 15:54:52.000000000 -0400
21961@@ -125,7 +125,7 @@ static struct scsi_host_template winbond 22110@@ -125,7 +125,7 @@ static struct scsi_host_template winbond
21962 ATA_PIO_SHT(DRV_NAME), 22111 ATA_PIO_SHT(DRV_NAME),
21963 }; 22112 };
@@ -21968,8 +22117,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pata_winbond.c linux-2.6.32.21/drivers/at
21968 .sff_data_xfer = winbond_data_xfer, 22117 .sff_data_xfer = winbond_data_xfer,
21969 .cable_detect = ata_cable_40wire, 22118 .cable_detect = ata_cable_40wire,
21970diff -urNp linux-2.6.32.21/drivers/ata/pdc_adma.c linux-2.6.32.21/drivers/ata/pdc_adma.c 22119diff -urNp linux-2.6.32.21/drivers/ata/pdc_adma.c linux-2.6.32.21/drivers/ata/pdc_adma.c
21971--- linux-2.6.32.21/drivers/ata/pdc_adma.c 2010-08-26 19:42:20.000000000 -0400 22120--- linux-2.6.32.21/drivers/ata/pdc_adma.c 2010-08-13 16:24:37.000000000 -0400
21972+++ linux-2.6.32.21/drivers/ata/pdc_adma.c 2010-09-13 08:10:07.000000000 -0400 22121+++ linux-2.6.32.21/drivers/ata/pdc_adma.c 2010-09-04 15:54:52.000000000 -0400
21973@@ -145,7 +145,7 @@ static struct scsi_host_template adma_at 22122@@ -145,7 +145,7 @@ static struct scsi_host_template adma_at
21974 .dma_boundary = ADMA_DMA_BOUNDARY, 22123 .dma_boundary = ADMA_DMA_BOUNDARY,
21975 }; 22124 };
@@ -21980,8 +22129,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/pdc_adma.c linux-2.6.32.21/drivers/ata/pd
21980 22129
21981 .lost_interrupt = ATA_OP_NULL, 22130 .lost_interrupt = ATA_OP_NULL,
21982diff -urNp linux-2.6.32.21/drivers/ata/sata_fsl.c linux-2.6.32.21/drivers/ata/sata_fsl.c 22131diff -urNp linux-2.6.32.21/drivers/ata/sata_fsl.c linux-2.6.32.21/drivers/ata/sata_fsl.c
21983--- linux-2.6.32.21/drivers/ata/sata_fsl.c 2010-08-26 19:42:20.000000000 -0400 22132--- linux-2.6.32.21/drivers/ata/sata_fsl.c 2010-08-13 16:24:37.000000000 -0400
21984+++ linux-2.6.32.21/drivers/ata/sata_fsl.c 2010-09-13 08:10:07.000000000 -0400 22133+++ linux-2.6.32.21/drivers/ata/sata_fsl.c 2010-09-04 15:54:52.000000000 -0400
21985@@ -1258,7 +1258,7 @@ static struct scsi_host_template sata_fs 22134@@ -1258,7 +1258,7 @@ static struct scsi_host_template sata_fs
21986 .dma_boundary = ATA_DMA_BOUNDARY, 22135 .dma_boundary = ATA_DMA_BOUNDARY,
21987 }; 22136 };
@@ -21992,8 +22141,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/sata_fsl.c linux-2.6.32.21/drivers/ata/sa
21992 22141
21993 .qc_defer = ata_std_qc_defer, 22142 .qc_defer = ata_std_qc_defer,
21994diff -urNp linux-2.6.32.21/drivers/ata/sata_inic162x.c linux-2.6.32.21/drivers/ata/sata_inic162x.c 22143diff -urNp linux-2.6.32.21/drivers/ata/sata_inic162x.c linux-2.6.32.21/drivers/ata/sata_inic162x.c
21995--- linux-2.6.32.21/drivers/ata/sata_inic162x.c 2010-08-26 19:42:20.000000000 -0400 22144--- linux-2.6.32.21/drivers/ata/sata_inic162x.c 2010-08-13 16:24:37.000000000 -0400
21996+++ linux-2.6.32.21/drivers/ata/sata_inic162x.c 2010-09-13 08:10:07.000000000 -0400 22145+++ linux-2.6.32.21/drivers/ata/sata_inic162x.c 2010-09-04 15:54:52.000000000 -0400
21997@@ -721,7 +721,7 @@ static int inic_port_start(struct ata_po 22146@@ -721,7 +721,7 @@ static int inic_port_start(struct ata_po
21998 return 0; 22147 return 0;
21999 } 22148 }
@@ -22004,8 +22153,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/sata_inic162x.c linux-2.6.32.21/drivers/a
22004 22153
22005 .check_atapi_dma = inic_check_atapi_dma, 22154 .check_atapi_dma = inic_check_atapi_dma,
22006diff -urNp linux-2.6.32.21/drivers/ata/sata_mv.c linux-2.6.32.21/drivers/ata/sata_mv.c 22155diff -urNp linux-2.6.32.21/drivers/ata/sata_mv.c linux-2.6.32.21/drivers/ata/sata_mv.c
22007--- linux-2.6.32.21/drivers/ata/sata_mv.c 2010-08-26 19:42:20.000000000 -0400 22156--- linux-2.6.32.21/drivers/ata/sata_mv.c 2010-08-13 16:24:37.000000000 -0400
22008+++ linux-2.6.32.21/drivers/ata/sata_mv.c 2010-09-13 08:10:07.000000000 -0400 22157+++ linux-2.6.32.21/drivers/ata/sata_mv.c 2010-09-04 15:54:52.000000000 -0400
22009@@ -656,7 +656,7 @@ static struct scsi_host_template mv6_sht 22158@@ -656,7 +656,7 @@ static struct scsi_host_template mv6_sht
22010 .dma_boundary = MV_DMA_BOUNDARY, 22159 .dma_boundary = MV_DMA_BOUNDARY,
22011 }; 22160 };
@@ -22034,8 +22183,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/sata_mv.c linux-2.6.32.21/drivers/ata/sat
22034 .dev_config = ATA_OP_NULL, 22183 .dev_config = ATA_OP_NULL,
22035 .qc_prep = mv_qc_prep_iie, 22184 .qc_prep = mv_qc_prep_iie,
22036diff -urNp linux-2.6.32.21/drivers/ata/sata_nv.c linux-2.6.32.21/drivers/ata/sata_nv.c 22185diff -urNp linux-2.6.32.21/drivers/ata/sata_nv.c linux-2.6.32.21/drivers/ata/sata_nv.c
22037--- linux-2.6.32.21/drivers/ata/sata_nv.c 2010-08-26 19:42:20.000000000 -0400 22186--- linux-2.6.32.21/drivers/ata/sata_nv.c 2010-08-13 16:24:37.000000000 -0400
22038+++ linux-2.6.32.21/drivers/ata/sata_nv.c 2010-09-13 08:10:07.000000000 -0400 22187+++ linux-2.6.32.21/drivers/ata/sata_nv.c 2010-09-04 15:54:52.000000000 -0400
22039@@ -464,7 +464,7 @@ static struct scsi_host_template nv_swnc 22188@@ -464,7 +464,7 @@ static struct scsi_host_template nv_swnc
22040 * cases. Define nv_hardreset() which only kicks in for post-boot 22189 * cases. Define nv_hardreset() which only kicks in for post-boot
22041 * probing and use it for all variants. 22190 * probing and use it for all variants.
@@ -22079,8 +22228,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/sata_nv.c linux-2.6.32.21/drivers/ata/sat
22079 22228
22080 .qc_defer = ata_std_qc_defer, 22229 .qc_defer = ata_std_qc_defer,
22081diff -urNp linux-2.6.32.21/drivers/ata/sata_promise.c linux-2.6.32.21/drivers/ata/sata_promise.c 22230diff -urNp linux-2.6.32.21/drivers/ata/sata_promise.c linux-2.6.32.21/drivers/ata/sata_promise.c
22082--- linux-2.6.32.21/drivers/ata/sata_promise.c 2010-08-26 19:42:20.000000000 -0400 22231--- linux-2.6.32.21/drivers/ata/sata_promise.c 2010-08-13 16:24:37.000000000 -0400
22083+++ linux-2.6.32.21/drivers/ata/sata_promise.c 2010-09-13 08:10:07.000000000 -0400 22232+++ linux-2.6.32.21/drivers/ata/sata_promise.c 2010-09-04 15:54:52.000000000 -0400
22084@@ -195,7 +195,7 @@ static const struct ata_port_operations 22233@@ -195,7 +195,7 @@ static const struct ata_port_operations
22085 .error_handler = pdc_error_handler, 22234 .error_handler = pdc_error_handler,
22086 }; 22235 };
@@ -22108,8 +22257,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/sata_promise.c linux-2.6.32.21/drivers/at
22108 .cable_detect = pdc_pata_cable_detect, 22257 .cable_detect = pdc_pata_cable_detect,
22109 .freeze = pdc_freeze, 22258 .freeze = pdc_freeze,
22110diff -urNp linux-2.6.32.21/drivers/ata/sata_qstor.c linux-2.6.32.21/drivers/ata/sata_qstor.c 22259diff -urNp linux-2.6.32.21/drivers/ata/sata_qstor.c linux-2.6.32.21/drivers/ata/sata_qstor.c
22111--- linux-2.6.32.21/drivers/ata/sata_qstor.c 2010-08-26 19:42:20.000000000 -0400 22260--- linux-2.6.32.21/drivers/ata/sata_qstor.c 2010-08-13 16:24:37.000000000 -0400
22112+++ linux-2.6.32.21/drivers/ata/sata_qstor.c 2010-09-13 08:10:07.000000000 -0400 22261+++ linux-2.6.32.21/drivers/ata/sata_qstor.c 2010-09-04 15:54:52.000000000 -0400
22113@@ -132,7 +132,7 @@ static struct scsi_host_template qs_ata_ 22262@@ -132,7 +132,7 @@ static struct scsi_host_template qs_ata_
22114 .dma_boundary = QS_DMA_BOUNDARY, 22263 .dma_boundary = QS_DMA_BOUNDARY,
22115 }; 22264 };
@@ -22119,21 +22268,9 @@ diff -urNp linux-2.6.32.21/drivers/ata/sata_qstor.c linux-2.6.32.21/drivers/ata/
22119 .inherits = &ata_sff_port_ops, 22268 .inherits = &ata_sff_port_ops,
22120 22269
22121 .check_atapi_dma = qs_check_atapi_dma, 22270 .check_atapi_dma = qs_check_atapi_dma,
22122diff -urNp linux-2.6.32.21/drivers/ata/sata_sil.c linux-2.6.32.21/drivers/ata/sata_sil.c
22123--- linux-2.6.32.21/drivers/ata/sata_sil.c 2010-08-26 19:42:20.000000000 -0400
22124+++ linux-2.6.32.21/drivers/ata/sata_sil.c 2010-09-13 08:10:07.000000000 -0400
22125@@ -182,7 +182,7 @@ static struct scsi_host_template sil_sht
22126 .sg_tablesize = ATA_MAX_PRD
22127 };
22128
22129-static struct ata_port_operations sil_ops = {
22130+static const struct ata_port_operations sil_ops = {
22131 .inherits = &ata_bmdma32_port_ops,
22132 .dev_config = sil_dev_config,
22133 .set_mode = sil_set_mode,
22134diff -urNp linux-2.6.32.21/drivers/ata/sata_sil24.c linux-2.6.32.21/drivers/ata/sata_sil24.c 22271diff -urNp linux-2.6.32.21/drivers/ata/sata_sil24.c linux-2.6.32.21/drivers/ata/sata_sil24.c
22135--- linux-2.6.32.21/drivers/ata/sata_sil24.c 2010-08-26 19:42:20.000000000 -0400 22272--- linux-2.6.32.21/drivers/ata/sata_sil24.c 2010-08-13 16:24:37.000000000 -0400
22136+++ linux-2.6.32.21/drivers/ata/sata_sil24.c 2010-09-13 08:10:07.000000000 -0400 22273+++ linux-2.6.32.21/drivers/ata/sata_sil24.c 2010-09-04 15:54:52.000000000 -0400
22137@@ -388,7 +388,7 @@ static struct scsi_host_template sil24_s 22274@@ -388,7 +388,7 @@ static struct scsi_host_template sil24_s
22138 .dma_boundary = ATA_DMA_BOUNDARY, 22275 .dma_boundary = ATA_DMA_BOUNDARY,
22139 }; 22276 };
@@ -22143,9 +22280,21 @@ diff -urNp linux-2.6.32.21/drivers/ata/sata_sil24.c linux-2.6.32.21/drivers/ata/
22143 .inherits = &sata_pmp_port_ops, 22280 .inherits = &sata_pmp_port_ops,
22144 22281
22145 .qc_defer = sil24_qc_defer, 22282 .qc_defer = sil24_qc_defer,
22283diff -urNp linux-2.6.32.21/drivers/ata/sata_sil.c linux-2.6.32.21/drivers/ata/sata_sil.c
22284--- linux-2.6.32.21/drivers/ata/sata_sil.c 2010-08-13 16:24:37.000000000 -0400
22285+++ linux-2.6.32.21/drivers/ata/sata_sil.c 2010-09-04 15:54:52.000000000 -0400
22286@@ -182,7 +182,7 @@ static struct scsi_host_template sil_sht
22287 .sg_tablesize = ATA_MAX_PRD
22288 };
22289
22290-static struct ata_port_operations sil_ops = {
22291+static const struct ata_port_operations sil_ops = {
22292 .inherits = &ata_bmdma32_port_ops,
22293 .dev_config = sil_dev_config,
22294 .set_mode = sil_set_mode,
22146diff -urNp linux-2.6.32.21/drivers/ata/sata_sis.c linux-2.6.32.21/drivers/ata/sata_sis.c 22295diff -urNp linux-2.6.32.21/drivers/ata/sata_sis.c linux-2.6.32.21/drivers/ata/sata_sis.c
22147--- linux-2.6.32.21/drivers/ata/sata_sis.c 2010-08-26 19:42:20.000000000 -0400 22296--- linux-2.6.32.21/drivers/ata/sata_sis.c 2010-08-13 16:24:37.000000000 -0400
22148+++ linux-2.6.32.21/drivers/ata/sata_sis.c 2010-09-13 08:10:07.000000000 -0400 22297+++ linux-2.6.32.21/drivers/ata/sata_sis.c 2010-09-04 15:54:52.000000000 -0400
22149@@ -89,7 +89,7 @@ static struct scsi_host_template sis_sht 22298@@ -89,7 +89,7 @@ static struct scsi_host_template sis_sht
22150 ATA_BMDMA_SHT(DRV_NAME), 22299 ATA_BMDMA_SHT(DRV_NAME),
22151 }; 22300 };
@@ -22156,8 +22305,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/sata_sis.c linux-2.6.32.21/drivers/ata/sa
22156 .scr_read = sis_scr_read, 22305 .scr_read = sis_scr_read,
22157 .scr_write = sis_scr_write, 22306 .scr_write = sis_scr_write,
22158diff -urNp linux-2.6.32.21/drivers/ata/sata_svw.c linux-2.6.32.21/drivers/ata/sata_svw.c 22307diff -urNp linux-2.6.32.21/drivers/ata/sata_svw.c linux-2.6.32.21/drivers/ata/sata_svw.c
22159--- linux-2.6.32.21/drivers/ata/sata_svw.c 2010-08-26 19:42:20.000000000 -0400 22308--- linux-2.6.32.21/drivers/ata/sata_svw.c 2010-08-13 16:24:37.000000000 -0400
22160+++ linux-2.6.32.21/drivers/ata/sata_svw.c 2010-09-13 08:10:07.000000000 -0400 22309+++ linux-2.6.32.21/drivers/ata/sata_svw.c 2010-09-04 15:54:52.000000000 -0400
22161@@ -344,7 +344,7 @@ static struct scsi_host_template k2_sata 22310@@ -344,7 +344,7 @@ static struct scsi_host_template k2_sata
22162 }; 22311 };
22163 22312
@@ -22168,8 +22317,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/sata_svw.c linux-2.6.32.21/drivers/ata/sa
22168 .sff_tf_load = k2_sata_tf_load, 22317 .sff_tf_load = k2_sata_tf_load,
22169 .sff_tf_read = k2_sata_tf_read, 22318 .sff_tf_read = k2_sata_tf_read,
22170diff -urNp linux-2.6.32.21/drivers/ata/sata_sx4.c linux-2.6.32.21/drivers/ata/sata_sx4.c 22319diff -urNp linux-2.6.32.21/drivers/ata/sata_sx4.c linux-2.6.32.21/drivers/ata/sata_sx4.c
22171--- linux-2.6.32.21/drivers/ata/sata_sx4.c 2010-08-26 19:42:20.000000000 -0400 22320--- linux-2.6.32.21/drivers/ata/sata_sx4.c 2010-08-13 16:24:37.000000000 -0400
22172+++ linux-2.6.32.21/drivers/ata/sata_sx4.c 2010-09-13 08:10:07.000000000 -0400 22321+++ linux-2.6.32.21/drivers/ata/sata_sx4.c 2010-09-04 15:54:52.000000000 -0400
22173@@ -248,7 +248,7 @@ static struct scsi_host_template pdc_sat 22322@@ -248,7 +248,7 @@ static struct scsi_host_template pdc_sat
22174 }; 22323 };
22175 22324
@@ -22180,8 +22329,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/sata_sx4.c linux-2.6.32.21/drivers/ata/sa
22180 22329
22181 .check_atapi_dma = pdc_check_atapi_dma, 22330 .check_atapi_dma = pdc_check_atapi_dma,
22182diff -urNp linux-2.6.32.21/drivers/ata/sata_uli.c linux-2.6.32.21/drivers/ata/sata_uli.c 22331diff -urNp linux-2.6.32.21/drivers/ata/sata_uli.c linux-2.6.32.21/drivers/ata/sata_uli.c
22183--- linux-2.6.32.21/drivers/ata/sata_uli.c 2010-08-26 19:42:20.000000000 -0400 22332--- linux-2.6.32.21/drivers/ata/sata_uli.c 2010-08-13 16:24:37.000000000 -0400
22184+++ linux-2.6.32.21/drivers/ata/sata_uli.c 2010-09-13 08:10:07.000000000 -0400 22333+++ linux-2.6.32.21/drivers/ata/sata_uli.c 2010-09-04 15:54:52.000000000 -0400
22185@@ -79,7 +79,7 @@ static struct scsi_host_template uli_sht 22334@@ -79,7 +79,7 @@ static struct scsi_host_template uli_sht
22186 ATA_BMDMA_SHT(DRV_NAME), 22335 ATA_BMDMA_SHT(DRV_NAME),
22187 }; 22336 };
@@ -22192,8 +22341,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/sata_uli.c linux-2.6.32.21/drivers/ata/sa
22192 .scr_read = uli_scr_read, 22341 .scr_read = uli_scr_read,
22193 .scr_write = uli_scr_write, 22342 .scr_write = uli_scr_write,
22194diff -urNp linux-2.6.32.21/drivers/ata/sata_via.c linux-2.6.32.21/drivers/ata/sata_via.c 22343diff -urNp linux-2.6.32.21/drivers/ata/sata_via.c linux-2.6.32.21/drivers/ata/sata_via.c
22195--- linux-2.6.32.21/drivers/ata/sata_via.c 2010-08-26 19:42:20.000000000 -0400 22344--- linux-2.6.32.21/drivers/ata/sata_via.c 2010-08-13 16:24:37.000000000 -0400
22196+++ linux-2.6.32.21/drivers/ata/sata_via.c 2010-09-13 08:10:07.000000000 -0400 22345+++ linux-2.6.32.21/drivers/ata/sata_via.c 2010-09-04 15:54:52.000000000 -0400
22197@@ -112,31 +112,31 @@ static struct scsi_host_template svia_sh 22346@@ -112,31 +112,31 @@ static struct scsi_host_template svia_sh
22198 ATA_BMDMA_SHT(DRV_NAME), 22347 ATA_BMDMA_SHT(DRV_NAME),
22199 }; 22348 };
@@ -22232,8 +22381,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/sata_via.c linux-2.6.32.21/drivers/ata/sa
22232 .hardreset = sata_std_hardreset, 22381 .hardreset = sata_std_hardreset,
22233 .scr_read = vt8251_scr_read, 22382 .scr_read = vt8251_scr_read,
22234diff -urNp linux-2.6.32.21/drivers/ata/sata_vsc.c linux-2.6.32.21/drivers/ata/sata_vsc.c 22383diff -urNp linux-2.6.32.21/drivers/ata/sata_vsc.c linux-2.6.32.21/drivers/ata/sata_vsc.c
22235--- linux-2.6.32.21/drivers/ata/sata_vsc.c 2010-08-26 19:42:20.000000000 -0400 22384--- linux-2.6.32.21/drivers/ata/sata_vsc.c 2010-08-13 16:24:37.000000000 -0400
22236+++ linux-2.6.32.21/drivers/ata/sata_vsc.c 2010-09-13 08:10:07.000000000 -0400 22385+++ linux-2.6.32.21/drivers/ata/sata_vsc.c 2010-09-04 15:54:52.000000000 -0400
22237@@ -306,7 +306,7 @@ static struct scsi_host_template vsc_sat 22386@@ -306,7 +306,7 @@ static struct scsi_host_template vsc_sat
22238 }; 22387 };
22239 22388
@@ -22244,8 +22393,8 @@ diff -urNp linux-2.6.32.21/drivers/ata/sata_vsc.c linux-2.6.32.21/drivers/ata/sa
22244 /* The IRQ handling is not quite standard SFF behaviour so we 22393 /* The IRQ handling is not quite standard SFF behaviour so we
22245 cannot use the default lost interrupt handler */ 22394 cannot use the default lost interrupt handler */
22246diff -urNp linux-2.6.32.21/drivers/atm/adummy.c linux-2.6.32.21/drivers/atm/adummy.c 22395diff -urNp linux-2.6.32.21/drivers/atm/adummy.c linux-2.6.32.21/drivers/atm/adummy.c
22247--- linux-2.6.32.21/drivers/atm/adummy.c 2010-08-26 19:42:20.000000000 -0400 22396--- linux-2.6.32.21/drivers/atm/adummy.c 2010-08-13 16:24:37.000000000 -0400
22248+++ linux-2.6.32.21/drivers/atm/adummy.c 2010-09-13 08:10:07.000000000 -0400 22397+++ linux-2.6.32.21/drivers/atm/adummy.c 2010-09-04 15:54:52.000000000 -0400
22249@@ -77,7 +77,7 @@ adummy_send(struct atm_vcc *vcc, struct 22398@@ -77,7 +77,7 @@ adummy_send(struct atm_vcc *vcc, struct
22250 vcc->pop(vcc, skb); 22399 vcc->pop(vcc, skb);
22251 else 22400 else
@@ -22256,8 +22405,8 @@ diff -urNp linux-2.6.32.21/drivers/atm/adummy.c linux-2.6.32.21/drivers/atm/adum
22256 return 0; 22405 return 0;
22257 } 22406 }
22258diff -urNp linux-2.6.32.21/drivers/atm/ambassador.c linux-2.6.32.21/drivers/atm/ambassador.c 22407diff -urNp linux-2.6.32.21/drivers/atm/ambassador.c linux-2.6.32.21/drivers/atm/ambassador.c
22259--- linux-2.6.32.21/drivers/atm/ambassador.c 2010-08-26 19:42:20.000000000 -0400 22408--- linux-2.6.32.21/drivers/atm/ambassador.c 2010-08-13 16:24:37.000000000 -0400
22260+++ linux-2.6.32.21/drivers/atm/ambassador.c 2010-09-13 08:10:07.000000000 -0400 22409+++ linux-2.6.32.21/drivers/atm/ambassador.c 2010-09-04 15:54:52.000000000 -0400
22261@@ -453,7 +453,7 @@ static void tx_complete (amb_dev * dev, 22410@@ -453,7 +453,7 @@ static void tx_complete (amb_dev * dev,
22262 PRINTD (DBG_FLOW|DBG_TX, "tx_complete %p %p", dev, tx); 22411 PRINTD (DBG_FLOW|DBG_TX, "tx_complete %p %p", dev, tx);
22263 22412
@@ -22295,8 +22444,8 @@ diff -urNp linux-2.6.32.21/drivers/atm/ambassador.c linux-2.6.32.21/drivers/atm/
22295 } 22444 }
22296 22445
22297diff -urNp linux-2.6.32.21/drivers/atm/atmtcp.c linux-2.6.32.21/drivers/atm/atmtcp.c 22446diff -urNp linux-2.6.32.21/drivers/atm/atmtcp.c linux-2.6.32.21/drivers/atm/atmtcp.c
22298--- linux-2.6.32.21/drivers/atm/atmtcp.c 2010-08-26 19:42:20.000000000 -0400 22447--- linux-2.6.32.21/drivers/atm/atmtcp.c 2010-08-13 16:24:37.000000000 -0400
22299+++ linux-2.6.32.21/drivers/atm/atmtcp.c 2010-09-13 08:10:07.000000000 -0400 22448+++ linux-2.6.32.21/drivers/atm/atmtcp.c 2010-09-04 15:54:52.000000000 -0400
22300@@ -206,7 +206,7 @@ static int atmtcp_v_send(struct atm_vcc 22449@@ -206,7 +206,7 @@ static int atmtcp_v_send(struct atm_vcc
22301 if (vcc->pop) vcc->pop(vcc,skb); 22450 if (vcc->pop) vcc->pop(vcc,skb);
22302 else dev_kfree_skb(skb); 22451 else dev_kfree_skb(skb);
@@ -22347,8 +22496,8 @@ diff -urNp linux-2.6.32.21/drivers/atm/atmtcp.c linux-2.6.32.21/drivers/atm/atmt
22347 if (vcc->pop) vcc->pop(vcc,skb); 22496 if (vcc->pop) vcc->pop(vcc,skb);
22348 else dev_kfree_skb(skb); 22497 else dev_kfree_skb(skb);
22349diff -urNp linux-2.6.32.21/drivers/atm/eni.c linux-2.6.32.21/drivers/atm/eni.c 22498diff -urNp linux-2.6.32.21/drivers/atm/eni.c linux-2.6.32.21/drivers/atm/eni.c
22350--- linux-2.6.32.21/drivers/atm/eni.c 2010-08-26 19:42:20.000000000 -0400 22499--- linux-2.6.32.21/drivers/atm/eni.c 2010-08-13 16:24:37.000000000 -0400
22351+++ linux-2.6.32.21/drivers/atm/eni.c 2010-09-13 08:10:08.000000000 -0400 22500+++ linux-2.6.32.21/drivers/atm/eni.c 2010-09-04 15:54:52.000000000 -0400
22352@@ -525,7 +525,7 @@ static int rx_aal0(struct atm_vcc *vcc) 22501@@ -525,7 +525,7 @@ static int rx_aal0(struct atm_vcc *vcc)
22353 DPRINTK(DEV_LABEL "(itf %d): trashing empty cell\n", 22502 DPRINTK(DEV_LABEL "(itf %d): trashing empty cell\n",
22354 vcc->dev->number); 22503 vcc->dev->number);
@@ -22395,8 +22544,8 @@ diff -urNp linux-2.6.32.21/drivers/atm/eni.c linux-2.6.32.21/drivers/atm/eni.c
22395 dma_complete++; 22544 dma_complete++;
22396 } 22545 }
22397diff -urNp linux-2.6.32.21/drivers/atm/firestream.c linux-2.6.32.21/drivers/atm/firestream.c 22546diff -urNp linux-2.6.32.21/drivers/atm/firestream.c linux-2.6.32.21/drivers/atm/firestream.c
22398--- linux-2.6.32.21/drivers/atm/firestream.c 2010-08-26 19:42:20.000000000 -0400 22547--- linux-2.6.32.21/drivers/atm/firestream.c 2010-08-13 16:24:37.000000000 -0400
22399+++ linux-2.6.32.21/drivers/atm/firestream.c 2010-09-13 08:10:08.000000000 -0400 22548+++ linux-2.6.32.21/drivers/atm/firestream.c 2010-09-04 15:54:52.000000000 -0400
22400@@ -748,7 +748,7 @@ static void process_txdone_queue (struct 22549@@ -748,7 +748,7 @@ static void process_txdone_queue (struct
22401 } 22550 }
22402 } 22551 }
@@ -22431,8 +22580,8 @@ diff -urNp linux-2.6.32.21/drivers/atm/firestream.c linux-2.6.32.21/drivers/atm/
22431 default: /* Hmm. Haven't written the code to handle the others yet... -- REW */ 22580 default: /* Hmm. Haven't written the code to handle the others yet... -- REW */
22432 printk (KERN_WARNING "Don't know what to do with RX status %x: %s.\n", 22581 printk (KERN_WARNING "Don't know what to do with RX status %x: %s.\n",
22433diff -urNp linux-2.6.32.21/drivers/atm/fore200e.c linux-2.6.32.21/drivers/atm/fore200e.c 22582diff -urNp linux-2.6.32.21/drivers/atm/fore200e.c linux-2.6.32.21/drivers/atm/fore200e.c
22434--- linux-2.6.32.21/drivers/atm/fore200e.c 2010-08-26 19:42:20.000000000 -0400 22583--- linux-2.6.32.21/drivers/atm/fore200e.c 2010-08-13 16:24:37.000000000 -0400
22435+++ linux-2.6.32.21/drivers/atm/fore200e.c 2010-09-13 08:10:08.000000000 -0400 22584+++ linux-2.6.32.21/drivers/atm/fore200e.c 2010-09-04 15:54:52.000000000 -0400
22436@@ -931,9 +931,9 @@ fore200e_tx_irq(struct fore200e* fore200 22585@@ -931,9 +931,9 @@ fore200e_tx_irq(struct fore200e* fore200
22437 #endif 22586 #endif
22438 /* check error condition */ 22587 /* check error condition */
@@ -22490,8 +22639,8 @@ diff -urNp linux-2.6.32.21/drivers/atm/fore200e.c linux-2.6.32.21/drivers/atm/fo
22490 fore200e->tx_sat++; 22639 fore200e->tx_sat++;
22491 DPRINTK(2, "tx queue of device %s is saturated, PDU dropped - heartbeat is %08x\n", 22640 DPRINTK(2, "tx queue of device %s is saturated, PDU dropped - heartbeat is %08x\n",
22492diff -urNp linux-2.6.32.21/drivers/atm/he.c linux-2.6.32.21/drivers/atm/he.c 22641diff -urNp linux-2.6.32.21/drivers/atm/he.c linux-2.6.32.21/drivers/atm/he.c
22493--- linux-2.6.32.21/drivers/atm/he.c 2010-08-26 19:42:20.000000000 -0400 22642--- linux-2.6.32.21/drivers/atm/he.c 2010-08-13 16:24:37.000000000 -0400
22494+++ linux-2.6.32.21/drivers/atm/he.c 2010-09-13 08:10:08.000000000 -0400 22643+++ linux-2.6.32.21/drivers/atm/he.c 2010-09-04 15:54:52.000000000 -0400
22495@@ -1769,7 +1769,7 @@ he_service_rbrq(struct he_dev *he_dev, i 22644@@ -1769,7 +1769,7 @@ he_service_rbrq(struct he_dev *he_dev, i
22496 22645
22497 if (RBRQ_HBUF_ERR(he_dev->rbrq_head)) { 22646 if (RBRQ_HBUF_ERR(he_dev->rbrq_head)) {
@@ -22574,8 +22723,8 @@ diff -urNp linux-2.6.32.21/drivers/atm/he.c linux-2.6.32.21/drivers/atm/he.c
22574 return 0; 22723 return 0;
22575 } 22724 }
22576diff -urNp linux-2.6.32.21/drivers/atm/horizon.c linux-2.6.32.21/drivers/atm/horizon.c 22725diff -urNp linux-2.6.32.21/drivers/atm/horizon.c linux-2.6.32.21/drivers/atm/horizon.c
22577--- linux-2.6.32.21/drivers/atm/horizon.c 2010-08-26 19:42:20.000000000 -0400 22726--- linux-2.6.32.21/drivers/atm/horizon.c 2010-08-13 16:24:37.000000000 -0400
22578+++ linux-2.6.32.21/drivers/atm/horizon.c 2010-09-13 08:10:08.000000000 -0400 22727+++ linux-2.6.32.21/drivers/atm/horizon.c 2010-09-04 15:54:52.000000000 -0400
22579@@ -1033,7 +1033,7 @@ static void rx_schedule (hrz_dev * dev, 22728@@ -1033,7 +1033,7 @@ static void rx_schedule (hrz_dev * dev,
22580 { 22729 {
22581 struct atm_vcc * vcc = ATM_SKB(skb)->vcc; 22730 struct atm_vcc * vcc = ATM_SKB(skb)->vcc;
@@ -22595,8 +22744,8 @@ diff -urNp linux-2.6.32.21/drivers/atm/horizon.c linux-2.6.32.21/drivers/atm/hor
22595 // free the skb 22744 // free the skb
22596 hrz_kfree_skb (skb); 22745 hrz_kfree_skb (skb);
22597diff -urNp linux-2.6.32.21/drivers/atm/idt77252.c linux-2.6.32.21/drivers/atm/idt77252.c 22746diff -urNp linux-2.6.32.21/drivers/atm/idt77252.c linux-2.6.32.21/drivers/atm/idt77252.c
22598--- linux-2.6.32.21/drivers/atm/idt77252.c 2010-08-26 19:42:20.000000000 -0400 22747--- linux-2.6.32.21/drivers/atm/idt77252.c 2010-08-13 16:24:37.000000000 -0400
22599+++ linux-2.6.32.21/drivers/atm/idt77252.c 2010-09-13 08:10:08.000000000 -0400 22748+++ linux-2.6.32.21/drivers/atm/idt77252.c 2010-09-04 15:54:52.000000000 -0400
22600@@ -810,7 +810,7 @@ drain_scq(struct idt77252_dev *card, str 22749@@ -810,7 +810,7 @@ drain_scq(struct idt77252_dev *card, str
22601 else 22750 else
22602 dev_kfree_skb(skb); 22751 dev_kfree_skb(skb);
@@ -22752,8 +22901,8 @@ diff -urNp linux-2.6.32.21/drivers/atm/idt77252.c linux-2.6.32.21/drivers/atm/id
22752 } 22901 }
22753 atomic_add(skb->truesize, &sk_atm(vcc)->sk_wmem_alloc); 22902 atomic_add(skb->truesize, &sk_atm(vcc)->sk_wmem_alloc);
22754diff -urNp linux-2.6.32.21/drivers/atm/iphase.c linux-2.6.32.21/drivers/atm/iphase.c 22903diff -urNp linux-2.6.32.21/drivers/atm/iphase.c linux-2.6.32.21/drivers/atm/iphase.c
22755--- linux-2.6.32.21/drivers/atm/iphase.c 2010-08-26 19:42:20.000000000 -0400 22904--- linux-2.6.32.21/drivers/atm/iphase.c 2010-08-13 16:24:37.000000000 -0400
22756+++ linux-2.6.32.21/drivers/atm/iphase.c 2010-09-13 08:10:08.000000000 -0400 22905+++ linux-2.6.32.21/drivers/atm/iphase.c 2010-09-04 15:54:52.000000000 -0400
22757@@ -1123,7 +1123,7 @@ static int rx_pkt(struct atm_dev *dev) 22906@@ -1123,7 +1123,7 @@ static int rx_pkt(struct atm_dev *dev)
22758 status = (u_short) (buf_desc_ptr->desc_mode); 22907 status = (u_short) (buf_desc_ptr->desc_mode);
22759 if (status & (RX_CER | RX_PTE | RX_OFL)) 22908 if (status & (RX_CER | RX_PTE | RX_OFL))
@@ -22851,8 +23000,8 @@ diff -urNp linux-2.6.32.21/drivers/atm/iphase.c linux-2.6.32.21/drivers/atm/ipha
22851 vcc->tx_quota = vcc->tx_quota * 3 / 4; 23000 vcc->tx_quota = vcc->tx_quota * 3 / 4;
22852 printk("Tx1: vcc->tx_quota = %d \n", (u32)vcc->tx_quota ); 23001 printk("Tx1: vcc->tx_quota = %d \n", (u32)vcc->tx_quota );
22853diff -urNp linux-2.6.32.21/drivers/atm/lanai.c linux-2.6.32.21/drivers/atm/lanai.c 23002diff -urNp linux-2.6.32.21/drivers/atm/lanai.c linux-2.6.32.21/drivers/atm/lanai.c
22854--- linux-2.6.32.21/drivers/atm/lanai.c 2010-08-26 19:42:20.000000000 -0400 23003--- linux-2.6.32.21/drivers/atm/lanai.c 2010-08-13 16:24:37.000000000 -0400
22855+++ linux-2.6.32.21/drivers/atm/lanai.c 2010-09-13 08:10:08.000000000 -0400 23004+++ linux-2.6.32.21/drivers/atm/lanai.c 2010-09-04 15:54:52.000000000 -0400
22856@@ -1305,7 +1305,7 @@ static void lanai_send_one_aal5(struct l 23005@@ -1305,7 +1305,7 @@ static void lanai_send_one_aal5(struct l
22857 vcc_tx_add_aal5_trailer(lvcc, skb->len, 0, 0); 23006 vcc_tx_add_aal5_trailer(lvcc, skb->len, 0, 0);
22858 lanai_endtx(lanai, lvcc); 23007 lanai_endtx(lanai, lvcc);
@@ -22908,8 +23057,8 @@ diff -urNp linux-2.6.32.21/drivers/atm/lanai.c linux-2.6.32.21/drivers/atm/lanai
22908 lvcc->rx.buf.ptr = &lvcc->rx.buf.start[SERVICE_GET_END(s) * 4]; 23057 lvcc->rx.buf.ptr = &lvcc->rx.buf.start[SERVICE_GET_END(s) * 4];
22909 cardvcc_write(lvcc, SERVICE_GET_END(s), vcc_rxreadptr); 23058 cardvcc_write(lvcc, SERVICE_GET_END(s), vcc_rxreadptr);
22910diff -urNp linux-2.6.32.21/drivers/atm/nicstar.c linux-2.6.32.21/drivers/atm/nicstar.c 23059diff -urNp linux-2.6.32.21/drivers/atm/nicstar.c linux-2.6.32.21/drivers/atm/nicstar.c
22911--- linux-2.6.32.21/drivers/atm/nicstar.c 2010-08-26 19:42:20.000000000 -0400 23060--- linux-2.6.32.21/drivers/atm/nicstar.c 2010-08-13 16:24:37.000000000 -0400
22912+++ linux-2.6.32.21/drivers/atm/nicstar.c 2010-09-13 08:10:08.000000000 -0400 23061+++ linux-2.6.32.21/drivers/atm/nicstar.c 2010-09-04 15:54:52.000000000 -0400
22913@@ -1723,7 +1723,7 @@ static int ns_send(struct atm_vcc *vcc, 23062@@ -1723,7 +1723,7 @@ static int ns_send(struct atm_vcc *vcc,
22914 if ((vc = (vc_map *) vcc->dev_data) == NULL) 23063 if ((vc = (vc_map *) vcc->dev_data) == NULL)
22915 { 23064 {
@@ -23113,8 +23262,8 @@ diff -urNp linux-2.6.32.21/drivers/atm/nicstar.c linux-2.6.32.21/drivers/atm/nic
23113 } 23262 }
23114 23263
23115diff -urNp linux-2.6.32.21/drivers/atm/solos-pci.c linux-2.6.32.21/drivers/atm/solos-pci.c 23264diff -urNp linux-2.6.32.21/drivers/atm/solos-pci.c linux-2.6.32.21/drivers/atm/solos-pci.c
23116--- linux-2.6.32.21/drivers/atm/solos-pci.c 2010-08-26 19:42:20.000000000 -0400 23265--- linux-2.6.32.21/drivers/atm/solos-pci.c 2010-08-13 16:24:37.000000000 -0400
23117+++ linux-2.6.32.21/drivers/atm/solos-pci.c 2010-09-13 08:10:08.000000000 -0400 23266+++ linux-2.6.32.21/drivers/atm/solos-pci.c 2010-09-04 15:54:52.000000000 -0400
23118@@ -708,7 +708,7 @@ void solos_bh(unsigned long card_arg) 23267@@ -708,7 +708,7 @@ void solos_bh(unsigned long card_arg)
23119 } 23268 }
23120 atm_charge(vcc, skb->truesize); 23269 atm_charge(vcc, skb->truesize);
@@ -23134,8 +23283,8 @@ diff -urNp linux-2.6.32.21/drivers/atm/solos-pci.c linux-2.6.32.21/drivers/atm/s
23134 } else 23283 } else
23135 dev_kfree_skb_irq(oldskb); 23284 dev_kfree_skb_irq(oldskb);
23136diff -urNp linux-2.6.32.21/drivers/atm/suni.c linux-2.6.32.21/drivers/atm/suni.c 23285diff -urNp linux-2.6.32.21/drivers/atm/suni.c linux-2.6.32.21/drivers/atm/suni.c
23137--- linux-2.6.32.21/drivers/atm/suni.c 2010-08-26 19:42:20.000000000 -0400 23286--- linux-2.6.32.21/drivers/atm/suni.c 2010-08-13 16:24:37.000000000 -0400
23138+++ linux-2.6.32.21/drivers/atm/suni.c 2010-09-13 08:10:08.000000000 -0400 23287+++ linux-2.6.32.21/drivers/atm/suni.c 2010-09-04 15:54:52.000000000 -0400
23139@@ -49,8 +49,8 @@ static DEFINE_SPINLOCK(sunis_lock); 23288@@ -49,8 +49,8 @@ static DEFINE_SPINLOCK(sunis_lock);
23140 23289
23141 23290
@@ -23148,8 +23297,8 @@ diff -urNp linux-2.6.32.21/drivers/atm/suni.c linux-2.6.32.21/drivers/atm/suni.c
23148 23297
23149 static void suni_hz(unsigned long from_timer) 23298 static void suni_hz(unsigned long from_timer)
23150diff -urNp linux-2.6.32.21/drivers/atm/uPD98402.c linux-2.6.32.21/drivers/atm/uPD98402.c 23299diff -urNp linux-2.6.32.21/drivers/atm/uPD98402.c linux-2.6.32.21/drivers/atm/uPD98402.c
23151--- linux-2.6.32.21/drivers/atm/uPD98402.c 2010-08-26 19:42:20.000000000 -0400 23300--- linux-2.6.32.21/drivers/atm/uPD98402.c 2010-08-13 16:24:37.000000000 -0400
23152+++ linux-2.6.32.21/drivers/atm/uPD98402.c 2010-09-13 08:10:08.000000000 -0400 23301+++ linux-2.6.32.21/drivers/atm/uPD98402.c 2010-09-04 15:54:52.000000000 -0400
23153@@ -41,7 +41,7 @@ static int fetch_stats(struct atm_dev *d 23302@@ -41,7 +41,7 @@ static int fetch_stats(struct atm_dev *d
23154 struct sonet_stats tmp; 23303 struct sonet_stats tmp;
23155 int error = 0; 23304 int error = 0;
@@ -23195,8 +23344,8 @@ diff -urNp linux-2.6.32.21/drivers/atm/uPD98402.c linux-2.6.32.21/drivers/atm/uP
23195 } 23344 }
23196 23345
23197diff -urNp linux-2.6.32.21/drivers/atm/zatm.c linux-2.6.32.21/drivers/atm/zatm.c 23346diff -urNp linux-2.6.32.21/drivers/atm/zatm.c linux-2.6.32.21/drivers/atm/zatm.c
23198--- linux-2.6.32.21/drivers/atm/zatm.c 2010-08-26 19:42:20.000000000 -0400 23347--- linux-2.6.32.21/drivers/atm/zatm.c 2010-08-13 16:24:37.000000000 -0400
23199+++ linux-2.6.32.21/drivers/atm/zatm.c 2010-09-13 08:10:08.000000000 -0400 23348+++ linux-2.6.32.21/drivers/atm/zatm.c 2010-09-04 15:54:52.000000000 -0400
23200@@ -458,7 +458,7 @@ printk("dummy: 0x%08lx, 0x%08lx\n",dummy 23349@@ -458,7 +458,7 @@ printk("dummy: 0x%08lx, 0x%08lx\n",dummy
23201 } 23350 }
23202 if (!size) { 23351 if (!size) {
@@ -23225,8 +23374,8 @@ diff -urNp linux-2.6.32.21/drivers/atm/zatm.c linux-2.6.32.21/drivers/atm/zatm.c
23225 } 23374 }
23226 23375
23227diff -urNp linux-2.6.32.21/drivers/base/bus.c linux-2.6.32.21/drivers/base/bus.c 23376diff -urNp linux-2.6.32.21/drivers/base/bus.c linux-2.6.32.21/drivers/base/bus.c
23228--- linux-2.6.32.21/drivers/base/bus.c 2010-08-26 19:42:20.000000000 -0400 23377--- linux-2.6.32.21/drivers/base/bus.c 2010-08-13 16:24:37.000000000 -0400
23229+++ linux-2.6.32.21/drivers/base/bus.c 2010-09-13 08:10:08.000000000 -0400 23378+++ linux-2.6.32.21/drivers/base/bus.c 2010-09-04 15:54:52.000000000 -0400
23230@@ -70,7 +70,7 @@ static ssize_t drv_attr_store(struct kob 23379@@ -70,7 +70,7 @@ static ssize_t drv_attr_store(struct kob
23231 return ret; 23380 return ret;
23232 } 23381 }
@@ -23255,8 +23404,8 @@ diff -urNp linux-2.6.32.21/drivers/base/bus.c linux-2.6.32.21/drivers/base/bus.c
23255 }; 23404 };
23256 23405
23257diff -urNp linux-2.6.32.21/drivers/base/class.c linux-2.6.32.21/drivers/base/class.c 23406diff -urNp linux-2.6.32.21/drivers/base/class.c linux-2.6.32.21/drivers/base/class.c
23258--- linux-2.6.32.21/drivers/base/class.c 2010-08-26 19:42:20.000000000 -0400 23407--- linux-2.6.32.21/drivers/base/class.c 2010-08-13 16:24:37.000000000 -0400
23259+++ linux-2.6.32.21/drivers/base/class.c 2010-09-13 08:10:08.000000000 -0400 23408+++ linux-2.6.32.21/drivers/base/class.c 2010-09-04 15:54:52.000000000 -0400
23260@@ -63,7 +63,7 @@ static void class_release(struct kobject 23409@@ -63,7 +63,7 @@ static void class_release(struct kobject
23261 kfree(cp); 23410 kfree(cp);
23262 } 23411 }
@@ -23267,8 +23416,8 @@ diff -urNp linux-2.6.32.21/drivers/base/class.c linux-2.6.32.21/drivers/base/cla
23267 .store = class_attr_store, 23416 .store = class_attr_store,
23268 }; 23417 };
23269diff -urNp linux-2.6.32.21/drivers/base/core.c linux-2.6.32.21/drivers/base/core.c 23418diff -urNp linux-2.6.32.21/drivers/base/core.c linux-2.6.32.21/drivers/base/core.c
23270--- linux-2.6.32.21/drivers/base/core.c 2010-08-26 19:42:20.000000000 -0400 23419--- linux-2.6.32.21/drivers/base/core.c 2010-08-13 16:24:37.000000000 -0400
23271+++ linux-2.6.32.21/drivers/base/core.c 2010-09-13 08:10:08.000000000 -0400 23420+++ linux-2.6.32.21/drivers/base/core.c 2010-09-04 15:54:52.000000000 -0400
23272@@ -100,7 +100,7 @@ static ssize_t dev_attr_store(struct kob 23421@@ -100,7 +100,7 @@ static ssize_t dev_attr_store(struct kob
23273 return ret; 23422 return ret;
23274 } 23423 }
@@ -23288,8 +23437,8 @@ diff -urNp linux-2.6.32.21/drivers/base/core.c linux-2.6.32.21/drivers/base/core
23288 .name = dev_uevent_name, 23437 .name = dev_uevent_name,
23289 .uevent = dev_uevent, 23438 .uevent = dev_uevent,
23290diff -urNp linux-2.6.32.21/drivers/base/memory.c linux-2.6.32.21/drivers/base/memory.c 23439diff -urNp linux-2.6.32.21/drivers/base/memory.c linux-2.6.32.21/drivers/base/memory.c
23291--- linux-2.6.32.21/drivers/base/memory.c 2010-08-26 19:42:20.000000000 -0400 23440--- linux-2.6.32.21/drivers/base/memory.c 2010-08-13 16:24:37.000000000 -0400
23292+++ linux-2.6.32.21/drivers/base/memory.c 2010-09-13 08:10:08.000000000 -0400 23441+++ linux-2.6.32.21/drivers/base/memory.c 2010-09-04 15:54:52.000000000 -0400
23293@@ -44,7 +44,7 @@ static int memory_uevent(struct kset *ks 23442@@ -44,7 +44,7 @@ static int memory_uevent(struct kset *ks
23294 return retval; 23443 return retval;
23295 } 23444 }
@@ -23300,8 +23449,8 @@ diff -urNp linux-2.6.32.21/drivers/base/memory.c linux-2.6.32.21/drivers/base/me
23300 .uevent = memory_uevent, 23449 .uevent = memory_uevent,
23301 }; 23450 };
23302diff -urNp linux-2.6.32.21/drivers/base/sys.c linux-2.6.32.21/drivers/base/sys.c 23451diff -urNp linux-2.6.32.21/drivers/base/sys.c linux-2.6.32.21/drivers/base/sys.c
23303--- linux-2.6.32.21/drivers/base/sys.c 2010-08-26 19:42:20.000000000 -0400 23452--- linux-2.6.32.21/drivers/base/sys.c 2010-08-13 16:24:37.000000000 -0400
23304+++ linux-2.6.32.21/drivers/base/sys.c 2010-09-13 08:10:08.000000000 -0400 23453+++ linux-2.6.32.21/drivers/base/sys.c 2010-09-04 15:54:52.000000000 -0400
23305@@ -54,7 +54,7 @@ sysdev_store(struct kobject *kobj, struc 23454@@ -54,7 +54,7 @@ sysdev_store(struct kobject *kobj, struc
23306 return -EIO; 23455 return -EIO;
23307 } 23456 }
@@ -23321,8 +23470,8 @@ diff -urNp linux-2.6.32.21/drivers/base/sys.c linux-2.6.32.21/drivers/base/sys.c
23321 .store = sysdev_class_store, 23470 .store = sysdev_class_store,
23322 }; 23471 };
23323diff -urNp linux-2.6.32.21/drivers/block/pktcdvd.c linux-2.6.32.21/drivers/block/pktcdvd.c 23472diff -urNp linux-2.6.32.21/drivers/block/pktcdvd.c linux-2.6.32.21/drivers/block/pktcdvd.c
23324--- linux-2.6.32.21/drivers/block/pktcdvd.c 2010-08-26 19:42:20.000000000 -0400 23473--- linux-2.6.32.21/drivers/block/pktcdvd.c 2010-08-13 16:24:37.000000000 -0400
23325+++ linux-2.6.32.21/drivers/block/pktcdvd.c 2010-09-13 08:10:08.000000000 -0400 23474+++ linux-2.6.32.21/drivers/block/pktcdvd.c 2010-09-04 15:54:52.000000000 -0400
23326@@ -284,7 +284,7 @@ static ssize_t kobj_pkt_store(struct kob 23475@@ -284,7 +284,7 @@ static ssize_t kobj_pkt_store(struct kob
23327 return len; 23476 return len;
23328 } 23477 }
@@ -23333,8 +23482,8 @@ diff -urNp linux-2.6.32.21/drivers/block/pktcdvd.c linux-2.6.32.21/drivers/block
23333 .store = kobj_pkt_store 23482 .store = kobj_pkt_store
23334 }; 23483 };
23335diff -urNp linux-2.6.32.21/drivers/char/agp/frontend.c linux-2.6.32.21/drivers/char/agp/frontend.c 23484diff -urNp linux-2.6.32.21/drivers/char/agp/frontend.c linux-2.6.32.21/drivers/char/agp/frontend.c
23336--- linux-2.6.32.21/drivers/char/agp/frontend.c 2010-08-26 19:42:20.000000000 -0400 23485--- linux-2.6.32.21/drivers/char/agp/frontend.c 2010-08-13 16:24:37.000000000 -0400
23337+++ linux-2.6.32.21/drivers/char/agp/frontend.c 2010-09-13 08:10:08.000000000 -0400 23486+++ linux-2.6.32.21/drivers/char/agp/frontend.c 2010-09-04 15:54:52.000000000 -0400
23338@@ -824,7 +824,7 @@ static int agpioc_reserve_wrap(struct ag 23487@@ -824,7 +824,7 @@ static int agpioc_reserve_wrap(struct ag
23339 if (copy_from_user(&reserve, arg, sizeof(struct agp_region))) 23488 if (copy_from_user(&reserve, arg, sizeof(struct agp_region)))
23340 return -EFAULT; 23489 return -EFAULT;
@@ -23345,8 +23494,8 @@ diff -urNp linux-2.6.32.21/drivers/char/agp/frontend.c linux-2.6.32.21/drivers/c
23345 23494
23346 client = agp_find_client_by_pid(reserve.pid); 23495 client = agp_find_client_by_pid(reserve.pid);
23347diff -urNp linux-2.6.32.21/drivers/char/agp/intel-agp.c linux-2.6.32.21/drivers/char/agp/intel-agp.c 23496diff -urNp linux-2.6.32.21/drivers/char/agp/intel-agp.c linux-2.6.32.21/drivers/char/agp/intel-agp.c
23348--- linux-2.6.32.21/drivers/char/agp/intel-agp.c 2010-08-26 19:42:20.000000000 -0400 23497--- linux-2.6.32.21/drivers/char/agp/intel-agp.c 2010-08-13 16:24:37.000000000 -0400
23349+++ linux-2.6.32.21/drivers/char/agp/intel-agp.c 2010-09-13 08:10:08.000000000 -0400 23498+++ linux-2.6.32.21/drivers/char/agp/intel-agp.c 2010-09-04 15:54:52.000000000 -0400
23350@@ -2564,7 +2564,7 @@ static struct pci_device_id agp_intel_pc 23499@@ -2564,7 +2564,7 @@ static struct pci_device_id agp_intel_pc
23351 ID(PCI_DEVICE_ID_INTEL_IGDNG_M_HB), 23500 ID(PCI_DEVICE_ID_INTEL_IGDNG_M_HB),
23352 ID(PCI_DEVICE_ID_INTEL_IGDNG_MA_HB), 23501 ID(PCI_DEVICE_ID_INTEL_IGDNG_MA_HB),
@@ -23357,8 +23506,8 @@ diff -urNp linux-2.6.32.21/drivers/char/agp/intel-agp.c linux-2.6.32.21/drivers/
23357 23506
23358 MODULE_DEVICE_TABLE(pci, agp_intel_pci_table); 23507 MODULE_DEVICE_TABLE(pci, agp_intel_pci_table);
23359diff -urNp linux-2.6.32.21/drivers/char/hpet.c linux-2.6.32.21/drivers/char/hpet.c 23508diff -urNp linux-2.6.32.21/drivers/char/hpet.c linux-2.6.32.21/drivers/char/hpet.c
23360--- linux-2.6.32.21/drivers/char/hpet.c 2010-08-26 19:42:20.000000000 -0400 23509--- linux-2.6.32.21/drivers/char/hpet.c 2010-08-13 16:24:37.000000000 -0400
23361+++ linux-2.6.32.21/drivers/char/hpet.c 2010-09-13 08:10:08.000000000 -0400 23510+++ linux-2.6.32.21/drivers/char/hpet.c 2010-09-04 15:54:52.000000000 -0400
23362@@ -430,7 +430,7 @@ static int hpet_release(struct inode *in 23511@@ -430,7 +430,7 @@ static int hpet_release(struct inode *in
23363 return 0; 23512 return 0;
23364 } 23513 }
@@ -23387,8 +23536,8 @@ diff -urNp linux-2.6.32.21/drivers/char/hpet.c linux-2.6.32.21/drivers/char/hpet
23387 static int __init hpet_init(void) 23536 static int __init hpet_init(void)
23388 { 23537 {
23389diff -urNp linux-2.6.32.21/drivers/char/hvc_beat.c linux-2.6.32.21/drivers/char/hvc_beat.c 23538diff -urNp linux-2.6.32.21/drivers/char/hvc_beat.c linux-2.6.32.21/drivers/char/hvc_beat.c
23390--- linux-2.6.32.21/drivers/char/hvc_beat.c 2010-08-26 19:42:20.000000000 -0400 23539--- linux-2.6.32.21/drivers/char/hvc_beat.c 2010-08-13 16:24:37.000000000 -0400
23391+++ linux-2.6.32.21/drivers/char/hvc_beat.c 2010-09-13 08:10:08.000000000 -0400 23540+++ linux-2.6.32.21/drivers/char/hvc_beat.c 2010-09-04 15:54:52.000000000 -0400
23392@@ -84,7 +84,7 @@ static int hvc_beat_put_chars(uint32_t v 23541@@ -84,7 +84,7 @@ static int hvc_beat_put_chars(uint32_t v
23393 return cnt; 23542 return cnt;
23394 } 23543 }
@@ -23399,8 +23548,8 @@ diff -urNp linux-2.6.32.21/drivers/char/hvc_beat.c linux-2.6.32.21/drivers/char/
23399 .put_chars = hvc_beat_put_chars, 23548 .put_chars = hvc_beat_put_chars,
23400 }; 23549 };
23401diff -urNp linux-2.6.32.21/drivers/char/hvc_console.c linux-2.6.32.21/drivers/char/hvc_console.c 23550diff -urNp linux-2.6.32.21/drivers/char/hvc_console.c linux-2.6.32.21/drivers/char/hvc_console.c
23402--- linux-2.6.32.21/drivers/char/hvc_console.c 2010-08-26 19:42:20.000000000 -0400 23551--- linux-2.6.32.21/drivers/char/hvc_console.c 2010-08-13 16:24:37.000000000 -0400
23403+++ linux-2.6.32.21/drivers/char/hvc_console.c 2010-09-13 08:10:08.000000000 -0400 23552+++ linux-2.6.32.21/drivers/char/hvc_console.c 2010-09-04 15:54:52.000000000 -0400
23404@@ -125,7 +125,7 @@ static struct hvc_struct *hvc_get_by_ind 23553@@ -125,7 +125,7 @@ static struct hvc_struct *hvc_get_by_ind
23405 * console interfaces but can still be used as a tty device. This has to be 23554 * console interfaces but can still be used as a tty device. This has to be
23406 * static because kmalloc will not work during early console init. 23555 * static because kmalloc will not work during early console init.
@@ -23429,8 +23578,8 @@ diff -urNp linux-2.6.32.21/drivers/char/hvc_console.c linux-2.6.32.21/drivers/ch
23429 struct hvc_struct *hp; 23578 struct hvc_struct *hp;
23430 int i; 23579 int i;
23431diff -urNp linux-2.6.32.21/drivers/char/hvc_console.h linux-2.6.32.21/drivers/char/hvc_console.h 23580diff -urNp linux-2.6.32.21/drivers/char/hvc_console.h linux-2.6.32.21/drivers/char/hvc_console.h
23432--- linux-2.6.32.21/drivers/char/hvc_console.h 2010-08-26 19:42:20.000000000 -0400 23581--- linux-2.6.32.21/drivers/char/hvc_console.h 2010-08-13 16:24:37.000000000 -0400
23433+++ linux-2.6.32.21/drivers/char/hvc_console.h 2010-09-13 08:10:08.000000000 -0400 23582+++ linux-2.6.32.21/drivers/char/hvc_console.h 2010-09-04 15:54:52.000000000 -0400
23434@@ -55,7 +55,7 @@ struct hvc_struct { 23583@@ -55,7 +55,7 @@ struct hvc_struct {
23435 int outbuf_size; 23584 int outbuf_size;
23436 int n_outbuf; 23585 int n_outbuf;
@@ -23455,8 +23604,8 @@ diff -urNp linux-2.6.32.21/drivers/char/hvc_console.h linux-2.6.32.21/drivers/ch
23455 extern int hvc_remove(struct hvc_struct *hp); 23604 extern int hvc_remove(struct hvc_struct *hp);
23456 23605
23457diff -urNp linux-2.6.32.21/drivers/char/hvc_iseries.c linux-2.6.32.21/drivers/char/hvc_iseries.c 23606diff -urNp linux-2.6.32.21/drivers/char/hvc_iseries.c linux-2.6.32.21/drivers/char/hvc_iseries.c
23458--- linux-2.6.32.21/drivers/char/hvc_iseries.c 2010-08-26 19:42:20.000000000 -0400 23607--- linux-2.6.32.21/drivers/char/hvc_iseries.c 2010-08-13 16:24:37.000000000 -0400
23459+++ linux-2.6.32.21/drivers/char/hvc_iseries.c 2010-09-13 08:10:08.000000000 -0400 23608+++ linux-2.6.32.21/drivers/char/hvc_iseries.c 2010-09-04 15:54:52.000000000 -0400
23460@@ -197,7 +197,7 @@ done: 23609@@ -197,7 +197,7 @@ done:
23461 return sent; 23610 return sent;
23462 } 23611 }
@@ -23467,8 +23616,8 @@ diff -urNp linux-2.6.32.21/drivers/char/hvc_iseries.c linux-2.6.32.21/drivers/ch
23467 .put_chars = put_chars, 23616 .put_chars = put_chars,
23468 .notifier_add = notifier_add_irq, 23617 .notifier_add = notifier_add_irq,
23469diff -urNp linux-2.6.32.21/drivers/char/hvc_iucv.c linux-2.6.32.21/drivers/char/hvc_iucv.c 23618diff -urNp linux-2.6.32.21/drivers/char/hvc_iucv.c linux-2.6.32.21/drivers/char/hvc_iucv.c
23470--- linux-2.6.32.21/drivers/char/hvc_iucv.c 2010-08-26 19:42:20.000000000 -0400 23619--- linux-2.6.32.21/drivers/char/hvc_iucv.c 2010-08-13 16:24:37.000000000 -0400
23471+++ linux-2.6.32.21/drivers/char/hvc_iucv.c 2010-09-13 08:10:08.000000000 -0400 23620+++ linux-2.6.32.21/drivers/char/hvc_iucv.c 2010-09-04 15:54:52.000000000 -0400
23472@@ -922,7 +922,7 @@ static int hvc_iucv_pm_restore_thaw(stru 23621@@ -922,7 +922,7 @@ static int hvc_iucv_pm_restore_thaw(stru
23473 23622
23474 23623
@@ -23479,8 +23628,8 @@ diff -urNp linux-2.6.32.21/drivers/char/hvc_iucv.c linux-2.6.32.21/drivers/char/
23479 .put_chars = hvc_iucv_put_chars, 23628 .put_chars = hvc_iucv_put_chars,
23480 .notifier_add = hvc_iucv_notifier_add, 23629 .notifier_add = hvc_iucv_notifier_add,
23481diff -urNp linux-2.6.32.21/drivers/char/hvc_rtas.c linux-2.6.32.21/drivers/char/hvc_rtas.c 23630diff -urNp linux-2.6.32.21/drivers/char/hvc_rtas.c linux-2.6.32.21/drivers/char/hvc_rtas.c
23482--- linux-2.6.32.21/drivers/char/hvc_rtas.c 2010-08-26 19:42:20.000000000 -0400 23631--- linux-2.6.32.21/drivers/char/hvc_rtas.c 2010-08-13 16:24:37.000000000 -0400
23483+++ linux-2.6.32.21/drivers/char/hvc_rtas.c 2010-09-13 08:10:08.000000000 -0400 23632+++ linux-2.6.32.21/drivers/char/hvc_rtas.c 2010-09-04 15:54:52.000000000 -0400
23484@@ -71,7 +71,7 @@ static int hvc_rtas_read_console(uint32_ 23633@@ -71,7 +71,7 @@ static int hvc_rtas_read_console(uint32_
23485 return i; 23634 return i;
23486 } 23635 }
@@ -23490,45 +23639,9 @@ diff -urNp linux-2.6.32.21/drivers/char/hvc_rtas.c linux-2.6.32.21/drivers/char/
23490 .get_chars = hvc_rtas_read_console, 23639 .get_chars = hvc_rtas_read_console,
23491 .put_chars = hvc_rtas_write_console, 23640 .put_chars = hvc_rtas_write_console,
23492 }; 23641 };
23493diff -urNp linux-2.6.32.21/drivers/char/hvc_udbg.c linux-2.6.32.21/drivers/char/hvc_udbg.c
23494--- linux-2.6.32.21/drivers/char/hvc_udbg.c 2010-08-26 19:42:20.000000000 -0400
23495+++ linux-2.6.32.21/drivers/char/hvc_udbg.c 2010-09-13 08:10:08.000000000 -0400
23496@@ -58,7 +58,7 @@ static int hvc_udbg_get(uint32_t vtermno
23497 return i;
23498 }
23499
23500-static struct hv_ops hvc_udbg_ops = {
23501+static const struct hv_ops hvc_udbg_ops = {
23502 .get_chars = hvc_udbg_get,
23503 .put_chars = hvc_udbg_put,
23504 };
23505diff -urNp linux-2.6.32.21/drivers/char/hvc_vio.c linux-2.6.32.21/drivers/char/hvc_vio.c
23506--- linux-2.6.32.21/drivers/char/hvc_vio.c 2010-08-26 19:42:20.000000000 -0400
23507+++ linux-2.6.32.21/drivers/char/hvc_vio.c 2010-09-13 08:10:08.000000000 -0400
23508@@ -77,7 +77,7 @@ static int filtered_get_chars(uint32_t v
23509 return got;
23510 }
23511
23512-static struct hv_ops hvc_get_put_ops = {
23513+static const struct hv_ops hvc_get_put_ops = {
23514 .get_chars = filtered_get_chars,
23515 .put_chars = hvc_put_chars,
23516 .notifier_add = notifier_add_irq,
23517diff -urNp linux-2.6.32.21/drivers/char/hvc_xen.c linux-2.6.32.21/drivers/char/hvc_xen.c
23518--- linux-2.6.32.21/drivers/char/hvc_xen.c 2010-08-26 19:42:20.000000000 -0400
23519+++ linux-2.6.32.21/drivers/char/hvc_xen.c 2010-09-13 08:10:08.000000000 -0400
23520@@ -120,7 +120,7 @@ static int read_console(uint32_t vtermno
23521 return recv;
23522 }
23523
23524-static struct hv_ops hvc_ops = {
23525+static const struct hv_ops hvc_ops = {
23526 .get_chars = read_console,
23527 .put_chars = write_console,
23528 .notifier_add = notifier_add_irq,
23529diff -urNp linux-2.6.32.21/drivers/char/hvcs.c linux-2.6.32.21/drivers/char/hvcs.c 23642diff -urNp linux-2.6.32.21/drivers/char/hvcs.c linux-2.6.32.21/drivers/char/hvcs.c
23530--- linux-2.6.32.21/drivers/char/hvcs.c 2010-08-26 19:42:20.000000000 -0400 23643--- linux-2.6.32.21/drivers/char/hvcs.c 2010-08-13 16:24:37.000000000 -0400
23531+++ linux-2.6.32.21/drivers/char/hvcs.c 2010-09-13 08:10:08.000000000 -0400 23644+++ linux-2.6.32.21/drivers/char/hvcs.c 2010-09-04 15:54:52.000000000 -0400
23532@@ -269,7 +269,7 @@ struct hvcs_struct { 23645@@ -269,7 +269,7 @@ struct hvcs_struct {
23533 unsigned int index; 23646 unsigned int index;
23534 23647
@@ -23623,9 +23736,45 @@ diff -urNp linux-2.6.32.21/drivers/char/hvcs.c linux-2.6.32.21/drivers/char/hvcs
23623 return 0; 23736 return 0;
23624 23737
23625 return HVCS_BUFF_LEN - hvcsd->chars_in_buffer; 23738 return HVCS_BUFF_LEN - hvcsd->chars_in_buffer;
23739diff -urNp linux-2.6.32.21/drivers/char/hvc_udbg.c linux-2.6.32.21/drivers/char/hvc_udbg.c
23740--- linux-2.6.32.21/drivers/char/hvc_udbg.c 2010-08-13 16:24:37.000000000 -0400
23741+++ linux-2.6.32.21/drivers/char/hvc_udbg.c 2010-09-04 15:54:52.000000000 -0400
23742@@ -58,7 +58,7 @@ static int hvc_udbg_get(uint32_t vtermno
23743 return i;
23744 }
23745
23746-static struct hv_ops hvc_udbg_ops = {
23747+static const struct hv_ops hvc_udbg_ops = {
23748 .get_chars = hvc_udbg_get,
23749 .put_chars = hvc_udbg_put,
23750 };
23751diff -urNp linux-2.6.32.21/drivers/char/hvc_vio.c linux-2.6.32.21/drivers/char/hvc_vio.c
23752--- linux-2.6.32.21/drivers/char/hvc_vio.c 2010-08-13 16:24:37.000000000 -0400
23753+++ linux-2.6.32.21/drivers/char/hvc_vio.c 2010-09-04 15:54:52.000000000 -0400
23754@@ -77,7 +77,7 @@ static int filtered_get_chars(uint32_t v
23755 return got;
23756 }
23757
23758-static struct hv_ops hvc_get_put_ops = {
23759+static const struct hv_ops hvc_get_put_ops = {
23760 .get_chars = filtered_get_chars,
23761 .put_chars = hvc_put_chars,
23762 .notifier_add = notifier_add_irq,
23763diff -urNp linux-2.6.32.21/drivers/char/hvc_xen.c linux-2.6.32.21/drivers/char/hvc_xen.c
23764--- linux-2.6.32.21/drivers/char/hvc_xen.c 2010-08-13 16:24:37.000000000 -0400
23765+++ linux-2.6.32.21/drivers/char/hvc_xen.c 2010-09-04 15:54:52.000000000 -0400
23766@@ -120,7 +120,7 @@ static int read_console(uint32_t vtermno
23767 return recv;
23768 }
23769
23770-static struct hv_ops hvc_ops = {
23771+static const struct hv_ops hvc_ops = {
23772 .get_chars = read_console,
23773 .put_chars = write_console,
23774 .notifier_add = notifier_add_irq,
23626diff -urNp linux-2.6.32.21/drivers/char/ipmi/ipmi_msghandler.c linux-2.6.32.21/drivers/char/ipmi/ipmi_msghandler.c 23775diff -urNp linux-2.6.32.21/drivers/char/ipmi/ipmi_msghandler.c linux-2.6.32.21/drivers/char/ipmi/ipmi_msghandler.c
23627--- linux-2.6.32.21/drivers/char/ipmi/ipmi_msghandler.c 2010-08-26 19:42:20.000000000 -0400 23776--- linux-2.6.32.21/drivers/char/ipmi/ipmi_msghandler.c 2010-08-13 16:24:37.000000000 -0400
23628+++ linux-2.6.32.21/drivers/char/ipmi/ipmi_msghandler.c 2010-09-13 08:10:08.000000000 -0400 23777+++ linux-2.6.32.21/drivers/char/ipmi/ipmi_msghandler.c 2010-09-04 15:54:52.000000000 -0400
23629@@ -414,7 +414,7 @@ struct ipmi_smi { 23778@@ -414,7 +414,7 @@ struct ipmi_smi {
23630 struct proc_dir_entry *proc_dir; 23779 struct proc_dir_entry *proc_dir;
23631 char proc_dir_name[10]; 23780 char proc_dir_name[10];
@@ -23657,8 +23806,8 @@ diff -urNp linux-2.6.32.21/drivers/char/ipmi/ipmi_msghandler.c linux-2.6.32.21/d
23657 intf->proc_dir = NULL; 23806 intf->proc_dir = NULL;
23658 23807
23659diff -urNp linux-2.6.32.21/drivers/char/ipmi/ipmi_si_intf.c linux-2.6.32.21/drivers/char/ipmi/ipmi_si_intf.c 23808diff -urNp linux-2.6.32.21/drivers/char/ipmi/ipmi_si_intf.c linux-2.6.32.21/drivers/char/ipmi/ipmi_si_intf.c
23660--- linux-2.6.32.21/drivers/char/ipmi/ipmi_si_intf.c 2010-08-26 19:42:20.000000000 -0400 23809--- linux-2.6.32.21/drivers/char/ipmi/ipmi_si_intf.c 2010-08-13 16:24:37.000000000 -0400
23661+++ linux-2.6.32.21/drivers/char/ipmi/ipmi_si_intf.c 2010-09-13 08:10:08.000000000 -0400 23810+++ linux-2.6.32.21/drivers/char/ipmi/ipmi_si_intf.c 2010-09-04 15:54:52.000000000 -0400
23662@@ -277,7 +277,7 @@ struct smi_info { 23811@@ -277,7 +277,7 @@ struct smi_info {
23663 unsigned char slave_addr; 23812 unsigned char slave_addr;
23664 23813
@@ -23690,8 +23839,8 @@ diff -urNp linux-2.6.32.21/drivers/char/ipmi/ipmi_si_intf.c linux-2.6.32.21/driv
23690 new_smi->interrupt_disabled = 0; 23839 new_smi->interrupt_disabled = 0;
23691 atomic_set(&new_smi->stop_operation, 0); 23840 atomic_set(&new_smi->stop_operation, 0);
23692diff -urNp linux-2.6.32.21/drivers/char/keyboard.c linux-2.6.32.21/drivers/char/keyboard.c 23841diff -urNp linux-2.6.32.21/drivers/char/keyboard.c linux-2.6.32.21/drivers/char/keyboard.c
23693--- linux-2.6.32.21/drivers/char/keyboard.c 2010-08-26 19:42:20.000000000 -0400 23842--- linux-2.6.32.21/drivers/char/keyboard.c 2010-08-13 16:24:37.000000000 -0400
23694+++ linux-2.6.32.21/drivers/char/keyboard.c 2010-09-13 08:10:08.000000000 -0400 23843+++ linux-2.6.32.21/drivers/char/keyboard.c 2010-09-04 15:54:52.000000000 -0400
23695@@ -635,6 +635,16 @@ static void k_spec(struct vc_data *vc, u 23844@@ -635,6 +635,16 @@ static void k_spec(struct vc_data *vc, u
23696 kbd->kbdmode == VC_MEDIUMRAW) && 23845 kbd->kbdmode == VC_MEDIUMRAW) &&
23697 value != KVAL(K_SAK)) 23846 value != KVAL(K_SAK))
@@ -23719,8 +23868,8 @@ diff -urNp linux-2.6.32.21/drivers/char/keyboard.c linux-2.6.32.21/drivers/char/
23719 23868
23720 MODULE_DEVICE_TABLE(input, kbd_ids); 23869 MODULE_DEVICE_TABLE(input, kbd_ids);
23721diff -urNp linux-2.6.32.21/drivers/char/mem.c linux-2.6.32.21/drivers/char/mem.c 23870diff -urNp linux-2.6.32.21/drivers/char/mem.c linux-2.6.32.21/drivers/char/mem.c
23722--- linux-2.6.32.21/drivers/char/mem.c 2010-08-26 19:42:20.000000000 -0400 23871--- linux-2.6.32.21/drivers/char/mem.c 2010-08-13 16:24:37.000000000 -0400
23723+++ linux-2.6.32.21/drivers/char/mem.c 2010-09-13 08:10:08.000000000 -0400 23872+++ linux-2.6.32.21/drivers/char/mem.c 2010-09-04 15:54:52.000000000 -0400
23724@@ -18,6 +18,7 @@ 23873@@ -18,6 +18,7 @@
23725 #include <linux/raw.h> 23874 #include <linux/raw.h>
23726 #include <linux/tty.h> 23875 #include <linux/tty.h>
@@ -23898,8 +24047,8 @@ diff -urNp linux-2.6.32.21/drivers/char/mem.c linux-2.6.32.21/drivers/char/mem.c
23898 24047
23899 static int memory_open(struct inode *inode, struct file *filp) 24048 static int memory_open(struct inode *inode, struct file *filp)
23900diff -urNp linux-2.6.32.21/drivers/char/nvram.c linux-2.6.32.21/drivers/char/nvram.c 24049diff -urNp linux-2.6.32.21/drivers/char/nvram.c linux-2.6.32.21/drivers/char/nvram.c
23901--- linux-2.6.32.21/drivers/char/nvram.c 2010-08-26 19:42:20.000000000 -0400 24050--- linux-2.6.32.21/drivers/char/nvram.c 2010-08-13 16:24:37.000000000 -0400
23902+++ linux-2.6.32.21/drivers/char/nvram.c 2010-09-13 08:10:08.000000000 -0400 24051+++ linux-2.6.32.21/drivers/char/nvram.c 2010-09-04 15:54:52.000000000 -0400
23903@@ -435,7 +435,10 @@ static const struct file_operations nvra 24052@@ -435,7 +435,10 @@ static const struct file_operations nvra
23904 static struct miscdevice nvram_dev = { 24053 static struct miscdevice nvram_dev = {
23905 NVRAM_MINOR, 24054 NVRAM_MINOR,
@@ -23913,8 +24062,8 @@ diff -urNp linux-2.6.32.21/drivers/char/nvram.c linux-2.6.32.21/drivers/char/nvr
23913 24062
23914 static int __init nvram_init(void) 24063 static int __init nvram_init(void)
23915diff -urNp linux-2.6.32.21/drivers/char/pcmcia/ipwireless/tty.c linux-2.6.32.21/drivers/char/pcmcia/ipwireless/tty.c 24064diff -urNp linux-2.6.32.21/drivers/char/pcmcia/ipwireless/tty.c linux-2.6.32.21/drivers/char/pcmcia/ipwireless/tty.c
23916--- linux-2.6.32.21/drivers/char/pcmcia/ipwireless/tty.c 2010-08-26 19:42:20.000000000 -0400 24065--- linux-2.6.32.21/drivers/char/pcmcia/ipwireless/tty.c 2010-08-13 16:24:37.000000000 -0400
23917+++ linux-2.6.32.21/drivers/char/pcmcia/ipwireless/tty.c 2010-09-13 08:10:08.000000000 -0400 24066+++ linux-2.6.32.21/drivers/char/pcmcia/ipwireless/tty.c 2010-09-04 15:54:52.000000000 -0400
23918@@ -51,7 +51,7 @@ struct ipw_tty { 24067@@ -51,7 +51,7 @@ struct ipw_tty {
23919 int tty_type; 24068 int tty_type;
23920 struct ipw_network *network; 24069 struct ipw_network *network;
@@ -24030,8 +24179,8 @@ diff -urNp linux-2.6.32.21/drivers/char/pcmcia/ipwireless/tty.c linux-2.6.32.21/
24030 ipwireless_disassociate_network_ttys(network, 24179 ipwireless_disassociate_network_ttys(network,
24031 ttyj->channel_idx); 24180 ttyj->channel_idx);
24032diff -urNp linux-2.6.32.21/drivers/char/pty.c linux-2.6.32.21/drivers/char/pty.c 24181diff -urNp linux-2.6.32.21/drivers/char/pty.c linux-2.6.32.21/drivers/char/pty.c
24033--- linux-2.6.32.21/drivers/char/pty.c 2010-08-26 19:42:20.000000000 -0400 24182--- linux-2.6.32.21/drivers/char/pty.c 2010-08-13 16:24:37.000000000 -0400
24034+++ linux-2.6.32.21/drivers/char/pty.c 2010-09-13 08:10:08.000000000 -0400 24183+++ linux-2.6.32.21/drivers/char/pty.c 2010-09-04 15:54:52.000000000 -0400
24035@@ -682,7 +682,18 @@ static int ptmx_open(struct inode *inode 24184@@ -682,7 +682,18 @@ static int ptmx_open(struct inode *inode
24036 return ret; 24185 return ret;
24037 } 24186 }
@@ -24063,8 +24212,8 @@ diff -urNp linux-2.6.32.21/drivers/char/pty.c linux-2.6.32.21/drivers/char/pty.c
24063 if (cdev_add(&ptmx_cdev, MKDEV(TTYAUX_MAJOR, 2), 1) || 24212 if (cdev_add(&ptmx_cdev, MKDEV(TTYAUX_MAJOR, 2), 1) ||
24064 register_chrdev_region(MKDEV(TTYAUX_MAJOR, 2), 1, "/dev/ptmx") < 0) 24213 register_chrdev_region(MKDEV(TTYAUX_MAJOR, 2), 1, "/dev/ptmx") < 0)
24065diff -urNp linux-2.6.32.21/drivers/char/random.c linux-2.6.32.21/drivers/char/random.c 24214diff -urNp linux-2.6.32.21/drivers/char/random.c linux-2.6.32.21/drivers/char/random.c
24066--- linux-2.6.32.21/drivers/char/random.c 2010-08-26 19:42:20.000000000 -0400 24215--- linux-2.6.32.21/drivers/char/random.c 2010-08-13 16:24:37.000000000 -0400
24067+++ linux-2.6.32.21/drivers/char/random.c 2010-09-13 08:10:08.000000000 -0400 24216+++ linux-2.6.32.21/drivers/char/random.c 2010-09-04 15:54:52.000000000 -0400
24068@@ -254,8 +254,13 @@ 24217@@ -254,8 +254,13 @@
24069 /* 24218 /*
24070 * Configuration information 24219 * Configuration information
@@ -24107,8 +24256,8 @@ diff -urNp linux-2.6.32.21/drivers/char/random.c linux-2.6.32.21/drivers/char/ra
24107 static char sysctl_bootid[16]; 24256 static char sysctl_bootid[16];
24108 24257
24109diff -urNp linux-2.6.32.21/drivers/char/sonypi.c linux-2.6.32.21/drivers/char/sonypi.c 24258diff -urNp linux-2.6.32.21/drivers/char/sonypi.c linux-2.6.32.21/drivers/char/sonypi.c
24110--- linux-2.6.32.21/drivers/char/sonypi.c 2010-08-26 19:42:20.000000000 -0400 24259--- linux-2.6.32.21/drivers/char/sonypi.c 2010-08-13 16:24:37.000000000 -0400
24111+++ linux-2.6.32.21/drivers/char/sonypi.c 2010-09-13 08:10:08.000000000 -0400 24260+++ linux-2.6.32.21/drivers/char/sonypi.c 2010-09-04 15:54:52.000000000 -0400
24112@@ -491,7 +491,7 @@ static struct sonypi_device { 24261@@ -491,7 +491,7 @@ static struct sonypi_device {
24113 spinlock_t fifo_lock; 24262 spinlock_t fifo_lock;
24114 wait_queue_head_t fifo_proc_list; 24263 wait_queue_head_t fifo_proc_list;
@@ -24140,8 +24289,8 @@ diff -urNp linux-2.6.32.21/drivers/char/sonypi.c linux-2.6.32.21/drivers/char/so
24140 unlock_kernel(); 24289 unlock_kernel();
24141 return 0; 24290 return 0;
24142diff -urNp linux-2.6.32.21/drivers/char/tpm/tpm_bios.c linux-2.6.32.21/drivers/char/tpm/tpm_bios.c 24291diff -urNp linux-2.6.32.21/drivers/char/tpm/tpm_bios.c linux-2.6.32.21/drivers/char/tpm/tpm_bios.c
24143--- linux-2.6.32.21/drivers/char/tpm/tpm_bios.c 2010-08-26 19:42:20.000000000 -0400 24292--- linux-2.6.32.21/drivers/char/tpm/tpm_bios.c 2010-08-13 16:24:37.000000000 -0400
24144+++ linux-2.6.32.21/drivers/char/tpm/tpm_bios.c 2010-09-13 08:10:08.000000000 -0400 24293+++ linux-2.6.32.21/drivers/char/tpm/tpm_bios.c 2010-09-04 15:54:52.000000000 -0400
24145@@ -172,7 +172,7 @@ static void *tpm_bios_measurements_start 24294@@ -172,7 +172,7 @@ static void *tpm_bios_measurements_start
24146 event = addr; 24295 event = addr;
24147 24296
@@ -24183,8 +24332,8 @@ diff -urNp linux-2.6.32.21/drivers/char/tpm/tpm_bios.c linux-2.6.32.21/drivers/c
24183 memcpy(log->bios_event_log, virt, len); 24332 memcpy(log->bios_event_log, virt, len);
24184 24333
24185diff -urNp linux-2.6.32.21/drivers/char/tty_io.c linux-2.6.32.21/drivers/char/tty_io.c 24334diff -urNp linux-2.6.32.21/drivers/char/tty_io.c linux-2.6.32.21/drivers/char/tty_io.c
24186--- linux-2.6.32.21/drivers/char/tty_io.c 2010-08-26 19:42:20.000000000 -0400 24335--- linux-2.6.32.21/drivers/char/tty_io.c 2010-08-13 16:24:37.000000000 -0400
24187+++ linux-2.6.32.21/drivers/char/tty_io.c 2010-09-13 08:10:08.000000000 -0400 24336+++ linux-2.6.32.21/drivers/char/tty_io.c 2010-09-04 15:54:52.000000000 -0400
24188@@ -136,21 +136,10 @@ LIST_HEAD(tty_drivers); /* linked list 24337@@ -136,21 +136,10 @@ LIST_HEAD(tty_drivers); /* linked list
24189 DEFINE_MUTEX(tty_mutex); 24338 DEFINE_MUTEX(tty_mutex);
24190 EXPORT_SYMBOL(tty_mutex); 24339 EXPORT_SYMBOL(tty_mutex);
@@ -24324,8 +24473,8 @@ diff -urNp linux-2.6.32.21/drivers/char/tty_io.c linux-2.6.32.21/drivers/char/tt
24324 * Initialize the console device. This is called *early*, so 24473 * Initialize the console device. This is called *early*, so
24325 * we can't necessarily depend on lots of kernel help here. 24474 * we can't necessarily depend on lots of kernel help here.
24326diff -urNp linux-2.6.32.21/drivers/char/tty_ldisc.c linux-2.6.32.21/drivers/char/tty_ldisc.c 24475diff -urNp linux-2.6.32.21/drivers/char/tty_ldisc.c linux-2.6.32.21/drivers/char/tty_ldisc.c
24327--- linux-2.6.32.21/drivers/char/tty_ldisc.c 2010-08-26 19:42:20.000000000 -0400 24476--- linux-2.6.32.21/drivers/char/tty_ldisc.c 2010-08-13 16:24:37.000000000 -0400
24328+++ linux-2.6.32.21/drivers/char/tty_ldisc.c 2010-09-13 08:10:08.000000000 -0400 24477+++ linux-2.6.32.21/drivers/char/tty_ldisc.c 2010-09-04 15:54:52.000000000 -0400
24329@@ -73,7 +73,7 @@ static void put_ldisc(struct tty_ldisc * 24478@@ -73,7 +73,7 @@ static void put_ldisc(struct tty_ldisc *
24330 if (atomic_dec_and_lock(&ld->users, &tty_ldisc_lock)) { 24479 if (atomic_dec_and_lock(&ld->users, &tty_ldisc_lock)) {
24331 struct tty_ldisc_ops *ldo = ld->ops; 24480 struct tty_ldisc_ops *ldo = ld->ops;
@@ -24372,8 +24521,8 @@ diff -urNp linux-2.6.32.21/drivers/char/tty_ldisc.c linux-2.6.32.21/drivers/char
24372 spin_unlock_irqrestore(&tty_ldisc_lock, flags); 24521 spin_unlock_irqrestore(&tty_ldisc_lock, flags);
24373 } 24522 }
24374diff -urNp linux-2.6.32.21/drivers/char/virtio_console.c linux-2.6.32.21/drivers/char/virtio_console.c 24523diff -urNp linux-2.6.32.21/drivers/char/virtio_console.c linux-2.6.32.21/drivers/char/virtio_console.c
24375--- linux-2.6.32.21/drivers/char/virtio_console.c 2010-08-26 19:42:20.000000000 -0400 24524--- linux-2.6.32.21/drivers/char/virtio_console.c 2010-08-13 16:24:37.000000000 -0400
24376+++ linux-2.6.32.21/drivers/char/virtio_console.c 2010-09-13 08:10:08.000000000 -0400 24525+++ linux-2.6.32.21/drivers/char/virtio_console.c 2010-09-04 15:54:52.000000000 -0400
24377@@ -44,6 +44,7 @@ static unsigned int in_len; 24526@@ -44,6 +44,7 @@ static unsigned int in_len;
24378 static char *in, *inbuf; 24527 static char *in, *inbuf;
24379 24528
@@ -24383,8 +24532,8 @@ diff -urNp linux-2.6.32.21/drivers/char/virtio_console.c linux-2.6.32.21/drivers
24383 24532
24384 /* The hvc device */ 24533 /* The hvc device */
24385diff -urNp linux-2.6.32.21/drivers/char/vt_ioctl.c linux-2.6.32.21/drivers/char/vt_ioctl.c 24534diff -urNp linux-2.6.32.21/drivers/char/vt_ioctl.c linux-2.6.32.21/drivers/char/vt_ioctl.c
24386--- linux-2.6.32.21/drivers/char/vt_ioctl.c 2010-08-26 19:42:20.000000000 -0400 24535--- linux-2.6.32.21/drivers/char/vt_ioctl.c 2010-08-13 16:24:37.000000000 -0400
24387+++ linux-2.6.32.21/drivers/char/vt_ioctl.c 2010-09-13 08:10:08.000000000 -0400 24536+++ linux-2.6.32.21/drivers/char/vt_ioctl.c 2010-09-04 15:54:52.000000000 -0400
24388@@ -210,9 +210,6 @@ do_kdsk_ioctl(int cmd, struct kbentry __ 24537@@ -210,9 +210,6 @@ do_kdsk_ioctl(int cmd, struct kbentry __
24389 if (copy_from_user(&tmp, user_kbe, sizeof(struct kbentry))) 24538 if (copy_from_user(&tmp, user_kbe, sizeof(struct kbentry)))
24390 return -EFAULT; 24539 return -EFAULT;
@@ -24429,8 +24578,8 @@ diff -urNp linux-2.6.32.21/drivers/char/vt_ioctl.c linux-2.6.32.21/drivers/char/
24429 ret = -EPERM; 24578 ret = -EPERM;
24430 goto reterr; 24579 goto reterr;
24431diff -urNp linux-2.6.32.21/drivers/cpufreq/cpufreq.c linux-2.6.32.21/drivers/cpufreq/cpufreq.c 24580diff -urNp linux-2.6.32.21/drivers/cpufreq/cpufreq.c linux-2.6.32.21/drivers/cpufreq/cpufreq.c
24432--- linux-2.6.32.21/drivers/cpufreq/cpufreq.c 2010-08-26 19:42:20.000000000 -0400 24581--- linux-2.6.32.21/drivers/cpufreq/cpufreq.c 2010-08-13 16:24:37.000000000 -0400
24433+++ linux-2.6.32.21/drivers/cpufreq/cpufreq.c 2010-09-13 08:10:08.000000000 -0400 24582+++ linux-2.6.32.21/drivers/cpufreq/cpufreq.c 2010-09-04 15:54:52.000000000 -0400
24434@@ -750,7 +750,7 @@ static void cpufreq_sysfs_release(struct 24583@@ -750,7 +750,7 @@ static void cpufreq_sysfs_release(struct
24435 complete(&policy->kobj_unregister); 24584 complete(&policy->kobj_unregister);
24436 } 24585 }
@@ -24441,8 +24590,8 @@ diff -urNp linux-2.6.32.21/drivers/cpufreq/cpufreq.c linux-2.6.32.21/drivers/cpu
24441 .store = store, 24590 .store = store,
24442 }; 24591 };
24443diff -urNp linux-2.6.32.21/drivers/cpuidle/sysfs.c linux-2.6.32.21/drivers/cpuidle/sysfs.c 24592diff -urNp linux-2.6.32.21/drivers/cpuidle/sysfs.c linux-2.6.32.21/drivers/cpuidle/sysfs.c
24444--- linux-2.6.32.21/drivers/cpuidle/sysfs.c 2010-08-26 19:42:20.000000000 -0400 24593--- linux-2.6.32.21/drivers/cpuidle/sysfs.c 2010-08-13 16:24:37.000000000 -0400
24445+++ linux-2.6.32.21/drivers/cpuidle/sysfs.c 2010-09-13 08:10:08.000000000 -0400 24594+++ linux-2.6.32.21/drivers/cpuidle/sysfs.c 2010-09-04 15:54:52.000000000 -0400
24446@@ -191,7 +191,7 @@ static ssize_t cpuidle_store(struct kobj 24595@@ -191,7 +191,7 @@ static ssize_t cpuidle_store(struct kobj
24447 return ret; 24596 return ret;
24448 } 24597 }
@@ -24471,8 +24620,8 @@ diff -urNp linux-2.6.32.21/drivers/cpuidle/sysfs.c linux-2.6.32.21/drivers/cpuid
24471 kobject_put(&device->kobjs[i]->kobj); 24620 kobject_put(&device->kobjs[i]->kobj);
24472 wait_for_completion(&device->kobjs[i]->kobj_unregister); 24621 wait_for_completion(&device->kobjs[i]->kobj_unregister);
24473diff -urNp linux-2.6.32.21/drivers/dma/ioat/dma.c linux-2.6.32.21/drivers/dma/ioat/dma.c 24622diff -urNp linux-2.6.32.21/drivers/dma/ioat/dma.c linux-2.6.32.21/drivers/dma/ioat/dma.c
24474--- linux-2.6.32.21/drivers/dma/ioat/dma.c 2010-08-26 19:42:20.000000000 -0400 24623--- linux-2.6.32.21/drivers/dma/ioat/dma.c 2010-08-13 16:24:37.000000000 -0400
24475+++ linux-2.6.32.21/drivers/dma/ioat/dma.c 2010-09-13 08:10:08.000000000 -0400 24624+++ linux-2.6.32.21/drivers/dma/ioat/dma.c 2010-09-04 15:54:52.000000000 -0400
24476@@ -1146,7 +1146,7 @@ ioat_attr_show(struct kobject *kobj, str 24625@@ -1146,7 +1146,7 @@ ioat_attr_show(struct kobject *kobj, str
24477 return entry->show(&chan->common, page); 24626 return entry->show(&chan->common, page);
24478 } 24627 }
@@ -24483,8 +24632,8 @@ diff -urNp linux-2.6.32.21/drivers/dma/ioat/dma.c linux-2.6.32.21/drivers/dma/io
24483 }; 24632 };
24484 24633
24485diff -urNp linux-2.6.32.21/drivers/dma/ioat/dma.h linux-2.6.32.21/drivers/dma/ioat/dma.h 24634diff -urNp linux-2.6.32.21/drivers/dma/ioat/dma.h linux-2.6.32.21/drivers/dma/ioat/dma.h
24486--- linux-2.6.32.21/drivers/dma/ioat/dma.h 2010-08-26 19:42:20.000000000 -0400 24635--- linux-2.6.32.21/drivers/dma/ioat/dma.h 2010-08-13 16:24:37.000000000 -0400
24487+++ linux-2.6.32.21/drivers/dma/ioat/dma.h 2010-09-13 08:10:08.000000000 -0400 24636+++ linux-2.6.32.21/drivers/dma/ioat/dma.h 2010-09-04 15:54:52.000000000 -0400
24488@@ -347,7 +347,7 @@ bool ioat_cleanup_preamble(struct ioat_c 24637@@ -347,7 +347,7 @@ bool ioat_cleanup_preamble(struct ioat_c
24489 unsigned long *phys_complete); 24638 unsigned long *phys_complete);
24490 void ioat_kobject_add(struct ioatdma_device *device, struct kobj_type *type); 24639 void ioat_kobject_add(struct ioatdma_device *device, struct kobj_type *type);
@@ -24495,8 +24644,8 @@ diff -urNp linux-2.6.32.21/drivers/dma/ioat/dma.h linux-2.6.32.21/drivers/dma/io
24495 extern struct ioat_sysfs_entry ioat_cap_attr; 24644 extern struct ioat_sysfs_entry ioat_cap_attr;
24496 #endif /* IOATDMA_H */ 24645 #endif /* IOATDMA_H */
24497diff -urNp linux-2.6.32.21/drivers/edac/edac_core.h linux-2.6.32.21/drivers/edac/edac_core.h 24646diff -urNp linux-2.6.32.21/drivers/edac/edac_core.h linux-2.6.32.21/drivers/edac/edac_core.h
24498--- linux-2.6.32.21/drivers/edac/edac_core.h 2010-08-26 19:42:20.000000000 -0400 24647--- linux-2.6.32.21/drivers/edac/edac_core.h 2010-08-13 16:24:37.000000000 -0400
24499+++ linux-2.6.32.21/drivers/edac/edac_core.h 2010-09-13 08:10:08.000000000 -0400 24648+++ linux-2.6.32.21/drivers/edac/edac_core.h 2010-09-04 15:54:52.000000000 -0400
24500@@ -99,11 +99,11 @@ extern int edac_debug_level; 24649@@ -99,11 +99,11 @@ extern int edac_debug_level;
24501 24650
24502 #else /* !CONFIG_EDAC_DEBUG */ 24651 #else /* !CONFIG_EDAC_DEBUG */
@@ -24515,8 +24664,8 @@ diff -urNp linux-2.6.32.21/drivers/edac/edac_core.h linux-2.6.32.21/drivers/edac
24515 #endif /* !CONFIG_EDAC_DEBUG */ 24664 #endif /* !CONFIG_EDAC_DEBUG */
24516 24665
24517diff -urNp linux-2.6.32.21/drivers/edac/edac_device_sysfs.c linux-2.6.32.21/drivers/edac/edac_device_sysfs.c 24666diff -urNp linux-2.6.32.21/drivers/edac/edac_device_sysfs.c linux-2.6.32.21/drivers/edac/edac_device_sysfs.c
24518--- linux-2.6.32.21/drivers/edac/edac_device_sysfs.c 2010-08-26 19:42:20.000000000 -0400 24667--- linux-2.6.32.21/drivers/edac/edac_device_sysfs.c 2010-08-13 16:24:37.000000000 -0400
24519+++ linux-2.6.32.21/drivers/edac/edac_device_sysfs.c 2010-09-13 08:10:08.000000000 -0400 24668+++ linux-2.6.32.21/drivers/edac/edac_device_sysfs.c 2010-09-04 15:54:52.000000000 -0400
24520@@ -137,7 +137,7 @@ static ssize_t edac_dev_ctl_info_store(s 24669@@ -137,7 +137,7 @@ static ssize_t edac_dev_ctl_info_store(s
24521 } 24670 }
24522 24671
@@ -24545,8 +24694,8 @@ diff -urNp linux-2.6.32.21/drivers/edac/edac_device_sysfs.c linux-2.6.32.21/driv
24545 .store = edac_dev_block_store 24694 .store = edac_dev_block_store
24546 }; 24695 };
24547diff -urNp linux-2.6.32.21/drivers/edac/edac_mc_sysfs.c linux-2.6.32.21/drivers/edac/edac_mc_sysfs.c 24696diff -urNp linux-2.6.32.21/drivers/edac/edac_mc_sysfs.c linux-2.6.32.21/drivers/edac/edac_mc_sysfs.c
24548--- linux-2.6.32.21/drivers/edac/edac_mc_sysfs.c 2010-08-26 19:42:20.000000000 -0400 24697--- linux-2.6.32.21/drivers/edac/edac_mc_sysfs.c 2010-08-13 16:24:37.000000000 -0400
24549+++ linux-2.6.32.21/drivers/edac/edac_mc_sysfs.c 2010-09-13 08:10:08.000000000 -0400 24698+++ linux-2.6.32.21/drivers/edac/edac_mc_sysfs.c 2010-09-04 15:54:52.000000000 -0400
24550@@ -245,7 +245,7 @@ static ssize_t csrowdev_store(struct kob 24699@@ -245,7 +245,7 @@ static ssize_t csrowdev_store(struct kob
24551 return -EIO; 24700 return -EIO;
24552 } 24701 }
@@ -24566,8 +24715,8 @@ diff -urNp linux-2.6.32.21/drivers/edac/edac_mc_sysfs.c linux-2.6.32.21/drivers/
24566 .store = mcidev_store 24715 .store = mcidev_store
24567 }; 24716 };
24568diff -urNp linux-2.6.32.21/drivers/edac/edac_pci_sysfs.c linux-2.6.32.21/drivers/edac/edac_pci_sysfs.c 24717diff -urNp linux-2.6.32.21/drivers/edac/edac_pci_sysfs.c linux-2.6.32.21/drivers/edac/edac_pci_sysfs.c
24569--- linux-2.6.32.21/drivers/edac/edac_pci_sysfs.c 2010-08-26 19:42:20.000000000 -0400 24718--- linux-2.6.32.21/drivers/edac/edac_pci_sysfs.c 2010-08-13 16:24:37.000000000 -0400
24570+++ linux-2.6.32.21/drivers/edac/edac_pci_sysfs.c 2010-09-13 08:10:08.000000000 -0400 24719+++ linux-2.6.32.21/drivers/edac/edac_pci_sysfs.c 2010-09-04 15:54:52.000000000 -0400
24571@@ -121,7 +121,7 @@ static ssize_t edac_pci_instance_store(s 24720@@ -121,7 +121,7 @@ static ssize_t edac_pci_instance_store(s
24572 } 24721 }
24573 24722
@@ -24587,8 +24736,8 @@ diff -urNp linux-2.6.32.21/drivers/edac/edac_pci_sysfs.c linux-2.6.32.21/drivers
24587 .store = edac_pci_dev_store 24736 .store = edac_pci_dev_store
24588 }; 24737 };
24589diff -urNp linux-2.6.32.21/drivers/firewire/core-cdev.c linux-2.6.32.21/drivers/firewire/core-cdev.c 24738diff -urNp linux-2.6.32.21/drivers/firewire/core-cdev.c linux-2.6.32.21/drivers/firewire/core-cdev.c
24590--- linux-2.6.32.21/drivers/firewire/core-cdev.c 2010-08-26 19:42:20.000000000 -0400 24739--- linux-2.6.32.21/drivers/firewire/core-cdev.c 2010-08-13 16:24:37.000000000 -0400
24591+++ linux-2.6.32.21/drivers/firewire/core-cdev.c 2010-09-13 08:10:08.000000000 -0400 24740+++ linux-2.6.32.21/drivers/firewire/core-cdev.c 2010-09-04 15:54:52.000000000 -0400
24592@@ -1141,8 +1141,7 @@ static int init_iso_resource(struct clie 24741@@ -1141,8 +1141,7 @@ static int init_iso_resource(struct clie
24593 int ret; 24742 int ret;
24594 24743
@@ -24600,8 +24749,8 @@ diff -urNp linux-2.6.32.21/drivers/firewire/core-cdev.c linux-2.6.32.21/drivers/
24600 24749
24601 r = kmalloc(sizeof(*r), GFP_KERNEL); 24750 r = kmalloc(sizeof(*r), GFP_KERNEL);
24602diff -urNp linux-2.6.32.21/drivers/firmware/dmi_scan.c linux-2.6.32.21/drivers/firmware/dmi_scan.c 24751diff -urNp linux-2.6.32.21/drivers/firmware/dmi_scan.c linux-2.6.32.21/drivers/firmware/dmi_scan.c
24603--- linux-2.6.32.21/drivers/firmware/dmi_scan.c 2010-08-26 19:42:20.000000000 -0400 24752--- linux-2.6.32.21/drivers/firmware/dmi_scan.c 2010-08-13 16:24:37.000000000 -0400
24604+++ linux-2.6.32.21/drivers/firmware/dmi_scan.c 2010-09-13 08:10:08.000000000 -0400 24753+++ linux-2.6.32.21/drivers/firmware/dmi_scan.c 2010-09-04 15:54:52.000000000 -0400
24605@@ -391,11 +391,6 @@ void __init dmi_scan_machine(void) 24754@@ -391,11 +391,6 @@ void __init dmi_scan_machine(void)
24606 } 24755 }
24607 } 24756 }
@@ -24615,8 +24764,8 @@ diff -urNp linux-2.6.32.21/drivers/firmware/dmi_scan.c linux-2.6.32.21/drivers/f
24615 if (p == NULL) 24764 if (p == NULL)
24616 goto error; 24765 goto error;
24617diff -urNp linux-2.6.32.21/drivers/firmware/edd.c linux-2.6.32.21/drivers/firmware/edd.c 24766diff -urNp linux-2.6.32.21/drivers/firmware/edd.c linux-2.6.32.21/drivers/firmware/edd.c
24618--- linux-2.6.32.21/drivers/firmware/edd.c 2010-08-26 19:42:20.000000000 -0400 24767--- linux-2.6.32.21/drivers/firmware/edd.c 2010-08-13 16:24:37.000000000 -0400
24619+++ linux-2.6.32.21/drivers/firmware/edd.c 2010-09-13 08:10:08.000000000 -0400 24768+++ linux-2.6.32.21/drivers/firmware/edd.c 2010-09-04 15:54:52.000000000 -0400
24620@@ -122,7 +122,7 @@ edd_attr_show(struct kobject * kobj, str 24769@@ -122,7 +122,7 @@ edd_attr_show(struct kobject * kobj, str
24621 return ret; 24770 return ret;
24622 } 24771 }
@@ -24627,8 +24776,8 @@ diff -urNp linux-2.6.32.21/drivers/firmware/edd.c linux-2.6.32.21/drivers/firmwa
24627 }; 24776 };
24628 24777
24629diff -urNp linux-2.6.32.21/drivers/firmware/efivars.c linux-2.6.32.21/drivers/firmware/efivars.c 24778diff -urNp linux-2.6.32.21/drivers/firmware/efivars.c linux-2.6.32.21/drivers/firmware/efivars.c
24630--- linux-2.6.32.21/drivers/firmware/efivars.c 2010-08-26 19:42:20.000000000 -0400 24779--- linux-2.6.32.21/drivers/firmware/efivars.c 2010-08-13 16:24:37.000000000 -0400
24631+++ linux-2.6.32.21/drivers/firmware/efivars.c 2010-09-13 08:10:08.000000000 -0400 24780+++ linux-2.6.32.21/drivers/firmware/efivars.c 2010-09-04 15:54:52.000000000 -0400
24632@@ -362,7 +362,7 @@ static ssize_t efivar_attr_store(struct 24781@@ -362,7 +362,7 @@ static ssize_t efivar_attr_store(struct
24633 return ret; 24782 return ret;
24634 } 24783 }
@@ -24639,8 +24788,8 @@ diff -urNp linux-2.6.32.21/drivers/firmware/efivars.c linux-2.6.32.21/drivers/fi
24639 .store = efivar_attr_store, 24788 .store = efivar_attr_store,
24640 }; 24789 };
24641diff -urNp linux-2.6.32.21/drivers/firmware/iscsi_ibft.c linux-2.6.32.21/drivers/firmware/iscsi_ibft.c 24790diff -urNp linux-2.6.32.21/drivers/firmware/iscsi_ibft.c linux-2.6.32.21/drivers/firmware/iscsi_ibft.c
24642--- linux-2.6.32.21/drivers/firmware/iscsi_ibft.c 2010-08-26 19:42:20.000000000 -0400 24791--- linux-2.6.32.21/drivers/firmware/iscsi_ibft.c 2010-08-13 16:24:37.000000000 -0400
24643+++ linux-2.6.32.21/drivers/firmware/iscsi_ibft.c 2010-09-13 08:10:08.000000000 -0400 24792+++ linux-2.6.32.21/drivers/firmware/iscsi_ibft.c 2010-09-04 15:54:52.000000000 -0400
24644@@ -525,7 +525,7 @@ static ssize_t ibft_show_attribute(struc 24793@@ -525,7 +525,7 @@ static ssize_t ibft_show_attribute(struc
24645 return ret; 24794 return ret;
24646 } 24795 }
@@ -24651,8 +24800,8 @@ diff -urNp linux-2.6.32.21/drivers/firmware/iscsi_ibft.c linux-2.6.32.21/drivers
24651 }; 24800 };
24652 24801
24653diff -urNp linux-2.6.32.21/drivers/firmware/memmap.c linux-2.6.32.21/drivers/firmware/memmap.c 24802diff -urNp linux-2.6.32.21/drivers/firmware/memmap.c linux-2.6.32.21/drivers/firmware/memmap.c
24654--- linux-2.6.32.21/drivers/firmware/memmap.c 2010-08-26 19:42:20.000000000 -0400 24803--- linux-2.6.32.21/drivers/firmware/memmap.c 2010-08-13 16:24:37.000000000 -0400
24655+++ linux-2.6.32.21/drivers/firmware/memmap.c 2010-09-13 08:10:08.000000000 -0400 24804+++ linux-2.6.32.21/drivers/firmware/memmap.c 2010-09-04 15:54:52.000000000 -0400
24656@@ -74,7 +74,7 @@ static struct attribute *def_attrs[] = { 24805@@ -74,7 +74,7 @@ static struct attribute *def_attrs[] = {
24657 NULL 24806 NULL
24658 }; 24807 };
@@ -24663,8 +24812,8 @@ diff -urNp linux-2.6.32.21/drivers/firmware/memmap.c linux-2.6.32.21/drivers/fir
24663 }; 24812 };
24664 24813
24665diff -urNp linux-2.6.32.21/drivers/gpu/drm/drm_drv.c linux-2.6.32.21/drivers/gpu/drm/drm_drv.c 24814diff -urNp linux-2.6.32.21/drivers/gpu/drm/drm_drv.c linux-2.6.32.21/drivers/gpu/drm/drm_drv.c
24666--- linux-2.6.32.21/drivers/gpu/drm/drm_drv.c 2010-08-26 19:42:20.000000000 -0400 24815--- linux-2.6.32.21/drivers/gpu/drm/drm_drv.c 2010-08-29 21:08:20.000000000 -0400
24667+++ linux-2.6.32.21/drivers/gpu/drm/drm_drv.c 2010-09-13 08:10:09.000000000 -0400 24816+++ linux-2.6.32.21/drivers/gpu/drm/drm_drv.c 2010-09-04 15:54:52.000000000 -0400
24668@@ -417,7 +417,7 @@ int drm_ioctl(struct inode *inode, struc 24817@@ -417,7 +417,7 @@ int drm_ioctl(struct inode *inode, struc
24669 char *kdata = NULL; 24818 char *kdata = NULL;
24670 24819
@@ -24675,8 +24824,8 @@ diff -urNp linux-2.6.32.21/drivers/gpu/drm/drm_drv.c linux-2.6.32.21/drivers/gpu
24675 24824
24676 DRM_DEBUG("pid=%d, cmd=0x%02x, nr=0x%02x, dev 0x%lx, auth=%d\n", 24825 DRM_DEBUG("pid=%d, cmd=0x%02x, nr=0x%02x, dev 0x%lx, auth=%d\n",
24677diff -urNp linux-2.6.32.21/drivers/gpu/drm/drm_fops.c linux-2.6.32.21/drivers/gpu/drm/drm_fops.c 24826diff -urNp linux-2.6.32.21/drivers/gpu/drm/drm_fops.c linux-2.6.32.21/drivers/gpu/drm/drm_fops.c
24678--- linux-2.6.32.21/drivers/gpu/drm/drm_fops.c 2010-08-26 19:42:20.000000000 -0400 24827--- linux-2.6.32.21/drivers/gpu/drm/drm_fops.c 2010-08-13 16:24:37.000000000 -0400
24679+++ linux-2.6.32.21/drivers/gpu/drm/drm_fops.c 2010-09-13 08:10:09.000000000 -0400 24828+++ linux-2.6.32.21/drivers/gpu/drm/drm_fops.c 2010-09-04 15:54:52.000000000 -0400
24680@@ -66,7 +66,7 @@ static int drm_setup(struct drm_device * 24829@@ -66,7 +66,7 @@ static int drm_setup(struct drm_device *
24681 } 24830 }
24682 24831
@@ -24729,8 +24878,8 @@ diff -urNp linux-2.6.32.21/drivers/gpu/drm/drm_fops.c linux-2.6.32.21/drivers/gp
24729 DRM_ERROR("Device busy: %d\n", 24878 DRM_ERROR("Device busy: %d\n",
24730 atomic_read(&dev->ioctl_count)); 24879 atomic_read(&dev->ioctl_count));
24731diff -urNp linux-2.6.32.21/drivers/gpu/drm/drm_ioctl.c linux-2.6.32.21/drivers/gpu/drm/drm_ioctl.c 24880diff -urNp linux-2.6.32.21/drivers/gpu/drm/drm_ioctl.c linux-2.6.32.21/drivers/gpu/drm/drm_ioctl.c
24732--- linux-2.6.32.21/drivers/gpu/drm/drm_ioctl.c 2010-08-26 19:42:20.000000000 -0400 24881--- linux-2.6.32.21/drivers/gpu/drm/drm_ioctl.c 2010-08-13 16:24:37.000000000 -0400
24733+++ linux-2.6.32.21/drivers/gpu/drm/drm_ioctl.c 2010-09-13 08:10:09.000000000 -0400 24882+++ linux-2.6.32.21/drivers/gpu/drm/drm_ioctl.c 2010-09-04 15:54:52.000000000 -0400
24734@@ -283,7 +283,7 @@ int drm_getstats(struct drm_device *dev, 24883@@ -283,7 +283,7 @@ int drm_getstats(struct drm_device *dev,
24735 stats->data[i].value = 24884 stats->data[i].value =
24736 (file_priv->master->lock.hw_lock ? file_priv->master->lock.hw_lock->lock : 0); 24885 (file_priv->master->lock.hw_lock ? file_priv->master->lock.hw_lock->lock : 0);
@@ -24741,8 +24890,8 @@ diff -urNp linux-2.6.32.21/drivers/gpu/drm/drm_ioctl.c linux-2.6.32.21/drivers/g
24741 } 24890 }
24742 24891
24743diff -urNp linux-2.6.32.21/drivers/gpu/drm/drm_lock.c linux-2.6.32.21/drivers/gpu/drm/drm_lock.c 24892diff -urNp linux-2.6.32.21/drivers/gpu/drm/drm_lock.c linux-2.6.32.21/drivers/gpu/drm/drm_lock.c
24744--- linux-2.6.32.21/drivers/gpu/drm/drm_lock.c 2010-08-26 19:42:20.000000000 -0400 24893--- linux-2.6.32.21/drivers/gpu/drm/drm_lock.c 2010-08-13 16:24:37.000000000 -0400
24745+++ linux-2.6.32.21/drivers/gpu/drm/drm_lock.c 2010-09-13 08:10:09.000000000 -0400 24894+++ linux-2.6.32.21/drivers/gpu/drm/drm_lock.c 2010-09-04 15:54:52.000000000 -0400
24746@@ -87,7 +87,7 @@ int drm_lock(struct drm_device *dev, voi 24895@@ -87,7 +87,7 @@ int drm_lock(struct drm_device *dev, voi
24747 if (drm_lock_take(&master->lock, lock->context)) { 24896 if (drm_lock_take(&master->lock, lock->context)) {
24748 master->lock.file_priv = file_priv; 24897 master->lock.file_priv = file_priv;
@@ -24762,8 +24911,8 @@ diff -urNp linux-2.6.32.21/drivers/gpu/drm/drm_lock.c linux-2.6.32.21/drivers/gp
24762 /* kernel_context_switch isn't used by any of the x86 drm 24911 /* kernel_context_switch isn't used by any of the x86 drm
24763 * modules but is required by the Sparc driver. 24912 * modules but is required by the Sparc driver.
24764diff -urNp linux-2.6.32.21/drivers/gpu/drm/i810/i810_dma.c linux-2.6.32.21/drivers/gpu/drm/i810/i810_dma.c 24913diff -urNp linux-2.6.32.21/drivers/gpu/drm/i810/i810_dma.c linux-2.6.32.21/drivers/gpu/drm/i810/i810_dma.c
24765--- linux-2.6.32.21/drivers/gpu/drm/i810/i810_dma.c 2010-08-26 19:42:20.000000000 -0400 24914--- linux-2.6.32.21/drivers/gpu/drm/i810/i810_dma.c 2010-08-13 16:24:37.000000000 -0400
24766+++ linux-2.6.32.21/drivers/gpu/drm/i810/i810_dma.c 2010-09-13 08:10:09.000000000 -0400 24915+++ linux-2.6.32.21/drivers/gpu/drm/i810/i810_dma.c 2010-09-04 15:54:52.000000000 -0400
24767@@ -952,8 +952,8 @@ static int i810_dma_vertex(struct drm_de 24916@@ -952,8 +952,8 @@ static int i810_dma_vertex(struct drm_de
24768 dma->buflist[vertex->idx], 24917 dma->buflist[vertex->idx],
24769 vertex->discard, vertex->used); 24918 vertex->discard, vertex->used);
@@ -24786,9 +24935,33 @@ diff -urNp linux-2.6.32.21/drivers/gpu/drm/i810/i810_dma.c linux-2.6.32.21/drive
24786 sarea_priv->last_enqueue = dev_priv->counter - 1; 24935 sarea_priv->last_enqueue = dev_priv->counter - 1;
24787 sarea_priv->last_dispatch = (int)hw_status[5]; 24936 sarea_priv->last_dispatch = (int)hw_status[5];
24788 24937
24938diff -urNp linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ch7017.c linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ch7017.c
24939--- linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ch7017.c 2010-08-13 16:24:37.000000000 -0400
24940+++ linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ch7017.c 2010-09-04 15:54:52.000000000 -0400
24941@@ -443,7 +443,7 @@ static void ch7017_destroy(struct intel_
24942 }
24943 }
24944
24945-struct intel_dvo_dev_ops ch7017_ops = {
24946+const struct intel_dvo_dev_ops ch7017_ops = {
24947 .init = ch7017_init,
24948 .detect = ch7017_detect,
24949 .mode_valid = ch7017_mode_valid,
24950diff -urNp linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ch7xxx.c linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ch7xxx.c
24951--- linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ch7xxx.c 2010-08-13 16:24:37.000000000 -0400
24952+++ linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ch7xxx.c 2010-09-04 15:54:52.000000000 -0400
24953@@ -356,7 +356,7 @@ static void ch7xxx_destroy(struct intel_
24954 }
24955 }
24956
24957-struct intel_dvo_dev_ops ch7xxx_ops = {
24958+const struct intel_dvo_dev_ops ch7xxx_ops = {
24959 .init = ch7xxx_init,
24960 .detect = ch7xxx_detect,
24961 .mode_valid = ch7xxx_mode_valid,
24789diff -urNp linux-2.6.32.21/drivers/gpu/drm/i915/dvo.h linux-2.6.32.21/drivers/gpu/drm/i915/dvo.h 24962diff -urNp linux-2.6.32.21/drivers/gpu/drm/i915/dvo.h linux-2.6.32.21/drivers/gpu/drm/i915/dvo.h
24790--- linux-2.6.32.21/drivers/gpu/drm/i915/dvo.h 2010-08-26 19:42:20.000000000 -0400 24963--- linux-2.6.32.21/drivers/gpu/drm/i915/dvo.h 2010-08-13 16:24:37.000000000 -0400
24791+++ linux-2.6.32.21/drivers/gpu/drm/i915/dvo.h 2010-09-13 08:10:09.000000000 -0400 24964+++ linux-2.6.32.21/drivers/gpu/drm/i915/dvo.h 2010-09-04 15:54:52.000000000 -0400
24792@@ -135,23 +135,23 @@ struct intel_dvo_dev_ops { 24965@@ -135,23 +135,23 @@ struct intel_dvo_dev_ops {
24793 * 24966 *
24794 * \return singly-linked list of modes or NULL if no modes found. 24967 * \return singly-linked list of modes or NULL if no modes found.
@@ -24821,33 +24994,9 @@ diff -urNp linux-2.6.32.21/drivers/gpu/drm/i915/dvo.h linux-2.6.32.21/drivers/gp
24821+extern const struct intel_dvo_dev_ops ch7017_ops; 24994+extern const struct intel_dvo_dev_ops ch7017_ops;
24822 24995
24823 #endif /* _INTEL_DVO_H */ 24996 #endif /* _INTEL_DVO_H */
24824diff -urNp linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ch7017.c linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ch7017.c
24825--- linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ch7017.c 2010-08-26 19:42:20.000000000 -0400
24826+++ linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ch7017.c 2010-09-13 08:10:09.000000000 -0400
24827@@ -443,7 +443,7 @@ static void ch7017_destroy(struct intel_
24828 }
24829 }
24830
24831-struct intel_dvo_dev_ops ch7017_ops = {
24832+const struct intel_dvo_dev_ops ch7017_ops = {
24833 .init = ch7017_init,
24834 .detect = ch7017_detect,
24835 .mode_valid = ch7017_mode_valid,
24836diff -urNp linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ch7xxx.c linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ch7xxx.c
24837--- linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ch7xxx.c 2010-08-26 19:42:20.000000000 -0400
24838+++ linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ch7xxx.c 2010-09-13 08:10:09.000000000 -0400
24839@@ -356,7 +356,7 @@ static void ch7xxx_destroy(struct intel_
24840 }
24841 }
24842
24843-struct intel_dvo_dev_ops ch7xxx_ops = {
24844+const struct intel_dvo_dev_ops ch7xxx_ops = {
24845 .init = ch7xxx_init,
24846 .detect = ch7xxx_detect,
24847 .mode_valid = ch7xxx_mode_valid,
24848diff -urNp linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ivch.c linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ivch.c 24997diff -urNp linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ivch.c linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ivch.c
24849--- linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ivch.c 2010-08-26 19:42:20.000000000 -0400 24998--- linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ivch.c 2010-08-13 16:24:37.000000000 -0400
24850+++ linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ivch.c 2010-09-13 08:10:09.000000000 -0400 24999+++ linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ivch.c 2010-09-04 15:54:52.000000000 -0400
24851@@ -430,7 +430,7 @@ static void ivch_destroy(struct intel_dv 25000@@ -430,7 +430,7 @@ static void ivch_destroy(struct intel_dv
24852 } 25001 }
24853 } 25002 }
@@ -24858,8 +25007,8 @@ diff -urNp linux-2.6.32.21/drivers/gpu/drm/i915/dvo_ivch.c linux-2.6.32.21/drive
24858 .dpms = ivch_dpms, 25007 .dpms = ivch_dpms,
24859 .save = ivch_save, 25008 .save = ivch_save,
24860diff -urNp linux-2.6.32.21/drivers/gpu/drm/i915/dvo_sil164.c linux-2.6.32.21/drivers/gpu/drm/i915/dvo_sil164.c 25009diff -urNp linux-2.6.32.21/drivers/gpu/drm/i915/dvo_sil164.c linux-2.6.32.21/drivers/gpu/drm/i915/dvo_sil164.c
24861--- linux-2.6.32.21/drivers/gpu/drm/i915/dvo_sil164.c 2010-08-26 19:42:20.000000000 -0400 25010--- linux-2.6.32.21/drivers/gpu/drm/i915/dvo_sil164.c 2010-08-13 16:24:37.000000000 -0400
24862+++ linux-2.6.32.21/drivers/gpu/drm/i915/dvo_sil164.c 2010-09-13 08:10:09.000000000 -0400 25011+++ linux-2.6.32.21/drivers/gpu/drm/i915/dvo_sil164.c 2010-09-04 15:54:52.000000000 -0400
24863@@ -290,7 +290,7 @@ static void sil164_destroy(struct intel_ 25012@@ -290,7 +290,7 @@ static void sil164_destroy(struct intel_
24864 } 25013 }
24865 } 25014 }
@@ -24870,8 +25019,8 @@ diff -urNp linux-2.6.32.21/drivers/gpu/drm/i915/dvo_sil164.c linux-2.6.32.21/dri
24870 .detect = sil164_detect, 25019 .detect = sil164_detect,
24871 .mode_valid = sil164_mode_valid, 25020 .mode_valid = sil164_mode_valid,
24872diff -urNp linux-2.6.32.21/drivers/gpu/drm/i915/dvo_tfp410.c linux-2.6.32.21/drivers/gpu/drm/i915/dvo_tfp410.c 25021diff -urNp linux-2.6.32.21/drivers/gpu/drm/i915/dvo_tfp410.c linux-2.6.32.21/drivers/gpu/drm/i915/dvo_tfp410.c
24873--- linux-2.6.32.21/drivers/gpu/drm/i915/dvo_tfp410.c 2010-08-26 19:42:20.000000000 -0400 25022--- linux-2.6.32.21/drivers/gpu/drm/i915/dvo_tfp410.c 2010-08-13 16:24:37.000000000 -0400
24874+++ linux-2.6.32.21/drivers/gpu/drm/i915/dvo_tfp410.c 2010-09-13 08:10:09.000000000 -0400 25023+++ linux-2.6.32.21/drivers/gpu/drm/i915/dvo_tfp410.c 2010-09-04 15:54:52.000000000 -0400
24875@@ -323,7 +323,7 @@ static void tfp410_destroy(struct intel_ 25024@@ -323,7 +323,7 @@ static void tfp410_destroy(struct intel_
24876 } 25025 }
24877 } 25026 }
@@ -24882,8 +25031,8 @@ diff -urNp linux-2.6.32.21/drivers/gpu/drm/i915/dvo_tfp410.c linux-2.6.32.21/dri
24882 .detect = tfp410_detect, 25031 .detect = tfp410_detect,
24883 .mode_valid = tfp410_mode_valid, 25032 .mode_valid = tfp410_mode_valid,
24884diff -urNp linux-2.6.32.21/drivers/gpu/drm/i915/i915_drv.c linux-2.6.32.21/drivers/gpu/drm/i915/i915_drv.c 25033diff -urNp linux-2.6.32.21/drivers/gpu/drm/i915/i915_drv.c linux-2.6.32.21/drivers/gpu/drm/i915/i915_drv.c
24885--- linux-2.6.32.21/drivers/gpu/drm/i915/i915_drv.c 2010-08-26 19:42:20.000000000 -0400 25034--- linux-2.6.32.21/drivers/gpu/drm/i915/i915_drv.c 2010-08-13 16:24:37.000000000 -0400
24886+++ linux-2.6.32.21/drivers/gpu/drm/i915/i915_drv.c 2010-09-13 08:10:09.000000000 -0400 25035+++ linux-2.6.32.21/drivers/gpu/drm/i915/i915_drv.c 2010-09-04 15:54:52.000000000 -0400
24887@@ -285,7 +285,7 @@ i915_pci_resume(struct pci_dev *pdev) 25036@@ -285,7 +285,7 @@ i915_pci_resume(struct pci_dev *pdev)
24888 return i915_resume(dev); 25037 return i915_resume(dev);
24889 } 25038 }
@@ -24894,8 +25043,8 @@ diff -urNp linux-2.6.32.21/drivers/gpu/drm/i915/i915_drv.c linux-2.6.32.21/drive
24894 .open = drm_gem_vm_open, 25043 .open = drm_gem_vm_open,
24895 .close = drm_gem_vm_close, 25044 .close = drm_gem_vm_close,
24896diff -urNp linux-2.6.32.21/drivers/gpu/drm/radeon/mkregtable.c linux-2.6.32.21/drivers/gpu/drm/radeon/mkregtable.c 25045diff -urNp linux-2.6.32.21/drivers/gpu/drm/radeon/mkregtable.c linux-2.6.32.21/drivers/gpu/drm/radeon/mkregtable.c
24897--- linux-2.6.32.21/drivers/gpu/drm/radeon/mkregtable.c 2010-08-26 19:42:20.000000000 -0400 25046--- linux-2.6.32.21/drivers/gpu/drm/radeon/mkregtable.c 2010-08-13 16:24:37.000000000 -0400
24898+++ linux-2.6.32.21/drivers/gpu/drm/radeon/mkregtable.c 2010-09-13 08:10:09.000000000 -0400 25047+++ linux-2.6.32.21/drivers/gpu/drm/radeon/mkregtable.c 2010-09-04 15:54:52.000000000 -0400
24899@@ -637,14 +637,14 @@ static int parser_auth(struct table *t, 25048@@ -637,14 +637,14 @@ static int parser_auth(struct table *t,
24900 regex_t mask_rex; 25049 regex_t mask_rex;
24901 regmatch_t match[4]; 25050 regmatch_t match[4];
@@ -24914,8 +25063,8 @@ diff -urNp linux-2.6.32.21/drivers/gpu/drm/radeon/mkregtable.c linux-2.6.32.21/d
24914 if (regcomp 25063 if (regcomp
24915 (&mask_rex, "(0x[0-9a-fA-F]*) *([_a-zA-Z0-9]*)", REG_EXTENDED)) { 25064 (&mask_rex, "(0x[0-9a-fA-F]*) *([_a-zA-Z0-9]*)", REG_EXTENDED)) {
24916diff -urNp linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_atombios.c linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_atombios.c 25065diff -urNp linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_atombios.c linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_atombios.c
24917--- linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_atombios.c 2010-08-26 19:42:20.000000000 -0400 25066--- linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_atombios.c 2010-08-13 16:24:37.000000000 -0400
24918+++ linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_atombios.c 2010-09-13 08:10:09.000000000 -0400 25067+++ linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_atombios.c 2010-09-04 15:54:52.000000000 -0400
24919@@ -513,13 +513,13 @@ static uint16_t atombios_get_connector_o 25068@@ -513,13 +513,13 @@ static uint16_t atombios_get_connector_o
24920 } 25069 }
24921 } 25070 }
@@ -24941,8 +25090,8 @@ diff -urNp linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_atombios.c linux-2.6.32
24941 atom_parse_data_header(ctx, index, &size, &frev, &crev, &data_offset); 25090 atom_parse_data_header(ctx, index, &size, &frev, &crev, &data_offset);
24942 25091
24943diff -urNp linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_display.c linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_display.c 25092diff -urNp linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_display.c linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_display.c
24944--- linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_display.c 2010-08-26 19:42:20.000000000 -0400 25093--- linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_display.c 2010-08-13 16:24:37.000000000 -0400
24945+++ linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_display.c 2010-09-13 08:10:09.000000000 -0400 25094+++ linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_display.c 2010-09-04 15:54:52.000000000 -0400
24946@@ -482,7 +482,7 @@ void radeon_compute_pll(struct radeon_pl 25095@@ -482,7 +482,7 @@ void radeon_compute_pll(struct radeon_pl
24947 25096
24948 if (flags & RADEON_PLL_PREFER_CLOSEST_LOWER) { 25097 if (flags & RADEON_PLL_PREFER_CLOSEST_LOWER) {
@@ -24953,8 +25102,8 @@ diff -urNp linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_display.c linux-2.6.32.
24953 error = abs(current_freq - freq); 25102 error = abs(current_freq - freq);
24954 vco_diff = abs(vco - best_vco); 25103 vco_diff = abs(vco - best_vco);
24955diff -urNp linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_state.c linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_state.c 25104diff -urNp linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_state.c linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_state.c
24956--- linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_state.c 2010-08-26 19:42:20.000000000 -0400 25105--- linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_state.c 2010-08-13 16:24:37.000000000 -0400
24957+++ linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_state.c 2010-09-13 08:10:09.000000000 -0400 25106+++ linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_state.c 2010-09-04 15:54:52.000000000 -0400
24958@@ -3021,7 +3021,7 @@ static int radeon_cp_getparam(struct drm 25107@@ -3021,7 +3021,7 @@ static int radeon_cp_getparam(struct drm
24959 { 25108 {
24960 drm_radeon_private_t *dev_priv = dev->dev_private; 25109 drm_radeon_private_t *dev_priv = dev->dev_private;
@@ -24965,8 +25114,8 @@ diff -urNp linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_state.c linux-2.6.32.21
24965 DRM_DEBUG("pid=%d\n", DRM_CURRENTPID); 25114 DRM_DEBUG("pid=%d\n", DRM_CURRENTPID);
24966 25115
24967diff -urNp linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_ttm.c linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_ttm.c 25116diff -urNp linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_ttm.c linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_ttm.c
24968--- linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_ttm.c 2010-08-26 19:42:20.000000000 -0400 25117--- linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_ttm.c 2010-08-13 16:24:37.000000000 -0400
24969+++ linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_ttm.c 2010-09-13 08:10:09.000000000 -0400 25118+++ linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_ttm.c 2010-09-04 15:54:52.000000000 -0400
24970@@ -535,27 +535,10 @@ void radeon_ttm_fini(struct radeon_devic 25119@@ -535,27 +535,10 @@ void radeon_ttm_fini(struct radeon_devic
24971 DRM_INFO("radeon: ttm finalized\n"); 25120 DRM_INFO("radeon: ttm finalized\n");
24972 } 25121 }
@@ -25019,8 +25168,8 @@ diff -urNp linux-2.6.32.21/drivers/gpu/drm/radeon/radeon_ttm.c linux-2.6.32.21/d
25019 25168
25020 25169
25021diff -urNp linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_bo.c linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_bo.c 25170diff -urNp linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_bo.c linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_bo.c
25022--- linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_bo.c 2010-08-26 19:42:20.000000000 -0400 25171--- linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_bo.c 2010-08-13 16:24:37.000000000 -0400
25023+++ linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_bo.c 2010-09-13 08:10:09.000000000 -0400 25172+++ linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_bo.c 2010-09-04 15:54:52.000000000 -0400
25024@@ -39,7 +39,7 @@ 25173@@ -39,7 +39,7 @@
25025 #include <linux/module.h> 25174 #include <linux/module.h>
25026 25175
@@ -25040,8 +25189,8 @@ diff -urNp linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_bo.c linux-2.6.32.21/drivers/
25040 }; 25189 };
25041 25190
25042diff -urNp linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_bo_vm.c linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_bo_vm.c 25191diff -urNp linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_bo_vm.c linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_bo_vm.c
25043--- linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_bo_vm.c 2010-08-26 19:42:20.000000000 -0400 25192--- linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_bo_vm.c 2010-08-13 16:24:37.000000000 -0400
25044+++ linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_bo_vm.c 2010-09-13 08:10:09.000000000 -0400 25193+++ linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_bo_vm.c 2010-09-04 15:54:52.000000000 -0400
25045@@ -73,7 +73,7 @@ static int ttm_bo_vm_fault(struct vm_are 25194@@ -73,7 +73,7 @@ static int ttm_bo_vm_fault(struct vm_are
25046 { 25195 {
25047 struct ttm_buffer_object *bo = (struct ttm_buffer_object *) 25196 struct ttm_buffer_object *bo = (struct ttm_buffer_object *)
@@ -25063,8 +25212,8 @@ diff -urNp linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_bo_vm.c linux-2.6.32.21/drive
25063 * Work around locking order reversal in fault / nopfn 25212 * Work around locking order reversal in fault / nopfn
25064 * between mmap_sem and bo_reserve: Perform a trylock operation 25213 * between mmap_sem and bo_reserve: Perform a trylock operation
25065diff -urNp linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_global.c linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_global.c 25214diff -urNp linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_global.c linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_global.c
25066--- linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_global.c 2010-08-26 19:42:20.000000000 -0400 25215--- linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_global.c 2010-08-13 16:24:37.000000000 -0400
25067+++ linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_global.c 2010-09-13 08:10:09.000000000 -0400 25216+++ linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_global.c 2010-09-04 15:54:52.000000000 -0400
25068@@ -36,7 +36,7 @@ 25217@@ -36,7 +36,7 @@
25069 struct ttm_global_item { 25218 struct ttm_global_item {
25070 struct mutex mutex; 25219 struct mutex mutex;
@@ -25123,8 +25272,8 @@ diff -urNp linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_global.c linux-2.6.32.21/driv
25123 item->object = NULL; 25272 item->object = NULL;
25124 } 25273 }
25125diff -urNp linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_memory.c linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_memory.c 25274diff -urNp linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_memory.c linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_memory.c
25126--- linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_memory.c 2010-08-26 19:42:20.000000000 -0400 25275--- linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_memory.c 2010-08-13 16:24:37.000000000 -0400
25127+++ linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_memory.c 2010-09-13 08:10:09.000000000 -0400 25276+++ linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_memory.c 2010-09-04 15:54:52.000000000 -0400
25128@@ -152,7 +152,7 @@ static struct attribute *ttm_mem_zone_at 25277@@ -152,7 +152,7 @@ static struct attribute *ttm_mem_zone_at
25129 NULL 25278 NULL
25130 }; 25279 };
@@ -25135,8 +25284,8 @@ diff -urNp linux-2.6.32.21/drivers/gpu/drm/ttm/ttm_memory.c linux-2.6.32.21/driv
25135 .store = &ttm_mem_zone_store 25284 .store = &ttm_mem_zone_store
25136 }; 25285 };
25137diff -urNp linux-2.6.32.21/drivers/hid/usbhid/hiddev.c linux-2.6.32.21/drivers/hid/usbhid/hiddev.c 25286diff -urNp linux-2.6.32.21/drivers/hid/usbhid/hiddev.c linux-2.6.32.21/drivers/hid/usbhid/hiddev.c
25138--- linux-2.6.32.21/drivers/hid/usbhid/hiddev.c 2010-08-26 19:42:20.000000000 -0400 25287--- linux-2.6.32.21/drivers/hid/usbhid/hiddev.c 2010-08-13 16:24:37.000000000 -0400
25139+++ linux-2.6.32.21/drivers/hid/usbhid/hiddev.c 2010-09-13 08:10:09.000000000 -0400 25288+++ linux-2.6.32.21/drivers/hid/usbhid/hiddev.c 2010-09-04 15:54:52.000000000 -0400
25140@@ -617,7 +617,7 @@ static long hiddev_ioctl(struct file *fi 25289@@ -617,7 +617,7 @@ static long hiddev_ioctl(struct file *fi
25141 return put_user(HID_VERSION, (int __user *)arg); 25290 return put_user(HID_VERSION, (int __user *)arg);
25142 25291
@@ -25147,8 +25296,8 @@ diff -urNp linux-2.6.32.21/drivers/hid/usbhid/hiddev.c linux-2.6.32.21/drivers/h
25147 25296
25148 for (i = 0; i < hid->maxcollection; i++) 25297 for (i = 0; i < hid->maxcollection; i++)
25149diff -urNp linux-2.6.32.21/drivers/hwmon/k8temp.c linux-2.6.32.21/drivers/hwmon/k8temp.c 25298diff -urNp linux-2.6.32.21/drivers/hwmon/k8temp.c linux-2.6.32.21/drivers/hwmon/k8temp.c
25150--- linux-2.6.32.21/drivers/hwmon/k8temp.c 2010-08-26 19:42:20.000000000 -0400 25299--- linux-2.6.32.21/drivers/hwmon/k8temp.c 2010-08-13 16:24:37.000000000 -0400
25151+++ linux-2.6.32.21/drivers/hwmon/k8temp.c 2010-09-13 08:10:09.000000000 -0400 25300+++ linux-2.6.32.21/drivers/hwmon/k8temp.c 2010-09-04 15:54:52.000000000 -0400
25152@@ -138,7 +138,7 @@ static DEVICE_ATTR(name, S_IRUGO, show_n 25301@@ -138,7 +138,7 @@ static DEVICE_ATTR(name, S_IRUGO, show_n
25153 25302
25154 static struct pci_device_id k8temp_ids[] = { 25303 static struct pci_device_id k8temp_ids[] = {
@@ -25159,8 +25308,8 @@ diff -urNp linux-2.6.32.21/drivers/hwmon/k8temp.c linux-2.6.32.21/drivers/hwmon/
25159 25308
25160 MODULE_DEVICE_TABLE(pci, k8temp_ids); 25309 MODULE_DEVICE_TABLE(pci, k8temp_ids);
25161diff -urNp linux-2.6.32.21/drivers/hwmon/sis5595.c linux-2.6.32.21/drivers/hwmon/sis5595.c 25310diff -urNp linux-2.6.32.21/drivers/hwmon/sis5595.c linux-2.6.32.21/drivers/hwmon/sis5595.c
25162--- linux-2.6.32.21/drivers/hwmon/sis5595.c 2010-08-26 19:42:20.000000000 -0400 25311--- linux-2.6.32.21/drivers/hwmon/sis5595.c 2010-08-13 16:24:37.000000000 -0400
25163+++ linux-2.6.32.21/drivers/hwmon/sis5595.c 2010-09-13 08:10:09.000000000 -0400 25312+++ linux-2.6.32.21/drivers/hwmon/sis5595.c 2010-09-04 15:54:52.000000000 -0400
25164@@ -699,7 +699,7 @@ static struct sis5595_data *sis5595_upda 25313@@ -699,7 +699,7 @@ static struct sis5595_data *sis5595_upda
25165 25314
25166 static struct pci_device_id sis5595_pci_ids[] = { 25315 static struct pci_device_id sis5595_pci_ids[] = {
@@ -25171,8 +25320,8 @@ diff -urNp linux-2.6.32.21/drivers/hwmon/sis5595.c linux-2.6.32.21/drivers/hwmon
25171 25320
25172 MODULE_DEVICE_TABLE(pci, sis5595_pci_ids); 25321 MODULE_DEVICE_TABLE(pci, sis5595_pci_ids);
25173diff -urNp linux-2.6.32.21/drivers/hwmon/via686a.c linux-2.6.32.21/drivers/hwmon/via686a.c 25322diff -urNp linux-2.6.32.21/drivers/hwmon/via686a.c linux-2.6.32.21/drivers/hwmon/via686a.c
25174--- linux-2.6.32.21/drivers/hwmon/via686a.c 2010-08-26 19:42:20.000000000 -0400 25323--- linux-2.6.32.21/drivers/hwmon/via686a.c 2010-08-13 16:24:37.000000000 -0400
25175+++ linux-2.6.32.21/drivers/hwmon/via686a.c 2010-09-13 08:10:09.000000000 -0400 25324+++ linux-2.6.32.21/drivers/hwmon/via686a.c 2010-09-04 15:54:52.000000000 -0400
25176@@ -769,7 +769,7 @@ static struct via686a_data *via686a_upda 25325@@ -769,7 +769,7 @@ static struct via686a_data *via686a_upda
25177 25326
25178 static struct pci_device_id via686a_pci_ids[] = { 25327 static struct pci_device_id via686a_pci_ids[] = {
@@ -25183,8 +25332,8 @@ diff -urNp linux-2.6.32.21/drivers/hwmon/via686a.c linux-2.6.32.21/drivers/hwmon
25183 25332
25184 MODULE_DEVICE_TABLE(pci, via686a_pci_ids); 25333 MODULE_DEVICE_TABLE(pci, via686a_pci_ids);
25185diff -urNp linux-2.6.32.21/drivers/hwmon/vt8231.c linux-2.6.32.21/drivers/hwmon/vt8231.c 25334diff -urNp linux-2.6.32.21/drivers/hwmon/vt8231.c linux-2.6.32.21/drivers/hwmon/vt8231.c
25186--- linux-2.6.32.21/drivers/hwmon/vt8231.c 2010-08-26 19:42:20.000000000 -0400 25335--- linux-2.6.32.21/drivers/hwmon/vt8231.c 2010-08-13 16:24:37.000000000 -0400
25187+++ linux-2.6.32.21/drivers/hwmon/vt8231.c 2010-09-13 08:10:09.000000000 -0400 25336+++ linux-2.6.32.21/drivers/hwmon/vt8231.c 2010-09-04 15:54:52.000000000 -0400
25188@@ -699,7 +699,7 @@ static struct platform_driver vt8231_dri 25337@@ -699,7 +699,7 @@ static struct platform_driver vt8231_dri
25189 25338
25190 static struct pci_device_id vt8231_pci_ids[] = { 25339 static struct pci_device_id vt8231_pci_ids[] = {
@@ -25195,8 +25344,8 @@ diff -urNp linux-2.6.32.21/drivers/hwmon/vt8231.c linux-2.6.32.21/drivers/hwmon/
25195 25344
25196 MODULE_DEVICE_TABLE(pci, vt8231_pci_ids); 25345 MODULE_DEVICE_TABLE(pci, vt8231_pci_ids);
25197diff -urNp linux-2.6.32.21/drivers/hwmon/w83791d.c linux-2.6.32.21/drivers/hwmon/w83791d.c 25346diff -urNp linux-2.6.32.21/drivers/hwmon/w83791d.c linux-2.6.32.21/drivers/hwmon/w83791d.c
25198--- linux-2.6.32.21/drivers/hwmon/w83791d.c 2010-08-26 19:42:20.000000000 -0400 25347--- linux-2.6.32.21/drivers/hwmon/w83791d.c 2010-08-13 16:24:37.000000000 -0400
25199+++ linux-2.6.32.21/drivers/hwmon/w83791d.c 2010-09-13 08:10:09.000000000 -0400 25348+++ linux-2.6.32.21/drivers/hwmon/w83791d.c 2010-09-04 15:54:52.000000000 -0400
25200@@ -330,8 +330,8 @@ static int w83791d_detect(struct i2c_cli 25349@@ -330,8 +330,8 @@ static int w83791d_detect(struct i2c_cli
25201 struct i2c_board_info *info); 25350 struct i2c_board_info *info);
25202 static int w83791d_remove(struct i2c_client *client); 25351 static int w83791d_remove(struct i2c_client *client);
@@ -25209,8 +25358,8 @@ diff -urNp linux-2.6.32.21/drivers/hwmon/w83791d.c linux-2.6.32.21/drivers/hwmon
25209 25358
25210 #ifdef DEBUG 25359 #ifdef DEBUG
25211diff -urNp linux-2.6.32.21/drivers/i2c/busses/i2c-i801.c linux-2.6.32.21/drivers/i2c/busses/i2c-i801.c 25360diff -urNp linux-2.6.32.21/drivers/i2c/busses/i2c-i801.c linux-2.6.32.21/drivers/i2c/busses/i2c-i801.c
25212--- linux-2.6.32.21/drivers/i2c/busses/i2c-i801.c 2010-08-26 19:42:20.000000000 -0400 25361--- linux-2.6.32.21/drivers/i2c/busses/i2c-i801.c 2010-08-13 16:24:37.000000000 -0400
25213+++ linux-2.6.32.21/drivers/i2c/busses/i2c-i801.c 2010-09-13 08:10:09.000000000 -0400 25362+++ linux-2.6.32.21/drivers/i2c/busses/i2c-i801.c 2010-09-04 15:54:52.000000000 -0400
25214@@ -582,7 +582,7 @@ static struct pci_device_id i801_ids[] = 25363@@ -582,7 +582,7 @@ static struct pci_device_id i801_ids[] =
25215 { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH10_5) }, 25364 { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH10_5) },
25216 { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_PCH_SMBUS) }, 25365 { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_PCH_SMBUS) },
@@ -25221,8 +25370,8 @@ diff -urNp linux-2.6.32.21/drivers/i2c/busses/i2c-i801.c linux-2.6.32.21/drivers
25221 25370
25222 MODULE_DEVICE_TABLE (pci, i801_ids); 25371 MODULE_DEVICE_TABLE (pci, i801_ids);
25223diff -urNp linux-2.6.32.21/drivers/i2c/busses/i2c-piix4.c linux-2.6.32.21/drivers/i2c/busses/i2c-piix4.c 25372diff -urNp linux-2.6.32.21/drivers/i2c/busses/i2c-piix4.c linux-2.6.32.21/drivers/i2c/busses/i2c-piix4.c
25224--- linux-2.6.32.21/drivers/i2c/busses/i2c-piix4.c 2010-08-26 19:42:20.000000000 -0400 25373--- linux-2.6.32.21/drivers/i2c/busses/i2c-piix4.c 2010-08-13 16:24:37.000000000 -0400
25225+++ linux-2.6.32.21/drivers/i2c/busses/i2c-piix4.c 2010-09-13 08:10:09.000000000 -0400 25374+++ linux-2.6.32.21/drivers/i2c/busses/i2c-piix4.c 2010-09-04 15:54:52.000000000 -0400
25226@@ -124,7 +124,7 @@ static struct dmi_system_id __devinitdat 25375@@ -124,7 +124,7 @@ static struct dmi_system_id __devinitdat
25227 .ident = "IBM", 25376 .ident = "IBM",
25228 .matches = { DMI_MATCH(DMI_SYS_VENDOR, "IBM"), }, 25377 .matches = { DMI_MATCH(DMI_SYS_VENDOR, "IBM"), },
@@ -25242,8 +25391,8 @@ diff -urNp linux-2.6.32.21/drivers/i2c/busses/i2c-piix4.c linux-2.6.32.21/driver
25242 25391
25243 MODULE_DEVICE_TABLE (pci, piix4_ids); 25392 MODULE_DEVICE_TABLE (pci, piix4_ids);
25244diff -urNp linux-2.6.32.21/drivers/i2c/busses/i2c-sis630.c linux-2.6.32.21/drivers/i2c/busses/i2c-sis630.c 25393diff -urNp linux-2.6.32.21/drivers/i2c/busses/i2c-sis630.c linux-2.6.32.21/drivers/i2c/busses/i2c-sis630.c
25245--- linux-2.6.32.21/drivers/i2c/busses/i2c-sis630.c 2010-08-26 19:42:20.000000000 -0400 25394--- linux-2.6.32.21/drivers/i2c/busses/i2c-sis630.c 2010-08-13 16:24:37.000000000 -0400
25246+++ linux-2.6.32.21/drivers/i2c/busses/i2c-sis630.c 2010-09-13 08:10:09.000000000 -0400 25395+++ linux-2.6.32.21/drivers/i2c/busses/i2c-sis630.c 2010-09-04 15:54:52.000000000 -0400
25247@@ -471,7 +471,7 @@ static struct i2c_adapter sis630_adapter 25396@@ -471,7 +471,7 @@ static struct i2c_adapter sis630_adapter
25248 static struct pci_device_id sis630_ids[] __devinitdata = { 25397 static struct pci_device_id sis630_ids[] __devinitdata = {
25249 { PCI_DEVICE(PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_503) }, 25398 { PCI_DEVICE(PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_503) },
@@ -25254,8 +25403,8 @@ diff -urNp linux-2.6.32.21/drivers/i2c/busses/i2c-sis630.c linux-2.6.32.21/drive
25254 25403
25255 MODULE_DEVICE_TABLE (pci, sis630_ids); 25404 MODULE_DEVICE_TABLE (pci, sis630_ids);
25256diff -urNp linux-2.6.32.21/drivers/i2c/busses/i2c-sis96x.c linux-2.6.32.21/drivers/i2c/busses/i2c-sis96x.c 25405diff -urNp linux-2.6.32.21/drivers/i2c/busses/i2c-sis96x.c linux-2.6.32.21/drivers/i2c/busses/i2c-sis96x.c
25257--- linux-2.6.32.21/drivers/i2c/busses/i2c-sis96x.c 2010-08-26 19:42:20.000000000 -0400 25406--- linux-2.6.32.21/drivers/i2c/busses/i2c-sis96x.c 2010-08-13 16:24:37.000000000 -0400
25258+++ linux-2.6.32.21/drivers/i2c/busses/i2c-sis96x.c 2010-09-13 08:10:09.000000000 -0400 25407+++ linux-2.6.32.21/drivers/i2c/busses/i2c-sis96x.c 2010-09-04 15:54:52.000000000 -0400
25259@@ -247,7 +247,7 @@ static struct i2c_adapter sis96x_adapter 25408@@ -247,7 +247,7 @@ static struct i2c_adapter sis96x_adapter
25260 25409
25261 static struct pci_device_id sis96x_ids[] = { 25410 static struct pci_device_id sis96x_ids[] = {
@@ -25266,8 +25415,8 @@ diff -urNp linux-2.6.32.21/drivers/i2c/busses/i2c-sis96x.c linux-2.6.32.21/drive
25266 25415
25267 MODULE_DEVICE_TABLE (pci, sis96x_ids); 25416 MODULE_DEVICE_TABLE (pci, sis96x_ids);
25268diff -urNp linux-2.6.32.21/drivers/ide/ide-cd.c linux-2.6.32.21/drivers/ide/ide-cd.c 25417diff -urNp linux-2.6.32.21/drivers/ide/ide-cd.c linux-2.6.32.21/drivers/ide/ide-cd.c
25269--- linux-2.6.32.21/drivers/ide/ide-cd.c 2010-08-26 19:42:20.000000000 -0400 25418--- linux-2.6.32.21/drivers/ide/ide-cd.c 2010-08-13 16:24:37.000000000 -0400
25270+++ linux-2.6.32.21/drivers/ide/ide-cd.c 2010-09-13 08:10:09.000000000 -0400 25419+++ linux-2.6.32.21/drivers/ide/ide-cd.c 2010-09-04 15:54:52.000000000 -0400
25271@@ -774,7 +774,7 @@ static void cdrom_do_block_pc(ide_drive_ 25420@@ -774,7 +774,7 @@ static void cdrom_do_block_pc(ide_drive_
25272 alignment = queue_dma_alignment(q) | q->dma_pad_mask; 25421 alignment = queue_dma_alignment(q) | q->dma_pad_mask;
25273 if ((unsigned long)buf & alignment 25422 if ((unsigned long)buf & alignment
@@ -25278,8 +25427,8 @@ diff -urNp linux-2.6.32.21/drivers/ide/ide-cd.c linux-2.6.32.21/drivers/ide/ide-
25278 } 25427 }
25279 } 25428 }
25280diff -urNp linux-2.6.32.21/drivers/ieee1394/dv1394.c linux-2.6.32.21/drivers/ieee1394/dv1394.c 25429diff -urNp linux-2.6.32.21/drivers/ieee1394/dv1394.c linux-2.6.32.21/drivers/ieee1394/dv1394.c
25281--- linux-2.6.32.21/drivers/ieee1394/dv1394.c 2010-08-26 19:42:20.000000000 -0400 25430--- linux-2.6.32.21/drivers/ieee1394/dv1394.c 2010-08-13 16:24:37.000000000 -0400
25282+++ linux-2.6.32.21/drivers/ieee1394/dv1394.c 2010-09-13 08:10:09.000000000 -0400 25431+++ linux-2.6.32.21/drivers/ieee1394/dv1394.c 2010-09-04 15:54:52.000000000 -0400
25283@@ -739,7 +739,7 @@ static void frame_prepare(struct video_c 25432@@ -739,7 +739,7 @@ static void frame_prepare(struct video_c
25284 based upon DIF section and sequence 25433 based upon DIF section and sequence
25285 */ 25434 */
@@ -25299,8 +25448,8 @@ diff -urNp linux-2.6.32.21/drivers/ieee1394/dv1394.c linux-2.6.32.21/drivers/iee
25299 25448
25300 MODULE_DEVICE_TABLE(ieee1394, dv1394_id_table); 25449 MODULE_DEVICE_TABLE(ieee1394, dv1394_id_table);
25301diff -urNp linux-2.6.32.21/drivers/ieee1394/eth1394.c linux-2.6.32.21/drivers/ieee1394/eth1394.c 25450diff -urNp linux-2.6.32.21/drivers/ieee1394/eth1394.c linux-2.6.32.21/drivers/ieee1394/eth1394.c
25302--- linux-2.6.32.21/drivers/ieee1394/eth1394.c 2010-08-26 19:42:20.000000000 -0400 25451--- linux-2.6.32.21/drivers/ieee1394/eth1394.c 2010-08-13 16:24:37.000000000 -0400
25303+++ linux-2.6.32.21/drivers/ieee1394/eth1394.c 2010-09-13 08:10:09.000000000 -0400 25452+++ linux-2.6.32.21/drivers/ieee1394/eth1394.c 2010-09-04 15:54:52.000000000 -0400
25304@@ -446,7 +446,7 @@ static const struct ieee1394_device_id e 25453@@ -446,7 +446,7 @@ static const struct ieee1394_device_id e
25305 .specifier_id = ETHER1394_GASP_SPECIFIER_ID, 25454 .specifier_id = ETHER1394_GASP_SPECIFIER_ID,
25306 .version = ETHER1394_GASP_VERSION, 25455 .version = ETHER1394_GASP_VERSION,
@@ -25311,8 +25460,8 @@ diff -urNp linux-2.6.32.21/drivers/ieee1394/eth1394.c linux-2.6.32.21/drivers/ie
25311 25460
25312 MODULE_DEVICE_TABLE(ieee1394, eth1394_id_table); 25461 MODULE_DEVICE_TABLE(ieee1394, eth1394_id_table);
25313diff -urNp linux-2.6.32.21/drivers/ieee1394/hosts.c linux-2.6.32.21/drivers/ieee1394/hosts.c 25462diff -urNp linux-2.6.32.21/drivers/ieee1394/hosts.c linux-2.6.32.21/drivers/ieee1394/hosts.c
25314--- linux-2.6.32.21/drivers/ieee1394/hosts.c 2010-08-26 19:42:20.000000000 -0400 25463--- linux-2.6.32.21/drivers/ieee1394/hosts.c 2010-08-13 16:24:37.000000000 -0400
25315+++ linux-2.6.32.21/drivers/ieee1394/hosts.c 2010-09-13 08:10:09.000000000 -0400 25464+++ linux-2.6.32.21/drivers/ieee1394/hosts.c 2010-09-04 15:54:52.000000000 -0400
25316@@ -78,6 +78,7 @@ static int dummy_isoctl(struct hpsb_iso 25465@@ -78,6 +78,7 @@ static int dummy_isoctl(struct hpsb_iso
25317 } 25466 }
25318 25467
@@ -25322,8 +25471,8 @@ diff -urNp linux-2.6.32.21/drivers/ieee1394/hosts.c linux-2.6.32.21/drivers/ieee
25322 .devctl = dummy_devctl, 25471 .devctl = dummy_devctl,
25323 .isoctl = dummy_isoctl 25472 .isoctl = dummy_isoctl
25324diff -urNp linux-2.6.32.21/drivers/ieee1394/ohci1394.c linux-2.6.32.21/drivers/ieee1394/ohci1394.c 25473diff -urNp linux-2.6.32.21/drivers/ieee1394/ohci1394.c linux-2.6.32.21/drivers/ieee1394/ohci1394.c
25325--- linux-2.6.32.21/drivers/ieee1394/ohci1394.c 2010-08-26 19:42:20.000000000 -0400 25474--- linux-2.6.32.21/drivers/ieee1394/ohci1394.c 2010-08-13 16:24:37.000000000 -0400
25326+++ linux-2.6.32.21/drivers/ieee1394/ohci1394.c 2010-09-13 08:10:09.000000000 -0400 25475+++ linux-2.6.32.21/drivers/ieee1394/ohci1394.c 2010-09-04 15:54:52.000000000 -0400
25327@@ -147,9 +147,9 @@ printk(level "%s: " fmt "\n" , OHCI1394_ 25476@@ -147,9 +147,9 @@ printk(level "%s: " fmt "\n" , OHCI1394_
25328 printk(level "%s: fw-host%d: " fmt "\n" , OHCI1394_DRIVER_NAME, ohci->host->id , ## args) 25477 printk(level "%s: fw-host%d: " fmt "\n" , OHCI1394_DRIVER_NAME, ohci->host->id , ## args)
25329 25478
@@ -25346,8 +25495,8 @@ diff -urNp linux-2.6.32.21/drivers/ieee1394/ohci1394.c linux-2.6.32.21/drivers/i
25346 25495
25347 MODULE_DEVICE_TABLE(pci, ohci1394_pci_tbl); 25496 MODULE_DEVICE_TABLE(pci, ohci1394_pci_tbl);
25348diff -urNp linux-2.6.32.21/drivers/ieee1394/raw1394.c linux-2.6.32.21/drivers/ieee1394/raw1394.c 25497diff -urNp linux-2.6.32.21/drivers/ieee1394/raw1394.c linux-2.6.32.21/drivers/ieee1394/raw1394.c
25349--- linux-2.6.32.21/drivers/ieee1394/raw1394.c 2010-08-26 19:42:20.000000000 -0400 25498--- linux-2.6.32.21/drivers/ieee1394/raw1394.c 2010-08-13 16:24:37.000000000 -0400
25350+++ linux-2.6.32.21/drivers/ieee1394/raw1394.c 2010-09-13 08:10:09.000000000 -0400 25499+++ linux-2.6.32.21/drivers/ieee1394/raw1394.c 2010-09-04 15:54:52.000000000 -0400
25351@@ -3002,7 +3002,7 @@ static const struct ieee1394_device_id r 25500@@ -3002,7 +3002,7 @@ static const struct ieee1394_device_id r
25352 .match_flags = IEEE1394_MATCH_SPECIFIER_ID | IEEE1394_MATCH_VERSION, 25501 .match_flags = IEEE1394_MATCH_SPECIFIER_ID | IEEE1394_MATCH_VERSION,
25353 .specifier_id = CAMERA_UNIT_SPEC_ID_ENTRY & 0xffffff, 25502 .specifier_id = CAMERA_UNIT_SPEC_ID_ENTRY & 0xffffff,
@@ -25358,8 +25507,8 @@ diff -urNp linux-2.6.32.21/drivers/ieee1394/raw1394.c linux-2.6.32.21/drivers/ie
25358 25507
25359 MODULE_DEVICE_TABLE(ieee1394, raw1394_id_table); 25508 MODULE_DEVICE_TABLE(ieee1394, raw1394_id_table);
25360diff -urNp linux-2.6.32.21/drivers/ieee1394/sbp2.c linux-2.6.32.21/drivers/ieee1394/sbp2.c 25509diff -urNp linux-2.6.32.21/drivers/ieee1394/sbp2.c linux-2.6.32.21/drivers/ieee1394/sbp2.c
25361--- linux-2.6.32.21/drivers/ieee1394/sbp2.c 2010-08-26 19:42:20.000000000 -0400 25510--- linux-2.6.32.21/drivers/ieee1394/sbp2.c 2010-08-13 16:24:37.000000000 -0400
25362+++ linux-2.6.32.21/drivers/ieee1394/sbp2.c 2010-09-13 08:10:09.000000000 -0400 25511+++ linux-2.6.32.21/drivers/ieee1394/sbp2.c 2010-09-04 15:54:52.000000000 -0400
25363@@ -290,7 +290,7 @@ static const struct ieee1394_device_id s 25512@@ -290,7 +290,7 @@ static const struct ieee1394_device_id s
25364 .match_flags = IEEE1394_MATCH_SPECIFIER_ID | IEEE1394_MATCH_VERSION, 25513 .match_flags = IEEE1394_MATCH_SPECIFIER_ID | IEEE1394_MATCH_VERSION,
25365 .specifier_id = SBP2_UNIT_SPEC_ID_ENTRY & 0xffffff, 25514 .specifier_id = SBP2_UNIT_SPEC_ID_ENTRY & 0xffffff,
@@ -25379,8 +25528,8 @@ diff -urNp linux-2.6.32.21/drivers/ieee1394/sbp2.c linux-2.6.32.21/drivers/ieee1
25379 int ret; 25528 int ret;
25380 25529
25381diff -urNp linux-2.6.32.21/drivers/ieee1394/video1394.c linux-2.6.32.21/drivers/ieee1394/video1394.c 25530diff -urNp linux-2.6.32.21/drivers/ieee1394/video1394.c linux-2.6.32.21/drivers/ieee1394/video1394.c
25382--- linux-2.6.32.21/drivers/ieee1394/video1394.c 2010-08-26 19:42:20.000000000 -0400 25531--- linux-2.6.32.21/drivers/ieee1394/video1394.c 2010-08-13 16:24:37.000000000 -0400
25383+++ linux-2.6.32.21/drivers/ieee1394/video1394.c 2010-09-13 08:10:09.000000000 -0400 25532+++ linux-2.6.32.21/drivers/ieee1394/video1394.c 2010-09-04 15:54:52.000000000 -0400
25384@@ -1311,7 +1311,7 @@ static const struct ieee1394_device_id v 25533@@ -1311,7 +1311,7 @@ static const struct ieee1394_device_id v
25385 .specifier_id = CAMERA_UNIT_SPEC_ID_ENTRY & 0xffffff, 25534 .specifier_id = CAMERA_UNIT_SPEC_ID_ENTRY & 0xffffff,
25386 .version = (CAMERA_SW_VERSION_ENTRY + 2) & 0xffffff 25535 .version = (CAMERA_SW_VERSION_ENTRY + 2) & 0xffffff
@@ -25391,8 +25540,8 @@ diff -urNp linux-2.6.32.21/drivers/ieee1394/video1394.c linux-2.6.32.21/drivers/
25391 25540
25392 MODULE_DEVICE_TABLE(ieee1394, video1394_id_table); 25541 MODULE_DEVICE_TABLE(ieee1394, video1394_id_table);
25393diff -urNp linux-2.6.32.21/drivers/infiniband/core/cm.c linux-2.6.32.21/drivers/infiniband/core/cm.c 25542diff -urNp linux-2.6.32.21/drivers/infiniband/core/cm.c linux-2.6.32.21/drivers/infiniband/core/cm.c
25394--- linux-2.6.32.21/drivers/infiniband/core/cm.c 2010-08-26 19:42:20.000000000 -0400 25543--- linux-2.6.32.21/drivers/infiniband/core/cm.c 2010-08-13 16:24:37.000000000 -0400
25395+++ linux-2.6.32.21/drivers/infiniband/core/cm.c 2010-09-13 08:10:09.000000000 -0400 25544+++ linux-2.6.32.21/drivers/infiniband/core/cm.c 2010-09-04 15:54:52.000000000 -0400
25396@@ -112,7 +112,7 @@ static char const counter_group_names[CM 25545@@ -112,7 +112,7 @@ static char const counter_group_names[CM
25397 25546
25398 struct cm_counter_group { 25547 struct cm_counter_group {
@@ -25537,8 +25686,8 @@ diff -urNp linux-2.6.32.21/drivers/infiniband/core/cm.c linux-2.6.32.21/drivers/
25537 }; 25686 };
25538 25687
25539diff -urNp linux-2.6.32.21/drivers/infiniband/core/sysfs.c linux-2.6.32.21/drivers/infiniband/core/sysfs.c 25688diff -urNp linux-2.6.32.21/drivers/infiniband/core/sysfs.c linux-2.6.32.21/drivers/infiniband/core/sysfs.c
25540--- linux-2.6.32.21/drivers/infiniband/core/sysfs.c 2010-08-26 19:42:20.000000000 -0400 25689--- linux-2.6.32.21/drivers/infiniband/core/sysfs.c 2010-08-13 16:24:37.000000000 -0400
25541+++ linux-2.6.32.21/drivers/infiniband/core/sysfs.c 2010-09-13 08:10:09.000000000 -0400 25690+++ linux-2.6.32.21/drivers/infiniband/core/sysfs.c 2010-09-04 15:54:52.000000000 -0400
25542@@ -79,7 +79,7 @@ static ssize_t port_attr_show(struct kob 25691@@ -79,7 +79,7 @@ static ssize_t port_attr_show(struct kob
25543 return port_attr->show(p, port_attr, buf); 25692 return port_attr->show(p, port_attr, buf);
25544 } 25693 }
@@ -25549,8 +25698,8 @@ diff -urNp linux-2.6.32.21/drivers/infiniband/core/sysfs.c linux-2.6.32.21/drive
25549 }; 25698 };
25550 25699
25551diff -urNp linux-2.6.32.21/drivers/input/keyboard/atkbd.c linux-2.6.32.21/drivers/input/keyboard/atkbd.c 25700diff -urNp linux-2.6.32.21/drivers/input/keyboard/atkbd.c linux-2.6.32.21/drivers/input/keyboard/atkbd.c
25552--- linux-2.6.32.21/drivers/input/keyboard/atkbd.c 2010-08-26 19:42:20.000000000 -0400 25701--- linux-2.6.32.21/drivers/input/keyboard/atkbd.c 2010-08-13 16:24:37.000000000 -0400
25553+++ linux-2.6.32.21/drivers/input/keyboard/atkbd.c 2010-09-13 08:10:09.000000000 -0400 25702+++ linux-2.6.32.21/drivers/input/keyboard/atkbd.c 2010-09-04 15:54:52.000000000 -0400
25554@@ -1212,7 +1212,7 @@ static struct serio_device_id atkbd_seri 25703@@ -1212,7 +1212,7 @@ static struct serio_device_id atkbd_seri
25555 .id = SERIO_ANY, 25704 .id = SERIO_ANY,
25556 .extra = SERIO_ANY, 25705 .extra = SERIO_ANY,
@@ -25561,8 +25710,8 @@ diff -urNp linux-2.6.32.21/drivers/input/keyboard/atkbd.c linux-2.6.32.21/driver
25561 25710
25562 MODULE_DEVICE_TABLE(serio, atkbd_serio_ids); 25711 MODULE_DEVICE_TABLE(serio, atkbd_serio_ids);
25563diff -urNp linux-2.6.32.21/drivers/input/mouse/lifebook.c linux-2.6.32.21/drivers/input/mouse/lifebook.c 25712diff -urNp linux-2.6.32.21/drivers/input/mouse/lifebook.c linux-2.6.32.21/drivers/input/mouse/lifebook.c
25564--- linux-2.6.32.21/drivers/input/mouse/lifebook.c 2010-08-26 19:42:20.000000000 -0400 25713--- linux-2.6.32.21/drivers/input/mouse/lifebook.c 2010-08-13 16:24:37.000000000 -0400
25565+++ linux-2.6.32.21/drivers/input/mouse/lifebook.c 2010-09-13 08:10:09.000000000 -0400 25714+++ linux-2.6.32.21/drivers/input/mouse/lifebook.c 2010-09-04 15:54:52.000000000 -0400
25566@@ -115,7 +115,7 @@ static const struct dmi_system_id lifebo 25715@@ -115,7 +115,7 @@ static const struct dmi_system_id lifebo
25567 DMI_MATCH(DMI_PRODUCT_NAME, "LifeBook B142"), 25716 DMI_MATCH(DMI_PRODUCT_NAME, "LifeBook B142"),
25568 }, 25717 },
@@ -25573,8 +25722,8 @@ diff -urNp linux-2.6.32.21/drivers/input/mouse/lifebook.c linux-2.6.32.21/driver
25573 25722
25574 static psmouse_ret_t lifebook_process_byte(struct psmouse *psmouse) 25723 static psmouse_ret_t lifebook_process_byte(struct psmouse *psmouse)
25575diff -urNp linux-2.6.32.21/drivers/input/mouse/psmouse-base.c linux-2.6.32.21/drivers/input/mouse/psmouse-base.c 25724diff -urNp linux-2.6.32.21/drivers/input/mouse/psmouse-base.c linux-2.6.32.21/drivers/input/mouse/psmouse-base.c
25576--- linux-2.6.32.21/drivers/input/mouse/psmouse-base.c 2010-08-26 19:42:20.000000000 -0400 25725--- linux-2.6.32.21/drivers/input/mouse/psmouse-base.c 2010-08-13 16:24:37.000000000 -0400
25577+++ linux-2.6.32.21/drivers/input/mouse/psmouse-base.c 2010-09-13 08:10:09.000000000 -0400 25726+++ linux-2.6.32.21/drivers/input/mouse/psmouse-base.c 2010-09-04 15:54:52.000000000 -0400
25578@@ -1415,7 +1415,7 @@ static struct serio_device_id psmouse_se 25727@@ -1415,7 +1415,7 @@ static struct serio_device_id psmouse_se
25579 .id = SERIO_ANY, 25728 .id = SERIO_ANY,
25580 .extra = SERIO_ANY, 25729 .extra = SERIO_ANY,
@@ -25585,8 +25734,8 @@ diff -urNp linux-2.6.32.21/drivers/input/mouse/psmouse-base.c linux-2.6.32.21/dr
25585 25734
25586 MODULE_DEVICE_TABLE(serio, psmouse_serio_ids); 25735 MODULE_DEVICE_TABLE(serio, psmouse_serio_ids);
25587diff -urNp linux-2.6.32.21/drivers/input/mouse/synaptics.c linux-2.6.32.21/drivers/input/mouse/synaptics.c 25736diff -urNp linux-2.6.32.21/drivers/input/mouse/synaptics.c linux-2.6.32.21/drivers/input/mouse/synaptics.c
25588--- linux-2.6.32.21/drivers/input/mouse/synaptics.c 2010-08-26 19:42:20.000000000 -0400 25737--- linux-2.6.32.21/drivers/input/mouse/synaptics.c 2010-08-13 16:24:37.000000000 -0400
25589+++ linux-2.6.32.21/drivers/input/mouse/synaptics.c 2010-09-13 08:10:09.000000000 -0400 25738+++ linux-2.6.32.21/drivers/input/mouse/synaptics.c 2010-09-04 15:54:52.000000000 -0400
25590@@ -437,7 +437,7 @@ static void synaptics_process_packet(str 25739@@ -437,7 +437,7 @@ static void synaptics_process_packet(str
25591 break; 25740 break;
25592 case 2: 25741 case 2:
@@ -25616,8 +25765,8 @@ diff -urNp linux-2.6.32.21/drivers/input/mouse/synaptics.c linux-2.6.32.21/drive
25616 #endif 25765 #endif
25617 25766
25618diff -urNp linux-2.6.32.21/drivers/input/mousedev.c linux-2.6.32.21/drivers/input/mousedev.c 25767diff -urNp linux-2.6.32.21/drivers/input/mousedev.c linux-2.6.32.21/drivers/input/mousedev.c
25619--- linux-2.6.32.21/drivers/input/mousedev.c 2010-08-26 19:42:20.000000000 -0400 25768--- linux-2.6.32.21/drivers/input/mousedev.c 2010-08-13 16:24:37.000000000 -0400
25620+++ linux-2.6.32.21/drivers/input/mousedev.c 2010-09-13 08:10:09.000000000 -0400 25769+++ linux-2.6.32.21/drivers/input/mousedev.c 2010-09-04 15:54:52.000000000 -0400
25621@@ -1057,7 +1057,7 @@ static struct input_handler mousedev_han 25770@@ -1057,7 +1057,7 @@ static struct input_handler mousedev_han
25622 25771
25623 #ifdef CONFIG_INPUT_MOUSEDEV_PSAUX 25772 #ifdef CONFIG_INPUT_MOUSEDEV_PSAUX
@@ -25628,8 +25777,8 @@ diff -urNp linux-2.6.32.21/drivers/input/mousedev.c linux-2.6.32.21/drivers/inpu
25628 static int psaux_registered; 25777 static int psaux_registered;
25629 #endif 25778 #endif
25630diff -urNp linux-2.6.32.21/drivers/input/serio/i8042-x86ia64io.h linux-2.6.32.21/drivers/input/serio/i8042-x86ia64io.h 25779diff -urNp linux-2.6.32.21/drivers/input/serio/i8042-x86ia64io.h linux-2.6.32.21/drivers/input/serio/i8042-x86ia64io.h
25631--- linux-2.6.32.21/drivers/input/serio/i8042-x86ia64io.h 2010-08-26 19:42:20.000000000 -0400 25780--- linux-2.6.32.21/drivers/input/serio/i8042-x86ia64io.h 2010-08-13 16:24:37.000000000 -0400
25632+++ linux-2.6.32.21/drivers/input/serio/i8042-x86ia64io.h 2010-09-13 08:10:09.000000000 -0400 25781+++ linux-2.6.32.21/drivers/input/serio/i8042-x86ia64io.h 2010-09-04 15:54:52.000000000 -0400
25633@@ -179,7 +179,7 @@ static const struct dmi_system_id __init 25782@@ -179,7 +179,7 @@ static const struct dmi_system_id __init
25634 DMI_MATCH(DMI_PRODUCT_VERSION, "Rev 1"), 25783 DMI_MATCH(DMI_PRODUCT_VERSION, "Rev 1"),
25635 }, 25784 },
@@ -25685,8 +25834,8 @@ diff -urNp linux-2.6.32.21/drivers/input/serio/i8042-x86ia64io.h linux-2.6.32.21
25685 25834
25686 #endif /* CONFIG_X86 */ 25835 #endif /* CONFIG_X86 */
25687diff -urNp linux-2.6.32.21/drivers/input/serio/serio_raw.c linux-2.6.32.21/drivers/input/serio/serio_raw.c 25836diff -urNp linux-2.6.32.21/drivers/input/serio/serio_raw.c linux-2.6.32.21/drivers/input/serio/serio_raw.c
25688--- linux-2.6.32.21/drivers/input/serio/serio_raw.c 2010-08-26 19:42:20.000000000 -0400 25837--- linux-2.6.32.21/drivers/input/serio/serio_raw.c 2010-08-13 16:24:37.000000000 -0400
25689+++ linux-2.6.32.21/drivers/input/serio/serio_raw.c 2010-09-13 08:10:09.000000000 -0400 25838+++ linux-2.6.32.21/drivers/input/serio/serio_raw.c 2010-09-04 15:54:52.000000000 -0400
25690@@ -377,7 +377,7 @@ static struct serio_device_id serio_raw_ 25839@@ -377,7 +377,7 @@ static struct serio_device_id serio_raw_
25691 .id = SERIO_ANY, 25840 .id = SERIO_ANY,
25692 .extra = SERIO_ANY, 25841 .extra = SERIO_ANY,
@@ -25697,8 +25846,8 @@ diff -urNp linux-2.6.32.21/drivers/input/serio/serio_raw.c linux-2.6.32.21/drive
25697 25846
25698 MODULE_DEVICE_TABLE(serio, serio_raw_serio_ids); 25847 MODULE_DEVICE_TABLE(serio, serio_raw_serio_ids);
25699diff -urNp linux-2.6.32.21/drivers/isdn/gigaset/common.c linux-2.6.32.21/drivers/isdn/gigaset/common.c 25848diff -urNp linux-2.6.32.21/drivers/isdn/gigaset/common.c linux-2.6.32.21/drivers/isdn/gigaset/common.c
25700--- linux-2.6.32.21/drivers/isdn/gigaset/common.c 2010-08-26 19:42:20.000000000 -0400 25849--- linux-2.6.32.21/drivers/isdn/gigaset/common.c 2010-08-13 16:24:37.000000000 -0400
25701+++ linux-2.6.32.21/drivers/isdn/gigaset/common.c 2010-09-13 08:10:09.000000000 -0400 25850+++ linux-2.6.32.21/drivers/isdn/gigaset/common.c 2010-09-04 15:54:52.000000000 -0400
25702@@ -712,7 +712,7 @@ struct cardstate *gigaset_initcs(struct 25851@@ -712,7 +712,7 @@ struct cardstate *gigaset_initcs(struct
25703 cs->commands_pending = 0; 25852 cs->commands_pending = 0;
25704 cs->cur_at_seq = 0; 25853 cs->cur_at_seq = 0;
@@ -25709,8 +25858,8 @@ diff -urNp linux-2.6.32.21/drivers/isdn/gigaset/common.c linux-2.6.32.21/drivers
25709 cs->tty = NULL; 25858 cs->tty = NULL;
25710 cs->tty_dev = NULL; 25859 cs->tty_dev = NULL;
25711diff -urNp linux-2.6.32.21/drivers/isdn/gigaset/gigaset.h linux-2.6.32.21/drivers/isdn/gigaset/gigaset.h 25860diff -urNp linux-2.6.32.21/drivers/isdn/gigaset/gigaset.h linux-2.6.32.21/drivers/isdn/gigaset/gigaset.h
25712--- linux-2.6.32.21/drivers/isdn/gigaset/gigaset.h 2010-08-26 19:42:20.000000000 -0400 25861--- linux-2.6.32.21/drivers/isdn/gigaset/gigaset.h 2010-08-13 16:24:37.000000000 -0400
25713+++ linux-2.6.32.21/drivers/isdn/gigaset/gigaset.h 2010-09-13 08:10:09.000000000 -0400 25862+++ linux-2.6.32.21/drivers/isdn/gigaset/gigaset.h 2010-09-04 15:54:52.000000000 -0400
25714@@ -446,7 +446,7 @@ struct cardstate { 25863@@ -446,7 +446,7 @@ struct cardstate {
25715 spinlock_t cmdlock; 25864 spinlock_t cmdlock;
25716 unsigned curlen, cmdbytes; 25865 unsigned curlen, cmdbytes;
@@ -25721,8 +25870,8 @@ diff -urNp linux-2.6.32.21/drivers/isdn/gigaset/gigaset.h linux-2.6.32.21/driver
25721 struct tasklet_struct if_wake_tasklet; 25870 struct tasklet_struct if_wake_tasklet;
25722 unsigned control_state; 25871 unsigned control_state;
25723diff -urNp linux-2.6.32.21/drivers/isdn/gigaset/interface.c linux-2.6.32.21/drivers/isdn/gigaset/interface.c 25872diff -urNp linux-2.6.32.21/drivers/isdn/gigaset/interface.c linux-2.6.32.21/drivers/isdn/gigaset/interface.c
25724--- linux-2.6.32.21/drivers/isdn/gigaset/interface.c 2010-08-26 19:42:20.000000000 -0400 25873--- linux-2.6.32.21/drivers/isdn/gigaset/interface.c 2010-08-13 16:24:37.000000000 -0400
25725+++ linux-2.6.32.21/drivers/isdn/gigaset/interface.c 2010-09-13 08:10:09.000000000 -0400 25874+++ linux-2.6.32.21/drivers/isdn/gigaset/interface.c 2010-09-04 15:54:52.000000000 -0400
25726@@ -165,9 +165,7 @@ static int if_open(struct tty_struct *tt 25875@@ -165,9 +165,7 @@ static int if_open(struct tty_struct *tt
25727 return -ERESTARTSYS; // FIXME -EINTR? 25876 return -ERESTARTSYS; // FIXME -EINTR?
25728 tty->driver_data = cs; 25877 tty->driver_data = cs;
@@ -25811,8 +25960,8 @@ diff -urNp linux-2.6.32.21/drivers/isdn/gigaset/interface.c linux-2.6.32.21/driv
25811 goto out; 25960 goto out;
25812 } 25961 }
25813diff -urNp linux-2.6.32.21/drivers/isdn/hardware/avm/b1.c linux-2.6.32.21/drivers/isdn/hardware/avm/b1.c 25962diff -urNp linux-2.6.32.21/drivers/isdn/hardware/avm/b1.c linux-2.6.32.21/drivers/isdn/hardware/avm/b1.c
25814--- linux-2.6.32.21/drivers/isdn/hardware/avm/b1.c 2010-08-26 19:42:20.000000000 -0400 25963--- linux-2.6.32.21/drivers/isdn/hardware/avm/b1.c 2010-08-13 16:24:37.000000000 -0400
25815+++ linux-2.6.32.21/drivers/isdn/hardware/avm/b1.c 2010-09-13 08:10:09.000000000 -0400 25964+++ linux-2.6.32.21/drivers/isdn/hardware/avm/b1.c 2010-09-04 15:54:52.000000000 -0400
25816@@ -173,7 +173,7 @@ int b1_load_t4file(avmcard *card, capilo 25965@@ -173,7 +173,7 @@ int b1_load_t4file(avmcard *card, capilo
25817 } 25966 }
25818 if (left) { 25967 if (left) {
@@ -25832,8 +25981,8 @@ diff -urNp linux-2.6.32.21/drivers/isdn/hardware/avm/b1.c linux-2.6.32.21/driver
25832 } else { 25981 } else {
25833 memcpy(buf, dp, left); 25982 memcpy(buf, dp, left);
25834diff -urNp linux-2.6.32.21/drivers/isdn/icn/icn.c linux-2.6.32.21/drivers/isdn/icn/icn.c 25983diff -urNp linux-2.6.32.21/drivers/isdn/icn/icn.c linux-2.6.32.21/drivers/isdn/icn/icn.c
25835--- linux-2.6.32.21/drivers/isdn/icn/icn.c 2010-08-26 19:42:20.000000000 -0400 25984--- linux-2.6.32.21/drivers/isdn/icn/icn.c 2010-08-13 16:24:37.000000000 -0400
25836+++ linux-2.6.32.21/drivers/isdn/icn/icn.c 2010-09-13 08:10:09.000000000 -0400 25985+++ linux-2.6.32.21/drivers/isdn/icn/icn.c 2010-09-04 15:54:52.000000000 -0400
25837@@ -1044,7 +1044,7 @@ icn_writecmd(const u_char * buf, int len 25986@@ -1044,7 +1044,7 @@ icn_writecmd(const u_char * buf, int len
25838 if (count > len) 25987 if (count > len)
25839 count = len; 25988 count = len;
@@ -25844,8 +25993,8 @@ diff -urNp linux-2.6.32.21/drivers/isdn/icn/icn.c linux-2.6.32.21/drivers/isdn/i
25844 } else 25993 } else
25845 memcpy(msg, buf, count); 25994 memcpy(msg, buf, count);
25846diff -urNp linux-2.6.32.21/drivers/lguest/core.c linux-2.6.32.21/drivers/lguest/core.c 25995diff -urNp linux-2.6.32.21/drivers/lguest/core.c linux-2.6.32.21/drivers/lguest/core.c
25847--- linux-2.6.32.21/drivers/lguest/core.c 2010-08-26 19:42:20.000000000 -0400 25996--- linux-2.6.32.21/drivers/lguest/core.c 2010-08-13 16:24:37.000000000 -0400
25848+++ linux-2.6.32.21/drivers/lguest/core.c 2010-09-13 08:10:09.000000000 -0400 25997+++ linux-2.6.32.21/drivers/lguest/core.c 2010-09-04 15:54:52.000000000 -0400
25849@@ -91,9 +91,17 @@ static __init int map_switcher(void) 25998@@ -91,9 +91,17 @@ static __init int map_switcher(void)
25850 * it's worked so far. The end address needs +1 because __get_vm_area 25999 * it's worked so far. The end address needs +1 because __get_vm_area
25851 * allocates an extra guard page, so we need space for that. 26000 * allocates an extra guard page, so we need space for that.
@@ -25865,8 +26014,8 @@ diff -urNp linux-2.6.32.21/drivers/lguest/core.c linux-2.6.32.21/drivers/lguest/
25865 err = -ENOMEM; 26014 err = -ENOMEM;
25866 printk("lguest: could not map switcher pages high\n"); 26015 printk("lguest: could not map switcher pages high\n");
25867diff -urNp linux-2.6.32.21/drivers/macintosh/via-pmu-backlight.c linux-2.6.32.21/drivers/macintosh/via-pmu-backlight.c 26016diff -urNp linux-2.6.32.21/drivers/macintosh/via-pmu-backlight.c linux-2.6.32.21/drivers/macintosh/via-pmu-backlight.c
25868--- linux-2.6.32.21/drivers/macintosh/via-pmu-backlight.c 2010-08-26 19:42:20.000000000 -0400 26017--- linux-2.6.32.21/drivers/macintosh/via-pmu-backlight.c 2010-08-13 16:24:37.000000000 -0400
25869+++ linux-2.6.32.21/drivers/macintosh/via-pmu-backlight.c 2010-09-13 08:10:09.000000000 -0400 26018+++ linux-2.6.32.21/drivers/macintosh/via-pmu-backlight.c 2010-09-04 15:54:52.000000000 -0400
25870@@ -15,7 +15,7 @@ 26019@@ -15,7 +15,7 @@
25871 26020
25872 #define MAX_PMU_LEVEL 0xFF 26021 #define MAX_PMU_LEVEL 0xFF
@@ -25886,8 +26035,8 @@ diff -urNp linux-2.6.32.21/drivers/macintosh/via-pmu-backlight.c linux-2.6.32.21
25886 .update_status = pmu_backlight_update_status, 26035 .update_status = pmu_backlight_update_status,
25887 26036
25888diff -urNp linux-2.6.32.21/drivers/macintosh/via-pmu.c linux-2.6.32.21/drivers/macintosh/via-pmu.c 26037diff -urNp linux-2.6.32.21/drivers/macintosh/via-pmu.c linux-2.6.32.21/drivers/macintosh/via-pmu.c
25889--- linux-2.6.32.21/drivers/macintosh/via-pmu.c 2010-08-26 19:42:20.000000000 -0400 26038--- linux-2.6.32.21/drivers/macintosh/via-pmu.c 2010-08-13 16:24:37.000000000 -0400
25890+++ linux-2.6.32.21/drivers/macintosh/via-pmu.c 2010-09-13 08:10:09.000000000 -0400 26039+++ linux-2.6.32.21/drivers/macintosh/via-pmu.c 2010-09-04 15:54:52.000000000 -0400
25891@@ -2232,7 +2232,7 @@ static int pmu_sleep_valid(suspend_state 26040@@ -2232,7 +2232,7 @@ static int pmu_sleep_valid(suspend_state
25892 && (pmac_call_feature(PMAC_FTR_SLEEP_STATE, NULL, 0, -1) >= 0); 26041 && (pmac_call_feature(PMAC_FTR_SLEEP_STATE, NULL, 0, -1) >= 0);
25893 } 26042 }
@@ -25898,8 +26047,8 @@ diff -urNp linux-2.6.32.21/drivers/macintosh/via-pmu.c linux-2.6.32.21/drivers/m
25898 .valid = pmu_sleep_valid, 26047 .valid = pmu_sleep_valid,
25899 }; 26048 };
25900diff -urNp linux-2.6.32.21/drivers/md/bitmap.c linux-2.6.32.21/drivers/md/bitmap.c 26049diff -urNp linux-2.6.32.21/drivers/md/bitmap.c linux-2.6.32.21/drivers/md/bitmap.c
25901--- linux-2.6.32.21/drivers/md/bitmap.c 2010-08-26 19:42:20.000000000 -0400 26050--- linux-2.6.32.21/drivers/md/bitmap.c 2010-08-13 16:24:37.000000000 -0400
25902+++ linux-2.6.32.21/drivers/md/bitmap.c 2010-09-13 08:10:09.000000000 -0400 26051+++ linux-2.6.32.21/drivers/md/bitmap.c 2010-09-04 15:54:52.000000000 -0400
25903@@ -58,7 +58,7 @@ 26052@@ -58,7 +58,7 @@
25904 # if DEBUG > 0 26053 # if DEBUG > 0
25905 # define PRINTK(x...) printk(KERN_DEBUG x) 26054 # define PRINTK(x...) printk(KERN_DEBUG x)
@@ -25910,8 +26059,8 @@ diff -urNp linux-2.6.32.21/drivers/md/bitmap.c linux-2.6.32.21/drivers/md/bitmap
25910 #endif 26059 #endif
25911 26060
25912diff -urNp linux-2.6.32.21/drivers/md/dm-sysfs.c linux-2.6.32.21/drivers/md/dm-sysfs.c 26061diff -urNp linux-2.6.32.21/drivers/md/dm-sysfs.c linux-2.6.32.21/drivers/md/dm-sysfs.c
25913--- linux-2.6.32.21/drivers/md/dm-sysfs.c 2010-08-26 19:42:20.000000000 -0400 26062--- linux-2.6.32.21/drivers/md/dm-sysfs.c 2010-08-13 16:24:37.000000000 -0400
25914+++ linux-2.6.32.21/drivers/md/dm-sysfs.c 2010-09-13 08:10:09.000000000 -0400 26063+++ linux-2.6.32.21/drivers/md/dm-sysfs.c 2010-09-04 15:54:52.000000000 -0400
25915@@ -75,7 +75,7 @@ static struct attribute *dm_attrs[] = { 26064@@ -75,7 +75,7 @@ static struct attribute *dm_attrs[] = {
25916 NULL, 26065 NULL,
25917 }; 26066 };
@@ -25922,8 +26071,8 @@ diff -urNp linux-2.6.32.21/drivers/md/dm-sysfs.c linux-2.6.32.21/drivers/md/dm-s
25922 }; 26071 };
25923 26072
25924diff -urNp linux-2.6.32.21/drivers/md/dm-table.c linux-2.6.32.21/drivers/md/dm-table.c 26073diff -urNp linux-2.6.32.21/drivers/md/dm-table.c linux-2.6.32.21/drivers/md/dm-table.c
25925--- linux-2.6.32.21/drivers/md/dm-table.c 2010-08-26 19:42:20.000000000 -0400 26074--- linux-2.6.32.21/drivers/md/dm-table.c 2010-08-13 16:24:37.000000000 -0400
25926+++ linux-2.6.32.21/drivers/md/dm-table.c 2010-09-13 08:10:09.000000000 -0400 26075+++ linux-2.6.32.21/drivers/md/dm-table.c 2010-09-04 15:54:52.000000000 -0400
25927@@ -359,7 +359,7 @@ static int device_area_is_invalid(struct 26076@@ -359,7 +359,7 @@ static int device_area_is_invalid(struct
25928 if (!dev_size) 26077 if (!dev_size)
25929 return 0; 26078 return 0;
@@ -25934,8 +26083,8 @@ diff -urNp linux-2.6.32.21/drivers/md/dm-table.c linux-2.6.32.21/drivers/md/dm-t
25934 "start=%llu, len=%llu, dev_size=%llu", 26083 "start=%llu, len=%llu, dev_size=%llu",
25935 dm_device_name(ti->table->md), bdevname(bdev, b), 26084 dm_device_name(ti->table->md), bdevname(bdev, b),
25936diff -urNp linux-2.6.32.21/drivers/md/md.c linux-2.6.32.21/drivers/md/md.c 26085diff -urNp linux-2.6.32.21/drivers/md/md.c linux-2.6.32.21/drivers/md/md.c
25937--- linux-2.6.32.21/drivers/md/md.c 2010-08-26 19:42:20.000000000 -0400 26086--- linux-2.6.32.21/drivers/md/md.c 2010-08-13 16:24:37.000000000 -0400
25938+++ linux-2.6.32.21/drivers/md/md.c 2010-09-13 08:10:09.000000000 -0400 26087+++ linux-2.6.32.21/drivers/md/md.c 2010-09-04 15:54:52.000000000 -0400
25939@@ -2514,7 +2514,7 @@ static void rdev_free(struct kobject *ko 26088@@ -2514,7 +2514,7 @@ static void rdev_free(struct kobject *ko
25940 mdk_rdev_t *rdev = container_of(ko, mdk_rdev_t, kobj); 26089 mdk_rdev_t *rdev = container_of(ko, mdk_rdev_t, kobj);
25941 kfree(rdev); 26090 kfree(rdev);
@@ -25973,8 +26122,8 @@ diff -urNp linux-2.6.32.21/drivers/md/md.c linux-2.6.32.21/drivers/md/md.c
25973 * as sync_io is counted when a request starts, and 26122 * as sync_io is counted when a request starts, and
25974 * disk_stats is counted when it completes. 26123 * disk_stats is counted when it completes.
25975diff -urNp linux-2.6.32.21/drivers/md/md.h linux-2.6.32.21/drivers/md/md.h 26124diff -urNp linux-2.6.32.21/drivers/md/md.h linux-2.6.32.21/drivers/md/md.h
25976--- linux-2.6.32.21/drivers/md/md.h 2010-08-26 19:42:20.000000000 -0400 26125--- linux-2.6.32.21/drivers/md/md.h 2010-08-13 16:24:37.000000000 -0400
25977+++ linux-2.6.32.21/drivers/md/md.h 2010-09-13 08:10:09.000000000 -0400 26126+++ linux-2.6.32.21/drivers/md/md.h 2010-09-04 15:54:52.000000000 -0400
25978@@ -304,7 +304,7 @@ static inline void rdev_dec_pending(mdk_ 26127@@ -304,7 +304,7 @@ static inline void rdev_dec_pending(mdk_
25979 26128
25980 static inline void md_sync_acct(struct block_device *bdev, unsigned long nr_sectors) 26129 static inline void md_sync_acct(struct block_device *bdev, unsigned long nr_sectors)
@@ -25985,8 +26134,8 @@ diff -urNp linux-2.6.32.21/drivers/md/md.h linux-2.6.32.21/drivers/md/md.h
25985 26134
25986 struct mdk_personality 26135 struct mdk_personality
25987diff -urNp linux-2.6.32.21/drivers/media/dvb/dvb-core/dvbdev.c linux-2.6.32.21/drivers/media/dvb/dvb-core/dvbdev.c 26136diff -urNp linux-2.6.32.21/drivers/media/dvb/dvb-core/dvbdev.c linux-2.6.32.21/drivers/media/dvb/dvb-core/dvbdev.c
25988--- linux-2.6.32.21/drivers/media/dvb/dvb-core/dvbdev.c 2010-08-26 19:42:20.000000000 -0400 26137--- linux-2.6.32.21/drivers/media/dvb/dvb-core/dvbdev.c 2010-08-13 16:24:37.000000000 -0400
25989+++ linux-2.6.32.21/drivers/media/dvb/dvb-core/dvbdev.c 2010-09-13 08:10:09.000000000 -0400 26138+++ linux-2.6.32.21/drivers/media/dvb/dvb-core/dvbdev.c 2010-09-04 15:54:52.000000000 -0400
25990@@ -191,6 +191,7 @@ int dvb_register_device(struct dvb_adapt 26139@@ -191,6 +191,7 @@ int dvb_register_device(struct dvb_adapt
25991 const struct dvb_device *template, void *priv, int type) 26140 const struct dvb_device *template, void *priv, int type)
25992 { 26141 {
@@ -25996,8 +26145,8 @@ diff -urNp linux-2.6.32.21/drivers/media/dvb/dvb-core/dvbdev.c linux-2.6.32.21/d
25996 struct device *clsdev; 26145 struct device *clsdev;
25997 int minor; 26146 int minor;
25998diff -urNp linux-2.6.32.21/drivers/media/radio/radio-cadet.c linux-2.6.32.21/drivers/media/radio/radio-cadet.c 26147diff -urNp linux-2.6.32.21/drivers/media/radio/radio-cadet.c linux-2.6.32.21/drivers/media/radio/radio-cadet.c
25999--- linux-2.6.32.21/drivers/media/radio/radio-cadet.c 2010-08-26 19:42:20.000000000 -0400 26148--- linux-2.6.32.21/drivers/media/radio/radio-cadet.c 2010-08-13 16:24:37.000000000 -0400
26000+++ linux-2.6.32.21/drivers/media/radio/radio-cadet.c 2010-09-13 08:10:09.000000000 -0400 26149+++ linux-2.6.32.21/drivers/media/radio/radio-cadet.c 2010-09-04 15:54:52.000000000 -0400
26001@@ -347,7 +347,7 @@ static ssize_t cadet_read(struct file *f 26150@@ -347,7 +347,7 @@ static ssize_t cadet_read(struct file *f
26002 while (i < count && dev->rdsin != dev->rdsout) 26151 while (i < count && dev->rdsin != dev->rdsout)
26003 readbuf[i++] = dev->rdsbuf[dev->rdsout++]; 26152 readbuf[i++] = dev->rdsbuf[dev->rdsout++];
@@ -26008,8 +26157,8 @@ diff -urNp linux-2.6.32.21/drivers/media/radio/radio-cadet.c linux-2.6.32.21/dri
26008 return i; 26157 return i;
26009 } 26158 }
26010diff -urNp linux-2.6.32.21/drivers/media/video/usbvideo/konicawc.c linux-2.6.32.21/drivers/media/video/usbvideo/konicawc.c 26159diff -urNp linux-2.6.32.21/drivers/media/video/usbvideo/konicawc.c linux-2.6.32.21/drivers/media/video/usbvideo/konicawc.c
26011--- linux-2.6.32.21/drivers/media/video/usbvideo/konicawc.c 2010-08-26 19:42:20.000000000 -0400 26160--- linux-2.6.32.21/drivers/media/video/usbvideo/konicawc.c 2010-08-13 16:24:37.000000000 -0400
26012+++ linux-2.6.32.21/drivers/media/video/usbvideo/konicawc.c 2010-09-13 08:10:09.000000000 -0400 26161+++ linux-2.6.32.21/drivers/media/video/usbvideo/konicawc.c 2010-09-04 15:54:52.000000000 -0400
26013@@ -225,7 +225,7 @@ static void konicawc_register_input(stru 26162@@ -225,7 +225,7 @@ static void konicawc_register_input(stru
26014 int error; 26163 int error;
26015 26164
@@ -26020,8 +26169,8 @@ diff -urNp linux-2.6.32.21/drivers/media/video/usbvideo/konicawc.c linux-2.6.32.
26020 cam->input = input_dev = input_allocate_device(); 26169 cam->input = input_dev = input_allocate_device();
26021 if (!input_dev) { 26170 if (!input_dev) {
26022diff -urNp linux-2.6.32.21/drivers/media/video/usbvideo/quickcam_messenger.c linux-2.6.32.21/drivers/media/video/usbvideo/quickcam_messenger.c 26171diff -urNp linux-2.6.32.21/drivers/media/video/usbvideo/quickcam_messenger.c linux-2.6.32.21/drivers/media/video/usbvideo/quickcam_messenger.c
26023--- linux-2.6.32.21/drivers/media/video/usbvideo/quickcam_messenger.c 2010-08-26 19:42:20.000000000 -0400 26172--- linux-2.6.32.21/drivers/media/video/usbvideo/quickcam_messenger.c 2010-08-13 16:24:37.000000000 -0400
26024+++ linux-2.6.32.21/drivers/media/video/usbvideo/quickcam_messenger.c 2010-09-13 08:10:10.000000000 -0400 26173+++ linux-2.6.32.21/drivers/media/video/usbvideo/quickcam_messenger.c 2010-09-04 15:54:52.000000000 -0400
26025@@ -89,7 +89,7 @@ static void qcm_register_input(struct qc 26174@@ -89,7 +89,7 @@ static void qcm_register_input(struct qc
26026 int error; 26175 int error;
26027 26176
@@ -26031,9 +26180,27 @@ diff -urNp linux-2.6.32.21/drivers/media/video/usbvideo/quickcam_messenger.c lin
26031 26180
26032 cam->input = input_dev = input_allocate_device(); 26181 cam->input = input_dev = input_allocate_device();
26033 if (!input_dev) { 26182 if (!input_dev) {
26183diff -urNp linux-2.6.32.21/drivers/message/fusion/mptbase.c linux-2.6.32.21/drivers/message/fusion/mptbase.c
26184--- linux-2.6.32.21/drivers/message/fusion/mptbase.c 2010-08-13 16:24:37.000000000 -0400
26185+++ linux-2.6.32.21/drivers/message/fusion/mptbase.c 2010-09-14 21:32:19.000000000 -0400
26186@@ -6709,8 +6709,14 @@ procmpt_iocinfo_read(char *buf, char **s
26187 len += sprintf(buf+len, " MaxChainDepth = 0x%02x frames\n", ioc->facts.MaxChainDepth);
26188 len += sprintf(buf+len, " MinBlockSize = 0x%02x bytes\n", 4*ioc->facts.BlockSize);
26189
26190+#ifdef CONFIG_GRKERNSEC_HIDESYM
26191+ len += sprintf(buf+len, " RequestFrames @ 0x%p (Dma @ 0x%p)\n",
26192+ NULL, NULL);
26193+#else
26194 len += sprintf(buf+len, " RequestFrames @ 0x%p (Dma @ 0x%p)\n",
26195 (void *)ioc->req_frames, (void *)(ulong)ioc->req_frames_dma);
26196+#endif
26197+
26198 /*
26199 * Rounding UP to nearest 4-kB boundary here...
26200 */
26034diff -urNp linux-2.6.32.21/drivers/message/fusion/mptdebug.h linux-2.6.32.21/drivers/message/fusion/mptdebug.h 26201diff -urNp linux-2.6.32.21/drivers/message/fusion/mptdebug.h linux-2.6.32.21/drivers/message/fusion/mptdebug.h
26035--- linux-2.6.32.21/drivers/message/fusion/mptdebug.h 2010-08-26 19:42:20.000000000 -0400 26202--- linux-2.6.32.21/drivers/message/fusion/mptdebug.h 2010-08-13 16:24:37.000000000 -0400
26036+++ linux-2.6.32.21/drivers/message/fusion/mptdebug.h 2010-09-13 08:10:10.000000000 -0400 26203+++ linux-2.6.32.21/drivers/message/fusion/mptdebug.h 2010-09-04 15:54:52.000000000 -0400
26037@@ -71,7 +71,7 @@ 26204@@ -71,7 +71,7 @@
26038 CMD; \ 26205 CMD; \
26039 } 26206 }
@@ -26044,8 +26211,8 @@ diff -urNp linux-2.6.32.21/drivers/message/fusion/mptdebug.h linux-2.6.32.21/dri
26044 26211
26045 26212
26046diff -urNp linux-2.6.32.21/drivers/message/fusion/mptsas.c linux-2.6.32.21/drivers/message/fusion/mptsas.c 26213diff -urNp linux-2.6.32.21/drivers/message/fusion/mptsas.c linux-2.6.32.21/drivers/message/fusion/mptsas.c
26047--- linux-2.6.32.21/drivers/message/fusion/mptsas.c 2010-08-26 19:42:20.000000000 -0400 26214--- linux-2.6.32.21/drivers/message/fusion/mptsas.c 2010-08-13 16:24:37.000000000 -0400
26048+++ linux-2.6.32.21/drivers/message/fusion/mptsas.c 2010-09-13 08:10:10.000000000 -0400 26215+++ linux-2.6.32.21/drivers/message/fusion/mptsas.c 2010-09-04 15:54:52.000000000 -0400
26049@@ -436,6 +436,23 @@ mptsas_is_end_device(struct mptsas_devin 26216@@ -436,6 +436,23 @@ mptsas_is_end_device(struct mptsas_devin
26050 return 0; 26217 return 0;
26051 } 26218 }
@@ -26095,8 +26262,8 @@ diff -urNp linux-2.6.32.21/drivers/message/fusion/mptsas.c linux-2.6.32.21/drive
26095 mptsas_get_port(struct mptsas_phyinfo *phy_info) 26262 mptsas_get_port(struct mptsas_phyinfo *phy_info)
26096 { 26263 {
26097diff -urNp linux-2.6.32.21/drivers/message/i2o/i2o_proc.c linux-2.6.32.21/drivers/message/i2o/i2o_proc.c 26264diff -urNp linux-2.6.32.21/drivers/message/i2o/i2o_proc.c linux-2.6.32.21/drivers/message/i2o/i2o_proc.c
26098--- linux-2.6.32.21/drivers/message/i2o/i2o_proc.c 2010-08-26 19:42:20.000000000 -0400 26265--- linux-2.6.32.21/drivers/message/i2o/i2o_proc.c 2010-08-13 16:24:37.000000000 -0400
26099+++ linux-2.6.32.21/drivers/message/i2o/i2o_proc.c 2010-09-13 08:10:10.000000000 -0400 26266+++ linux-2.6.32.21/drivers/message/i2o/i2o_proc.c 2010-09-04 15:54:52.000000000 -0400
26100@@ -259,13 +259,6 @@ static char *scsi_devices[] = { 26267@@ -259,13 +259,6 @@ static char *scsi_devices[] = {
26101 "Array Controller Device" 26268 "Array Controller Device"
26102 }; 26269 };
@@ -26184,8 +26351,8 @@ diff -urNp linux-2.6.32.21/drivers/message/i2o/i2o_proc.c linux-2.6.32.21/driver
26184 return 0; 26351 return 0;
26185 } 26352 }
26186diff -urNp linux-2.6.32.21/drivers/misc/kgdbts.c linux-2.6.32.21/drivers/misc/kgdbts.c 26353diff -urNp linux-2.6.32.21/drivers/misc/kgdbts.c linux-2.6.32.21/drivers/misc/kgdbts.c
26187--- linux-2.6.32.21/drivers/misc/kgdbts.c 2010-08-26 19:42:20.000000000 -0400 26354--- linux-2.6.32.21/drivers/misc/kgdbts.c 2010-08-13 16:24:37.000000000 -0400
26188+++ linux-2.6.32.21/drivers/misc/kgdbts.c 2010-09-13 08:10:10.000000000 -0400 26355+++ linux-2.6.32.21/drivers/misc/kgdbts.c 2010-09-04 15:54:52.000000000 -0400
26189@@ -118,7 +118,7 @@ 26356@@ -118,7 +118,7 @@
26190 } while (0) 26357 } while (0)
26191 #define MAX_CONFIG_LEN 40 26358 #define MAX_CONFIG_LEN 40
@@ -26205,8 +26372,8 @@ diff -urNp linux-2.6.32.21/drivers/misc/kgdbts.c linux-2.6.32.21/drivers/misc/kg
26205 .read_char = kgdbts_get_char, 26372 .read_char = kgdbts_get_char,
26206 .write_char = kgdbts_put_char, 26373 .write_char = kgdbts_put_char,
26207diff -urNp linux-2.6.32.21/drivers/misc/sgi-gru/gruhandles.c linux-2.6.32.21/drivers/misc/sgi-gru/gruhandles.c 26374diff -urNp linux-2.6.32.21/drivers/misc/sgi-gru/gruhandles.c linux-2.6.32.21/drivers/misc/sgi-gru/gruhandles.c
26208--- linux-2.6.32.21/drivers/misc/sgi-gru/gruhandles.c 2010-08-26 19:42:20.000000000 -0400 26375--- linux-2.6.32.21/drivers/misc/sgi-gru/gruhandles.c 2010-08-13 16:24:37.000000000 -0400
26209+++ linux-2.6.32.21/drivers/misc/sgi-gru/gruhandles.c 2010-09-13 08:10:10.000000000 -0400 26376+++ linux-2.6.32.21/drivers/misc/sgi-gru/gruhandles.c 2010-09-04 15:54:52.000000000 -0400
26210@@ -39,8 +39,8 @@ struct mcs_op_statistic mcs_op_statistic 26377@@ -39,8 +39,8 @@ struct mcs_op_statistic mcs_op_statistic
26211 26378
26212 static void update_mcs_stats(enum mcs_op op, unsigned long clks) 26379 static void update_mcs_stats(enum mcs_op op, unsigned long clks)
@@ -26219,8 +26386,8 @@ diff -urNp linux-2.6.32.21/drivers/misc/sgi-gru/gruhandles.c linux-2.6.32.21/dri
26219 mcs_op_statistics[op].max = clks; 26386 mcs_op_statistics[op].max = clks;
26220 } 26387 }
26221diff -urNp linux-2.6.32.21/drivers/misc/sgi-gru/gruprocfs.c linux-2.6.32.21/drivers/misc/sgi-gru/gruprocfs.c 26388diff -urNp linux-2.6.32.21/drivers/misc/sgi-gru/gruprocfs.c linux-2.6.32.21/drivers/misc/sgi-gru/gruprocfs.c
26222--- linux-2.6.32.21/drivers/misc/sgi-gru/gruprocfs.c 2010-08-26 19:42:20.000000000 -0400 26389--- linux-2.6.32.21/drivers/misc/sgi-gru/gruprocfs.c 2010-08-13 16:24:37.000000000 -0400
26223+++ linux-2.6.32.21/drivers/misc/sgi-gru/gruprocfs.c 2010-09-13 08:10:10.000000000 -0400 26390+++ linux-2.6.32.21/drivers/misc/sgi-gru/gruprocfs.c 2010-09-04 15:54:52.000000000 -0400
26224@@ -32,9 +32,9 @@ 26391@@ -32,9 +32,9 @@
26225 26392
26226 #define printstat(s, f) printstat_val(s, &gru_stats.f, #f) 26393 #define printstat(s, f) printstat_val(s, &gru_stats.f, #f)
@@ -26245,8 +26412,8 @@ diff -urNp linux-2.6.32.21/drivers/misc/sgi-gru/gruprocfs.c linux-2.6.32.21/driv
26245 seq_printf(s, "%-20s%12ld%12ld%12ld\n", id[op], count, 26412 seq_printf(s, "%-20s%12ld%12ld%12ld\n", id[op], count,
26246 count ? total / count : 0, max); 26413 count ? total / count : 0, max);
26247diff -urNp linux-2.6.32.21/drivers/misc/sgi-gru/grutables.h linux-2.6.32.21/drivers/misc/sgi-gru/grutables.h 26414diff -urNp linux-2.6.32.21/drivers/misc/sgi-gru/grutables.h linux-2.6.32.21/drivers/misc/sgi-gru/grutables.h
26248--- linux-2.6.32.21/drivers/misc/sgi-gru/grutables.h 2010-08-26 19:42:20.000000000 -0400 26415--- linux-2.6.32.21/drivers/misc/sgi-gru/grutables.h 2010-08-13 16:24:37.000000000 -0400
26249+++ linux-2.6.32.21/drivers/misc/sgi-gru/grutables.h 2010-09-13 08:10:10.000000000 -0400 26416+++ linux-2.6.32.21/drivers/misc/sgi-gru/grutables.h 2010-09-04 15:54:52.000000000 -0400
26250@@ -167,84 +167,84 @@ extern unsigned int gru_max_gids; 26417@@ -167,84 +167,84 @@ extern unsigned int gru_max_gids;
26251 * GRU statistics. 26418 * GRU statistics.
26252 */ 26419 */
@@ -26431,8 +26598,8 @@ diff -urNp linux-2.6.32.21/drivers/misc/sgi-gru/grutables.h linux-2.6.32.21/driv
26431 26598
26432 #ifdef CONFIG_SGI_GRU_DEBUG 26599 #ifdef CONFIG_SGI_GRU_DEBUG
26433diff -urNp linux-2.6.32.21/drivers/mtd/devices/doc2000.c linux-2.6.32.21/drivers/mtd/devices/doc2000.c 26600diff -urNp linux-2.6.32.21/drivers/mtd/devices/doc2000.c linux-2.6.32.21/drivers/mtd/devices/doc2000.c
26434--- linux-2.6.32.21/drivers/mtd/devices/doc2000.c 2010-08-26 19:42:20.000000000 -0400 26601--- linux-2.6.32.21/drivers/mtd/devices/doc2000.c 2010-08-13 16:24:37.000000000 -0400
26435+++ linux-2.6.32.21/drivers/mtd/devices/doc2000.c 2010-09-13 08:10:10.000000000 -0400 26602+++ linux-2.6.32.21/drivers/mtd/devices/doc2000.c 2010-09-04 15:54:52.000000000 -0400
26436@@ -776,7 +776,7 @@ static int doc_write(struct mtd_info *mt 26603@@ -776,7 +776,7 @@ static int doc_write(struct mtd_info *mt
26437 26604
26438 /* The ECC will not be calculated correctly if less than 512 is written */ 26605 /* The ECC will not be calculated correctly if less than 512 is written */
@@ -26443,8 +26610,8 @@ diff -urNp linux-2.6.32.21/drivers/mtd/devices/doc2000.c linux-2.6.32.21/drivers
26443 "ECC needs a full sector write (adr: %lx size %lx)\n", 26610 "ECC needs a full sector write (adr: %lx size %lx)\n",
26444 (long) to, (long) len); 26611 (long) to, (long) len);
26445diff -urNp linux-2.6.32.21/drivers/mtd/devices/doc2001.c linux-2.6.32.21/drivers/mtd/devices/doc2001.c 26612diff -urNp linux-2.6.32.21/drivers/mtd/devices/doc2001.c linux-2.6.32.21/drivers/mtd/devices/doc2001.c
26446--- linux-2.6.32.21/drivers/mtd/devices/doc2001.c 2010-08-26 19:42:20.000000000 -0400 26613--- linux-2.6.32.21/drivers/mtd/devices/doc2001.c 2010-08-13 16:24:37.000000000 -0400
26447+++ linux-2.6.32.21/drivers/mtd/devices/doc2001.c 2010-09-13 08:10:10.000000000 -0400 26614+++ linux-2.6.32.21/drivers/mtd/devices/doc2001.c 2010-09-04 15:54:52.000000000 -0400
26448@@ -393,7 +393,7 @@ static int doc_read (struct mtd_info *mt 26615@@ -393,7 +393,7 @@ static int doc_read (struct mtd_info *mt
26449 struct Nand *mychip = &this->chips[from >> (this->chipshift)]; 26616 struct Nand *mychip = &this->chips[from >> (this->chipshift)];
26450 26617
@@ -26455,8 +26622,8 @@ diff -urNp linux-2.6.32.21/drivers/mtd/devices/doc2001.c linux-2.6.32.21/drivers
26455 26622
26456 /* Don't allow a single read to cross a 512-byte block boundary */ 26623 /* Don't allow a single read to cross a 512-byte block boundary */
26457diff -urNp linux-2.6.32.21/drivers/mtd/ubi/build.c linux-2.6.32.21/drivers/mtd/ubi/build.c 26624diff -urNp linux-2.6.32.21/drivers/mtd/ubi/build.c linux-2.6.32.21/drivers/mtd/ubi/build.c
26458--- linux-2.6.32.21/drivers/mtd/ubi/build.c 2010-08-26 19:42:20.000000000 -0400 26625--- linux-2.6.32.21/drivers/mtd/ubi/build.c 2010-08-13 16:24:37.000000000 -0400
26459+++ linux-2.6.32.21/drivers/mtd/ubi/build.c 2010-09-13 08:10:10.000000000 -0400 26626+++ linux-2.6.32.21/drivers/mtd/ubi/build.c 2010-09-04 15:54:52.000000000 -0400
26460@@ -1255,7 +1255,7 @@ module_exit(ubi_exit); 26627@@ -1255,7 +1255,7 @@ module_exit(ubi_exit);
26461 static int __init bytes_str_to_int(const char *str) 26628 static int __init bytes_str_to_int(const char *str)
26462 { 26629 {
@@ -26496,9 +26663,21 @@ diff -urNp linux-2.6.32.21/drivers/mtd/ubi/build.c linux-2.6.32.21/drivers/mtd/u
26496 } 26663 }
26497 26664
26498 /** 26665 /**
26666diff -urNp linux-2.6.32.21/drivers/net/cxgb3/cxgb3_main.c linux-2.6.32.21/drivers/net/cxgb3/cxgb3_main.c
26667--- linux-2.6.32.21/drivers/net/cxgb3/cxgb3_main.c 2010-08-13 16:24:37.000000000 -0400
26668+++ linux-2.6.32.21/drivers/net/cxgb3/cxgb3_main.c 2010-09-16 14:27:30.000000000 -0400
26669@@ -2274,6 +2274,8 @@ static int cxgb_extension_ioctl(struct n
26670 case CHELSIO_GET_QSET_NUM:{
26671 struct ch_reg edata;
26672
26673+ memset(&edata, 0, sizeof(edata));
26674+
26675 edata.cmd = CHELSIO_GET_QSET_NUM;
26676 edata.val = pi->nqsets;
26677 if (copy_to_user(useraddr, &edata, sizeof(edata)))
26499diff -urNp linux-2.6.32.21/drivers/net/e1000e/82571.c linux-2.6.32.21/drivers/net/e1000e/82571.c 26678diff -urNp linux-2.6.32.21/drivers/net/e1000e/82571.c linux-2.6.32.21/drivers/net/e1000e/82571.c
26500--- linux-2.6.32.21/drivers/net/e1000e/82571.c 2010-08-26 19:42:20.000000000 -0400 26679--- linux-2.6.32.21/drivers/net/e1000e/82571.c 2010-08-13 16:24:37.000000000 -0400
26501+++ linux-2.6.32.21/drivers/net/e1000e/82571.c 2010-09-13 08:10:10.000000000 -0400 26680+++ linux-2.6.32.21/drivers/net/e1000e/82571.c 2010-09-04 15:54:52.000000000 -0400
26502@@ -212,6 +212,7 @@ static s32 e1000_init_mac_params_82571(s 26681@@ -212,6 +212,7 @@ static s32 e1000_init_mac_params_82571(s
26503 { 26682 {
26504 struct e1000_hw *hw = &adapter->hw; 26683 struct e1000_hw *hw = &adapter->hw;
@@ -26553,8 +26732,8 @@ diff -urNp linux-2.6.32.21/drivers/net/e1000e/82571.c linux-2.6.32.21/drivers/ne
26553 .read_nvm = e1000e_read_nvm_eerd, 26732 .read_nvm = e1000e_read_nvm_eerd,
26554 .release_nvm = e1000_release_nvm_82571, 26733 .release_nvm = e1000_release_nvm_82571,
26555diff -urNp linux-2.6.32.21/drivers/net/e1000e/e1000.h linux-2.6.32.21/drivers/net/e1000e/e1000.h 26734diff -urNp linux-2.6.32.21/drivers/net/e1000e/e1000.h linux-2.6.32.21/drivers/net/e1000e/e1000.h
26556--- linux-2.6.32.21/drivers/net/e1000e/e1000.h 2010-08-26 19:42:20.000000000 -0400 26735--- linux-2.6.32.21/drivers/net/e1000e/e1000.h 2010-08-13 16:24:37.000000000 -0400
26557+++ linux-2.6.32.21/drivers/net/e1000e/e1000.h 2010-09-13 08:10:10.000000000 -0400 26736+++ linux-2.6.32.21/drivers/net/e1000e/e1000.h 2010-09-04 15:54:52.000000000 -0400
26558@@ -375,9 +375,9 @@ struct e1000_info { 26737@@ -375,9 +375,9 @@ struct e1000_info {
26559 u32 pba; 26738 u32 pba;
26560 u32 max_hw_frame_size; 26739 u32 max_hw_frame_size;
@@ -26569,8 +26748,8 @@ diff -urNp linux-2.6.32.21/drivers/net/e1000e/e1000.h linux-2.6.32.21/drivers/ne
26569 26748
26570 /* hardware capability, feature, and workaround flags */ 26749 /* hardware capability, feature, and workaround flags */
26571diff -urNp linux-2.6.32.21/drivers/net/e1000e/es2lan.c linux-2.6.32.21/drivers/net/e1000e/es2lan.c 26750diff -urNp linux-2.6.32.21/drivers/net/e1000e/es2lan.c linux-2.6.32.21/drivers/net/e1000e/es2lan.c
26572--- linux-2.6.32.21/drivers/net/e1000e/es2lan.c 2010-08-26 19:42:20.000000000 -0400 26751--- linux-2.6.32.21/drivers/net/e1000e/es2lan.c 2010-08-13 16:24:37.000000000 -0400
26573+++ linux-2.6.32.21/drivers/net/e1000e/es2lan.c 2010-09-13 08:10:10.000000000 -0400 26752+++ linux-2.6.32.21/drivers/net/e1000e/es2lan.c 2010-09-04 15:54:52.000000000 -0400
26574@@ -207,6 +207,7 @@ static s32 e1000_init_mac_params_80003es 26753@@ -207,6 +207,7 @@ static s32 e1000_init_mac_params_80003es
26575 { 26754 {
26576 struct e1000_hw *hw = &adapter->hw; 26755 struct e1000_hw *hw = &adapter->hw;
@@ -26607,8 +26786,8 @@ diff -urNp linux-2.6.32.21/drivers/net/e1000e/es2lan.c linux-2.6.32.21/drivers/n
26607 .read_nvm = e1000e_read_nvm_eerd, 26786 .read_nvm = e1000e_read_nvm_eerd,
26608 .release_nvm = e1000_release_nvm_80003es2lan, 26787 .release_nvm = e1000_release_nvm_80003es2lan,
26609diff -urNp linux-2.6.32.21/drivers/net/e1000e/hw.h linux-2.6.32.21/drivers/net/e1000e/hw.h 26788diff -urNp linux-2.6.32.21/drivers/net/e1000e/hw.h linux-2.6.32.21/drivers/net/e1000e/hw.h
26610--- linux-2.6.32.21/drivers/net/e1000e/hw.h 2010-08-26 19:42:20.000000000 -0400 26789--- linux-2.6.32.21/drivers/net/e1000e/hw.h 2010-08-13 16:24:37.000000000 -0400
26611+++ linux-2.6.32.21/drivers/net/e1000e/hw.h 2010-09-13 08:10:10.000000000 -0400 26790+++ linux-2.6.32.21/drivers/net/e1000e/hw.h 2010-09-04 15:54:52.000000000 -0400
26612@@ -756,34 +756,34 @@ struct e1000_mac_operations { 26791@@ -756,34 +756,34 @@ struct e1000_mac_operations {
26613 26792
26614 /* Function pointers for the PHY. */ 26793 /* Function pointers for the PHY. */
@@ -26669,8 +26848,8 @@ diff -urNp linux-2.6.32.21/drivers/net/e1000e/hw.h linux-2.6.32.21/drivers/net/e
26669 26848
26670 struct e1000_mac_info { 26849 struct e1000_mac_info {
26671diff -urNp linux-2.6.32.21/drivers/net/e1000e/ich8lan.c linux-2.6.32.21/drivers/net/e1000e/ich8lan.c 26850diff -urNp linux-2.6.32.21/drivers/net/e1000e/ich8lan.c linux-2.6.32.21/drivers/net/e1000e/ich8lan.c
26672--- linux-2.6.32.21/drivers/net/e1000e/ich8lan.c 2010-08-26 19:42:20.000000000 -0400 26851--- linux-2.6.32.21/drivers/net/e1000e/ich8lan.c 2010-08-13 16:24:37.000000000 -0400
26673+++ linux-2.6.32.21/drivers/net/e1000e/ich8lan.c 2010-09-13 08:10:10.000000000 -0400 26852+++ linux-2.6.32.21/drivers/net/e1000e/ich8lan.c 2010-09-04 15:54:52.000000000 -0400
26674@@ -3452,7 +3452,7 @@ static void e1000_clear_hw_cntrs_ich8lan 26853@@ -3452,7 +3452,7 @@ static void e1000_clear_hw_cntrs_ich8lan
26675 } 26854 }
26676 } 26855 }
@@ -26698,9 +26877,21 @@ diff -urNp linux-2.6.32.21/drivers/net/e1000e/ich8lan.c linux-2.6.32.21/drivers/
26698 .acquire_nvm = e1000_acquire_nvm_ich8lan, 26877 .acquire_nvm = e1000_acquire_nvm_ich8lan,
26699 .read_nvm = e1000_read_nvm_ich8lan, 26878 .read_nvm = e1000_read_nvm_ich8lan,
26700 .release_nvm = e1000_release_nvm_ich8lan, 26879 .release_nvm = e1000_release_nvm_ich8lan,
26880diff -urNp linux-2.6.32.21/drivers/net/eql.c linux-2.6.32.21/drivers/net/eql.c
26881--- linux-2.6.32.21/drivers/net/eql.c 2010-08-13 16:24:37.000000000 -0400
26882+++ linux-2.6.32.21/drivers/net/eql.c 2010-09-16 14:28:21.000000000 -0400
26883@@ -554,6 +554,8 @@ static int eql_g_master_cfg(struct net_d
26884 equalizer_t *eql;
26885 master_config_t mc;
26886
26887+ memset(&mc, 0, sizeof(mc));
26888+
26889 if (eql_is_master(dev)) {
26890 eql = netdev_priv(dev);
26891 mc.max_slaves = eql->max_slaves;
26701diff -urNp linux-2.6.32.21/drivers/net/ibmveth.c linux-2.6.32.21/drivers/net/ibmveth.c 26892diff -urNp linux-2.6.32.21/drivers/net/ibmveth.c linux-2.6.32.21/drivers/net/ibmveth.c
26702--- linux-2.6.32.21/drivers/net/ibmveth.c 2010-08-26 19:42:20.000000000 -0400 26893--- linux-2.6.32.21/drivers/net/ibmveth.c 2010-08-13 16:24:37.000000000 -0400
26703+++ linux-2.6.32.21/drivers/net/ibmveth.c 2010-09-13 08:10:10.000000000 -0400 26894+++ linux-2.6.32.21/drivers/net/ibmveth.c 2010-09-04 15:54:52.000000000 -0400
26704@@ -1577,7 +1577,7 @@ static struct attribute * veth_pool_attr 26895@@ -1577,7 +1577,7 @@ static struct attribute * veth_pool_attr
26705 NULL, 26896 NULL,
26706 }; 26897 };
@@ -26711,8 +26902,8 @@ diff -urNp linux-2.6.32.21/drivers/net/ibmveth.c linux-2.6.32.21/drivers/net/ibm
26711 .store = veth_pool_store, 26902 .store = veth_pool_store,
26712 }; 26903 };
26713diff -urNp linux-2.6.32.21/drivers/net/igb/e1000_82575.c linux-2.6.32.21/drivers/net/igb/e1000_82575.c 26904diff -urNp linux-2.6.32.21/drivers/net/igb/e1000_82575.c linux-2.6.32.21/drivers/net/igb/e1000_82575.c
26714--- linux-2.6.32.21/drivers/net/igb/e1000_82575.c 2010-08-26 19:42:20.000000000 -0400 26905--- linux-2.6.32.21/drivers/net/igb/e1000_82575.c 2010-08-13 16:24:37.000000000 -0400
26715+++ linux-2.6.32.21/drivers/net/igb/e1000_82575.c 2010-09-13 08:10:10.000000000 -0400 26906+++ linux-2.6.32.21/drivers/net/igb/e1000_82575.c 2010-09-04 15:54:52.000000000 -0400
26716@@ -1410,7 +1410,7 @@ void igb_vmdq_set_replication_pf(struct 26907@@ -1410,7 +1410,7 @@ void igb_vmdq_set_replication_pf(struct
26717 wr32(E1000_VT_CTL, vt_ctl); 26908 wr32(E1000_VT_CTL, vt_ctl);
26718 } 26909 }
@@ -26739,8 +26930,8 @@ diff -urNp linux-2.6.32.21/drivers/net/igb/e1000_82575.c linux-2.6.32.21/drivers
26739 .read = igb_read_nvm_eerd, 26930 .read = igb_read_nvm_eerd,
26740 .release = igb_release_nvm_82575, 26931 .release = igb_release_nvm_82575,
26741diff -urNp linux-2.6.32.21/drivers/net/igb/e1000_hw.h linux-2.6.32.21/drivers/net/igb/e1000_hw.h 26932diff -urNp linux-2.6.32.21/drivers/net/igb/e1000_hw.h linux-2.6.32.21/drivers/net/igb/e1000_hw.h
26742--- linux-2.6.32.21/drivers/net/igb/e1000_hw.h 2010-08-26 19:42:20.000000000 -0400 26933--- linux-2.6.32.21/drivers/net/igb/e1000_hw.h 2010-08-13 16:24:37.000000000 -0400
26743+++ linux-2.6.32.21/drivers/net/igb/e1000_hw.h 2010-09-13 08:10:10.000000000 -0400 26934+++ linux-2.6.32.21/drivers/net/igb/e1000_hw.h 2010-09-04 15:54:52.000000000 -0400
26744@@ -305,17 +305,17 @@ struct e1000_phy_operations { 26935@@ -305,17 +305,17 @@ struct e1000_phy_operations {
26745 }; 26936 };
26746 26937
@@ -26767,8 +26958,8 @@ diff -urNp linux-2.6.32.21/drivers/net/igb/e1000_hw.h linux-2.6.32.21/drivers/ne
26767 26958
26768 extern const struct e1000_info e1000_82575_info; 26959 extern const struct e1000_info e1000_82575_info;
26769diff -urNp linux-2.6.32.21/drivers/net/irda/vlsi_ir.c linux-2.6.32.21/drivers/net/irda/vlsi_ir.c 26960diff -urNp linux-2.6.32.21/drivers/net/irda/vlsi_ir.c linux-2.6.32.21/drivers/net/irda/vlsi_ir.c
26770--- linux-2.6.32.21/drivers/net/irda/vlsi_ir.c 2010-08-26 19:42:20.000000000 -0400 26961--- linux-2.6.32.21/drivers/net/irda/vlsi_ir.c 2010-08-13 16:24:37.000000000 -0400
26771+++ linux-2.6.32.21/drivers/net/irda/vlsi_ir.c 2010-09-13 08:10:10.000000000 -0400 26962+++ linux-2.6.32.21/drivers/net/irda/vlsi_ir.c 2010-09-04 15:54:52.000000000 -0400
26772@@ -907,13 +907,12 @@ static netdev_tx_t vlsi_hard_start_xmit( 26963@@ -907,13 +907,12 @@ static netdev_tx_t vlsi_hard_start_xmit(
26773 /* no race - tx-ring already empty */ 26964 /* no race - tx-ring already empty */
26774 vlsi_set_baud(idev, iobase); 26965 vlsi_set_baud(idev, iobase);
@@ -26786,8 +26977,8 @@ diff -urNp linux-2.6.32.21/drivers/net/irda/vlsi_ir.c linux-2.6.32.21/drivers/ne
26786 dev_kfree_skb_any(skb); 26977 dev_kfree_skb_any(skb);
26787 return NETDEV_TX_OK; 26978 return NETDEV_TX_OK;
26788diff -urNp linux-2.6.32.21/drivers/net/iseries_veth.c linux-2.6.32.21/drivers/net/iseries_veth.c 26979diff -urNp linux-2.6.32.21/drivers/net/iseries_veth.c linux-2.6.32.21/drivers/net/iseries_veth.c
26789--- linux-2.6.32.21/drivers/net/iseries_veth.c 2010-08-26 19:42:20.000000000 -0400 26980--- linux-2.6.32.21/drivers/net/iseries_veth.c 2010-08-13 16:24:37.000000000 -0400
26790+++ linux-2.6.32.21/drivers/net/iseries_veth.c 2010-09-13 08:10:10.000000000 -0400 26981+++ linux-2.6.32.21/drivers/net/iseries_veth.c 2010-09-04 15:54:52.000000000 -0400
26791@@ -384,7 +384,7 @@ static struct attribute *veth_cnx_defaul 26982@@ -384,7 +384,7 @@ static struct attribute *veth_cnx_defaul
26792 NULL 26983 NULL
26793 }; 26984 };
@@ -26807,8 +26998,8 @@ diff -urNp linux-2.6.32.21/drivers/net/iseries_veth.c linux-2.6.32.21/drivers/ne
26807 }; 26998 };
26808 26999
26809diff -urNp linux-2.6.32.21/drivers/net/pcnet32.c linux-2.6.32.21/drivers/net/pcnet32.c 27000diff -urNp linux-2.6.32.21/drivers/net/pcnet32.c linux-2.6.32.21/drivers/net/pcnet32.c
26810--- linux-2.6.32.21/drivers/net/pcnet32.c 2010-08-26 19:42:20.000000000 -0400 27001--- linux-2.6.32.21/drivers/net/pcnet32.c 2010-08-13 16:24:37.000000000 -0400
26811+++ linux-2.6.32.21/drivers/net/pcnet32.c 2010-09-13 08:10:10.000000000 -0400 27002+++ linux-2.6.32.21/drivers/net/pcnet32.c 2010-09-04 15:54:52.000000000 -0400
26812@@ -79,7 +79,7 @@ static int cards_found; 27003@@ -79,7 +79,7 @@ static int cards_found;
26813 /* 27004 /*
26814 * VLB I/O addresses 27005 * VLB I/O addresses
@@ -26819,8 +27010,8 @@ diff -urNp linux-2.6.32.21/drivers/net/pcnet32.c linux-2.6.32.21/drivers/net/pcn
26819 27010
26820 static int pcnet32_debug = 0; 27011 static int pcnet32_debug = 0;
26821diff -urNp linux-2.6.32.21/drivers/net/tg3.h linux-2.6.32.21/drivers/net/tg3.h 27012diff -urNp linux-2.6.32.21/drivers/net/tg3.h linux-2.6.32.21/drivers/net/tg3.h
26822--- linux-2.6.32.21/drivers/net/tg3.h 2010-08-26 19:42:20.000000000 -0400 27013--- linux-2.6.32.21/drivers/net/tg3.h 2010-08-13 16:24:37.000000000 -0400
26823+++ linux-2.6.32.21/drivers/net/tg3.h 2010-09-13 08:10:10.000000000 -0400 27014+++ linux-2.6.32.21/drivers/net/tg3.h 2010-09-04 15:54:52.000000000 -0400
26824@@ -95,6 +95,7 @@ 27015@@ -95,6 +95,7 @@
26825 #define CHIPREV_ID_5750_A0 0x4000 27016 #define CHIPREV_ID_5750_A0 0x4000
26826 #define CHIPREV_ID_5750_A1 0x4001 27017 #define CHIPREV_ID_5750_A1 0x4001
@@ -26830,8 +27021,8 @@ diff -urNp linux-2.6.32.21/drivers/net/tg3.h linux-2.6.32.21/drivers/net/tg3.h
26830 #define CHIPREV_ID_5752_A0_HW 0x5000 27021 #define CHIPREV_ID_5752_A0_HW 0x5000
26831 #define CHIPREV_ID_5752_A0 0x6000 27022 #define CHIPREV_ID_5752_A0 0x6000
26832diff -urNp linux-2.6.32.21/drivers/net/tulip/de4x5.c linux-2.6.32.21/drivers/net/tulip/de4x5.c 27023diff -urNp linux-2.6.32.21/drivers/net/tulip/de4x5.c linux-2.6.32.21/drivers/net/tulip/de4x5.c
26833--- linux-2.6.32.21/drivers/net/tulip/de4x5.c 2010-08-26 19:42:20.000000000 -0400 27024--- linux-2.6.32.21/drivers/net/tulip/de4x5.c 2010-08-13 16:24:37.000000000 -0400
26834+++ linux-2.6.32.21/drivers/net/tulip/de4x5.c 2010-09-13 08:10:10.000000000 -0400 27025+++ linux-2.6.32.21/drivers/net/tulip/de4x5.c 2010-09-16 14:26:16.000000000 -0400
26835@@ -5472,7 +5472,7 @@ de4x5_ioctl(struct net_device *dev, stru 27026@@ -5472,7 +5472,7 @@ de4x5_ioctl(struct net_device *dev, stru
26836 for (i=0; i<ETH_ALEN; i++) { 27027 for (i=0; i<ETH_ALEN; i++) {
26837 tmp.addr[i] = dev->dev_addr[i]; 27028 tmp.addr[i] = dev->dev_addr[i];
@@ -26850,9 +27041,18 @@ diff -urNp linux-2.6.32.21/drivers/net/tulip/de4x5.c linux-2.6.32.21/drivers/net
26850 return -EFAULT; 27041 return -EFAULT;
26851 break; 27042 break;
26852 } 27043 }
27044@@ -5545,7 +5545,7 @@ de4x5_ioctl(struct net_device *dev, stru
27045 tmp.lval[6] = inl(DE4X5_STRR); j+=4;
27046 tmp.lval[7] = inl(DE4X5_SIGR); j+=4;
27047 ioc->len = j;
27048- if (copy_to_user(ioc->data, tmp.addr, ioc->len)) return -EFAULT;
27049+ if (copy_to_user(ioc->data, tmp.lval, ioc->len)) return -EFAULT;
27050 break;
27051
27052 #define DE4X5_DUMP 0x0f /* Dump the DE4X5 Status */
26853diff -urNp linux-2.6.32.21/drivers/net/usb/hso.c linux-2.6.32.21/drivers/net/usb/hso.c 27053diff -urNp linux-2.6.32.21/drivers/net/usb/hso.c linux-2.6.32.21/drivers/net/usb/hso.c
26854--- linux-2.6.32.21/drivers/net/usb/hso.c 2010-08-26 19:42:20.000000000 -0400 27054--- linux-2.6.32.21/drivers/net/usb/hso.c 2010-08-13 16:24:37.000000000 -0400
26855+++ linux-2.6.32.21/drivers/net/usb/hso.c 2010-09-13 08:10:10.000000000 -0400 27055+++ linux-2.6.32.21/drivers/net/usb/hso.c 2010-09-16 14:33:14.000000000 -0400
26856@@ -258,7 +258,7 @@ struct hso_serial { 27056@@ -258,7 +258,7 @@ struct hso_serial {
26857 27057
26858 /* from usb_serial_port */ 27058 /* from usb_serial_port */
@@ -26922,7 +27122,17 @@ diff -urNp linux-2.6.32.21/drivers/net/usb/hso.c linux-2.6.32.21/drivers/net/usb
26922 _hso_serial_set_termios(tty, old); 27122 _hso_serial_set_termios(tty, old);
26923 else 27123 else
26924 tty->termios = old; 27124 tty->termios = old;
26925@@ -3095,7 +3094,7 @@ static int hso_resume(struct usb_interfa 27125@@ -1636,6 +1635,9 @@ static int hso_get_count(struct hso_seri
27126
27127 if (!tiocmget)
27128 return -ENOENT;
27129+
27130+ memset(&icount, 0, sizeof(icount));
27131+
27132 spin_lock_irq(&serial->serial_lock);
27133 memcpy(&cnow, &tiocmget->icount, sizeof(struct uart_icount));
27134 spin_unlock_irq(&serial->serial_lock);
27135@@ -3095,7 +3097,7 @@ static int hso_resume(struct usb_interfa
26926 /* Start all serial ports */ 27136 /* Start all serial ports */
26927 for (i = 0; i < HSO_SERIAL_TTY_MINORS; i++) { 27137 for (i = 0; i < HSO_SERIAL_TTY_MINORS; i++) {
26928 if (serial_table[i] && (serial_table[i]->interface == iface)) { 27138 if (serial_table[i] && (serial_table[i]->interface == iface)) {
@@ -26932,8 +27142,8 @@ diff -urNp linux-2.6.32.21/drivers/net/usb/hso.c linux-2.6.32.21/drivers/net/usb
26932 hso_start_serial_device(serial_table[i], GFP_NOIO); 27142 hso_start_serial_device(serial_table[i], GFP_NOIO);
26933 hso_kick_transmit(dev2ser(serial_table[i])); 27143 hso_kick_transmit(dev2ser(serial_table[i]));
26934diff -urNp linux-2.6.32.21/drivers/net/wireless/b43/debugfs.c linux-2.6.32.21/drivers/net/wireless/b43/debugfs.c 27144diff -urNp linux-2.6.32.21/drivers/net/wireless/b43/debugfs.c linux-2.6.32.21/drivers/net/wireless/b43/debugfs.c
26935--- linux-2.6.32.21/drivers/net/wireless/b43/debugfs.c 2010-08-26 19:42:20.000000000 -0400 27145--- linux-2.6.32.21/drivers/net/wireless/b43/debugfs.c 2010-08-13 16:24:37.000000000 -0400
26936+++ linux-2.6.32.21/drivers/net/wireless/b43/debugfs.c 2010-09-13 08:10:10.000000000 -0400 27146+++ linux-2.6.32.21/drivers/net/wireless/b43/debugfs.c 2010-09-04 15:54:52.000000000 -0400
26937@@ -43,7 +43,7 @@ static struct dentry *rootdir; 27147@@ -43,7 +43,7 @@ static struct dentry *rootdir;
26938 struct b43_debugfs_fops { 27148 struct b43_debugfs_fops {
26939 ssize_t (*read)(struct b43_wldev *dev, char *buf, size_t bufsize); 27149 ssize_t (*read)(struct b43_wldev *dev, char *buf, size_t bufsize);
@@ -26944,8 +27154,8 @@ diff -urNp linux-2.6.32.21/drivers/net/wireless/b43/debugfs.c linux-2.6.32.21/dr
26944 size_t file_struct_offset; 27154 size_t file_struct_offset;
26945 }; 27155 };
26946diff -urNp linux-2.6.32.21/drivers/net/wireless/b43legacy/debugfs.c linux-2.6.32.21/drivers/net/wireless/b43legacy/debugfs.c 27156diff -urNp linux-2.6.32.21/drivers/net/wireless/b43legacy/debugfs.c linux-2.6.32.21/drivers/net/wireless/b43legacy/debugfs.c
26947--- linux-2.6.32.21/drivers/net/wireless/b43legacy/debugfs.c 2010-08-26 19:42:20.000000000 -0400 27157--- linux-2.6.32.21/drivers/net/wireless/b43legacy/debugfs.c 2010-08-13 16:24:37.000000000 -0400
26948+++ linux-2.6.32.21/drivers/net/wireless/b43legacy/debugfs.c 2010-09-13 08:10:10.000000000 -0400 27158+++ linux-2.6.32.21/drivers/net/wireless/b43legacy/debugfs.c 2010-09-04 15:54:52.000000000 -0400
26949@@ -44,7 +44,7 @@ static struct dentry *rootdir; 27159@@ -44,7 +44,7 @@ static struct dentry *rootdir;
26950 struct b43legacy_debugfs_fops { 27160 struct b43legacy_debugfs_fops {
26951 ssize_t (*read)(struct b43legacy_wldev *dev, char *buf, size_t bufsize); 27161 ssize_t (*read)(struct b43legacy_wldev *dev, char *buf, size_t bufsize);
@@ -26956,8 +27166,8 @@ diff -urNp linux-2.6.32.21/drivers/net/wireless/b43legacy/debugfs.c linux-2.6.32
26956 size_t file_struct_offset; 27166 size_t file_struct_offset;
26957 /* Take wl->irq_lock before calling read/write? */ 27167 /* Take wl->irq_lock before calling read/write? */
26958diff -urNp linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-1000.c linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-1000.c 27168diff -urNp linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-1000.c linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-1000.c
26959--- linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-1000.c 2010-08-26 19:42:20.000000000 -0400 27169--- linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-1000.c 2010-08-13 16:24:37.000000000 -0400
26960+++ linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-1000.c 2010-09-13 08:10:10.000000000 -0400 27170+++ linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-1000.c 2010-09-04 15:54:52.000000000 -0400
26961@@ -137,7 +137,7 @@ static struct iwl_lib_ops iwl1000_lib = 27171@@ -137,7 +137,7 @@ static struct iwl_lib_ops iwl1000_lib =
26962 }, 27172 },
26963 }; 27173 };
@@ -26968,8 +27178,8 @@ diff -urNp linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-1000.c linux-2.6.32.
26968 .lib = &iwl1000_lib, 27178 .lib = &iwl1000_lib,
26969 .hcmd = &iwl5000_hcmd, 27179 .hcmd = &iwl5000_hcmd,
26970diff -urNp linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-3945.c linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-3945.c 27180diff -urNp linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-3945.c linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-3945.c
26971--- linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-3945.c 2010-08-26 19:42:20.000000000 -0400 27181--- linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-3945.c 2010-08-13 16:24:37.000000000 -0400
26972+++ linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-3945.c 2010-09-13 08:10:10.000000000 -0400 27182+++ linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-3945.c 2010-09-04 15:54:52.000000000 -0400
26973@@ -2874,7 +2874,7 @@ static struct iwl_hcmd_utils_ops iwl3945 27183@@ -2874,7 +2874,7 @@ static struct iwl_hcmd_utils_ops iwl3945
26974 .build_addsta_hcmd = iwl3945_build_addsta_hcmd, 27184 .build_addsta_hcmd = iwl3945_build_addsta_hcmd,
26975 }; 27185 };
@@ -26980,8 +27190,8 @@ diff -urNp linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-3945.c linux-2.6.32.
26980 .lib = &iwl3945_lib, 27190 .lib = &iwl3945_lib,
26981 .hcmd = &iwl3945_hcmd, 27191 .hcmd = &iwl3945_hcmd,
26982diff -urNp linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-4965.c linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-4965.c 27192diff -urNp linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-4965.c linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-4965.c
26983--- linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-4965.c 2010-08-26 19:42:20.000000000 -0400 27193--- linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-4965.c 2010-08-13 16:24:37.000000000 -0400
26984+++ linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-4965.c 2010-09-13 08:10:10.000000000 -0400 27194+++ linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-4965.c 2010-09-04 15:54:52.000000000 -0400
26985@@ -2345,7 +2345,7 @@ static struct iwl_lib_ops iwl4965_lib = 27195@@ -2345,7 +2345,7 @@ static struct iwl_lib_ops iwl4965_lib =
26986 }, 27196 },
26987 }; 27197 };
@@ -26992,8 +27202,8 @@ diff -urNp linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-4965.c linux-2.6.32.
26992 .lib = &iwl4965_lib, 27202 .lib = &iwl4965_lib,
26993 .hcmd = &iwl4965_hcmd, 27203 .hcmd = &iwl4965_hcmd,
26994diff -urNp linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-5000.c linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-5000.c 27204diff -urNp linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-5000.c linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-5000.c
26995--- linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-5000.c 2010-08-26 19:42:20.000000000 -0400 27205--- linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-5000.c 2010-08-13 16:24:37.000000000 -0400
26996+++ linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-5000.c 2010-09-13 08:10:10.000000000 -0400 27206+++ linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-5000.c 2010-09-04 15:54:52.000000000 -0400
26997@@ -1633,14 +1633,14 @@ static struct iwl_lib_ops iwl5150_lib = 27207@@ -1633,14 +1633,14 @@ static struct iwl_lib_ops iwl5150_lib =
26998 }, 27208 },
26999 }; 27209 };
@@ -27012,8 +27222,8 @@ diff -urNp linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-5000.c linux-2.6.32.
27012 .lib = &iwl5150_lib, 27222 .lib = &iwl5150_lib,
27013 .hcmd = &iwl5000_hcmd, 27223 .hcmd = &iwl5000_hcmd,
27014diff -urNp linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-6000.c linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-6000.c 27224diff -urNp linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-6000.c linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-6000.c
27015--- linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-6000.c 2010-08-26 19:42:20.000000000 -0400 27225--- linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-6000.c 2010-08-13 16:24:37.000000000 -0400
27016+++ linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-6000.c 2010-09-13 08:10:10.000000000 -0400 27226+++ linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-6000.c 2010-09-04 15:54:52.000000000 -0400
27017@@ -146,7 +146,7 @@ static struct iwl_hcmd_utils_ops iwl6000 27227@@ -146,7 +146,7 @@ static struct iwl_hcmd_utils_ops iwl6000
27018 .calc_rssi = iwl5000_calc_rssi, 27228 .calc_rssi = iwl5000_calc_rssi,
27019 }; 27229 };
@@ -27024,8 +27234,8 @@ diff -urNp linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-6000.c linux-2.6.32.
27024 .lib = &iwl6000_lib, 27234 .lib = &iwl6000_lib,
27025 .hcmd = &iwl5000_hcmd, 27235 .hcmd = &iwl5000_hcmd,
27026diff -urNp linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-debug.h linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-debug.h 27236diff -urNp linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-debug.h linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-debug.h
27027--- linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-debug.h 2010-08-26 19:42:20.000000000 -0400 27237--- linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-debug.h 2010-08-13 16:24:37.000000000 -0400
27028+++ linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-debug.h 2010-09-13 08:10:10.000000000 -0400 27238+++ linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-debug.h 2010-09-04 15:54:52.000000000 -0400
27029@@ -118,8 +118,8 @@ void iwl_dbgfs_unregister(struct iwl_pri 27239@@ -118,8 +118,8 @@ void iwl_dbgfs_unregister(struct iwl_pri
27030 #endif 27240 #endif
27031 27241
@@ -27038,8 +27248,8 @@ diff -urNp linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-debug.h linux-2.6.32
27038 void *p, u32 len) 27248 void *p, u32 len)
27039 {} 27249 {}
27040diff -urNp linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-dev.h linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-dev.h 27250diff -urNp linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-dev.h linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-dev.h
27041--- linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-dev.h 2010-08-26 19:42:20.000000000 -0400 27251--- linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-dev.h 2010-08-13 16:24:37.000000000 -0400
27042+++ linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-dev.h 2010-09-13 08:10:10.000000000 -0400 27252+++ linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-dev.h 2010-09-04 15:54:52.000000000 -0400
27043@@ -68,7 +68,7 @@ struct iwl_tx_queue; 27253@@ -68,7 +68,7 @@ struct iwl_tx_queue;
27044 27254
27045 /* shared structures from iwl-5000.c */ 27255 /* shared structures from iwl-5000.c */
@@ -27050,8 +27260,8 @@ diff -urNp linux-2.6.32.21/drivers/net/wireless/iwlwifi/iwl-dev.h linux-2.6.32.2
27050 extern struct iwl_lib_ops iwl5000_lib; 27260 extern struct iwl_lib_ops iwl5000_lib;
27051 extern struct iwl_hcmd_ops iwl5000_hcmd; 27261 extern struct iwl_hcmd_ops iwl5000_hcmd;
27052diff -urNp linux-2.6.32.21/drivers/net/wireless/libertas/debugfs.c linux-2.6.32.21/drivers/net/wireless/libertas/debugfs.c 27262diff -urNp linux-2.6.32.21/drivers/net/wireless/libertas/debugfs.c linux-2.6.32.21/drivers/net/wireless/libertas/debugfs.c
27053--- linux-2.6.32.21/drivers/net/wireless/libertas/debugfs.c 2010-08-26 19:42:20.000000000 -0400 27263--- linux-2.6.32.21/drivers/net/wireless/libertas/debugfs.c 2010-08-13 16:24:37.000000000 -0400
27054+++ linux-2.6.32.21/drivers/net/wireless/libertas/debugfs.c 2010-09-13 08:10:10.000000000 -0400 27264+++ linux-2.6.32.21/drivers/net/wireless/libertas/debugfs.c 2010-09-04 15:54:52.000000000 -0400
27055@@ -708,7 +708,7 @@ out_unlock: 27265@@ -708,7 +708,7 @@ out_unlock:
27056 struct lbs_debugfs_files { 27266 struct lbs_debugfs_files {
27057 const char *name; 27267 const char *name;
@@ -27062,8 +27272,8 @@ diff -urNp linux-2.6.32.21/drivers/net/wireless/libertas/debugfs.c linux-2.6.32.
27062 27272
27063 static const struct lbs_debugfs_files debugfs_files[] = { 27273 static const struct lbs_debugfs_files debugfs_files[] = {
27064diff -urNp linux-2.6.32.21/drivers/net/wireless/rndis_wlan.c linux-2.6.32.21/drivers/net/wireless/rndis_wlan.c 27274diff -urNp linux-2.6.32.21/drivers/net/wireless/rndis_wlan.c linux-2.6.32.21/drivers/net/wireless/rndis_wlan.c
27065--- linux-2.6.32.21/drivers/net/wireless/rndis_wlan.c 2010-08-26 19:42:20.000000000 -0400 27275--- linux-2.6.32.21/drivers/net/wireless/rndis_wlan.c 2010-08-13 16:24:37.000000000 -0400
27066+++ linux-2.6.32.21/drivers/net/wireless/rndis_wlan.c 2010-09-13 08:10:10.000000000 -0400 27276+++ linux-2.6.32.21/drivers/net/wireless/rndis_wlan.c 2010-09-04 15:54:52.000000000 -0400
27067@@ -1176,7 +1176,7 @@ static int set_rts_threshold(struct usbn 27277@@ -1176,7 +1176,7 @@ static int set_rts_threshold(struct usbn
27068 27278
27069 devdbg(usbdev, "set_rts_threshold %i", rts_threshold); 27279 devdbg(usbdev, "set_rts_threshold %i", rts_threshold);
@@ -27074,8 +27284,8 @@ diff -urNp linux-2.6.32.21/drivers/net/wireless/rndis_wlan.c linux-2.6.32.21/dri
27074 27284
27075 tmp = cpu_to_le32(rts_threshold); 27285 tmp = cpu_to_le32(rts_threshold);
27076diff -urNp linux-2.6.32.21/drivers/oprofile/buffer_sync.c linux-2.6.32.21/drivers/oprofile/buffer_sync.c 27286diff -urNp linux-2.6.32.21/drivers/oprofile/buffer_sync.c linux-2.6.32.21/drivers/oprofile/buffer_sync.c
27077--- linux-2.6.32.21/drivers/oprofile/buffer_sync.c 2010-08-26 19:42:20.000000000 -0400 27287--- linux-2.6.32.21/drivers/oprofile/buffer_sync.c 2010-08-13 16:24:37.000000000 -0400
27078+++ linux-2.6.32.21/drivers/oprofile/buffer_sync.c 2010-09-13 08:10:10.000000000 -0400 27288+++ linux-2.6.32.21/drivers/oprofile/buffer_sync.c 2010-09-04 15:54:52.000000000 -0400
27079@@ -340,7 +340,7 @@ static void add_data(struct op_entry *en 27289@@ -340,7 +340,7 @@ static void add_data(struct op_entry *en
27080 if (cookie == NO_COOKIE) 27290 if (cookie == NO_COOKIE)
27081 offset = pc; 27291 offset = pc;
@@ -27112,8 +27322,8 @@ diff -urNp linux-2.6.32.21/drivers/oprofile/buffer_sync.c linux-2.6.32.21/driver
27112 } 27322 }
27113 release_mm(mm); 27323 release_mm(mm);
27114diff -urNp linux-2.6.32.21/drivers/oprofile/event_buffer.c linux-2.6.32.21/drivers/oprofile/event_buffer.c 27324diff -urNp linux-2.6.32.21/drivers/oprofile/event_buffer.c linux-2.6.32.21/drivers/oprofile/event_buffer.c
27115--- linux-2.6.32.21/drivers/oprofile/event_buffer.c 2010-08-26 19:42:20.000000000 -0400 27325--- linux-2.6.32.21/drivers/oprofile/event_buffer.c 2010-08-13 16:24:37.000000000 -0400
27116+++ linux-2.6.32.21/drivers/oprofile/event_buffer.c 2010-09-13 08:10:10.000000000 -0400 27326+++ linux-2.6.32.21/drivers/oprofile/event_buffer.c 2010-09-04 15:54:52.000000000 -0400
27117@@ -53,7 +53,7 @@ void add_event_entry(unsigned long value 27327@@ -53,7 +53,7 @@ void add_event_entry(unsigned long value
27118 } 27328 }
27119 27329
@@ -27124,8 +27334,8 @@ diff -urNp linux-2.6.32.21/drivers/oprofile/event_buffer.c linux-2.6.32.21/drive
27124 } 27334 }
27125 27335
27126diff -urNp linux-2.6.32.21/drivers/oprofile/oprof.c linux-2.6.32.21/drivers/oprofile/oprof.c 27336diff -urNp linux-2.6.32.21/drivers/oprofile/oprof.c linux-2.6.32.21/drivers/oprofile/oprof.c
27127--- linux-2.6.32.21/drivers/oprofile/oprof.c 2010-08-26 19:42:20.000000000 -0400 27337--- linux-2.6.32.21/drivers/oprofile/oprof.c 2010-08-13 16:24:37.000000000 -0400
27128+++ linux-2.6.32.21/drivers/oprofile/oprof.c 2010-09-13 08:10:10.000000000 -0400 27338+++ linux-2.6.32.21/drivers/oprofile/oprof.c 2010-09-04 15:54:52.000000000 -0400
27129@@ -110,7 +110,7 @@ static void switch_worker(struct work_st 27339@@ -110,7 +110,7 @@ static void switch_worker(struct work_st
27130 if (oprofile_ops.switch_events()) 27340 if (oprofile_ops.switch_events())
27131 return; 27341 return;
@@ -27135,9 +27345,21 @@ diff -urNp linux-2.6.32.21/drivers/oprofile/oprof.c linux-2.6.32.21/drivers/opro
27135 start_switch_worker(); 27345 start_switch_worker();
27136 } 27346 }
27137 27347
27348diff -urNp linux-2.6.32.21/drivers/oprofile/oprofilefs.c linux-2.6.32.21/drivers/oprofile/oprofilefs.c
27349--- linux-2.6.32.21/drivers/oprofile/oprofilefs.c 2010-08-13 16:24:37.000000000 -0400
27350+++ linux-2.6.32.21/drivers/oprofile/oprofilefs.c 2010-09-04 15:54:52.000000000 -0400
27351@@ -187,7 +187,7 @@ static const struct file_operations atom
27352
27353
27354 int oprofilefs_create_ro_atomic(struct super_block *sb, struct dentry *root,
27355- char const *name, atomic_t *val)
27356+ char const *name, atomic_unchecked_t *val)
27357 {
27358 struct dentry *d = __oprofilefs_create_file(sb, root, name,
27359 &atomic_ro_fops, 0444);
27138diff -urNp linux-2.6.32.21/drivers/oprofile/oprofile_stats.c linux-2.6.32.21/drivers/oprofile/oprofile_stats.c 27360diff -urNp linux-2.6.32.21/drivers/oprofile/oprofile_stats.c linux-2.6.32.21/drivers/oprofile/oprofile_stats.c
27139--- linux-2.6.32.21/drivers/oprofile/oprofile_stats.c 2010-08-26 19:42:20.000000000 -0400 27361--- linux-2.6.32.21/drivers/oprofile/oprofile_stats.c 2010-08-13 16:24:37.000000000 -0400
27140+++ linux-2.6.32.21/drivers/oprofile/oprofile_stats.c 2010-09-13 08:10:10.000000000 -0400 27362+++ linux-2.6.32.21/drivers/oprofile/oprofile_stats.c 2010-09-04 15:54:52.000000000 -0400
27141@@ -30,11 +30,11 @@ void oprofile_reset_stats(void) 27363@@ -30,11 +30,11 @@ void oprofile_reset_stats(void)
27142 cpu_buf->sample_invalid_eip = 0; 27364 cpu_buf->sample_invalid_eip = 0;
27143 } 27365 }
@@ -27156,8 +27378,8 @@ diff -urNp linux-2.6.32.21/drivers/oprofile/oprofile_stats.c linux-2.6.32.21/dri
27156 27378
27157 27379
27158diff -urNp linux-2.6.32.21/drivers/oprofile/oprofile_stats.h linux-2.6.32.21/drivers/oprofile/oprofile_stats.h 27380diff -urNp linux-2.6.32.21/drivers/oprofile/oprofile_stats.h linux-2.6.32.21/drivers/oprofile/oprofile_stats.h
27159--- linux-2.6.32.21/drivers/oprofile/oprofile_stats.h 2010-08-26 19:42:20.000000000 -0400 27381--- linux-2.6.32.21/drivers/oprofile/oprofile_stats.h 2010-08-13 16:24:37.000000000 -0400
27160+++ linux-2.6.32.21/drivers/oprofile/oprofile_stats.h 2010-09-13 08:10:10.000000000 -0400 27382+++ linux-2.6.32.21/drivers/oprofile/oprofile_stats.h 2010-09-04 15:54:52.000000000 -0400
27161@@ -13,11 +13,11 @@ 27383@@ -13,11 +13,11 @@
27162 #include <asm/atomic.h> 27384 #include <asm/atomic.h>
27163 27385
@@ -27175,21 +27397,9 @@ diff -urNp linux-2.6.32.21/drivers/oprofile/oprofile_stats.h linux-2.6.32.21/dri
27175 }; 27397 };
27176 27398
27177 extern struct oprofile_stat_struct oprofile_stats; 27399 extern struct oprofile_stat_struct oprofile_stats;
27178diff -urNp linux-2.6.32.21/drivers/oprofile/oprofilefs.c linux-2.6.32.21/drivers/oprofile/oprofilefs.c
27179--- linux-2.6.32.21/drivers/oprofile/oprofilefs.c 2010-08-26 19:42:20.000000000 -0400
27180+++ linux-2.6.32.21/drivers/oprofile/oprofilefs.c 2010-09-13 08:10:10.000000000 -0400
27181@@ -187,7 +187,7 @@ static const struct file_operations atom
27182
27183
27184 int oprofilefs_create_ro_atomic(struct super_block *sb, struct dentry *root,
27185- char const *name, atomic_t *val)
27186+ char const *name, atomic_unchecked_t *val)
27187 {
27188 struct dentry *d = __oprofilefs_create_file(sb, root, name,
27189 &atomic_ro_fops, 0444);
27190diff -urNp linux-2.6.32.21/drivers/parisc/pdc_stable.c linux-2.6.32.21/drivers/parisc/pdc_stable.c 27400diff -urNp linux-2.6.32.21/drivers/parisc/pdc_stable.c linux-2.6.32.21/drivers/parisc/pdc_stable.c
27191--- linux-2.6.32.21/drivers/parisc/pdc_stable.c 2010-08-26 19:42:20.000000000 -0400 27401--- linux-2.6.32.21/drivers/parisc/pdc_stable.c 2010-08-13 16:24:37.000000000 -0400
27192+++ linux-2.6.32.21/drivers/parisc/pdc_stable.c 2010-09-13 08:10:10.000000000 -0400 27402+++ linux-2.6.32.21/drivers/parisc/pdc_stable.c 2010-09-04 15:54:52.000000000 -0400
27193@@ -481,7 +481,7 @@ pdcspath_attr_store(struct kobject *kobj 27403@@ -481,7 +481,7 @@ pdcspath_attr_store(struct kobject *kobj
27194 return ret; 27404 return ret;
27195 } 27405 }
@@ -27200,8 +27410,8 @@ diff -urNp linux-2.6.32.21/drivers/parisc/pdc_stable.c linux-2.6.32.21/drivers/p
27200 .store = pdcspath_attr_store, 27410 .store = pdcspath_attr_store,
27201 }; 27411 };
27202diff -urNp linux-2.6.32.21/drivers/parport/procfs.c linux-2.6.32.21/drivers/parport/procfs.c 27412diff -urNp linux-2.6.32.21/drivers/parport/procfs.c linux-2.6.32.21/drivers/parport/procfs.c
27203--- linux-2.6.32.21/drivers/parport/procfs.c 2010-08-26 19:42:20.000000000 -0400 27413--- linux-2.6.32.21/drivers/parport/procfs.c 2010-08-13 16:24:37.000000000 -0400
27204+++ linux-2.6.32.21/drivers/parport/procfs.c 2010-09-13 08:10:10.000000000 -0400 27414+++ linux-2.6.32.21/drivers/parport/procfs.c 2010-09-04 15:54:52.000000000 -0400
27205@@ -64,7 +64,7 @@ static int do_active_device(ctl_table *t 27415@@ -64,7 +64,7 @@ static int do_active_device(ctl_table *t
27206 27416
27207 *ppos += len; 27417 *ppos += len;
@@ -27221,8 +27431,8 @@ diff -urNp linux-2.6.32.21/drivers/parport/procfs.c linux-2.6.32.21/drivers/parp
27221 #endif /* IEEE1284.3 support. */ 27431 #endif /* IEEE1284.3 support. */
27222 27432
27223diff -urNp linux-2.6.32.21/drivers/pci/hotplug/acpiphp_glue.c linux-2.6.32.21/drivers/pci/hotplug/acpiphp_glue.c 27433diff -urNp linux-2.6.32.21/drivers/pci/hotplug/acpiphp_glue.c linux-2.6.32.21/drivers/pci/hotplug/acpiphp_glue.c
27224--- linux-2.6.32.21/drivers/pci/hotplug/acpiphp_glue.c 2010-08-26 19:42:20.000000000 -0400 27434--- linux-2.6.32.21/drivers/pci/hotplug/acpiphp_glue.c 2010-08-13 16:24:37.000000000 -0400
27225+++ linux-2.6.32.21/drivers/pci/hotplug/acpiphp_glue.c 2010-09-13 08:10:10.000000000 -0400 27435+++ linux-2.6.32.21/drivers/pci/hotplug/acpiphp_glue.c 2010-09-04 15:54:52.000000000 -0400
27226@@ -111,7 +111,7 @@ static int post_dock_fixups(struct notif 27436@@ -111,7 +111,7 @@ static int post_dock_fixups(struct notif
27227 } 27437 }
27228 27438
@@ -27233,8 +27443,8 @@ diff -urNp linux-2.6.32.21/drivers/pci/hotplug/acpiphp_glue.c linux-2.6.32.21/dr
27233 }; 27443 };
27234 27444
27235diff -urNp linux-2.6.32.21/drivers/pci/hotplug/cpqphp_nvram.c linux-2.6.32.21/drivers/pci/hotplug/cpqphp_nvram.c 27445diff -urNp linux-2.6.32.21/drivers/pci/hotplug/cpqphp_nvram.c linux-2.6.32.21/drivers/pci/hotplug/cpqphp_nvram.c
27236--- linux-2.6.32.21/drivers/pci/hotplug/cpqphp_nvram.c 2010-08-26 19:42:20.000000000 -0400 27446--- linux-2.6.32.21/drivers/pci/hotplug/cpqphp_nvram.c 2010-08-13 16:24:37.000000000 -0400
27237+++ linux-2.6.32.21/drivers/pci/hotplug/cpqphp_nvram.c 2010-09-13 08:10:10.000000000 -0400 27447+++ linux-2.6.32.21/drivers/pci/hotplug/cpqphp_nvram.c 2010-09-04 15:54:52.000000000 -0400
27238@@ -428,9 +428,13 @@ static u32 store_HRT (void __iomem *rom_ 27448@@ -428,9 +428,13 @@ static u32 store_HRT (void __iomem *rom_
27239 27449
27240 void compaq_nvram_init (void __iomem *rom_start) 27450 void compaq_nvram_init (void __iomem *rom_start)
@@ -27250,8 +27460,8 @@ diff -urNp linux-2.6.32.21/drivers/pci/hotplug/cpqphp_nvram.c linux-2.6.32.21/dr
27250 27460
27251 /* initialize our int15 lock */ 27461 /* initialize our int15 lock */
27252diff -urNp linux-2.6.32.21/drivers/pci/hotplug/fakephp.c linux-2.6.32.21/drivers/pci/hotplug/fakephp.c 27462diff -urNp linux-2.6.32.21/drivers/pci/hotplug/fakephp.c linux-2.6.32.21/drivers/pci/hotplug/fakephp.c
27253--- linux-2.6.32.21/drivers/pci/hotplug/fakephp.c 2010-08-26 19:42:20.000000000 -0400 27463--- linux-2.6.32.21/drivers/pci/hotplug/fakephp.c 2010-08-13 16:24:37.000000000 -0400
27254+++ linux-2.6.32.21/drivers/pci/hotplug/fakephp.c 2010-09-13 08:10:10.000000000 -0400 27464+++ linux-2.6.32.21/drivers/pci/hotplug/fakephp.c 2010-09-04 15:54:52.000000000 -0400
27255@@ -73,7 +73,7 @@ static void legacy_release(struct kobjec 27465@@ -73,7 +73,7 @@ static void legacy_release(struct kobjec
27256 } 27466 }
27257 27467
@@ -27262,8 +27472,8 @@ diff -urNp linux-2.6.32.21/drivers/pci/hotplug/fakephp.c linux-2.6.32.21/drivers
27262 }, 27472 },
27263 .release = &legacy_release, 27473 .release = &legacy_release,
27264diff -urNp linux-2.6.32.21/drivers/pci/intel-iommu.c linux-2.6.32.21/drivers/pci/intel-iommu.c 27474diff -urNp linux-2.6.32.21/drivers/pci/intel-iommu.c linux-2.6.32.21/drivers/pci/intel-iommu.c
27265--- linux-2.6.32.21/drivers/pci/intel-iommu.c 2010-08-26 19:42:20.000000000 -0400 27475--- linux-2.6.32.21/drivers/pci/intel-iommu.c 2010-08-13 16:24:37.000000000 -0400
27266+++ linux-2.6.32.21/drivers/pci/intel-iommu.c 2010-09-13 08:10:10.000000000 -0400 27476+++ linux-2.6.32.21/drivers/pci/intel-iommu.c 2010-09-04 15:54:52.000000000 -0400
27267@@ -2647,7 +2647,7 @@ error: 27477@@ -2647,7 +2647,7 @@ error:
27268 return 0; 27478 return 0;
27269 } 27479 }
@@ -27334,8 +27544,8 @@ diff -urNp linux-2.6.32.21/drivers/pci/intel-iommu.c linux-2.6.32.21/drivers/pci
27334 .free_coherent = intel_free_coherent, 27544 .free_coherent = intel_free_coherent,
27335 .map_sg = intel_map_sg, 27545 .map_sg = intel_map_sg,
27336diff -urNp linux-2.6.32.21/drivers/pci/pcie/portdrv_pci.c linux-2.6.32.21/drivers/pci/pcie/portdrv_pci.c 27546diff -urNp linux-2.6.32.21/drivers/pci/pcie/portdrv_pci.c linux-2.6.32.21/drivers/pci/pcie/portdrv_pci.c
27337--- linux-2.6.32.21/drivers/pci/pcie/portdrv_pci.c 2010-08-26 19:42:20.000000000 -0400 27547--- linux-2.6.32.21/drivers/pci/pcie/portdrv_pci.c 2010-08-13 16:24:37.000000000 -0400
27338+++ linux-2.6.32.21/drivers/pci/pcie/portdrv_pci.c 2010-09-13 08:10:10.000000000 -0400 27548+++ linux-2.6.32.21/drivers/pci/pcie/portdrv_pci.c 2010-09-04 15:54:52.000000000 -0400
27339@@ -249,7 +249,7 @@ static void pcie_portdrv_err_resume(stru 27549@@ -249,7 +249,7 @@ static void pcie_portdrv_err_resume(stru
27340 static const struct pci_device_id port_pci_ids[] = { { 27550 static const struct pci_device_id port_pci_ids[] = { {
27341 /* handle any PCI-Express port */ 27551 /* handle any PCI-Express port */
@@ -27346,8 +27556,8 @@ diff -urNp linux-2.6.32.21/drivers/pci/pcie/portdrv_pci.c linux-2.6.32.21/driver
27346 MODULE_DEVICE_TABLE(pci, port_pci_ids); 27556 MODULE_DEVICE_TABLE(pci, port_pci_ids);
27347 27557
27348diff -urNp linux-2.6.32.21/drivers/pci/probe.c linux-2.6.32.21/drivers/pci/probe.c 27558diff -urNp linux-2.6.32.21/drivers/pci/probe.c linux-2.6.32.21/drivers/pci/probe.c
27349--- linux-2.6.32.21/drivers/pci/probe.c 2010-08-26 19:42:20.000000000 -0400 27559--- linux-2.6.32.21/drivers/pci/probe.c 2010-08-13 16:24:37.000000000 -0400
27350+++ linux-2.6.32.21/drivers/pci/probe.c 2010-09-13 08:10:10.000000000 -0400 27560+++ linux-2.6.32.21/drivers/pci/probe.c 2010-09-04 15:54:52.000000000 -0400
27351@@ -62,14 +62,14 @@ static ssize_t pci_bus_show_cpuaffinity( 27561@@ -62,14 +62,14 @@ static ssize_t pci_bus_show_cpuaffinity(
27352 return ret; 27562 return ret;
27353 } 27563 }
@@ -27366,8 +27576,8 @@ diff -urNp linux-2.6.32.21/drivers/pci/probe.c linux-2.6.32.21/drivers/pci/probe
27366 char *buf) 27576 char *buf)
27367 { 27577 {
27368diff -urNp linux-2.6.32.21/drivers/pci/proc.c linux-2.6.32.21/drivers/pci/proc.c 27578diff -urNp linux-2.6.32.21/drivers/pci/proc.c linux-2.6.32.21/drivers/pci/proc.c
27369--- linux-2.6.32.21/drivers/pci/proc.c 2010-08-26 19:42:20.000000000 -0400 27579--- linux-2.6.32.21/drivers/pci/proc.c 2010-08-13 16:24:37.000000000 -0400
27370+++ linux-2.6.32.21/drivers/pci/proc.c 2010-09-13 08:10:10.000000000 -0400 27580+++ linux-2.6.32.21/drivers/pci/proc.c 2010-09-04 15:54:52.000000000 -0400
27371@@ -480,7 +480,16 @@ static const struct file_operations proc 27581@@ -480,7 +480,16 @@ static const struct file_operations proc
27372 static int __init pci_proc_init(void) 27582 static int __init pci_proc_init(void)
27373 { 27583 {
@@ -27386,8 +27596,8 @@ diff -urNp linux-2.6.32.21/drivers/pci/proc.c linux-2.6.32.21/drivers/pci/proc.c
27386 &proc_bus_pci_dev_operations); 27596 &proc_bus_pci_dev_operations);
27387 proc_initialized = 1; 27597 proc_initialized = 1;
27388diff -urNp linux-2.6.32.21/drivers/pci/slot.c linux-2.6.32.21/drivers/pci/slot.c 27598diff -urNp linux-2.6.32.21/drivers/pci/slot.c linux-2.6.32.21/drivers/pci/slot.c
27389--- linux-2.6.32.21/drivers/pci/slot.c 2010-08-26 19:42:20.000000000 -0400 27599--- linux-2.6.32.21/drivers/pci/slot.c 2010-08-13 16:24:37.000000000 -0400
27390+++ linux-2.6.32.21/drivers/pci/slot.c 2010-09-13 08:10:10.000000000 -0400 27600+++ linux-2.6.32.21/drivers/pci/slot.c 2010-09-04 15:54:52.000000000 -0400
27391@@ -29,7 +29,7 @@ static ssize_t pci_slot_attr_store(struc 27601@@ -29,7 +29,7 @@ static ssize_t pci_slot_attr_store(struc
27392 return attribute->store ? attribute->store(slot, buf, len) : -EIO; 27602 return attribute->store ? attribute->store(slot, buf, len) : -EIO;
27393 } 27603 }
@@ -27398,8 +27608,8 @@ diff -urNp linux-2.6.32.21/drivers/pci/slot.c linux-2.6.32.21/drivers/pci/slot.c
27398 .store = pci_slot_attr_store, 27608 .store = pci_slot_attr_store,
27399 }; 27609 };
27400diff -urNp linux-2.6.32.21/drivers/pcmcia/pcmcia_ioctl.c linux-2.6.32.21/drivers/pcmcia/pcmcia_ioctl.c 27610diff -urNp linux-2.6.32.21/drivers/pcmcia/pcmcia_ioctl.c linux-2.6.32.21/drivers/pcmcia/pcmcia_ioctl.c
27401--- linux-2.6.32.21/drivers/pcmcia/pcmcia_ioctl.c 2010-08-26 19:42:20.000000000 -0400 27611--- linux-2.6.32.21/drivers/pcmcia/pcmcia_ioctl.c 2010-08-13 16:24:37.000000000 -0400
27402+++ linux-2.6.32.21/drivers/pcmcia/pcmcia_ioctl.c 2010-09-13 08:10:10.000000000 -0400 27612+++ linux-2.6.32.21/drivers/pcmcia/pcmcia_ioctl.c 2010-09-04 15:54:52.000000000 -0400
27403@@ -819,7 +819,7 @@ static int ds_ioctl(struct inode * inode 27613@@ -819,7 +819,7 @@ static int ds_ioctl(struct inode * inode
27404 return -EFAULT; 27614 return -EFAULT;
27405 } 27615 }
@@ -27410,8 +27620,8 @@ diff -urNp linux-2.6.32.21/drivers/pcmcia/pcmcia_ioctl.c linux-2.6.32.21/drivers
27410 return -ENOMEM; 27620 return -ENOMEM;
27411 27621
27412diff -urNp linux-2.6.32.21/drivers/pcmcia/ti113x.h linux-2.6.32.21/drivers/pcmcia/ti113x.h 27622diff -urNp linux-2.6.32.21/drivers/pcmcia/ti113x.h linux-2.6.32.21/drivers/pcmcia/ti113x.h
27413--- linux-2.6.32.21/drivers/pcmcia/ti113x.h 2010-08-26 19:42:20.000000000 -0400 27623--- linux-2.6.32.21/drivers/pcmcia/ti113x.h 2010-08-13 16:24:37.000000000 -0400
27414+++ linux-2.6.32.21/drivers/pcmcia/ti113x.h 2010-09-13 08:10:10.000000000 -0400 27624+++ linux-2.6.32.21/drivers/pcmcia/ti113x.h 2010-09-04 15:54:52.000000000 -0400
27415@@ -903,7 +903,7 @@ static struct pci_device_id ene_tune_tbl 27625@@ -903,7 +903,7 @@ static struct pci_device_id ene_tune_tbl
27416 DEVID(PCI_VENDOR_ID_MOTOROLA, 0x3410, 0xECC0, PCI_ANY_ID, 27626 DEVID(PCI_VENDOR_ID_MOTOROLA, 0x3410, 0xECC0, PCI_ANY_ID,
27417 ENE_TEST_C9_TLTENABLE | ENE_TEST_C9_PFENABLE, ENE_TEST_C9_TLTENABLE), 27627 ENE_TEST_C9_TLTENABLE | ENE_TEST_C9_PFENABLE, ENE_TEST_C9_TLTENABLE),
@@ -27422,8 +27632,8 @@ diff -urNp linux-2.6.32.21/drivers/pcmcia/ti113x.h linux-2.6.32.21/drivers/pcmci
27422 27632
27423 static void ene_tune_bridge(struct pcmcia_socket *sock, struct pci_bus *bus) 27633 static void ene_tune_bridge(struct pcmcia_socket *sock, struct pci_bus *bus)
27424diff -urNp linux-2.6.32.21/drivers/pcmcia/yenta_socket.c linux-2.6.32.21/drivers/pcmcia/yenta_socket.c 27634diff -urNp linux-2.6.32.21/drivers/pcmcia/yenta_socket.c linux-2.6.32.21/drivers/pcmcia/yenta_socket.c
27425--- linux-2.6.32.21/drivers/pcmcia/yenta_socket.c 2010-08-26 19:42:20.000000000 -0400 27635--- linux-2.6.32.21/drivers/pcmcia/yenta_socket.c 2010-08-13 16:24:37.000000000 -0400
27426+++ linux-2.6.32.21/drivers/pcmcia/yenta_socket.c 2010-09-13 08:10:10.000000000 -0400 27636+++ linux-2.6.32.21/drivers/pcmcia/yenta_socket.c 2010-09-04 15:54:52.000000000 -0400
27427@@ -1387,7 +1387,7 @@ static struct pci_device_id yenta_table 27637@@ -1387,7 +1387,7 @@ static struct pci_device_id yenta_table
27428 27638
27429 /* match any cardbus bridge */ 27639 /* match any cardbus bridge */
@@ -27434,8 +27644,8 @@ diff -urNp linux-2.6.32.21/drivers/pcmcia/yenta_socket.c linux-2.6.32.21/drivers
27434 MODULE_DEVICE_TABLE(pci, yenta_table); 27644 MODULE_DEVICE_TABLE(pci, yenta_table);
27435 27645
27436diff -urNp linux-2.6.32.21/drivers/platform/x86/acer-wmi.c linux-2.6.32.21/drivers/platform/x86/acer-wmi.c 27646diff -urNp linux-2.6.32.21/drivers/platform/x86/acer-wmi.c linux-2.6.32.21/drivers/platform/x86/acer-wmi.c
27437--- linux-2.6.32.21/drivers/platform/x86/acer-wmi.c 2010-08-26 19:42:20.000000000 -0400 27647--- linux-2.6.32.21/drivers/platform/x86/acer-wmi.c 2010-08-13 16:24:37.000000000 -0400
27438+++ linux-2.6.32.21/drivers/platform/x86/acer-wmi.c 2010-09-13 08:10:10.000000000 -0400 27648+++ linux-2.6.32.21/drivers/platform/x86/acer-wmi.c 2010-09-04 15:54:52.000000000 -0400
27439@@ -918,7 +918,7 @@ static int update_bl_status(struct backl 27649@@ -918,7 +918,7 @@ static int update_bl_status(struct backl
27440 return 0; 27650 return 0;
27441 } 27651 }
@@ -27445,21 +27655,9 @@ diff -urNp linux-2.6.32.21/drivers/platform/x86/acer-wmi.c linux-2.6.32.21/drive
27445 .get_brightness = read_brightness, 27655 .get_brightness = read_brightness,
27446 .update_status = update_bl_status, 27656 .update_status = update_bl_status,
27447 }; 27657 };
27448diff -urNp linux-2.6.32.21/drivers/platform/x86/asus-laptop.c linux-2.6.32.21/drivers/platform/x86/asus-laptop.c
27449--- linux-2.6.32.21/drivers/platform/x86/asus-laptop.c 2010-08-26 19:42:20.000000000 -0400
27450+++ linux-2.6.32.21/drivers/platform/x86/asus-laptop.c 2010-09-13 08:10:10.000000000 -0400
27451@@ -250,7 +250,7 @@ static struct backlight_device *asus_bac
27452 */
27453 static int read_brightness(struct backlight_device *bd);
27454 static int update_bl_status(struct backlight_device *bd);
27455-static struct backlight_ops asusbl_ops = {
27456+static const struct backlight_ops asusbl_ops = {
27457 .get_brightness = read_brightness,
27458 .update_status = update_bl_status,
27459 };
27460diff -urNp linux-2.6.32.21/drivers/platform/x86/asus_acpi.c linux-2.6.32.21/drivers/platform/x86/asus_acpi.c 27658diff -urNp linux-2.6.32.21/drivers/platform/x86/asus_acpi.c linux-2.6.32.21/drivers/platform/x86/asus_acpi.c
27461--- linux-2.6.32.21/drivers/platform/x86/asus_acpi.c 2010-08-26 19:42:20.000000000 -0400 27659--- linux-2.6.32.21/drivers/platform/x86/asus_acpi.c 2010-08-13 16:24:37.000000000 -0400
27462+++ linux-2.6.32.21/drivers/platform/x86/asus_acpi.c 2010-09-13 08:10:10.000000000 -0400 27660+++ linux-2.6.32.21/drivers/platform/x86/asus_acpi.c 2010-09-04 15:54:52.000000000 -0400
27463@@ -1402,7 +1402,7 @@ static int asus_hotk_remove(struct acpi_ 27661@@ -1402,7 +1402,7 @@ static int asus_hotk_remove(struct acpi_
27464 return 0; 27662 return 0;
27465 } 27663 }
@@ -27469,9 +27667,21 @@ diff -urNp linux-2.6.32.21/drivers/platform/x86/asus_acpi.c linux-2.6.32.21/driv
27469 .get_brightness = read_brightness, 27667 .get_brightness = read_brightness,
27470 .update_status = set_brightness_status, 27668 .update_status = set_brightness_status,
27471 }; 27669 };
27670diff -urNp linux-2.6.32.21/drivers/platform/x86/asus-laptop.c linux-2.6.32.21/drivers/platform/x86/asus-laptop.c
27671--- linux-2.6.32.21/drivers/platform/x86/asus-laptop.c 2010-08-13 16:24:37.000000000 -0400
27672+++ linux-2.6.32.21/drivers/platform/x86/asus-laptop.c 2010-09-04 15:54:52.000000000 -0400
27673@@ -250,7 +250,7 @@ static struct backlight_device *asus_bac
27674 */
27675 static int read_brightness(struct backlight_device *bd);
27676 static int update_bl_status(struct backlight_device *bd);
27677-static struct backlight_ops asusbl_ops = {
27678+static const struct backlight_ops asusbl_ops = {
27679 .get_brightness = read_brightness,
27680 .update_status = update_bl_status,
27681 };
27472diff -urNp linux-2.6.32.21/drivers/platform/x86/compal-laptop.c linux-2.6.32.21/drivers/platform/x86/compal-laptop.c 27682diff -urNp linux-2.6.32.21/drivers/platform/x86/compal-laptop.c linux-2.6.32.21/drivers/platform/x86/compal-laptop.c
27473--- linux-2.6.32.21/drivers/platform/x86/compal-laptop.c 2010-08-26 19:42:20.000000000 -0400 27683--- linux-2.6.32.21/drivers/platform/x86/compal-laptop.c 2010-08-13 16:24:37.000000000 -0400
27474+++ linux-2.6.32.21/drivers/platform/x86/compal-laptop.c 2010-09-13 08:10:10.000000000 -0400 27684+++ linux-2.6.32.21/drivers/platform/x86/compal-laptop.c 2010-09-04 15:54:52.000000000 -0400
27475@@ -163,7 +163,7 @@ static int bl_update_status(struct backl 27685@@ -163,7 +163,7 @@ static int bl_update_status(struct backl
27476 return set_lcd_level(b->props.brightness); 27686 return set_lcd_level(b->props.brightness);
27477 } 27687 }
@@ -27482,8 +27692,8 @@ diff -urNp linux-2.6.32.21/drivers/platform/x86/compal-laptop.c linux-2.6.32.21/
27482 .update_status = bl_update_status, 27692 .update_status = bl_update_status,
27483 }; 27693 };
27484diff -urNp linux-2.6.32.21/drivers/platform/x86/dell-laptop.c linux-2.6.32.21/drivers/platform/x86/dell-laptop.c 27694diff -urNp linux-2.6.32.21/drivers/platform/x86/dell-laptop.c linux-2.6.32.21/drivers/platform/x86/dell-laptop.c
27485--- linux-2.6.32.21/drivers/platform/x86/dell-laptop.c 2010-08-26 19:42:20.000000000 -0400 27695--- linux-2.6.32.21/drivers/platform/x86/dell-laptop.c 2010-08-13 16:24:37.000000000 -0400
27486+++ linux-2.6.32.21/drivers/platform/x86/dell-laptop.c 2010-09-13 08:10:10.000000000 -0400 27696+++ linux-2.6.32.21/drivers/platform/x86/dell-laptop.c 2010-09-04 15:54:52.000000000 -0400
27487@@ -305,7 +305,7 @@ static int dell_get_intensity(struct bac 27697@@ -305,7 +305,7 @@ static int dell_get_intensity(struct bac
27488 return buffer.output[1]; 27698 return buffer.output[1];
27489 } 27699 }
@@ -27494,8 +27704,8 @@ diff -urNp linux-2.6.32.21/drivers/platform/x86/dell-laptop.c linux-2.6.32.21/dr
27494 .update_status = dell_send_intensity, 27704 .update_status = dell_send_intensity,
27495 }; 27705 };
27496diff -urNp linux-2.6.32.21/drivers/platform/x86/eeepc-laptop.c linux-2.6.32.21/drivers/platform/x86/eeepc-laptop.c 27706diff -urNp linux-2.6.32.21/drivers/platform/x86/eeepc-laptop.c linux-2.6.32.21/drivers/platform/x86/eeepc-laptop.c
27497--- linux-2.6.32.21/drivers/platform/x86/eeepc-laptop.c 2010-08-26 19:42:20.000000000 -0400 27707--- linux-2.6.32.21/drivers/platform/x86/eeepc-laptop.c 2010-08-13 16:24:37.000000000 -0400
27498+++ linux-2.6.32.21/drivers/platform/x86/eeepc-laptop.c 2010-09-13 08:10:10.000000000 -0400 27708+++ linux-2.6.32.21/drivers/platform/x86/eeepc-laptop.c 2010-09-04 15:54:52.000000000 -0400
27499@@ -245,7 +245,7 @@ static struct device *eeepc_hwmon_device 27709@@ -245,7 +245,7 @@ static struct device *eeepc_hwmon_device
27500 */ 27710 */
27501 static int read_brightness(struct backlight_device *bd); 27711 static int read_brightness(struct backlight_device *bd);
@@ -27506,8 +27716,8 @@ diff -urNp linux-2.6.32.21/drivers/platform/x86/eeepc-laptop.c linux-2.6.32.21/d
27506 .update_status = update_bl_status, 27716 .update_status = update_bl_status,
27507 }; 27717 };
27508diff -urNp linux-2.6.32.21/drivers/platform/x86/fujitsu-laptop.c linux-2.6.32.21/drivers/platform/x86/fujitsu-laptop.c 27718diff -urNp linux-2.6.32.21/drivers/platform/x86/fujitsu-laptop.c linux-2.6.32.21/drivers/platform/x86/fujitsu-laptop.c
27509--- linux-2.6.32.21/drivers/platform/x86/fujitsu-laptop.c 2010-08-26 19:42:20.000000000 -0400 27719--- linux-2.6.32.21/drivers/platform/x86/fujitsu-laptop.c 2010-08-13 16:24:37.000000000 -0400
27510+++ linux-2.6.32.21/drivers/platform/x86/fujitsu-laptop.c 2010-09-13 08:10:10.000000000 -0400 27720+++ linux-2.6.32.21/drivers/platform/x86/fujitsu-laptop.c 2010-09-04 15:54:52.000000000 -0400
27511@@ -436,7 +436,7 @@ static int bl_update_status(struct backl 27721@@ -436,7 +436,7 @@ static int bl_update_status(struct backl
27512 return ret; 27722 return ret;
27513 } 27723 }
@@ -27518,8 +27728,8 @@ diff -urNp linux-2.6.32.21/drivers/platform/x86/fujitsu-laptop.c linux-2.6.32.21
27518 .update_status = bl_update_status, 27728 .update_status = bl_update_status,
27519 }; 27729 };
27520diff -urNp linux-2.6.32.21/drivers/platform/x86/msi-laptop.c linux-2.6.32.21/drivers/platform/x86/msi-laptop.c 27730diff -urNp linux-2.6.32.21/drivers/platform/x86/msi-laptop.c linux-2.6.32.21/drivers/platform/x86/msi-laptop.c
27521--- linux-2.6.32.21/drivers/platform/x86/msi-laptop.c 2010-08-26 19:42:20.000000000 -0400 27731--- linux-2.6.32.21/drivers/platform/x86/msi-laptop.c 2010-08-13 16:24:37.000000000 -0400
27522+++ linux-2.6.32.21/drivers/platform/x86/msi-laptop.c 2010-09-13 08:10:10.000000000 -0400 27732+++ linux-2.6.32.21/drivers/platform/x86/msi-laptop.c 2010-09-04 15:54:52.000000000 -0400
27523@@ -161,7 +161,7 @@ static int bl_update_status(struct backl 27733@@ -161,7 +161,7 @@ static int bl_update_status(struct backl
27524 return set_lcd_level(b->props.brightness); 27734 return set_lcd_level(b->props.brightness);
27525 } 27735 }
@@ -27530,8 +27740,8 @@ diff -urNp linux-2.6.32.21/drivers/platform/x86/msi-laptop.c linux-2.6.32.21/dri
27530 .update_status = bl_update_status, 27740 .update_status = bl_update_status,
27531 }; 27741 };
27532diff -urNp linux-2.6.32.21/drivers/platform/x86/panasonic-laptop.c linux-2.6.32.21/drivers/platform/x86/panasonic-laptop.c 27742diff -urNp linux-2.6.32.21/drivers/platform/x86/panasonic-laptop.c linux-2.6.32.21/drivers/platform/x86/panasonic-laptop.c
27533--- linux-2.6.32.21/drivers/platform/x86/panasonic-laptop.c 2010-08-26 19:42:20.000000000 -0400 27743--- linux-2.6.32.21/drivers/platform/x86/panasonic-laptop.c 2010-08-13 16:24:37.000000000 -0400
27534+++ linux-2.6.32.21/drivers/platform/x86/panasonic-laptop.c 2010-09-13 08:10:10.000000000 -0400 27744+++ linux-2.6.32.21/drivers/platform/x86/panasonic-laptop.c 2010-09-04 15:54:52.000000000 -0400
27535@@ -352,7 +352,7 @@ static int bl_set_status(struct backligh 27745@@ -352,7 +352,7 @@ static int bl_set_status(struct backligh
27536 return acpi_pcc_write_sset(pcc, SINF_DC_CUR_BRIGHT, bright); 27746 return acpi_pcc_write_sset(pcc, SINF_DC_CUR_BRIGHT, bright);
27537 } 27747 }
@@ -27542,8 +27752,8 @@ diff -urNp linux-2.6.32.21/drivers/platform/x86/panasonic-laptop.c linux-2.6.32.
27542 .update_status = bl_set_status, 27752 .update_status = bl_set_status,
27543 }; 27753 };
27544diff -urNp linux-2.6.32.21/drivers/platform/x86/sony-laptop.c linux-2.6.32.21/drivers/platform/x86/sony-laptop.c 27754diff -urNp linux-2.6.32.21/drivers/platform/x86/sony-laptop.c linux-2.6.32.21/drivers/platform/x86/sony-laptop.c
27545--- linux-2.6.32.21/drivers/platform/x86/sony-laptop.c 2010-08-26 19:42:20.000000000 -0400 27755--- linux-2.6.32.21/drivers/platform/x86/sony-laptop.c 2010-08-13 16:24:37.000000000 -0400
27546+++ linux-2.6.32.21/drivers/platform/x86/sony-laptop.c 2010-09-13 08:10:10.000000000 -0400 27756+++ linux-2.6.32.21/drivers/platform/x86/sony-laptop.c 2010-09-04 15:54:52.000000000 -0400
27547@@ -850,7 +850,7 @@ static int sony_backlight_get_brightness 27757@@ -850,7 +850,7 @@ static int sony_backlight_get_brightness
27548 } 27758 }
27549 27759
@@ -27554,8 +27764,8 @@ diff -urNp linux-2.6.32.21/drivers/platform/x86/sony-laptop.c linux-2.6.32.21/dr
27554 .get_brightness = sony_backlight_get_brightness, 27764 .get_brightness = sony_backlight_get_brightness,
27555 }; 27765 };
27556diff -urNp linux-2.6.32.21/drivers/platform/x86/thinkpad_acpi.c linux-2.6.32.21/drivers/platform/x86/thinkpad_acpi.c 27766diff -urNp linux-2.6.32.21/drivers/platform/x86/thinkpad_acpi.c linux-2.6.32.21/drivers/platform/x86/thinkpad_acpi.c
27557--- linux-2.6.32.21/drivers/platform/x86/thinkpad_acpi.c 2010-08-26 19:42:20.000000000 -0400 27767--- linux-2.6.32.21/drivers/platform/x86/thinkpad_acpi.c 2010-08-13 16:24:37.000000000 -0400
27558+++ linux-2.6.32.21/drivers/platform/x86/thinkpad_acpi.c 2010-09-13 08:10:10.000000000 -0400 27768+++ linux-2.6.32.21/drivers/platform/x86/thinkpad_acpi.c 2010-09-04 15:54:52.000000000 -0400
27559@@ -6122,7 +6122,7 @@ static void tpacpi_brightness_notify_cha 27769@@ -6122,7 +6122,7 @@ static void tpacpi_brightness_notify_cha
27560 BACKLIGHT_UPDATE_HOTKEY); 27770 BACKLIGHT_UPDATE_HOTKEY);
27561 } 27771 }
@@ -27566,8 +27776,8 @@ diff -urNp linux-2.6.32.21/drivers/platform/x86/thinkpad_acpi.c linux-2.6.32.21/
27566 .update_status = brightness_update_status, 27776 .update_status = brightness_update_status,
27567 }; 27777 };
27568diff -urNp linux-2.6.32.21/drivers/platform/x86/toshiba_acpi.c linux-2.6.32.21/drivers/platform/x86/toshiba_acpi.c 27778diff -urNp linux-2.6.32.21/drivers/platform/x86/toshiba_acpi.c linux-2.6.32.21/drivers/platform/x86/toshiba_acpi.c
27569--- linux-2.6.32.21/drivers/platform/x86/toshiba_acpi.c 2010-08-26 19:42:20.000000000 -0400 27779--- linux-2.6.32.21/drivers/platform/x86/toshiba_acpi.c 2010-08-13 16:24:37.000000000 -0400
27570+++ linux-2.6.32.21/drivers/platform/x86/toshiba_acpi.c 2010-09-13 08:10:10.000000000 -0400 27780+++ linux-2.6.32.21/drivers/platform/x86/toshiba_acpi.c 2010-09-04 15:54:52.000000000 -0400
27571@@ -671,7 +671,7 @@ static acpi_status remove_device(void) 27781@@ -671,7 +671,7 @@ static acpi_status remove_device(void)
27572 return AE_OK; 27782 return AE_OK;
27573 } 27783 }
@@ -27578,8 +27788,8 @@ diff -urNp linux-2.6.32.21/drivers/platform/x86/toshiba_acpi.c linux-2.6.32.21/d
27578 .update_status = set_lcd_status, 27788 .update_status = set_lcd_status,
27579 }; 27789 };
27580diff -urNp linux-2.6.32.21/drivers/pnp/pnpbios/bioscalls.c linux-2.6.32.21/drivers/pnp/pnpbios/bioscalls.c 27790diff -urNp linux-2.6.32.21/drivers/pnp/pnpbios/bioscalls.c linux-2.6.32.21/drivers/pnp/pnpbios/bioscalls.c
27581--- linux-2.6.32.21/drivers/pnp/pnpbios/bioscalls.c 2010-08-26 19:42:20.000000000 -0400 27791--- linux-2.6.32.21/drivers/pnp/pnpbios/bioscalls.c 2010-08-13 16:24:37.000000000 -0400
27582+++ linux-2.6.32.21/drivers/pnp/pnpbios/bioscalls.c 2010-09-13 08:10:10.000000000 -0400 27792+++ linux-2.6.32.21/drivers/pnp/pnpbios/bioscalls.c 2010-09-04 15:54:52.000000000 -0400
27583@@ -60,7 +60,7 @@ do { \ 27793@@ -60,7 +60,7 @@ do { \
27584 set_desc_limit(&gdt[(selname) >> 3], (size) - 1); \ 27794 set_desc_limit(&gdt[(selname) >> 3], (size) - 1); \
27585 } while(0) 27795 } while(0)
@@ -27637,8 +27847,8 @@ diff -urNp linux-2.6.32.21/drivers/pnp/pnpbios/bioscalls.c linux-2.6.32.21/drive
27637+ pax_close_kernel(); 27847+ pax_close_kernel();
27638 } 27848 }
27639diff -urNp linux-2.6.32.21/drivers/pnp/quirks.c linux-2.6.32.21/drivers/pnp/quirks.c 27849diff -urNp linux-2.6.32.21/drivers/pnp/quirks.c linux-2.6.32.21/drivers/pnp/quirks.c
27640--- linux-2.6.32.21/drivers/pnp/quirks.c 2010-08-26 19:42:20.000000000 -0400 27850--- linux-2.6.32.21/drivers/pnp/quirks.c 2010-08-13 16:24:37.000000000 -0400
27641+++ linux-2.6.32.21/drivers/pnp/quirks.c 2010-09-13 08:10:10.000000000 -0400 27851+++ linux-2.6.32.21/drivers/pnp/quirks.c 2010-09-04 15:54:52.000000000 -0400
27642@@ -327,7 +327,7 @@ static struct pnp_fixup pnp_fixups[] = { 27852@@ -327,7 +327,7 @@ static struct pnp_fixup pnp_fixups[] = {
27643 /* PnP resources that might overlap PCI BARs */ 27853 /* PnP resources that might overlap PCI BARs */
27644 {"PNP0c01", quirk_system_pci_resources}, 27854 {"PNP0c01", quirk_system_pci_resources},
@@ -27649,8 +27859,8 @@ diff -urNp linux-2.6.32.21/drivers/pnp/quirks.c linux-2.6.32.21/drivers/pnp/quir
27649 27859
27650 void pnp_fixup_device(struct pnp_dev *dev) 27860 void pnp_fixup_device(struct pnp_dev *dev)
27651diff -urNp linux-2.6.32.21/drivers/pnp/resource.c linux-2.6.32.21/drivers/pnp/resource.c 27861diff -urNp linux-2.6.32.21/drivers/pnp/resource.c linux-2.6.32.21/drivers/pnp/resource.c
27652--- linux-2.6.32.21/drivers/pnp/resource.c 2010-08-26 19:42:20.000000000 -0400 27862--- linux-2.6.32.21/drivers/pnp/resource.c 2010-08-13 16:24:37.000000000 -0400
27653+++ linux-2.6.32.21/drivers/pnp/resource.c 2010-09-13 08:10:10.000000000 -0400 27863+++ linux-2.6.32.21/drivers/pnp/resource.c 2010-09-04 15:54:52.000000000 -0400
27654@@ -355,7 +355,7 @@ int pnp_check_irq(struct pnp_dev *dev, s 27864@@ -355,7 +355,7 @@ int pnp_check_irq(struct pnp_dev *dev, s
27655 return 1; 27865 return 1;
27656 27866
@@ -27670,8 +27880,8 @@ diff -urNp linux-2.6.32.21/drivers/pnp/resource.c linux-2.6.32.21/drivers/pnp/re
27670 27880
27671 /* check if the resource is reserved */ 27881 /* check if the resource is reserved */
27672diff -urNp linux-2.6.32.21/drivers/s390/cio/qdio_perf.c linux-2.6.32.21/drivers/s390/cio/qdio_perf.c 27882diff -urNp linux-2.6.32.21/drivers/s390/cio/qdio_perf.c linux-2.6.32.21/drivers/s390/cio/qdio_perf.c
27673--- linux-2.6.32.21/drivers/s390/cio/qdio_perf.c 2010-08-26 19:42:20.000000000 -0400 27883--- linux-2.6.32.21/drivers/s390/cio/qdio_perf.c 2010-08-13 16:24:37.000000000 -0400
27674+++ linux-2.6.32.21/drivers/s390/cio/qdio_perf.c 2010-09-13 08:10:10.000000000 -0400 27884+++ linux-2.6.32.21/drivers/s390/cio/qdio_perf.c 2010-09-04 15:54:52.000000000 -0400
27675@@ -31,51 +31,51 @@ static struct proc_dir_entry *qdio_perf_ 27885@@ -31,51 +31,51 @@ static struct proc_dir_entry *qdio_perf_
27676 static int qdio_perf_proc_show(struct seq_file *m, void *v) 27886 static int qdio_perf_proc_show(struct seq_file *m, void *v)
27677 { 27887 {
@@ -27748,8 +27958,8 @@ diff -urNp linux-2.6.32.21/drivers/s390/cio/qdio_perf.c linux-2.6.32.21/drivers/
27748 return 0; 27958 return 0;
27749 } 27959 }
27750diff -urNp linux-2.6.32.21/drivers/s390/cio/qdio_perf.h linux-2.6.32.21/drivers/s390/cio/qdio_perf.h 27960diff -urNp linux-2.6.32.21/drivers/s390/cio/qdio_perf.h linux-2.6.32.21/drivers/s390/cio/qdio_perf.h
27751--- linux-2.6.32.21/drivers/s390/cio/qdio_perf.h 2010-08-26 19:42:20.000000000 -0400 27961--- linux-2.6.32.21/drivers/s390/cio/qdio_perf.h 2010-08-13 16:24:37.000000000 -0400
27752+++ linux-2.6.32.21/drivers/s390/cio/qdio_perf.h 2010-09-13 08:10:10.000000000 -0400 27962+++ linux-2.6.32.21/drivers/s390/cio/qdio_perf.h 2010-09-04 15:54:52.000000000 -0400
27753@@ -13,46 +13,46 @@ 27963@@ -13,46 +13,46 @@
27754 27964
27755 struct qdio_perf_stats { 27965 struct qdio_perf_stats {
@@ -27823,8 +28033,8 @@ diff -urNp linux-2.6.32.21/drivers/s390/cio/qdio_perf.h linux-2.6.32.21/drivers/
27823 28033
27824 int qdio_setup_perf_stats(void); 28034 int qdio_setup_perf_stats(void);
27825diff -urNp linux-2.6.32.21/drivers/scsi/ipr.c linux-2.6.32.21/drivers/scsi/ipr.c 28035diff -urNp linux-2.6.32.21/drivers/scsi/ipr.c linux-2.6.32.21/drivers/scsi/ipr.c
27826--- linux-2.6.32.21/drivers/scsi/ipr.c 2010-08-26 19:42:20.000000000 -0400 28036--- linux-2.6.32.21/drivers/scsi/ipr.c 2010-08-13 16:24:37.000000000 -0400
27827+++ linux-2.6.32.21/drivers/scsi/ipr.c 2010-09-13 08:10:10.000000000 -0400 28037+++ linux-2.6.32.21/drivers/scsi/ipr.c 2010-09-04 15:54:52.000000000 -0400
27828@@ -5286,7 +5286,7 @@ static bool ipr_qc_fill_rtf(struct ata_q 28038@@ -5286,7 +5286,7 @@ static bool ipr_qc_fill_rtf(struct ata_q
27829 return true; 28039 return true;
27830 } 28040 }
@@ -27835,8 +28045,8 @@ diff -urNp linux-2.6.32.21/drivers/scsi/ipr.c linux-2.6.32.21/drivers/scsi/ipr.c
27835 .hardreset = ipr_sata_reset, 28045 .hardreset = ipr_sata_reset,
27836 .post_internal_cmd = ipr_ata_post_internal, 28046 .post_internal_cmd = ipr_ata_post_internal,
27837diff -urNp linux-2.6.32.21/drivers/scsi/libfc/fc_exch.c linux-2.6.32.21/drivers/scsi/libfc/fc_exch.c 28047diff -urNp linux-2.6.32.21/drivers/scsi/libfc/fc_exch.c linux-2.6.32.21/drivers/scsi/libfc/fc_exch.c
27838--- linux-2.6.32.21/drivers/scsi/libfc/fc_exch.c 2010-08-26 19:42:20.000000000 -0400 28048--- linux-2.6.32.21/drivers/scsi/libfc/fc_exch.c 2010-08-13 16:24:37.000000000 -0400
27839+++ linux-2.6.32.21/drivers/scsi/libfc/fc_exch.c 2010-09-13 08:10:10.000000000 -0400 28049+++ linux-2.6.32.21/drivers/scsi/libfc/fc_exch.c 2010-09-04 15:54:52.000000000 -0400
27840@@ -86,12 +86,12 @@ struct fc_exch_mgr { 28050@@ -86,12 +86,12 @@ struct fc_exch_mgr {
27841 * all together if not used XXX 28051 * all together if not used XXX
27842 */ 28052 */
@@ -27959,8 +28169,8 @@ diff -urNp linux-2.6.32.21/drivers/scsi/libfc/fc_exch.c linux-2.6.32.21/drivers/
27959 fc_frame_free(fp); 28169 fc_frame_free(fp);
27960 } 28170 }
27961diff -urNp linux-2.6.32.21/drivers/scsi/libsas/sas_ata.c linux-2.6.32.21/drivers/scsi/libsas/sas_ata.c 28171diff -urNp linux-2.6.32.21/drivers/scsi/libsas/sas_ata.c linux-2.6.32.21/drivers/scsi/libsas/sas_ata.c
27962--- linux-2.6.32.21/drivers/scsi/libsas/sas_ata.c 2010-08-26 19:42:20.000000000 -0400 28172--- linux-2.6.32.21/drivers/scsi/libsas/sas_ata.c 2010-08-13 16:24:37.000000000 -0400
27963+++ linux-2.6.32.21/drivers/scsi/libsas/sas_ata.c 2010-09-13 08:10:10.000000000 -0400 28173+++ linux-2.6.32.21/drivers/scsi/libsas/sas_ata.c 2010-09-04 15:54:52.000000000 -0400
27964@@ -343,7 +343,7 @@ static int sas_ata_scr_read(struct ata_l 28174@@ -343,7 +343,7 @@ static int sas_ata_scr_read(struct ata_l
27965 } 28175 }
27966 } 28176 }
@@ -27971,8 +28181,8 @@ diff -urNp linux-2.6.32.21/drivers/scsi/libsas/sas_ata.c linux-2.6.32.21/drivers
27971 .post_internal_cmd = sas_ata_post_internal, 28181 .post_internal_cmd = sas_ata_post_internal,
27972 .qc_prep = ata_noop_qc_prep, 28182 .qc_prep = ata_noop_qc_prep,
27973diff -urNp linux-2.6.32.21/drivers/scsi/mpt2sas/mpt2sas_debug.h linux-2.6.32.21/drivers/scsi/mpt2sas/mpt2sas_debug.h 28183diff -urNp linux-2.6.32.21/drivers/scsi/mpt2sas/mpt2sas_debug.h linux-2.6.32.21/drivers/scsi/mpt2sas/mpt2sas_debug.h
27974--- linux-2.6.32.21/drivers/scsi/mpt2sas/mpt2sas_debug.h 2010-08-26 19:42:20.000000000 -0400 28184--- linux-2.6.32.21/drivers/scsi/mpt2sas/mpt2sas_debug.h 2010-08-13 16:24:37.000000000 -0400
27975+++ linux-2.6.32.21/drivers/scsi/mpt2sas/mpt2sas_debug.h 2010-09-13 08:10:10.000000000 -0400 28185+++ linux-2.6.32.21/drivers/scsi/mpt2sas/mpt2sas_debug.h 2010-09-04 15:54:52.000000000 -0400
27976@@ -79,7 +79,7 @@ 28186@@ -79,7 +79,7 @@
27977 CMD; \ 28187 CMD; \
27978 } 28188 }
@@ -27983,8 +28193,8 @@ diff -urNp linux-2.6.32.21/drivers/scsi/mpt2sas/mpt2sas_debug.h linux-2.6.32.21/
27983 28193
27984 28194
27985diff -urNp linux-2.6.32.21/drivers/scsi/scsi_logging.h linux-2.6.32.21/drivers/scsi/scsi_logging.h 28195diff -urNp linux-2.6.32.21/drivers/scsi/scsi_logging.h linux-2.6.32.21/drivers/scsi/scsi_logging.h
27986--- linux-2.6.32.21/drivers/scsi/scsi_logging.h 2010-08-26 19:42:20.000000000 -0400 28196--- linux-2.6.32.21/drivers/scsi/scsi_logging.h 2010-08-13 16:24:37.000000000 -0400
27987+++ linux-2.6.32.21/drivers/scsi/scsi_logging.h 2010-09-13 08:10:10.000000000 -0400 28197+++ linux-2.6.32.21/drivers/scsi/scsi_logging.h 2010-09-04 15:54:52.000000000 -0400
27988@@ -51,7 +51,7 @@ do { \ 28198@@ -51,7 +51,7 @@ do { \
27989 } while (0); \ 28199 } while (0); \
27990 } while (0) 28200 } while (0)
@@ -27995,8 +28205,8 @@ diff -urNp linux-2.6.32.21/drivers/scsi/scsi_logging.h linux-2.6.32.21/drivers/s
27995 28205
27996 /* 28206 /*
27997diff -urNp linux-2.6.32.21/drivers/scsi/sg.c linux-2.6.32.21/drivers/scsi/sg.c 28207diff -urNp linux-2.6.32.21/drivers/scsi/sg.c linux-2.6.32.21/drivers/scsi/sg.c
27998--- linux-2.6.32.21/drivers/scsi/sg.c 2010-08-26 19:42:20.000000000 -0400 28208--- linux-2.6.32.21/drivers/scsi/sg.c 2010-08-13 16:24:37.000000000 -0400
27999+++ linux-2.6.32.21/drivers/scsi/sg.c 2010-09-13 08:10:10.000000000 -0400 28209+++ linux-2.6.32.21/drivers/scsi/sg.c 2010-09-04 15:54:52.000000000 -0400
28000@@ -2292,7 +2292,7 @@ struct sg_proc_leaf { 28210@@ -2292,7 +2292,7 @@ struct sg_proc_leaf {
28001 const struct file_operations * fops; 28211 const struct file_operations * fops;
28002 }; 28212 };
@@ -28016,8 +28226,8 @@ diff -urNp linux-2.6.32.21/drivers/scsi/sg.c linux-2.6.32.21/drivers/scsi/sg.c
28016 sg_proc_sgp = proc_mkdir(sg_proc_sg_dirname, NULL); 28226 sg_proc_sgp = proc_mkdir(sg_proc_sg_dirname, NULL);
28017 if (!sg_proc_sgp) 28227 if (!sg_proc_sgp)
28018diff -urNp linux-2.6.32.21/drivers/serial/8250_pci.c linux-2.6.32.21/drivers/serial/8250_pci.c 28228diff -urNp linux-2.6.32.21/drivers/serial/8250_pci.c linux-2.6.32.21/drivers/serial/8250_pci.c
28019--- linux-2.6.32.21/drivers/serial/8250_pci.c 2010-08-26 19:42:20.000000000 -0400 28229--- linux-2.6.32.21/drivers/serial/8250_pci.c 2010-08-13 16:24:37.000000000 -0400
28020+++ linux-2.6.32.21/drivers/serial/8250_pci.c 2010-09-13 08:10:10.000000000 -0400 28230+++ linux-2.6.32.21/drivers/serial/8250_pci.c 2010-09-04 15:54:52.000000000 -0400
28021@@ -3664,7 +3664,7 @@ static struct pci_device_id serial_pci_t 28231@@ -3664,7 +3664,7 @@ static struct pci_device_id serial_pci_t
28022 PCI_ANY_ID, PCI_ANY_ID, 28232 PCI_ANY_ID, PCI_ANY_ID,
28023 PCI_CLASS_COMMUNICATION_MULTISERIAL << 8, 28233 PCI_CLASS_COMMUNICATION_MULTISERIAL << 8,
@@ -28028,8 +28238,8 @@ diff -urNp linux-2.6.32.21/drivers/serial/8250_pci.c linux-2.6.32.21/drivers/ser
28028 28238
28029 static struct pci_driver serial_pci_driver = { 28239 static struct pci_driver serial_pci_driver = {
28030diff -urNp linux-2.6.32.21/drivers/serial/kgdboc.c linux-2.6.32.21/drivers/serial/kgdboc.c 28240diff -urNp linux-2.6.32.21/drivers/serial/kgdboc.c linux-2.6.32.21/drivers/serial/kgdboc.c
28031--- linux-2.6.32.21/drivers/serial/kgdboc.c 2010-08-26 19:42:20.000000000 -0400 28241--- linux-2.6.32.21/drivers/serial/kgdboc.c 2010-08-13 16:24:37.000000000 -0400
28032+++ linux-2.6.32.21/drivers/serial/kgdboc.c 2010-09-13 08:10:10.000000000 -0400 28242+++ linux-2.6.32.21/drivers/serial/kgdboc.c 2010-09-04 15:54:52.000000000 -0400
28033@@ -18,7 +18,7 @@ 28243@@ -18,7 +18,7 @@
28034 28244
28035 #define MAX_CONFIG_LEN 40 28245 #define MAX_CONFIG_LEN 40
@@ -28049,8 +28259,8 @@ diff -urNp linux-2.6.32.21/drivers/serial/kgdboc.c linux-2.6.32.21/drivers/seria
28049 .read_char = kgdboc_get_char, 28259 .read_char = kgdboc_get_char,
28050 .write_char = kgdboc_put_char, 28260 .write_char = kgdboc_put_char,
28051diff -urNp linux-2.6.32.21/drivers/staging/android/binder.c linux-2.6.32.21/drivers/staging/android/binder.c 28261diff -urNp linux-2.6.32.21/drivers/staging/android/binder.c linux-2.6.32.21/drivers/staging/android/binder.c
28052--- linux-2.6.32.21/drivers/staging/android/binder.c 2010-08-26 19:42:20.000000000 -0400 28262--- linux-2.6.32.21/drivers/staging/android/binder.c 2010-08-13 16:24:37.000000000 -0400
28053+++ linux-2.6.32.21/drivers/staging/android/binder.c 2010-09-13 08:10:10.000000000 -0400 28263+++ linux-2.6.32.21/drivers/staging/android/binder.c 2010-09-04 15:54:52.000000000 -0400
28054@@ -2756,7 +2756,7 @@ static void binder_vma_close(struct vm_a 28264@@ -2756,7 +2756,7 @@ static void binder_vma_close(struct vm_a
28055 binder_defer_work(proc, BINDER_DEFERRED_PUT_FILES); 28265 binder_defer_work(proc, BINDER_DEFERRED_PUT_FILES);
28056 } 28266 }
@@ -28061,8 +28271,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/android/binder.c linux-2.6.32.21/driv
28061 .close = binder_vma_close, 28271 .close = binder_vma_close,
28062 }; 28272 };
28063diff -urNp linux-2.6.32.21/drivers/staging/b3dfg/b3dfg.c linux-2.6.32.21/drivers/staging/b3dfg/b3dfg.c 28273diff -urNp linux-2.6.32.21/drivers/staging/b3dfg/b3dfg.c linux-2.6.32.21/drivers/staging/b3dfg/b3dfg.c
28064--- linux-2.6.32.21/drivers/staging/b3dfg/b3dfg.c 2010-08-26 19:42:20.000000000 -0400 28274--- linux-2.6.32.21/drivers/staging/b3dfg/b3dfg.c 2010-08-13 16:24:37.000000000 -0400
28065+++ linux-2.6.32.21/drivers/staging/b3dfg/b3dfg.c 2010-09-13 08:10:10.000000000 -0400 28275+++ linux-2.6.32.21/drivers/staging/b3dfg/b3dfg.c 2010-09-04 15:54:52.000000000 -0400
28066@@ -455,7 +455,7 @@ static int b3dfg_vma_fault(struct vm_are 28276@@ -455,7 +455,7 @@ static int b3dfg_vma_fault(struct vm_are
28067 return VM_FAULT_NOPAGE; 28277 return VM_FAULT_NOPAGE;
28068 } 28278 }
@@ -28082,8 +28292,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/b3dfg/b3dfg.c linux-2.6.32.21/drivers
28082 .open = b3dfg_open, 28292 .open = b3dfg_open,
28083 .release = b3dfg_release, 28293 .release = b3dfg_release,
28084diff -urNp linux-2.6.32.21/drivers/staging/comedi/comedi_fops.c linux-2.6.32.21/drivers/staging/comedi/comedi_fops.c 28294diff -urNp linux-2.6.32.21/drivers/staging/comedi/comedi_fops.c linux-2.6.32.21/drivers/staging/comedi/comedi_fops.c
28085--- linux-2.6.32.21/drivers/staging/comedi/comedi_fops.c 2010-08-26 19:42:20.000000000 -0400 28295--- linux-2.6.32.21/drivers/staging/comedi/comedi_fops.c 2010-08-13 16:24:37.000000000 -0400
28086+++ linux-2.6.32.21/drivers/staging/comedi/comedi_fops.c 2010-09-13 08:10:10.000000000 -0400 28296+++ linux-2.6.32.21/drivers/staging/comedi/comedi_fops.c 2010-09-04 15:54:52.000000000 -0400
28087@@ -1389,7 +1389,7 @@ void comedi_unmap(struct vm_area_struct 28297@@ -1389,7 +1389,7 @@ void comedi_unmap(struct vm_area_struct
28088 mutex_unlock(&dev->mutex); 28298 mutex_unlock(&dev->mutex);
28089 } 28299 }
@@ -28094,8 +28304,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/comedi/comedi_fops.c linux-2.6.32.21/
28094 }; 28304 };
28095 28305
28096diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/adsp_driver.c linux-2.6.32.21/drivers/staging/dream/qdsp5/adsp_driver.c 28306diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/adsp_driver.c linux-2.6.32.21/drivers/staging/dream/qdsp5/adsp_driver.c
28097--- linux-2.6.32.21/drivers/staging/dream/qdsp5/adsp_driver.c 2010-08-26 19:42:20.000000000 -0400 28307--- linux-2.6.32.21/drivers/staging/dream/qdsp5/adsp_driver.c 2010-08-13 16:24:37.000000000 -0400
28098+++ linux-2.6.32.21/drivers/staging/dream/qdsp5/adsp_driver.c 2010-09-13 08:10:10.000000000 -0400 28308+++ linux-2.6.32.21/drivers/staging/dream/qdsp5/adsp_driver.c 2010-09-04 15:54:52.000000000 -0400
28099@@ -576,7 +576,7 @@ static struct adsp_device *inode_to_devi 28309@@ -576,7 +576,7 @@ static struct adsp_device *inode_to_devi
28100 static dev_t adsp_devno; 28310 static dev_t adsp_devno;
28101 static struct class *adsp_class; 28311 static struct class *adsp_class;
@@ -28106,8 +28316,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/adsp_driver.c linux-2.6.3
28106 .open = adsp_open, 28316 .open = adsp_open,
28107 .unlocked_ioctl = adsp_ioctl, 28317 .unlocked_ioctl = adsp_ioctl,
28108diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_aac.c linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_aac.c 28318diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_aac.c linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_aac.c
28109--- linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_aac.c 2010-08-26 19:42:20.000000000 -0400 28319--- linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_aac.c 2010-08-13 16:24:37.000000000 -0400
28110+++ linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_aac.c 2010-09-13 08:10:10.000000000 -0400 28320+++ linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_aac.c 2010-09-04 15:54:52.000000000 -0400
28111@@ -1022,7 +1022,7 @@ done: 28321@@ -1022,7 +1022,7 @@ done:
28112 return rc; 28322 return rc;
28113 } 28323 }
@@ -28118,8 +28328,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_aac.c linux-2.6.32.
28118 .open = audio_open, 28328 .open = audio_open,
28119 .release = audio_release, 28329 .release = audio_release,
28120diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_amrnb.c linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_amrnb.c 28330diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_amrnb.c linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_amrnb.c
28121--- linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_amrnb.c 2010-08-26 19:42:20.000000000 -0400 28331--- linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_amrnb.c 2010-08-13 16:24:37.000000000 -0400
28122+++ linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_amrnb.c 2010-09-13 08:10:10.000000000 -0400 28332+++ linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_amrnb.c 2010-09-04 15:54:52.000000000 -0400
28123@@ -833,7 +833,7 @@ done: 28333@@ -833,7 +833,7 @@ done:
28124 return rc; 28334 return rc;
28125 } 28335 }
@@ -28130,8 +28340,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_amrnb.c linux-2.6.3
28130 .open = audamrnb_open, 28340 .open = audamrnb_open,
28131 .release = audamrnb_release, 28341 .release = audamrnb_release,
28132diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_evrc.c linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_evrc.c 28342diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_evrc.c linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_evrc.c
28133--- linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_evrc.c 2010-08-26 19:42:20.000000000 -0400 28343--- linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_evrc.c 2010-08-13 16:24:37.000000000 -0400
28134+++ linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_evrc.c 2010-09-13 08:10:10.000000000 -0400 28344+++ linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_evrc.c 2010-09-04 15:54:52.000000000 -0400
28135@@ -805,7 +805,7 @@ dma_fail: 28345@@ -805,7 +805,7 @@ dma_fail:
28136 return rc; 28346 return rc;
28137 } 28347 }
@@ -28142,8 +28352,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_evrc.c linux-2.6.32
28142 .open = audevrc_open, 28352 .open = audevrc_open,
28143 .release = audevrc_release, 28353 .release = audevrc_release,
28144diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_in.c linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_in.c 28354diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_in.c linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_in.c
28145--- linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_in.c 2010-08-26 19:42:20.000000000 -0400 28355--- linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_in.c 2010-08-13 16:24:37.000000000 -0400
28146+++ linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_in.c 2010-09-13 08:10:10.000000000 -0400 28356+++ linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_in.c 2010-09-04 15:54:52.000000000 -0400
28147@@ -913,7 +913,7 @@ static int audpre_open(struct inode *ino 28357@@ -913,7 +913,7 @@ static int audpre_open(struct inode *ino
28148 return 0; 28358 return 0;
28149 } 28359 }
@@ -28163,8 +28373,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_in.c linux-2.6.32.2
28163 .open = audpre_open, 28373 .open = audpre_open,
28164 .unlocked_ioctl = audpre_ioctl, 28374 .unlocked_ioctl = audpre_ioctl,
28165diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_mp3.c linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_mp3.c 28375diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_mp3.c linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_mp3.c
28166--- linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_mp3.c 2010-08-26 19:42:20.000000000 -0400 28376--- linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_mp3.c 2010-08-13 16:24:37.000000000 -0400
28167+++ linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_mp3.c 2010-09-13 08:10:10.000000000 -0400 28377+++ linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_mp3.c 2010-09-04 15:54:52.000000000 -0400
28168@@ -941,7 +941,7 @@ done: 28378@@ -941,7 +941,7 @@ done:
28169 return rc; 28379 return rc;
28170 } 28380 }
@@ -28175,8 +28385,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_mp3.c linux-2.6.32.
28175 .open = audio_open, 28385 .open = audio_open,
28176 .release = audio_release, 28386 .release = audio_release,
28177diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_out.c linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_out.c 28387diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_out.c linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_out.c
28178--- linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_out.c 2010-08-26 19:42:20.000000000 -0400 28388--- linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_out.c 2010-08-13 16:24:37.000000000 -0400
28179+++ linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_out.c 2010-09-13 08:10:10.000000000 -0400 28389+++ linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_out.c 2010-09-04 15:54:52.000000000 -0400
28180@@ -810,7 +810,7 @@ static int audpp_open(struct inode *inod 28390@@ -810,7 +810,7 @@ static int audpp_open(struct inode *inod
28181 return 0; 28391 return 0;
28182 } 28392 }
@@ -28196,8 +28406,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_out.c linux-2.6.32.
28196 .open = audpp_open, 28406 .open = audpp_open,
28197 .unlocked_ioctl = audpp_ioctl, 28407 .unlocked_ioctl = audpp_ioctl,
28198diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_qcelp.c linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_qcelp.c 28408diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_qcelp.c linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_qcelp.c
28199--- linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_qcelp.c 2010-08-26 19:42:20.000000000 -0400 28409--- linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_qcelp.c 2010-08-13 16:24:37.000000000 -0400
28200+++ linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_qcelp.c 2010-09-13 08:10:10.000000000 -0400 28410+++ linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_qcelp.c 2010-09-04 15:54:52.000000000 -0400
28201@@ -816,7 +816,7 @@ err: 28411@@ -816,7 +816,7 @@ err:
28202 return rc; 28412 return rc;
28203 } 28413 }
@@ -28208,8 +28418,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/audio_qcelp.c linux-2.6.3
28208 .open = audqcelp_open, 28418 .open = audqcelp_open,
28209 .release = audqcelp_release, 28419 .release = audqcelp_release,
28210diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/snd.c linux-2.6.32.21/drivers/staging/dream/qdsp5/snd.c 28420diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/snd.c linux-2.6.32.21/drivers/staging/dream/qdsp5/snd.c
28211--- linux-2.6.32.21/drivers/staging/dream/qdsp5/snd.c 2010-08-26 19:42:20.000000000 -0400 28421--- linux-2.6.32.21/drivers/staging/dream/qdsp5/snd.c 2010-08-13 16:24:37.000000000 -0400
28212+++ linux-2.6.32.21/drivers/staging/dream/qdsp5/snd.c 2010-09-13 08:10:10.000000000 -0400 28422+++ linux-2.6.32.21/drivers/staging/dream/qdsp5/snd.c 2010-09-04 15:54:52.000000000 -0400
28213@@ -242,7 +242,7 @@ err: 28423@@ -242,7 +242,7 @@ err:
28214 return rc; 28424 return rc;
28215 } 28425 }
@@ -28220,8 +28430,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/dream/qdsp5/snd.c linux-2.6.32.21/dri
28220 .open = snd_open, 28430 .open = snd_open,
28221 .release = snd_release, 28431 .release = snd_release,
28222diff -urNp linux-2.6.32.21/drivers/staging/dream/smd/smd_qmi.c linux-2.6.32.21/drivers/staging/dream/smd/smd_qmi.c 28432diff -urNp linux-2.6.32.21/drivers/staging/dream/smd/smd_qmi.c linux-2.6.32.21/drivers/staging/dream/smd/smd_qmi.c
28223--- linux-2.6.32.21/drivers/staging/dream/smd/smd_qmi.c 2010-08-26 19:42:20.000000000 -0400 28433--- linux-2.6.32.21/drivers/staging/dream/smd/smd_qmi.c 2010-08-13 16:24:37.000000000 -0400
28224+++ linux-2.6.32.21/drivers/staging/dream/smd/smd_qmi.c 2010-09-13 08:10:10.000000000 -0400 28434+++ linux-2.6.32.21/drivers/staging/dream/smd/smd_qmi.c 2010-09-04 15:54:52.000000000 -0400
28225@@ -793,7 +793,7 @@ static int qmi_release(struct inode *ip, 28435@@ -793,7 +793,7 @@ static int qmi_release(struct inode *ip,
28226 return 0; 28436 return 0;
28227 } 28437 }
@@ -28232,8 +28442,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/dream/smd/smd_qmi.c linux-2.6.32.21/d
28232 .read = qmi_read, 28442 .read = qmi_read,
28233 .write = qmi_write, 28443 .write = qmi_write,
28234diff -urNp linux-2.6.32.21/drivers/staging/dream/smd/smd_rpcrouter_device.c linux-2.6.32.21/drivers/staging/dream/smd/smd_rpcrouter_device.c 28444diff -urNp linux-2.6.32.21/drivers/staging/dream/smd/smd_rpcrouter_device.c linux-2.6.32.21/drivers/staging/dream/smd/smd_rpcrouter_device.c
28235--- linux-2.6.32.21/drivers/staging/dream/smd/smd_rpcrouter_device.c 2010-08-26 19:42:20.000000000 -0400 28445--- linux-2.6.32.21/drivers/staging/dream/smd/smd_rpcrouter_device.c 2010-08-13 16:24:37.000000000 -0400
28236+++ linux-2.6.32.21/drivers/staging/dream/smd/smd_rpcrouter_device.c 2010-09-13 08:10:10.000000000 -0400 28446+++ linux-2.6.32.21/drivers/staging/dream/smd/smd_rpcrouter_device.c 2010-09-04 15:54:52.000000000 -0400
28237@@ -214,7 +214,7 @@ static long rpcrouter_ioctl(struct file 28447@@ -214,7 +214,7 @@ static long rpcrouter_ioctl(struct file
28238 return rc; 28448 return rc;
28239 } 28449 }
@@ -28253,8 +28463,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/dream/smd/smd_rpcrouter_device.c linu
28253 .open = rpcrouter_open, 28463 .open = rpcrouter_open,
28254 .release = rpcrouter_release, 28464 .release = rpcrouter_release,
28255diff -urNp linux-2.6.32.21/drivers/staging/dst/dcore.c linux-2.6.32.21/drivers/staging/dst/dcore.c 28465diff -urNp linux-2.6.32.21/drivers/staging/dst/dcore.c linux-2.6.32.21/drivers/staging/dst/dcore.c
28256--- linux-2.6.32.21/drivers/staging/dst/dcore.c 2010-08-26 19:42:20.000000000 -0400 28466--- linux-2.6.32.21/drivers/staging/dst/dcore.c 2010-08-13 16:24:37.000000000 -0400
28257+++ linux-2.6.32.21/drivers/staging/dst/dcore.c 2010-09-13 08:10:10.000000000 -0400 28467+++ linux-2.6.32.21/drivers/staging/dst/dcore.c 2010-09-04 15:54:52.000000000 -0400
28258@@ -149,7 +149,7 @@ static int dst_bdev_release(struct gendi 28468@@ -149,7 +149,7 @@ static int dst_bdev_release(struct gendi
28259 return 0; 28469 return 0;
28260 } 28470 }
@@ -28274,8 +28484,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/dst/dcore.c linux-2.6.32.21/drivers/s
28274 28484
28275 err = dst_node_sysfs_init(n); 28485 err = dst_node_sysfs_init(n);
28276diff -urNp linux-2.6.32.21/drivers/staging/dst/trans.c linux-2.6.32.21/drivers/staging/dst/trans.c 28486diff -urNp linux-2.6.32.21/drivers/staging/dst/trans.c linux-2.6.32.21/drivers/staging/dst/trans.c
28277--- linux-2.6.32.21/drivers/staging/dst/trans.c 2010-08-26 19:42:20.000000000 -0400 28487--- linux-2.6.32.21/drivers/staging/dst/trans.c 2010-08-13 16:24:37.000000000 -0400
28278+++ linux-2.6.32.21/drivers/staging/dst/trans.c 2010-09-13 08:10:10.000000000 -0400 28488+++ linux-2.6.32.21/drivers/staging/dst/trans.c 2010-09-04 15:54:52.000000000 -0400
28279@@ -169,7 +169,7 @@ int dst_process_bio(struct dst_node *n, 28489@@ -169,7 +169,7 @@ int dst_process_bio(struct dst_node *n,
28280 t->error = 0; 28490 t->error = 0;
28281 t->retries = 0; 28491 t->retries = 0;
@@ -28286,8 +28496,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/dst/trans.c linux-2.6.32.21/drivers/s
28286 t->enc = bio_data_dir(bio); 28496 t->enc = bio_data_dir(bio);
28287 dst_bio_to_cmd(bio, &t->cmd, DST_IO, t->gen); 28497 dst_bio_to_cmd(bio, &t->cmd, DST_IO, t->gen);
28288diff -urNp linux-2.6.32.21/drivers/staging/go7007/go7007-v4l2.c linux-2.6.32.21/drivers/staging/go7007/go7007-v4l2.c 28498diff -urNp linux-2.6.32.21/drivers/staging/go7007/go7007-v4l2.c linux-2.6.32.21/drivers/staging/go7007/go7007-v4l2.c
28289--- linux-2.6.32.21/drivers/staging/go7007/go7007-v4l2.c 2010-08-26 19:42:20.000000000 -0400 28499--- linux-2.6.32.21/drivers/staging/go7007/go7007-v4l2.c 2010-08-13 16:24:37.000000000 -0400
28290+++ linux-2.6.32.21/drivers/staging/go7007/go7007-v4l2.c 2010-09-13 08:10:10.000000000 -0400 28500+++ linux-2.6.32.21/drivers/staging/go7007/go7007-v4l2.c 2010-09-04 15:54:52.000000000 -0400
28291@@ -1700,7 +1700,7 @@ static int go7007_vm_fault(struct vm_are 28501@@ -1700,7 +1700,7 @@ static int go7007_vm_fault(struct vm_are
28292 return 0; 28502 return 0;
28293 } 28503 }
@@ -28297,21 +28507,9 @@ diff -urNp linux-2.6.32.21/drivers/staging/go7007/go7007-v4l2.c linux-2.6.32.21/
28297 .open = go7007_vm_open, 28507 .open = go7007_vm_open,
28298 .close = go7007_vm_close, 28508 .close = go7007_vm_close,
28299 .fault = go7007_vm_fault, 28509 .fault = go7007_vm_fault,
28300diff -urNp linux-2.6.32.21/drivers/staging/hv/Hv.c linux-2.6.32.21/drivers/staging/hv/Hv.c
28301--- linux-2.6.32.21/drivers/staging/hv/Hv.c 2010-08-26 19:42:20.000000000 -0400
28302+++ linux-2.6.32.21/drivers/staging/hv/Hv.c 2010-09-13 08:10:10.000000000 -0400
28303@@ -161,7 +161,7 @@ static u64 HvDoHypercall(u64 Control, vo
28304 u64 outputAddress = (Output) ? virt_to_phys(Output) : 0;
28305 u32 outputAddressHi = outputAddress >> 32;
28306 u32 outputAddressLo = outputAddress & 0xFFFFFFFF;
28307- volatile void *hypercallPage = gHvContext.HypercallPage;
28308+ volatile void *hypercallPage = ktva_ktla(gHvContext.HypercallPage);
28309
28310 DPRINT_DBG(VMBUS, "Hypercall <control %llx input %p output %p>",
28311 Control, Input, Output);
28312diff -urNp linux-2.6.32.21/drivers/staging/hv/blkvsc_drv.c linux-2.6.32.21/drivers/staging/hv/blkvsc_drv.c 28510diff -urNp linux-2.6.32.21/drivers/staging/hv/blkvsc_drv.c linux-2.6.32.21/drivers/staging/hv/blkvsc_drv.c
28313--- linux-2.6.32.21/drivers/staging/hv/blkvsc_drv.c 2010-08-26 19:42:20.000000000 -0400 28511--- linux-2.6.32.21/drivers/staging/hv/blkvsc_drv.c 2010-08-13 16:24:37.000000000 -0400
28314+++ linux-2.6.32.21/drivers/staging/hv/blkvsc_drv.c 2010-09-13 08:10:10.000000000 -0400 28512+++ linux-2.6.32.21/drivers/staging/hv/blkvsc_drv.c 2010-09-04 15:54:52.000000000 -0400
28315@@ -153,7 +153,7 @@ static int blkvsc_ringbuffer_size = BLKV 28513@@ -153,7 +153,7 @@ static int blkvsc_ringbuffer_size = BLKV
28316 /* The one and only one */ 28514 /* The one and only one */
28317 static struct blkvsc_driver_context g_blkvsc_drv; 28515 static struct blkvsc_driver_context g_blkvsc_drv;
@@ -28321,9 +28519,21 @@ diff -urNp linux-2.6.32.21/drivers/staging/hv/blkvsc_drv.c linux-2.6.32.21/drive
28321 .owner = THIS_MODULE, 28519 .owner = THIS_MODULE,
28322 .open = blkvsc_open, 28520 .open = blkvsc_open,
28323 .release = blkvsc_release, 28521 .release = blkvsc_release,
28522diff -urNp linux-2.6.32.21/drivers/staging/hv/Hv.c linux-2.6.32.21/drivers/staging/hv/Hv.c
28523--- linux-2.6.32.21/drivers/staging/hv/Hv.c 2010-08-13 16:24:37.000000000 -0400
28524+++ linux-2.6.32.21/drivers/staging/hv/Hv.c 2010-09-04 15:54:52.000000000 -0400
28525@@ -161,7 +161,7 @@ static u64 HvDoHypercall(u64 Control, vo
28526 u64 outputAddress = (Output) ? virt_to_phys(Output) : 0;
28527 u32 outputAddressHi = outputAddress >> 32;
28528 u32 outputAddressLo = outputAddress & 0xFFFFFFFF;
28529- volatile void *hypercallPage = gHvContext.HypercallPage;
28530+ volatile void *hypercallPage = ktva_ktla(gHvContext.HypercallPage);
28531
28532 DPRINT_DBG(VMBUS, "Hypercall <control %llx input %p output %p>",
28533 Control, Input, Output);
28324diff -urNp linux-2.6.32.21/drivers/staging/panel/panel.c linux-2.6.32.21/drivers/staging/panel/panel.c 28534diff -urNp linux-2.6.32.21/drivers/staging/panel/panel.c linux-2.6.32.21/drivers/staging/panel/panel.c
28325--- linux-2.6.32.21/drivers/staging/panel/panel.c 2010-08-26 19:42:20.000000000 -0400 28535--- linux-2.6.32.21/drivers/staging/panel/panel.c 2010-08-13 16:24:37.000000000 -0400
28326+++ linux-2.6.32.21/drivers/staging/panel/panel.c 2010-09-13 08:10:10.000000000 -0400 28536+++ linux-2.6.32.21/drivers/staging/panel/panel.c 2010-09-04 15:54:52.000000000 -0400
28327@@ -1305,7 +1305,7 @@ static int lcd_release(struct inode *ino 28537@@ -1305,7 +1305,7 @@ static int lcd_release(struct inode *ino
28328 return 0; 28538 return 0;
28329 } 28539 }
@@ -28343,8 +28553,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/panel/panel.c linux-2.6.32.21/drivers
28343 .open = keypad_open, /* open */ 28553 .open = keypad_open, /* open */
28344 .release = keypad_release, /* close */ 28554 .release = keypad_release, /* close */
28345diff -urNp linux-2.6.32.21/drivers/staging/phison/phison.c linux-2.6.32.21/drivers/staging/phison/phison.c 28555diff -urNp linux-2.6.32.21/drivers/staging/phison/phison.c linux-2.6.32.21/drivers/staging/phison/phison.c
28346--- linux-2.6.32.21/drivers/staging/phison/phison.c 2010-08-26 19:42:20.000000000 -0400 28556--- linux-2.6.32.21/drivers/staging/phison/phison.c 2010-08-13 16:24:37.000000000 -0400
28347+++ linux-2.6.32.21/drivers/staging/phison/phison.c 2010-09-13 08:10:10.000000000 -0400 28557+++ linux-2.6.32.21/drivers/staging/phison/phison.c 2010-09-04 15:54:52.000000000 -0400
28348@@ -43,7 +43,7 @@ static struct scsi_host_template phison_ 28558@@ -43,7 +43,7 @@ static struct scsi_host_template phison_
28349 ATA_BMDMA_SHT(DRV_NAME), 28559 ATA_BMDMA_SHT(DRV_NAME),
28350 }; 28560 };
@@ -28355,8 +28565,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/phison/phison.c linux-2.6.32.21/drive
28355 .prereset = phison_pre_reset, 28565 .prereset = phison_pre_reset,
28356 }; 28566 };
28357diff -urNp linux-2.6.32.21/drivers/staging/poch/poch.c linux-2.6.32.21/drivers/staging/poch/poch.c 28567diff -urNp linux-2.6.32.21/drivers/staging/poch/poch.c linux-2.6.32.21/drivers/staging/poch/poch.c
28358--- linux-2.6.32.21/drivers/staging/poch/poch.c 2010-08-26 19:42:20.000000000 -0400 28568--- linux-2.6.32.21/drivers/staging/poch/poch.c 2010-08-13 16:24:37.000000000 -0400
28359+++ linux-2.6.32.21/drivers/staging/poch/poch.c 2010-09-13 08:10:10.000000000 -0400 28569+++ linux-2.6.32.21/drivers/staging/poch/poch.c 2010-09-04 15:54:52.000000000 -0400
28360@@ -1057,7 +1057,7 @@ static int poch_ioctl(struct inode *inod 28570@@ -1057,7 +1057,7 @@ static int poch_ioctl(struct inode *inod
28361 return 0; 28571 return 0;
28362 } 28572 }
@@ -28367,8 +28577,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/poch/poch.c linux-2.6.32.21/drivers/s
28367 .open = poch_open, 28577 .open = poch_open,
28368 .release = poch_release, 28578 .release = poch_release,
28369diff -urNp linux-2.6.32.21/drivers/staging/pohmelfs/inode.c linux-2.6.32.21/drivers/staging/pohmelfs/inode.c 28579diff -urNp linux-2.6.32.21/drivers/staging/pohmelfs/inode.c linux-2.6.32.21/drivers/staging/pohmelfs/inode.c
28370--- linux-2.6.32.21/drivers/staging/pohmelfs/inode.c 2010-08-26 19:42:20.000000000 -0400 28580--- linux-2.6.32.21/drivers/staging/pohmelfs/inode.c 2010-08-13 16:24:37.000000000 -0400
28371+++ linux-2.6.32.21/drivers/staging/pohmelfs/inode.c 2010-09-13 08:10:10.000000000 -0400 28581+++ linux-2.6.32.21/drivers/staging/pohmelfs/inode.c 2010-09-04 15:54:52.000000000 -0400
28372@@ -1850,7 +1850,7 @@ static int pohmelfs_fill_super(struct su 28582@@ -1850,7 +1850,7 @@ static int pohmelfs_fill_super(struct su
28373 mutex_init(&psb->mcache_lock); 28583 mutex_init(&psb->mcache_lock);
28374 psb->mcache_root = RB_ROOT; 28584 psb->mcache_root = RB_ROOT;
@@ -28379,8 +28589,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/pohmelfs/inode.c linux-2.6.32.21/driv
28379 psb->trans_max_pages = 100; 28589 psb->trans_max_pages = 100;
28380 28590
28381diff -urNp linux-2.6.32.21/drivers/staging/pohmelfs/mcache.c linux-2.6.32.21/drivers/staging/pohmelfs/mcache.c 28591diff -urNp linux-2.6.32.21/drivers/staging/pohmelfs/mcache.c linux-2.6.32.21/drivers/staging/pohmelfs/mcache.c
28382--- linux-2.6.32.21/drivers/staging/pohmelfs/mcache.c 2010-08-26 19:42:20.000000000 -0400 28592--- linux-2.6.32.21/drivers/staging/pohmelfs/mcache.c 2010-08-13 16:24:37.000000000 -0400
28383+++ linux-2.6.32.21/drivers/staging/pohmelfs/mcache.c 2010-09-13 08:10:10.000000000 -0400 28593+++ linux-2.6.32.21/drivers/staging/pohmelfs/mcache.c 2010-09-04 15:54:52.000000000 -0400
28384@@ -121,7 +121,7 @@ struct pohmelfs_mcache *pohmelfs_mcache_ 28594@@ -121,7 +121,7 @@ struct pohmelfs_mcache *pohmelfs_mcache_
28385 m->data = data; 28595 m->data = data;
28386 m->start = start; 28596 m->start = start;
@@ -28391,8 +28601,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/pohmelfs/mcache.c linux-2.6.32.21/dri
28391 mutex_lock(&psb->mcache_lock); 28601 mutex_lock(&psb->mcache_lock);
28392 err = pohmelfs_mcache_insert(psb, m); 28602 err = pohmelfs_mcache_insert(psb, m);
28393diff -urNp linux-2.6.32.21/drivers/staging/pohmelfs/netfs.h linux-2.6.32.21/drivers/staging/pohmelfs/netfs.h 28603diff -urNp linux-2.6.32.21/drivers/staging/pohmelfs/netfs.h linux-2.6.32.21/drivers/staging/pohmelfs/netfs.h
28394--- linux-2.6.32.21/drivers/staging/pohmelfs/netfs.h 2010-08-26 19:42:20.000000000 -0400 28604--- linux-2.6.32.21/drivers/staging/pohmelfs/netfs.h 2010-08-13 16:24:37.000000000 -0400
28395+++ linux-2.6.32.21/drivers/staging/pohmelfs/netfs.h 2010-09-13 08:10:10.000000000 -0400 28605+++ linux-2.6.32.21/drivers/staging/pohmelfs/netfs.h 2010-09-04 15:54:52.000000000 -0400
28396@@ -570,7 +570,7 @@ struct pohmelfs_config; 28606@@ -570,7 +570,7 @@ struct pohmelfs_config;
28397 struct pohmelfs_sb { 28607 struct pohmelfs_sb {
28398 struct rb_root mcache_root; 28608 struct rb_root mcache_root;
@@ -28403,8 +28613,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/pohmelfs/netfs.h linux-2.6.32.21/driv
28403 28613
28404 unsigned int idx; 28614 unsigned int idx;
28405diff -urNp linux-2.6.32.21/drivers/staging/sep/sep_driver.c linux-2.6.32.21/drivers/staging/sep/sep_driver.c 28615diff -urNp linux-2.6.32.21/drivers/staging/sep/sep_driver.c linux-2.6.32.21/drivers/staging/sep/sep_driver.c
28406--- linux-2.6.32.21/drivers/staging/sep/sep_driver.c 2010-08-26 19:42:20.000000000 -0400 28616--- linux-2.6.32.21/drivers/staging/sep/sep_driver.c 2010-08-13 16:24:37.000000000 -0400
28407+++ linux-2.6.32.21/drivers/staging/sep/sep_driver.c 2010-09-13 08:10:10.000000000 -0400 28617+++ linux-2.6.32.21/drivers/staging/sep/sep_driver.c 2010-09-04 15:54:52.000000000 -0400
28408@@ -2603,7 +2603,7 @@ static struct pci_driver sep_pci_driver 28618@@ -2603,7 +2603,7 @@ static struct pci_driver sep_pci_driver
28409 static dev_t sep_devno; 28619 static dev_t sep_devno;
28410 28620
@@ -28415,8 +28625,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/sep/sep_driver.c linux-2.6.32.21/driv
28415 .ioctl = sep_ioctl, 28625 .ioctl = sep_ioctl,
28416 .poll = sep_poll, 28626 .poll = sep_poll,
28417diff -urNp linux-2.6.32.21/drivers/staging/vme/devices/vme_user.c linux-2.6.32.21/drivers/staging/vme/devices/vme_user.c 28627diff -urNp linux-2.6.32.21/drivers/staging/vme/devices/vme_user.c linux-2.6.32.21/drivers/staging/vme/devices/vme_user.c
28418--- linux-2.6.32.21/drivers/staging/vme/devices/vme_user.c 2010-08-26 19:42:20.000000000 -0400 28628--- linux-2.6.32.21/drivers/staging/vme/devices/vme_user.c 2010-08-13 16:24:37.000000000 -0400
28419+++ linux-2.6.32.21/drivers/staging/vme/devices/vme_user.c 2010-09-13 08:10:10.000000000 -0400 28629+++ linux-2.6.32.21/drivers/staging/vme/devices/vme_user.c 2010-09-04 15:54:52.000000000 -0400
28420@@ -136,7 +136,7 @@ static int vme_user_ioctl(struct inode * 28630@@ -136,7 +136,7 @@ static int vme_user_ioctl(struct inode *
28421 static int __init vme_user_probe(struct device *, int, int); 28631 static int __init vme_user_probe(struct device *, int, int);
28422 static int __exit vme_user_remove(struct device *, int, int); 28632 static int __exit vme_user_remove(struct device *, int, int);
@@ -28427,8 +28637,8 @@ diff -urNp linux-2.6.32.21/drivers/staging/vme/devices/vme_user.c linux-2.6.32.2
28427 .release = vme_user_release, 28637 .release = vme_user_release,
28428 .read = vme_user_read, 28638 .read = vme_user_read,
28429diff -urNp linux-2.6.32.21/drivers/uio/uio.c linux-2.6.32.21/drivers/uio/uio.c 28639diff -urNp linux-2.6.32.21/drivers/uio/uio.c linux-2.6.32.21/drivers/uio/uio.c
28430--- linux-2.6.32.21/drivers/uio/uio.c 2010-08-26 19:42:20.000000000 -0400 28640--- linux-2.6.32.21/drivers/uio/uio.c 2010-08-13 16:24:37.000000000 -0400
28431+++ linux-2.6.32.21/drivers/uio/uio.c 2010-09-13 08:10:10.000000000 -0400 28641+++ linux-2.6.32.21/drivers/uio/uio.c 2010-09-04 15:54:52.000000000 -0400
28432@@ -129,7 +129,7 @@ static ssize_t map_type_show(struct kobj 28642@@ -129,7 +129,7 @@ static ssize_t map_type_show(struct kobj
28433 return entry->show(mem, buf); 28643 return entry->show(mem, buf);
28434 } 28644 }
@@ -28448,8 +28658,8 @@ diff -urNp linux-2.6.32.21/drivers/uio/uio.c linux-2.6.32.21/drivers/uio/uio.c
28448 }; 28658 };
28449 28659
28450diff -urNp linux-2.6.32.21/drivers/usb/atm/usbatm.c linux-2.6.32.21/drivers/usb/atm/usbatm.c 28660diff -urNp linux-2.6.32.21/drivers/usb/atm/usbatm.c linux-2.6.32.21/drivers/usb/atm/usbatm.c
28451--- linux-2.6.32.21/drivers/usb/atm/usbatm.c 2010-08-26 19:42:20.000000000 -0400 28661--- linux-2.6.32.21/drivers/usb/atm/usbatm.c 2010-08-13 16:24:37.000000000 -0400
28452+++ linux-2.6.32.21/drivers/usb/atm/usbatm.c 2010-09-13 08:10:10.000000000 -0400 28662+++ linux-2.6.32.21/drivers/usb/atm/usbatm.c 2010-09-04 15:54:52.000000000 -0400
28453@@ -333,7 +333,7 @@ static void usbatm_extract_one_cell(stru 28663@@ -333,7 +333,7 @@ static void usbatm_extract_one_cell(stru
28454 if (printk_ratelimit()) 28664 if (printk_ratelimit())
28455 atm_warn(instance, "%s: OAM not supported (vpi %d, vci %d)!\n", 28665 atm_warn(instance, "%s: OAM not supported (vpi %d, vci %d)!\n",
@@ -28530,8 +28740,8 @@ diff -urNp linux-2.6.32.21/drivers/usb/atm/usbatm.c linux-2.6.32.21/drivers/usb/
28530 if (!left--) { 28740 if (!left--) {
28531 if (instance->disconnected) 28741 if (instance->disconnected)
28532diff -urNp linux-2.6.32.21/drivers/usb/class/cdc-acm.c linux-2.6.32.21/drivers/usb/class/cdc-acm.c 28742diff -urNp linux-2.6.32.21/drivers/usb/class/cdc-acm.c linux-2.6.32.21/drivers/usb/class/cdc-acm.c
28533--- linux-2.6.32.21/drivers/usb/class/cdc-acm.c 2010-08-26 19:42:20.000000000 -0400 28743--- linux-2.6.32.21/drivers/usb/class/cdc-acm.c 2010-08-13 16:24:37.000000000 -0400
28534+++ linux-2.6.32.21/drivers/usb/class/cdc-acm.c 2010-09-13 08:10:10.000000000 -0400 28744+++ linux-2.6.32.21/drivers/usb/class/cdc-acm.c 2010-09-04 15:54:52.000000000 -0400
28535@@ -1537,7 +1537,7 @@ static struct usb_device_id acm_ids[] = 28745@@ -1537,7 +1537,7 @@ static struct usb_device_id acm_ids[] =
28536 USB_CDC_ACM_PROTO_AT_CDMA) }, 28746 USB_CDC_ACM_PROTO_AT_CDMA) },
28537 28747
@@ -28542,8 +28752,8 @@ diff -urNp linux-2.6.32.21/drivers/usb/class/cdc-acm.c linux-2.6.32.21/drivers/u
28542 28752
28543 MODULE_DEVICE_TABLE(usb, acm_ids); 28753 MODULE_DEVICE_TABLE(usb, acm_ids);
28544diff -urNp linux-2.6.32.21/drivers/usb/class/cdc-wdm.c linux-2.6.32.21/drivers/usb/class/cdc-wdm.c 28754diff -urNp linux-2.6.32.21/drivers/usb/class/cdc-wdm.c linux-2.6.32.21/drivers/usb/class/cdc-wdm.c
28545--- linux-2.6.32.21/drivers/usb/class/cdc-wdm.c 2010-08-26 19:42:20.000000000 -0400 28755--- linux-2.6.32.21/drivers/usb/class/cdc-wdm.c 2010-08-13 16:24:37.000000000 -0400
28546+++ linux-2.6.32.21/drivers/usb/class/cdc-wdm.c 2010-09-13 08:10:10.000000000 -0400 28756+++ linux-2.6.32.21/drivers/usb/class/cdc-wdm.c 2010-09-04 15:54:52.000000000 -0400
28547@@ -314,7 +314,7 @@ static ssize_t wdm_write 28757@@ -314,7 +314,7 @@ static ssize_t wdm_write
28548 if (r < 0) 28758 if (r < 0)
28549 goto outnp; 28759 goto outnp;
@@ -28554,8 +28764,8 @@ diff -urNp linux-2.6.32.21/drivers/usb/class/cdc-wdm.c linux-2.6.32.21/drivers/u
28554 &desc->flags)); 28764 &desc->flags));
28555 else 28765 else
28556diff -urNp linux-2.6.32.21/drivers/usb/class/usblp.c linux-2.6.32.21/drivers/usb/class/usblp.c 28766diff -urNp linux-2.6.32.21/drivers/usb/class/usblp.c linux-2.6.32.21/drivers/usb/class/usblp.c
28557--- linux-2.6.32.21/drivers/usb/class/usblp.c 2010-08-26 19:42:20.000000000 -0400 28767--- linux-2.6.32.21/drivers/usb/class/usblp.c 2010-08-13 16:24:37.000000000 -0400
28558+++ linux-2.6.32.21/drivers/usb/class/usblp.c 2010-09-13 08:10:10.000000000 -0400 28768+++ linux-2.6.32.21/drivers/usb/class/usblp.c 2010-09-04 15:54:52.000000000 -0400
28559@@ -228,7 +228,7 @@ static const struct quirk_printer_struct 28769@@ -228,7 +228,7 @@ static const struct quirk_printer_struct
28560 { 0x0482, 0x0010, USBLP_QUIRK_BIDIR }, /* Kyocera Mita FS 820, by zut <kernel@zut.de> */ 28770 { 0x0482, 0x0010, USBLP_QUIRK_BIDIR }, /* Kyocera Mita FS 820, by zut <kernel@zut.de> */
28561 { 0x04f9, 0x000d, USBLP_QUIRK_BIDIR }, /* Brother Industries, Ltd HL-1440 Laser Printer */ 28771 { 0x04f9, 0x000d, USBLP_QUIRK_BIDIR }, /* Brother Industries, Ltd HL-1440 Laser Printer */
@@ -28575,8 +28785,8 @@ diff -urNp linux-2.6.32.21/drivers/usb/class/usblp.c linux-2.6.32.21/drivers/usb
28575 28785
28576 MODULE_DEVICE_TABLE (usb, usblp_ids); 28786 MODULE_DEVICE_TABLE (usb, usblp_ids);
28577diff -urNp linux-2.6.32.21/drivers/usb/core/hcd.c linux-2.6.32.21/drivers/usb/core/hcd.c 28787diff -urNp linux-2.6.32.21/drivers/usb/core/hcd.c linux-2.6.32.21/drivers/usb/core/hcd.c
28578--- linux-2.6.32.21/drivers/usb/core/hcd.c 2010-08-26 19:42:20.000000000 -0400 28788--- linux-2.6.32.21/drivers/usb/core/hcd.c 2010-08-13 16:24:37.000000000 -0400
28579+++ linux-2.6.32.21/drivers/usb/core/hcd.c 2010-09-13 08:10:10.000000000 -0400 28789+++ linux-2.6.32.21/drivers/usb/core/hcd.c 2010-09-04 15:54:52.000000000 -0400
28580@@ -2216,7 +2216,7 @@ EXPORT_SYMBOL_GPL(usb_hcd_platform_shutd 28790@@ -2216,7 +2216,7 @@ EXPORT_SYMBOL_GPL(usb_hcd_platform_shutd
28581 28791
28582 #if defined(CONFIG_USB_MON) || defined(CONFIG_USB_MON_MODULE) 28792 #if defined(CONFIG_USB_MON) || defined(CONFIG_USB_MON_MODULE)
@@ -28596,8 +28806,8 @@ diff -urNp linux-2.6.32.21/drivers/usb/core/hcd.c linux-2.6.32.21/drivers/usb/co
28596 28806
28597 if (mon_ops) 28807 if (mon_ops)
28598diff -urNp linux-2.6.32.21/drivers/usb/core/hcd.h linux-2.6.32.21/drivers/usb/core/hcd.h 28808diff -urNp linux-2.6.32.21/drivers/usb/core/hcd.h linux-2.6.32.21/drivers/usb/core/hcd.h
28599--- linux-2.6.32.21/drivers/usb/core/hcd.h 2010-08-26 19:42:20.000000000 -0400 28809--- linux-2.6.32.21/drivers/usb/core/hcd.h 2010-08-13 16:24:37.000000000 -0400
28600+++ linux-2.6.32.21/drivers/usb/core/hcd.h 2010-09-13 08:10:10.000000000 -0400 28810+++ linux-2.6.32.21/drivers/usb/core/hcd.h 2010-09-04 15:54:52.000000000 -0400
28601@@ -486,13 +486,13 @@ static inline void usbfs_cleanup(void) { 28811@@ -486,13 +486,13 @@ static inline void usbfs_cleanup(void) {
28602 #if defined(CONFIG_USB_MON) || defined(CONFIG_USB_MON_MODULE) 28812 #if defined(CONFIG_USB_MON) || defined(CONFIG_USB_MON_MODULE)
28603 28813
@@ -28626,8 +28836,8 @@ diff -urNp linux-2.6.32.21/drivers/usb/core/hcd.h linux-2.6.32.21/drivers/usb/co
28626 28836
28627 #else 28837 #else
28628diff -urNp linux-2.6.32.21/drivers/usb/core/hub.c linux-2.6.32.21/drivers/usb/core/hub.c 28838diff -urNp linux-2.6.32.21/drivers/usb/core/hub.c linux-2.6.32.21/drivers/usb/core/hub.c
28629--- linux-2.6.32.21/drivers/usb/core/hub.c 2010-08-26 19:42:20.000000000 -0400 28839--- linux-2.6.32.21/drivers/usb/core/hub.c 2010-08-13 16:24:37.000000000 -0400
28630+++ linux-2.6.32.21/drivers/usb/core/hub.c 2010-09-13 08:10:10.000000000 -0400 28840+++ linux-2.6.32.21/drivers/usb/core/hub.c 2010-09-04 15:54:52.000000000 -0400
28631@@ -3401,7 +3401,7 @@ static struct usb_device_id hub_id_table 28841@@ -3401,7 +3401,7 @@ static struct usb_device_id hub_id_table
28632 .bDeviceClass = USB_CLASS_HUB}, 28842 .bDeviceClass = USB_CLASS_HUB},
28633 { .match_flags = USB_DEVICE_ID_MATCH_INT_CLASS, 28843 { .match_flags = USB_DEVICE_ID_MATCH_INT_CLASS,
@@ -28638,8 +28848,8 @@ diff -urNp linux-2.6.32.21/drivers/usb/core/hub.c linux-2.6.32.21/drivers/usb/co
28638 28848
28639 MODULE_DEVICE_TABLE (usb, hub_id_table); 28849 MODULE_DEVICE_TABLE (usb, hub_id_table);
28640diff -urNp linux-2.6.32.21/drivers/usb/core/message.c linux-2.6.32.21/drivers/usb/core/message.c 28850diff -urNp linux-2.6.32.21/drivers/usb/core/message.c linux-2.6.32.21/drivers/usb/core/message.c
28641--- linux-2.6.32.21/drivers/usb/core/message.c 2010-08-26 19:42:20.000000000 -0400 28851--- linux-2.6.32.21/drivers/usb/core/message.c 2010-08-13 16:24:37.000000000 -0400
28642+++ linux-2.6.32.21/drivers/usb/core/message.c 2010-09-13 08:10:10.000000000 -0400 28852+++ linux-2.6.32.21/drivers/usb/core/message.c 2010-09-04 15:54:52.000000000 -0400
28643@@ -914,8 +914,8 @@ char *usb_cache_string(struct usb_device 28853@@ -914,8 +914,8 @@ char *usb_cache_string(struct usb_device
28644 buf = kmalloc(MAX_USB_STRING_SIZE, GFP_NOIO); 28854 buf = kmalloc(MAX_USB_STRING_SIZE, GFP_NOIO);
28645 if (buf) { 28855 if (buf) {
@@ -28652,8 +28862,8 @@ diff -urNp linux-2.6.32.21/drivers/usb/core/message.c linux-2.6.32.21/drivers/us
28652 return buf; 28862 return buf;
28653 memcpy(smallbuf, buf, len); 28863 memcpy(smallbuf, buf, len);
28654diff -urNp linux-2.6.32.21/drivers/usb/host/ehci-pci.c linux-2.6.32.21/drivers/usb/host/ehci-pci.c 28864diff -urNp linux-2.6.32.21/drivers/usb/host/ehci-pci.c linux-2.6.32.21/drivers/usb/host/ehci-pci.c
28655--- linux-2.6.32.21/drivers/usb/host/ehci-pci.c 2010-08-26 19:42:20.000000000 -0400 28865--- linux-2.6.32.21/drivers/usb/host/ehci-pci.c 2010-08-13 16:24:37.000000000 -0400
28656+++ linux-2.6.32.21/drivers/usb/host/ehci-pci.c 2010-09-13 08:10:10.000000000 -0400 28866+++ linux-2.6.32.21/drivers/usb/host/ehci-pci.c 2010-09-04 15:54:52.000000000 -0400
28657@@ -422,7 +422,7 @@ static const struct pci_device_id pci_id 28867@@ -422,7 +422,7 @@ static const struct pci_device_id pci_id
28658 PCI_DEVICE_CLASS(PCI_CLASS_SERIAL_USB_EHCI, ~0), 28868 PCI_DEVICE_CLASS(PCI_CLASS_SERIAL_USB_EHCI, ~0),
28659 .driver_data = (unsigned long) &ehci_pci_hc_driver, 28869 .driver_data = (unsigned long) &ehci_pci_hc_driver,
@@ -28664,8 +28874,8 @@ diff -urNp linux-2.6.32.21/drivers/usb/host/ehci-pci.c linux-2.6.32.21/drivers/u
28664 MODULE_DEVICE_TABLE(pci, pci_ids); 28874 MODULE_DEVICE_TABLE(pci, pci_ids);
28665 28875
28666diff -urNp linux-2.6.32.21/drivers/usb/host/uhci-hcd.c linux-2.6.32.21/drivers/usb/host/uhci-hcd.c 28876diff -urNp linux-2.6.32.21/drivers/usb/host/uhci-hcd.c linux-2.6.32.21/drivers/usb/host/uhci-hcd.c
28667--- linux-2.6.32.21/drivers/usb/host/uhci-hcd.c 2010-08-26 19:42:20.000000000 -0400 28877--- linux-2.6.32.21/drivers/usb/host/uhci-hcd.c 2010-08-13 16:24:37.000000000 -0400
28668+++ linux-2.6.32.21/drivers/usb/host/uhci-hcd.c 2010-09-13 08:10:10.000000000 -0400 28878+++ linux-2.6.32.21/drivers/usb/host/uhci-hcd.c 2010-09-04 15:54:52.000000000 -0400
28669@@ -941,7 +941,7 @@ static const struct pci_device_id uhci_p 28879@@ -941,7 +941,7 @@ static const struct pci_device_id uhci_p
28670 /* handle any USB UHCI controller */ 28880 /* handle any USB UHCI controller */
28671 PCI_DEVICE_CLASS(PCI_CLASS_SERIAL_USB_UHCI, ~0), 28881 PCI_DEVICE_CLASS(PCI_CLASS_SERIAL_USB_UHCI, ~0),
@@ -28676,8 +28886,8 @@ diff -urNp linux-2.6.32.21/drivers/usb/host/uhci-hcd.c linux-2.6.32.21/drivers/u
28676 28886
28677 MODULE_DEVICE_TABLE(pci, uhci_pci_ids); 28887 MODULE_DEVICE_TABLE(pci, uhci_pci_ids);
28678diff -urNp linux-2.6.32.21/drivers/usb/misc/appledisplay.c linux-2.6.32.21/drivers/usb/misc/appledisplay.c 28888diff -urNp linux-2.6.32.21/drivers/usb/misc/appledisplay.c linux-2.6.32.21/drivers/usb/misc/appledisplay.c
28679--- linux-2.6.32.21/drivers/usb/misc/appledisplay.c 2010-08-26 19:42:20.000000000 -0400 28889--- linux-2.6.32.21/drivers/usb/misc/appledisplay.c 2010-08-13 16:24:37.000000000 -0400
28680+++ linux-2.6.32.21/drivers/usb/misc/appledisplay.c 2010-09-13 08:10:10.000000000 -0400 28890+++ linux-2.6.32.21/drivers/usb/misc/appledisplay.c 2010-09-04 15:54:52.000000000 -0400
28681@@ -178,7 +178,7 @@ static int appledisplay_bl_get_brightnes 28891@@ -178,7 +178,7 @@ static int appledisplay_bl_get_brightnes
28682 return pdata->msgdata[1]; 28892 return pdata->msgdata[1];
28683 } 28893 }
@@ -28688,8 +28898,8 @@ diff -urNp linux-2.6.32.21/drivers/usb/misc/appledisplay.c linux-2.6.32.21/drive
28688 .update_status = appledisplay_bl_update_status, 28898 .update_status = appledisplay_bl_update_status,
28689 }; 28899 };
28690diff -urNp linux-2.6.32.21/drivers/usb/mon/mon_main.c linux-2.6.32.21/drivers/usb/mon/mon_main.c 28900diff -urNp linux-2.6.32.21/drivers/usb/mon/mon_main.c linux-2.6.32.21/drivers/usb/mon/mon_main.c
28691--- linux-2.6.32.21/drivers/usb/mon/mon_main.c 2010-08-26 19:42:20.000000000 -0400 28901--- linux-2.6.32.21/drivers/usb/mon/mon_main.c 2010-08-13 16:24:37.000000000 -0400
28692+++ linux-2.6.32.21/drivers/usb/mon/mon_main.c 2010-09-13 08:10:10.000000000 -0400 28902+++ linux-2.6.32.21/drivers/usb/mon/mon_main.c 2010-09-04 15:54:52.000000000 -0400
28693@@ -238,7 +238,7 @@ static struct notifier_block mon_nb = { 28903@@ -238,7 +238,7 @@ static struct notifier_block mon_nb = {
28694 /* 28904 /*
28695 * Ops 28905 * Ops
@@ -28700,8 +28910,8 @@ diff -urNp linux-2.6.32.21/drivers/usb/mon/mon_main.c linux-2.6.32.21/drivers/us
28700 .urb_submit_error = mon_submit_error, 28910 .urb_submit_error = mon_submit_error,
28701 .urb_complete = mon_complete, 28911 .urb_complete = mon_complete,
28702diff -urNp linux-2.6.32.21/drivers/usb/storage/debug.h linux-2.6.32.21/drivers/usb/storage/debug.h 28912diff -urNp linux-2.6.32.21/drivers/usb/storage/debug.h linux-2.6.32.21/drivers/usb/storage/debug.h
28703--- linux-2.6.32.21/drivers/usb/storage/debug.h 2010-08-26 19:42:20.000000000 -0400 28913--- linux-2.6.32.21/drivers/usb/storage/debug.h 2010-08-13 16:24:37.000000000 -0400
28704+++ linux-2.6.32.21/drivers/usb/storage/debug.h 2010-09-13 08:10:10.000000000 -0400 28914+++ linux-2.6.32.21/drivers/usb/storage/debug.h 2010-09-04 15:54:52.000000000 -0400
28705@@ -54,9 +54,9 @@ void usb_stor_show_sense( unsigned char 28915@@ -54,9 +54,9 @@ void usb_stor_show_sense( unsigned char
28706 #define US_DEBUGPX(x...) printk( x ) 28916 #define US_DEBUGPX(x...) printk( x )
28707 #define US_DEBUG(x) x 28917 #define US_DEBUG(x) x
@@ -28716,8 +28926,8 @@ diff -urNp linux-2.6.32.21/drivers/usb/storage/debug.h linux-2.6.32.21/drivers/u
28716 28926
28717 #endif 28927 #endif
28718diff -urNp linux-2.6.32.21/drivers/usb/storage/usb.c linux-2.6.32.21/drivers/usb/storage/usb.c 28928diff -urNp linux-2.6.32.21/drivers/usb/storage/usb.c linux-2.6.32.21/drivers/usb/storage/usb.c
28719--- linux-2.6.32.21/drivers/usb/storage/usb.c 2010-08-26 19:42:20.000000000 -0400 28929--- linux-2.6.32.21/drivers/usb/storage/usb.c 2010-08-13 16:24:37.000000000 -0400
28720+++ linux-2.6.32.21/drivers/usb/storage/usb.c 2010-09-13 08:10:10.000000000 -0400 28930+++ linux-2.6.32.21/drivers/usb/storage/usb.c 2010-09-04 15:54:52.000000000 -0400
28721@@ -118,7 +118,7 @@ MODULE_PARM_DESC(quirks, "supplemental l 28931@@ -118,7 +118,7 @@ MODULE_PARM_DESC(quirks, "supplemental l
28722 28932
28723 static struct us_unusual_dev us_unusual_dev_list[] = { 28933 static struct us_unusual_dev us_unusual_dev_list[] = {
@@ -28728,8 +28938,8 @@ diff -urNp linux-2.6.32.21/drivers/usb/storage/usb.c linux-2.6.32.21/drivers/usb
28728 28938
28729 #undef UNUSUAL_DEV 28939 #undef UNUSUAL_DEV
28730diff -urNp linux-2.6.32.21/drivers/usb/storage/usual-tables.c linux-2.6.32.21/drivers/usb/storage/usual-tables.c 28940diff -urNp linux-2.6.32.21/drivers/usb/storage/usual-tables.c linux-2.6.32.21/drivers/usb/storage/usual-tables.c
28731--- linux-2.6.32.21/drivers/usb/storage/usual-tables.c 2010-08-26 19:42:20.000000000 -0400 28941--- linux-2.6.32.21/drivers/usb/storage/usual-tables.c 2010-08-13 16:24:37.000000000 -0400
28732+++ linux-2.6.32.21/drivers/usb/storage/usual-tables.c 2010-09-13 08:10:10.000000000 -0400 28942+++ linux-2.6.32.21/drivers/usb/storage/usual-tables.c 2010-09-04 15:54:52.000000000 -0400
28733@@ -48,7 +48,7 @@ 28943@@ -48,7 +48,7 @@
28734 28944
28735 struct usb_device_id usb_storage_usb_ids[] = { 28945 struct usb_device_id usb_storage_usb_ids[] = {
@@ -28740,8 +28950,8 @@ diff -urNp linux-2.6.32.21/drivers/usb/storage/usual-tables.c linux-2.6.32.21/dr
28740 EXPORT_SYMBOL_GPL(usb_storage_usb_ids); 28950 EXPORT_SYMBOL_GPL(usb_storage_usb_ids);
28741 28951
28742diff -urNp linux-2.6.32.21/drivers/uwb/wlp/messages.c linux-2.6.32.21/drivers/uwb/wlp/messages.c 28952diff -urNp linux-2.6.32.21/drivers/uwb/wlp/messages.c linux-2.6.32.21/drivers/uwb/wlp/messages.c
28743--- linux-2.6.32.21/drivers/uwb/wlp/messages.c 2010-08-26 19:42:20.000000000 -0400 28953--- linux-2.6.32.21/drivers/uwb/wlp/messages.c 2010-08-13 16:24:37.000000000 -0400
28744+++ linux-2.6.32.21/drivers/uwb/wlp/messages.c 2010-09-13 08:10:10.000000000 -0400 28954+++ linux-2.6.32.21/drivers/uwb/wlp/messages.c 2010-09-04 15:54:52.000000000 -0400
28745@@ -903,7 +903,7 @@ int wlp_parse_f0(struct wlp *wlp, struct 28955@@ -903,7 +903,7 @@ int wlp_parse_f0(struct wlp *wlp, struct
28746 size_t len = skb->len; 28956 size_t len = skb->len;
28747 size_t used; 28957 size_t used;
@@ -28752,8 +28962,8 @@ diff -urNp linux-2.6.32.21/drivers/uwb/wlp/messages.c linux-2.6.32.21/drivers/uw
28752 char enonce_buf[WLP_WSS_NONCE_STRSIZE]; 28962 char enonce_buf[WLP_WSS_NONCE_STRSIZE];
28753 char rnonce_buf[WLP_WSS_NONCE_STRSIZE]; 28963 char rnonce_buf[WLP_WSS_NONCE_STRSIZE];
28754diff -urNp linux-2.6.32.21/drivers/uwb/wlp/sysfs.c linux-2.6.32.21/drivers/uwb/wlp/sysfs.c 28964diff -urNp linux-2.6.32.21/drivers/uwb/wlp/sysfs.c linux-2.6.32.21/drivers/uwb/wlp/sysfs.c
28755--- linux-2.6.32.21/drivers/uwb/wlp/sysfs.c 2010-08-26 19:42:20.000000000 -0400 28965--- linux-2.6.32.21/drivers/uwb/wlp/sysfs.c 2010-08-13 16:24:37.000000000 -0400
28756+++ linux-2.6.32.21/drivers/uwb/wlp/sysfs.c 2010-09-13 08:10:10.000000000 -0400 28966+++ linux-2.6.32.21/drivers/uwb/wlp/sysfs.c 2010-09-04 15:54:52.000000000 -0400
28757@@ -615,8 +615,7 @@ ssize_t wlp_wss_attr_store(struct kobjec 28967@@ -615,8 +615,7 @@ ssize_t wlp_wss_attr_store(struct kobjec
28758 return ret; 28968 return ret;
28759 } 28969 }
@@ -28765,8 +28975,8 @@ diff -urNp linux-2.6.32.21/drivers/uwb/wlp/sysfs.c linux-2.6.32.21/drivers/uwb/w
28765 .store = wlp_wss_attr_store, 28975 .store = wlp_wss_attr_store,
28766 }; 28976 };
28767diff -urNp linux-2.6.32.21/drivers/video/atmel_lcdfb.c linux-2.6.32.21/drivers/video/atmel_lcdfb.c 28977diff -urNp linux-2.6.32.21/drivers/video/atmel_lcdfb.c linux-2.6.32.21/drivers/video/atmel_lcdfb.c
28768--- linux-2.6.32.21/drivers/video/atmel_lcdfb.c 2010-08-26 19:42:20.000000000 -0400 28978--- linux-2.6.32.21/drivers/video/atmel_lcdfb.c 2010-08-13 16:24:37.000000000 -0400
28769+++ linux-2.6.32.21/drivers/video/atmel_lcdfb.c 2010-09-13 08:10:10.000000000 -0400 28979+++ linux-2.6.32.21/drivers/video/atmel_lcdfb.c 2010-09-04 15:54:52.000000000 -0400
28770@@ -110,7 +110,7 @@ static int atmel_bl_get_brightness(struc 28980@@ -110,7 +110,7 @@ static int atmel_bl_get_brightness(struc
28771 return lcdc_readl(sinfo, ATMEL_LCDC_CONTRAST_VAL); 28981 return lcdc_readl(sinfo, ATMEL_LCDC_CONTRAST_VAL);
28772 } 28982 }
@@ -28777,8 +28987,8 @@ diff -urNp linux-2.6.32.21/drivers/video/atmel_lcdfb.c linux-2.6.32.21/drivers/v
28777 .get_brightness = atmel_bl_get_brightness, 28987 .get_brightness = atmel_bl_get_brightness,
28778 }; 28988 };
28779diff -urNp linux-2.6.32.21/drivers/video/aty/aty128fb.c linux-2.6.32.21/drivers/video/aty/aty128fb.c 28989diff -urNp linux-2.6.32.21/drivers/video/aty/aty128fb.c linux-2.6.32.21/drivers/video/aty/aty128fb.c
28780--- linux-2.6.32.21/drivers/video/aty/aty128fb.c 2010-08-26 19:42:20.000000000 -0400 28990--- linux-2.6.32.21/drivers/video/aty/aty128fb.c 2010-08-13 16:24:37.000000000 -0400
28781+++ linux-2.6.32.21/drivers/video/aty/aty128fb.c 2010-09-13 08:10:10.000000000 -0400 28991+++ linux-2.6.32.21/drivers/video/aty/aty128fb.c 2010-09-04 15:54:52.000000000 -0400
28782@@ -1787,7 +1787,7 @@ static int aty128_bl_get_brightness(stru 28992@@ -1787,7 +1787,7 @@ static int aty128_bl_get_brightness(stru
28783 return bd->props.brightness; 28993 return bd->props.brightness;
28784 } 28994 }
@@ -28789,8 +28999,8 @@ diff -urNp linux-2.6.32.21/drivers/video/aty/aty128fb.c linux-2.6.32.21/drivers/
28789 .update_status = aty128_bl_update_status, 28999 .update_status = aty128_bl_update_status,
28790 }; 29000 };
28791diff -urNp linux-2.6.32.21/drivers/video/aty/atyfb_base.c linux-2.6.32.21/drivers/video/aty/atyfb_base.c 29001diff -urNp linux-2.6.32.21/drivers/video/aty/atyfb_base.c linux-2.6.32.21/drivers/video/aty/atyfb_base.c
28792--- linux-2.6.32.21/drivers/video/aty/atyfb_base.c 2010-08-26 19:42:20.000000000 -0400 29002--- linux-2.6.32.21/drivers/video/aty/atyfb_base.c 2010-08-13 16:24:37.000000000 -0400
28793+++ linux-2.6.32.21/drivers/video/aty/atyfb_base.c 2010-09-13 08:10:10.000000000 -0400 29003+++ linux-2.6.32.21/drivers/video/aty/atyfb_base.c 2010-09-04 15:54:52.000000000 -0400
28794@@ -2225,7 +2225,7 @@ static int aty_bl_get_brightness(struct 29004@@ -2225,7 +2225,7 @@ static int aty_bl_get_brightness(struct
28795 return bd->props.brightness; 29005 return bd->props.brightness;
28796 } 29006 }
@@ -28801,8 +29011,8 @@ diff -urNp linux-2.6.32.21/drivers/video/aty/atyfb_base.c linux-2.6.32.21/driver
28801 .update_status = aty_bl_update_status, 29011 .update_status = aty_bl_update_status,
28802 }; 29012 };
28803diff -urNp linux-2.6.32.21/drivers/video/aty/radeon_backlight.c linux-2.6.32.21/drivers/video/aty/radeon_backlight.c 29013diff -urNp linux-2.6.32.21/drivers/video/aty/radeon_backlight.c linux-2.6.32.21/drivers/video/aty/radeon_backlight.c
28804--- linux-2.6.32.21/drivers/video/aty/radeon_backlight.c 2010-08-26 19:42:20.000000000 -0400 29014--- linux-2.6.32.21/drivers/video/aty/radeon_backlight.c 2010-08-13 16:24:37.000000000 -0400
28805+++ linux-2.6.32.21/drivers/video/aty/radeon_backlight.c 2010-09-13 08:10:10.000000000 -0400 29015+++ linux-2.6.32.21/drivers/video/aty/radeon_backlight.c 2010-09-04 15:54:52.000000000 -0400
28806@@ -127,7 +127,7 @@ static int radeon_bl_get_brightness(stru 29016@@ -127,7 +127,7 @@ static int radeon_bl_get_brightness(stru
28807 return bd->props.brightness; 29017 return bd->props.brightness;
28808 } 29018 }
@@ -28813,8 +29023,8 @@ diff -urNp linux-2.6.32.21/drivers/video/aty/radeon_backlight.c linux-2.6.32.21/
28813 .update_status = radeon_bl_update_status, 29023 .update_status = radeon_bl_update_status,
28814 }; 29024 };
28815diff -urNp linux-2.6.32.21/drivers/video/backlight/adp5520_bl.c linux-2.6.32.21/drivers/video/backlight/adp5520_bl.c 29025diff -urNp linux-2.6.32.21/drivers/video/backlight/adp5520_bl.c linux-2.6.32.21/drivers/video/backlight/adp5520_bl.c
28816--- linux-2.6.32.21/drivers/video/backlight/adp5520_bl.c 2010-08-26 19:42:20.000000000 -0400 29026--- linux-2.6.32.21/drivers/video/backlight/adp5520_bl.c 2010-08-13 16:24:37.000000000 -0400
28817+++ linux-2.6.32.21/drivers/video/backlight/adp5520_bl.c 2010-09-13 08:10:10.000000000 -0400 29027+++ linux-2.6.32.21/drivers/video/backlight/adp5520_bl.c 2010-09-04 15:54:52.000000000 -0400
28818@@ -84,7 +84,7 @@ static int adp5520_bl_get_brightness(str 29028@@ -84,7 +84,7 @@ static int adp5520_bl_get_brightness(str
28819 return error ? data->current_brightness : reg_val; 29029 return error ? data->current_brightness : reg_val;
28820 } 29030 }
@@ -28825,8 +29035,8 @@ diff -urNp linux-2.6.32.21/drivers/video/backlight/adp5520_bl.c linux-2.6.32.21/
28825 .get_brightness = adp5520_bl_get_brightness, 29035 .get_brightness = adp5520_bl_get_brightness,
28826 }; 29036 };
28827diff -urNp linux-2.6.32.21/drivers/video/backlight/adx_bl.c linux-2.6.32.21/drivers/video/backlight/adx_bl.c 29037diff -urNp linux-2.6.32.21/drivers/video/backlight/adx_bl.c linux-2.6.32.21/drivers/video/backlight/adx_bl.c
28828--- linux-2.6.32.21/drivers/video/backlight/adx_bl.c 2010-08-26 19:42:20.000000000 -0400 29038--- linux-2.6.32.21/drivers/video/backlight/adx_bl.c 2010-08-13 16:24:37.000000000 -0400
28829+++ linux-2.6.32.21/drivers/video/backlight/adx_bl.c 2010-09-13 08:10:10.000000000 -0400 29039+++ linux-2.6.32.21/drivers/video/backlight/adx_bl.c 2010-09-04 15:54:52.000000000 -0400
28830@@ -61,7 +61,7 @@ static int adx_backlight_check_fb(struct 29040@@ -61,7 +61,7 @@ static int adx_backlight_check_fb(struct
28831 return 1; 29041 return 1;
28832 } 29042 }
@@ -28837,8 +29047,8 @@ diff -urNp linux-2.6.32.21/drivers/video/backlight/adx_bl.c linux-2.6.32.21/driv
28837 .update_status = adx_backlight_update_status, 29047 .update_status = adx_backlight_update_status,
28838 .get_brightness = adx_backlight_get_brightness, 29048 .get_brightness = adx_backlight_get_brightness,
28839diff -urNp linux-2.6.32.21/drivers/video/backlight/atmel-pwm-bl.c linux-2.6.32.21/drivers/video/backlight/atmel-pwm-bl.c 29049diff -urNp linux-2.6.32.21/drivers/video/backlight/atmel-pwm-bl.c linux-2.6.32.21/drivers/video/backlight/atmel-pwm-bl.c
28840--- linux-2.6.32.21/drivers/video/backlight/atmel-pwm-bl.c 2010-08-26 19:42:20.000000000 -0400 29050--- linux-2.6.32.21/drivers/video/backlight/atmel-pwm-bl.c 2010-08-13 16:24:37.000000000 -0400
28841+++ linux-2.6.32.21/drivers/video/backlight/atmel-pwm-bl.c 2010-09-13 08:10:10.000000000 -0400 29051+++ linux-2.6.32.21/drivers/video/backlight/atmel-pwm-bl.c 2010-09-04 15:54:52.000000000 -0400
28842@@ -113,7 +113,7 @@ static int atmel_pwm_bl_init_pwm(struct 29052@@ -113,7 +113,7 @@ static int atmel_pwm_bl_init_pwm(struct
28843 return pwm_channel_enable(&pwmbl->pwmc); 29053 return pwm_channel_enable(&pwmbl->pwmc);
28844 } 29054 }
@@ -28849,8 +29059,8 @@ diff -urNp linux-2.6.32.21/drivers/video/backlight/atmel-pwm-bl.c linux-2.6.32.2
28849 .update_status = atmel_pwm_bl_set_intensity, 29059 .update_status = atmel_pwm_bl_set_intensity,
28850 }; 29060 };
28851diff -urNp linux-2.6.32.21/drivers/video/backlight/backlight.c linux-2.6.32.21/drivers/video/backlight/backlight.c 29061diff -urNp linux-2.6.32.21/drivers/video/backlight/backlight.c linux-2.6.32.21/drivers/video/backlight/backlight.c
28852--- linux-2.6.32.21/drivers/video/backlight/backlight.c 2010-08-26 19:42:20.000000000 -0400 29062--- linux-2.6.32.21/drivers/video/backlight/backlight.c 2010-08-13 16:24:37.000000000 -0400
28853+++ linux-2.6.32.21/drivers/video/backlight/backlight.c 2010-09-13 08:10:10.000000000 -0400 29063+++ linux-2.6.32.21/drivers/video/backlight/backlight.c 2010-09-04 15:54:52.000000000 -0400
28854@@ -269,7 +269,7 @@ EXPORT_SYMBOL(backlight_force_update); 29064@@ -269,7 +269,7 @@ EXPORT_SYMBOL(backlight_force_update);
28855 * ERR_PTR() or a pointer to the newly allocated device. 29065 * ERR_PTR() or a pointer to the newly allocated device.
28856 */ 29066 */
@@ -28861,8 +29071,8 @@ diff -urNp linux-2.6.32.21/drivers/video/backlight/backlight.c linux-2.6.32.21/d
28861 struct backlight_device *new_bd; 29071 struct backlight_device *new_bd;
28862 int rc; 29072 int rc;
28863diff -urNp linux-2.6.32.21/drivers/video/backlight/corgi_lcd.c linux-2.6.32.21/drivers/video/backlight/corgi_lcd.c 29073diff -urNp linux-2.6.32.21/drivers/video/backlight/corgi_lcd.c linux-2.6.32.21/drivers/video/backlight/corgi_lcd.c
28864--- linux-2.6.32.21/drivers/video/backlight/corgi_lcd.c 2010-08-26 19:42:20.000000000 -0400 29074--- linux-2.6.32.21/drivers/video/backlight/corgi_lcd.c 2010-08-13 16:24:37.000000000 -0400
28865+++ linux-2.6.32.21/drivers/video/backlight/corgi_lcd.c 2010-09-13 08:10:10.000000000 -0400 29075+++ linux-2.6.32.21/drivers/video/backlight/corgi_lcd.c 2010-09-04 15:54:52.000000000 -0400
28866@@ -451,7 +451,7 @@ void corgi_lcd_limit_intensity(int limit 29076@@ -451,7 +451,7 @@ void corgi_lcd_limit_intensity(int limit
28867 } 29077 }
28868 EXPORT_SYMBOL(corgi_lcd_limit_intensity); 29078 EXPORT_SYMBOL(corgi_lcd_limit_intensity);
@@ -28873,8 +29083,8 @@ diff -urNp linux-2.6.32.21/drivers/video/backlight/corgi_lcd.c linux-2.6.32.21/d
28873 .update_status = corgi_bl_update_status, 29083 .update_status = corgi_bl_update_status,
28874 }; 29084 };
28875diff -urNp linux-2.6.32.21/drivers/video/backlight/cr_bllcd.c linux-2.6.32.21/drivers/video/backlight/cr_bllcd.c 29085diff -urNp linux-2.6.32.21/drivers/video/backlight/cr_bllcd.c linux-2.6.32.21/drivers/video/backlight/cr_bllcd.c
28876--- linux-2.6.32.21/drivers/video/backlight/cr_bllcd.c 2010-08-26 19:42:20.000000000 -0400 29086--- linux-2.6.32.21/drivers/video/backlight/cr_bllcd.c 2010-08-13 16:24:37.000000000 -0400
28877+++ linux-2.6.32.21/drivers/video/backlight/cr_bllcd.c 2010-09-13 08:10:10.000000000 -0400 29087+++ linux-2.6.32.21/drivers/video/backlight/cr_bllcd.c 2010-09-04 15:54:52.000000000 -0400
28878@@ -108,7 +108,7 @@ static int cr_backlight_get_intensity(st 29088@@ -108,7 +108,7 @@ static int cr_backlight_get_intensity(st
28879 return intensity; 29089 return intensity;
28880 } 29090 }
@@ -28885,8 +29095,8 @@ diff -urNp linux-2.6.32.21/drivers/video/backlight/cr_bllcd.c linux-2.6.32.21/dr
28885 .update_status = cr_backlight_set_intensity, 29095 .update_status = cr_backlight_set_intensity,
28886 }; 29096 };
28887diff -urNp linux-2.6.32.21/drivers/video/backlight/da903x_bl.c linux-2.6.32.21/drivers/video/backlight/da903x_bl.c 29097diff -urNp linux-2.6.32.21/drivers/video/backlight/da903x_bl.c linux-2.6.32.21/drivers/video/backlight/da903x_bl.c
28888--- linux-2.6.32.21/drivers/video/backlight/da903x_bl.c 2010-08-26 19:42:20.000000000 -0400 29098--- linux-2.6.32.21/drivers/video/backlight/da903x_bl.c 2010-08-13 16:24:37.000000000 -0400
28889+++ linux-2.6.32.21/drivers/video/backlight/da903x_bl.c 2010-09-13 08:10:10.000000000 -0400 29099+++ linux-2.6.32.21/drivers/video/backlight/da903x_bl.c 2010-09-04 15:54:52.000000000 -0400
28890@@ -94,7 +94,7 @@ static int da903x_backlight_get_brightne 29100@@ -94,7 +94,7 @@ static int da903x_backlight_get_brightne
28891 return data->current_brightness; 29101 return data->current_brightness;
28892 } 29102 }
@@ -28897,8 +29107,8 @@ diff -urNp linux-2.6.32.21/drivers/video/backlight/da903x_bl.c linux-2.6.32.21/d
28897 .get_brightness = da903x_backlight_get_brightness, 29107 .get_brightness = da903x_backlight_get_brightness,
28898 }; 29108 };
28899diff -urNp linux-2.6.32.21/drivers/video/backlight/generic_bl.c linux-2.6.32.21/drivers/video/backlight/generic_bl.c 29109diff -urNp linux-2.6.32.21/drivers/video/backlight/generic_bl.c linux-2.6.32.21/drivers/video/backlight/generic_bl.c
28900--- linux-2.6.32.21/drivers/video/backlight/generic_bl.c 2010-08-26 19:42:20.000000000 -0400 29110--- linux-2.6.32.21/drivers/video/backlight/generic_bl.c 2010-08-13 16:24:37.000000000 -0400
28901+++ linux-2.6.32.21/drivers/video/backlight/generic_bl.c 2010-09-13 08:10:10.000000000 -0400 29111+++ linux-2.6.32.21/drivers/video/backlight/generic_bl.c 2010-09-04 15:54:52.000000000 -0400
28902@@ -70,7 +70,7 @@ void corgibl_limit_intensity(int limit) 29112@@ -70,7 +70,7 @@ void corgibl_limit_intensity(int limit)
28903 } 29113 }
28904 EXPORT_SYMBOL(corgibl_limit_intensity); 29114 EXPORT_SYMBOL(corgibl_limit_intensity);
@@ -28909,8 +29119,8 @@ diff -urNp linux-2.6.32.21/drivers/video/backlight/generic_bl.c linux-2.6.32.21/
28909 .get_brightness = genericbl_get_intensity, 29119 .get_brightness = genericbl_get_intensity,
28910 .update_status = genericbl_send_intensity, 29120 .update_status = genericbl_send_intensity,
28911diff -urNp linux-2.6.32.21/drivers/video/backlight/hp680_bl.c linux-2.6.32.21/drivers/video/backlight/hp680_bl.c 29121diff -urNp linux-2.6.32.21/drivers/video/backlight/hp680_bl.c linux-2.6.32.21/drivers/video/backlight/hp680_bl.c
28912--- linux-2.6.32.21/drivers/video/backlight/hp680_bl.c 2010-08-26 19:42:20.000000000 -0400 29122--- linux-2.6.32.21/drivers/video/backlight/hp680_bl.c 2010-08-13 16:24:37.000000000 -0400
28913+++ linux-2.6.32.21/drivers/video/backlight/hp680_bl.c 2010-09-13 08:10:10.000000000 -0400 29123+++ linux-2.6.32.21/drivers/video/backlight/hp680_bl.c 2010-09-04 15:54:52.000000000 -0400
28914@@ -98,7 +98,7 @@ static int hp680bl_get_intensity(struct 29124@@ -98,7 +98,7 @@ static int hp680bl_get_intensity(struct
28915 return current_intensity; 29125 return current_intensity;
28916 } 29126 }
@@ -28921,8 +29131,8 @@ diff -urNp linux-2.6.32.21/drivers/video/backlight/hp680_bl.c linux-2.6.32.21/dr
28921 .update_status = hp680bl_set_intensity, 29131 .update_status = hp680bl_set_intensity,
28922 }; 29132 };
28923diff -urNp linux-2.6.32.21/drivers/video/backlight/jornada720_bl.c linux-2.6.32.21/drivers/video/backlight/jornada720_bl.c 29133diff -urNp linux-2.6.32.21/drivers/video/backlight/jornada720_bl.c linux-2.6.32.21/drivers/video/backlight/jornada720_bl.c
28924--- linux-2.6.32.21/drivers/video/backlight/jornada720_bl.c 2010-08-26 19:42:20.000000000 -0400 29134--- linux-2.6.32.21/drivers/video/backlight/jornada720_bl.c 2010-08-13 16:24:37.000000000 -0400
28925+++ linux-2.6.32.21/drivers/video/backlight/jornada720_bl.c 2010-09-13 08:10:10.000000000 -0400 29135+++ linux-2.6.32.21/drivers/video/backlight/jornada720_bl.c 2010-09-04 15:54:52.000000000 -0400
28926@@ -93,7 +93,7 @@ out: 29136@@ -93,7 +93,7 @@ out:
28927 return ret; 29137 return ret;
28928 } 29138 }
@@ -28933,8 +29143,8 @@ diff -urNp linux-2.6.32.21/drivers/video/backlight/jornada720_bl.c linux-2.6.32.
28933 .update_status = jornada_bl_update_status, 29143 .update_status = jornada_bl_update_status,
28934 .options = BL_CORE_SUSPENDRESUME, 29144 .options = BL_CORE_SUSPENDRESUME,
28935diff -urNp linux-2.6.32.21/drivers/video/backlight/kb3886_bl.c linux-2.6.32.21/drivers/video/backlight/kb3886_bl.c 29145diff -urNp linux-2.6.32.21/drivers/video/backlight/kb3886_bl.c linux-2.6.32.21/drivers/video/backlight/kb3886_bl.c
28936--- linux-2.6.32.21/drivers/video/backlight/kb3886_bl.c 2010-08-26 19:42:20.000000000 -0400 29146--- linux-2.6.32.21/drivers/video/backlight/kb3886_bl.c 2010-08-13 16:24:37.000000000 -0400
28937+++ linux-2.6.32.21/drivers/video/backlight/kb3886_bl.c 2010-09-13 08:10:10.000000000 -0400 29147+++ linux-2.6.32.21/drivers/video/backlight/kb3886_bl.c 2010-09-04 15:54:52.000000000 -0400
28938@@ -134,7 +134,7 @@ static int kb3886bl_get_intensity(struct 29148@@ -134,7 +134,7 @@ static int kb3886bl_get_intensity(struct
28939 return kb3886bl_intensity; 29149 return kb3886bl_intensity;
28940 } 29150 }
@@ -28945,8 +29155,8 @@ diff -urNp linux-2.6.32.21/drivers/video/backlight/kb3886_bl.c linux-2.6.32.21/d
28945 .update_status = kb3886bl_send_intensity, 29155 .update_status = kb3886bl_send_intensity,
28946 }; 29156 };
28947diff -urNp linux-2.6.32.21/drivers/video/backlight/locomolcd.c linux-2.6.32.21/drivers/video/backlight/locomolcd.c 29157diff -urNp linux-2.6.32.21/drivers/video/backlight/locomolcd.c linux-2.6.32.21/drivers/video/backlight/locomolcd.c
28948--- linux-2.6.32.21/drivers/video/backlight/locomolcd.c 2010-08-26 19:42:20.000000000 -0400 29158--- linux-2.6.32.21/drivers/video/backlight/locomolcd.c 2010-08-13 16:24:37.000000000 -0400
28949+++ linux-2.6.32.21/drivers/video/backlight/locomolcd.c 2010-09-13 08:10:10.000000000 -0400 29159+++ linux-2.6.32.21/drivers/video/backlight/locomolcd.c 2010-09-04 15:54:52.000000000 -0400
28950@@ -141,7 +141,7 @@ static int locomolcd_get_intensity(struc 29160@@ -141,7 +141,7 @@ static int locomolcd_get_intensity(struc
28951 return current_intensity; 29161 return current_intensity;
28952 } 29162 }
@@ -28957,8 +29167,8 @@ diff -urNp linux-2.6.32.21/drivers/video/backlight/locomolcd.c linux-2.6.32.21/d
28957 .update_status = locomolcd_set_intensity, 29167 .update_status = locomolcd_set_intensity,
28958 }; 29168 };
28959diff -urNp linux-2.6.32.21/drivers/video/backlight/mbp_nvidia_bl.c linux-2.6.32.21/drivers/video/backlight/mbp_nvidia_bl.c 29169diff -urNp linux-2.6.32.21/drivers/video/backlight/mbp_nvidia_bl.c linux-2.6.32.21/drivers/video/backlight/mbp_nvidia_bl.c
28960--- linux-2.6.32.21/drivers/video/backlight/mbp_nvidia_bl.c 2010-08-26 19:42:20.000000000 -0400 29170--- linux-2.6.32.21/drivers/video/backlight/mbp_nvidia_bl.c 2010-08-13 16:24:37.000000000 -0400
28961+++ linux-2.6.32.21/drivers/video/backlight/mbp_nvidia_bl.c 2010-09-13 08:10:10.000000000 -0400 29171+++ linux-2.6.32.21/drivers/video/backlight/mbp_nvidia_bl.c 2010-09-04 15:54:52.000000000 -0400
28962@@ -33,7 +33,7 @@ struct dmi_match_data { 29172@@ -33,7 +33,7 @@ struct dmi_match_data {
28963 unsigned long iostart; 29173 unsigned long iostart;
28964 unsigned long iolen; 29174 unsigned long iolen;
@@ -28969,8 +29179,8 @@ diff -urNp linux-2.6.32.21/drivers/video/backlight/mbp_nvidia_bl.c linux-2.6.32.
28969 29179
28970 /* Module parameters. */ 29180 /* Module parameters. */
28971diff -urNp linux-2.6.32.21/drivers/video/backlight/omap1_bl.c linux-2.6.32.21/drivers/video/backlight/omap1_bl.c 29181diff -urNp linux-2.6.32.21/drivers/video/backlight/omap1_bl.c linux-2.6.32.21/drivers/video/backlight/omap1_bl.c
28972--- linux-2.6.32.21/drivers/video/backlight/omap1_bl.c 2010-08-26 19:42:20.000000000 -0400 29182--- linux-2.6.32.21/drivers/video/backlight/omap1_bl.c 2010-08-13 16:24:37.000000000 -0400
28973+++ linux-2.6.32.21/drivers/video/backlight/omap1_bl.c 2010-09-13 08:10:10.000000000 -0400 29183+++ linux-2.6.32.21/drivers/video/backlight/omap1_bl.c 2010-09-04 15:54:52.000000000 -0400
28974@@ -125,7 +125,7 @@ static int omapbl_get_intensity(struct b 29184@@ -125,7 +125,7 @@ static int omapbl_get_intensity(struct b
28975 return bl->current_intensity; 29185 return bl->current_intensity;
28976 } 29186 }
@@ -28981,8 +29191,8 @@ diff -urNp linux-2.6.32.21/drivers/video/backlight/omap1_bl.c linux-2.6.32.21/dr
28981 .update_status = omapbl_update_status, 29191 .update_status = omapbl_update_status,
28982 }; 29192 };
28983diff -urNp linux-2.6.32.21/drivers/video/backlight/progear_bl.c linux-2.6.32.21/drivers/video/backlight/progear_bl.c 29193diff -urNp linux-2.6.32.21/drivers/video/backlight/progear_bl.c linux-2.6.32.21/drivers/video/backlight/progear_bl.c
28984--- linux-2.6.32.21/drivers/video/backlight/progear_bl.c 2010-08-26 19:42:20.000000000 -0400 29194--- linux-2.6.32.21/drivers/video/backlight/progear_bl.c 2010-08-13 16:24:37.000000000 -0400
28985+++ linux-2.6.32.21/drivers/video/backlight/progear_bl.c 2010-09-13 08:10:10.000000000 -0400 29195+++ linux-2.6.32.21/drivers/video/backlight/progear_bl.c 2010-09-04 15:54:52.000000000 -0400
28986@@ -54,7 +54,7 @@ static int progearbl_get_intensity(struc 29196@@ -54,7 +54,7 @@ static int progearbl_get_intensity(struc
28987 return intensity - HW_LEVEL_MIN; 29197 return intensity - HW_LEVEL_MIN;
28988 } 29198 }
@@ -28993,8 +29203,8 @@ diff -urNp linux-2.6.32.21/drivers/video/backlight/progear_bl.c linux-2.6.32.21/
28993 .update_status = progearbl_set_intensity, 29203 .update_status = progearbl_set_intensity,
28994 }; 29204 };
28995diff -urNp linux-2.6.32.21/drivers/video/backlight/pwm_bl.c linux-2.6.32.21/drivers/video/backlight/pwm_bl.c 29205diff -urNp linux-2.6.32.21/drivers/video/backlight/pwm_bl.c linux-2.6.32.21/drivers/video/backlight/pwm_bl.c
28996--- linux-2.6.32.21/drivers/video/backlight/pwm_bl.c 2010-08-26 19:42:20.000000000 -0400 29206--- linux-2.6.32.21/drivers/video/backlight/pwm_bl.c 2010-08-13 16:24:37.000000000 -0400
28997+++ linux-2.6.32.21/drivers/video/backlight/pwm_bl.c 2010-09-13 08:10:10.000000000 -0400 29207+++ linux-2.6.32.21/drivers/video/backlight/pwm_bl.c 2010-09-04 15:54:52.000000000 -0400
28998@@ -56,7 +56,7 @@ static int pwm_backlight_get_brightness( 29208@@ -56,7 +56,7 @@ static int pwm_backlight_get_brightness(
28999 return bl->props.brightness; 29209 return bl->props.brightness;
29000 } 29210 }
@@ -29005,8 +29215,8 @@ diff -urNp linux-2.6.32.21/drivers/video/backlight/pwm_bl.c linux-2.6.32.21/driv
29005 .get_brightness = pwm_backlight_get_brightness, 29215 .get_brightness = pwm_backlight_get_brightness,
29006 }; 29216 };
29007diff -urNp linux-2.6.32.21/drivers/video/backlight/tosa_bl.c linux-2.6.32.21/drivers/video/backlight/tosa_bl.c 29217diff -urNp linux-2.6.32.21/drivers/video/backlight/tosa_bl.c linux-2.6.32.21/drivers/video/backlight/tosa_bl.c
29008--- linux-2.6.32.21/drivers/video/backlight/tosa_bl.c 2010-08-26 19:42:20.000000000 -0400 29218--- linux-2.6.32.21/drivers/video/backlight/tosa_bl.c 2010-08-13 16:24:37.000000000 -0400
29009+++ linux-2.6.32.21/drivers/video/backlight/tosa_bl.c 2010-09-13 08:10:10.000000000 -0400 29219+++ linux-2.6.32.21/drivers/video/backlight/tosa_bl.c 2010-09-04 15:54:52.000000000 -0400
29010@@ -72,7 +72,7 @@ static int tosa_bl_get_brightness(struct 29220@@ -72,7 +72,7 @@ static int tosa_bl_get_brightness(struct
29011 return props->brightness; 29221 return props->brightness;
29012 } 29222 }
@@ -29017,8 +29227,8 @@ diff -urNp linux-2.6.32.21/drivers/video/backlight/tosa_bl.c linux-2.6.32.21/dri
29017 .update_status = tosa_bl_update_status, 29227 .update_status = tosa_bl_update_status,
29018 }; 29228 };
29019diff -urNp linux-2.6.32.21/drivers/video/backlight/wm831x_bl.c linux-2.6.32.21/drivers/video/backlight/wm831x_bl.c 29229diff -urNp linux-2.6.32.21/drivers/video/backlight/wm831x_bl.c linux-2.6.32.21/drivers/video/backlight/wm831x_bl.c
29020--- linux-2.6.32.21/drivers/video/backlight/wm831x_bl.c 2010-08-26 19:42:20.000000000 -0400 29230--- linux-2.6.32.21/drivers/video/backlight/wm831x_bl.c 2010-08-13 16:24:37.000000000 -0400
29021+++ linux-2.6.32.21/drivers/video/backlight/wm831x_bl.c 2010-09-13 08:10:10.000000000 -0400 29231+++ linux-2.6.32.21/drivers/video/backlight/wm831x_bl.c 2010-09-04 15:54:52.000000000 -0400
29022@@ -112,7 +112,7 @@ static int wm831x_backlight_get_brightne 29232@@ -112,7 +112,7 @@ static int wm831x_backlight_get_brightne
29023 return data->current_brightness; 29233 return data->current_brightness;
29024 } 29234 }
@@ -29029,8 +29239,8 @@ diff -urNp linux-2.6.32.21/drivers/video/backlight/wm831x_bl.c linux-2.6.32.21/d
29029 .update_status = wm831x_backlight_update_status, 29239 .update_status = wm831x_backlight_update_status,
29030 .get_brightness = wm831x_backlight_get_brightness, 29240 .get_brightness = wm831x_backlight_get_brightness,
29031diff -urNp linux-2.6.32.21/drivers/video/bf54x-lq043fb.c linux-2.6.32.21/drivers/video/bf54x-lq043fb.c 29241diff -urNp linux-2.6.32.21/drivers/video/bf54x-lq043fb.c linux-2.6.32.21/drivers/video/bf54x-lq043fb.c
29032--- linux-2.6.32.21/drivers/video/bf54x-lq043fb.c 2010-08-26 19:42:20.000000000 -0400 29242--- linux-2.6.32.21/drivers/video/bf54x-lq043fb.c 2010-08-13 16:24:37.000000000 -0400
29033+++ linux-2.6.32.21/drivers/video/bf54x-lq043fb.c 2010-09-13 08:10:10.000000000 -0400 29243+++ linux-2.6.32.21/drivers/video/bf54x-lq043fb.c 2010-09-04 15:54:52.000000000 -0400
29034@@ -463,7 +463,7 @@ static int bl_get_brightness(struct back 29244@@ -463,7 +463,7 @@ static int bl_get_brightness(struct back
29035 return 0; 29245 return 0;
29036 } 29246 }
@@ -29041,8 +29251,8 @@ diff -urNp linux-2.6.32.21/drivers/video/bf54x-lq043fb.c linux-2.6.32.21/drivers
29041 }; 29251 };
29042 29252
29043diff -urNp linux-2.6.32.21/drivers/video/bfin-t350mcqb-fb.c linux-2.6.32.21/drivers/video/bfin-t350mcqb-fb.c 29253diff -urNp linux-2.6.32.21/drivers/video/bfin-t350mcqb-fb.c linux-2.6.32.21/drivers/video/bfin-t350mcqb-fb.c
29044--- linux-2.6.32.21/drivers/video/bfin-t350mcqb-fb.c 2010-08-26 19:42:20.000000000 -0400 29254--- linux-2.6.32.21/drivers/video/bfin-t350mcqb-fb.c 2010-08-13 16:24:37.000000000 -0400
29045+++ linux-2.6.32.21/drivers/video/bfin-t350mcqb-fb.c 2010-09-13 08:10:10.000000000 -0400 29255+++ linux-2.6.32.21/drivers/video/bfin-t350mcqb-fb.c 2010-09-04 15:54:52.000000000 -0400
29046@@ -381,7 +381,7 @@ static int bl_get_brightness(struct back 29256@@ -381,7 +381,7 @@ static int bl_get_brightness(struct back
29047 return 0; 29257 return 0;
29048 } 29258 }
@@ -29053,8 +29263,8 @@ diff -urNp linux-2.6.32.21/drivers/video/bfin-t350mcqb-fb.c linux-2.6.32.21/driv
29053 }; 29263 };
29054 29264
29055diff -urNp linux-2.6.32.21/drivers/video/fbcmap.c linux-2.6.32.21/drivers/video/fbcmap.c 29265diff -urNp linux-2.6.32.21/drivers/video/fbcmap.c linux-2.6.32.21/drivers/video/fbcmap.c
29056--- linux-2.6.32.21/drivers/video/fbcmap.c 2010-08-26 19:42:20.000000000 -0400 29266--- linux-2.6.32.21/drivers/video/fbcmap.c 2010-08-13 16:24:37.000000000 -0400
29057+++ linux-2.6.32.21/drivers/video/fbcmap.c 2010-09-13 08:10:10.000000000 -0400 29267+++ linux-2.6.32.21/drivers/video/fbcmap.c 2010-09-04 15:54:52.000000000 -0400
29058@@ -266,8 +266,7 @@ int fb_set_user_cmap(struct fb_cmap_user 29268@@ -266,8 +266,7 @@ int fb_set_user_cmap(struct fb_cmap_user
29059 rc = -ENODEV; 29269 rc = -ENODEV;
29060 goto out; 29270 goto out;
@@ -29066,8 +29276,8 @@ diff -urNp linux-2.6.32.21/drivers/video/fbcmap.c linux-2.6.32.21/drivers/video/
29066 goto out1; 29276 goto out1;
29067 } 29277 }
29068diff -urNp linux-2.6.32.21/drivers/video/fbmem.c linux-2.6.32.21/drivers/video/fbmem.c 29278diff -urNp linux-2.6.32.21/drivers/video/fbmem.c linux-2.6.32.21/drivers/video/fbmem.c
29069--- linux-2.6.32.21/drivers/video/fbmem.c 2010-08-26 19:42:20.000000000 -0400 29279--- linux-2.6.32.21/drivers/video/fbmem.c 2010-08-13 16:24:37.000000000 -0400
29070+++ linux-2.6.32.21/drivers/video/fbmem.c 2010-09-13 08:10:10.000000000 -0400 29280+++ linux-2.6.32.21/drivers/video/fbmem.c 2010-09-04 15:54:52.000000000 -0400
29071@@ -403,7 +403,7 @@ static void fb_do_show_logo(struct fb_in 29281@@ -403,7 +403,7 @@ static void fb_do_show_logo(struct fb_in
29072 image->dx += image->width + 8; 29282 image->dx += image->width + 8;
29073 } 29283 }
@@ -29096,8 +29306,8 @@ diff -urNp linux-2.6.32.21/drivers/video/fbmem.c linux-2.6.32.21/drivers/video/f
29096 if (!registered_fb[con2fb.framebuffer]) 29306 if (!registered_fb[con2fb.framebuffer])
29097 request_module("fb%d", con2fb.framebuffer); 29307 request_module("fb%d", con2fb.framebuffer);
29098diff -urNp linux-2.6.32.21/drivers/video/fbmon.c linux-2.6.32.21/drivers/video/fbmon.c 29308diff -urNp linux-2.6.32.21/drivers/video/fbmon.c linux-2.6.32.21/drivers/video/fbmon.c
29099--- linux-2.6.32.21/drivers/video/fbmon.c 2010-08-26 19:42:20.000000000 -0400 29309--- linux-2.6.32.21/drivers/video/fbmon.c 2010-08-13 16:24:37.000000000 -0400
29100+++ linux-2.6.32.21/drivers/video/fbmon.c 2010-09-13 08:10:10.000000000 -0400 29310+++ linux-2.6.32.21/drivers/video/fbmon.c 2010-09-04 15:54:52.000000000 -0400
29101@@ -45,7 +45,7 @@ 29311@@ -45,7 +45,7 @@
29102 #ifdef DEBUG 29312 #ifdef DEBUG
29103 #define DPRINTK(fmt, args...) printk(fmt,## args) 29313 #define DPRINTK(fmt, args...) printk(fmt,## args)
@@ -29108,8 +29318,8 @@ diff -urNp linux-2.6.32.21/drivers/video/fbmon.c linux-2.6.32.21/drivers/video/f
29108 29318
29109 #define FBMON_FIX_HEADER 1 29319 #define FBMON_FIX_HEADER 1
29110diff -urNp linux-2.6.32.21/drivers/video/i810/i810_accel.c linux-2.6.32.21/drivers/video/i810/i810_accel.c 29320diff -urNp linux-2.6.32.21/drivers/video/i810/i810_accel.c linux-2.6.32.21/drivers/video/i810/i810_accel.c
29111--- linux-2.6.32.21/drivers/video/i810/i810_accel.c 2010-08-26 19:42:20.000000000 -0400 29321--- linux-2.6.32.21/drivers/video/i810/i810_accel.c 2010-08-13 16:24:37.000000000 -0400
29112+++ linux-2.6.32.21/drivers/video/i810/i810_accel.c 2010-09-13 08:10:10.000000000 -0400 29322+++ linux-2.6.32.21/drivers/video/i810/i810_accel.c 2010-09-04 15:54:52.000000000 -0400
29113@@ -73,6 +73,7 @@ static inline int wait_for_space(struct 29323@@ -73,6 +73,7 @@ static inline int wait_for_space(struct
29114 } 29324 }
29115 } 29325 }
@@ -29119,8 +29329,8 @@ diff -urNp linux-2.6.32.21/drivers/video/i810/i810_accel.c linux-2.6.32.21/drive
29119 par->dev_flags |= LOCKUP; 29329 par->dev_flags |= LOCKUP;
29120 info->pixmap.scan_align = 1; 29330 info->pixmap.scan_align = 1;
29121diff -urNp linux-2.6.32.21/drivers/video/i810/i810_main.c linux-2.6.32.21/drivers/video/i810/i810_main.c 29331diff -urNp linux-2.6.32.21/drivers/video/i810/i810_main.c linux-2.6.32.21/drivers/video/i810/i810_main.c
29122--- linux-2.6.32.21/drivers/video/i810/i810_main.c 2010-08-26 19:42:20.000000000 -0400 29332--- linux-2.6.32.21/drivers/video/i810/i810_main.c 2010-08-13 16:24:37.000000000 -0400
29123+++ linux-2.6.32.21/drivers/video/i810/i810_main.c 2010-09-13 08:10:10.000000000 -0400 29333+++ linux-2.6.32.21/drivers/video/i810/i810_main.c 2010-09-04 15:54:52.000000000 -0400
29124@@ -120,7 +120,7 @@ static struct pci_device_id i810fb_pci_t 29334@@ -120,7 +120,7 @@ static struct pci_device_id i810fb_pci_t
29125 PCI_ANY_ID, PCI_ANY_ID, 0, 0, 4 }, 29335 PCI_ANY_ID, PCI_ANY_ID, 0, 0, 4 },
29126 { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82815_CGC, 29336 { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82815_CGC,
@@ -29131,8 +29341,8 @@ diff -urNp linux-2.6.32.21/drivers/video/i810/i810_main.c linux-2.6.32.21/driver
29131 29341
29132 static struct pci_driver i810fb_driver = { 29342 static struct pci_driver i810fb_driver = {
29133diff -urNp linux-2.6.32.21/drivers/video/modedb.c linux-2.6.32.21/drivers/video/modedb.c 29343diff -urNp linux-2.6.32.21/drivers/video/modedb.c linux-2.6.32.21/drivers/video/modedb.c
29134--- linux-2.6.32.21/drivers/video/modedb.c 2010-08-26 19:42:20.000000000 -0400 29344--- linux-2.6.32.21/drivers/video/modedb.c 2010-08-13 16:24:37.000000000 -0400
29135+++ linux-2.6.32.21/drivers/video/modedb.c 2010-09-13 08:10:10.000000000 -0400 29345+++ linux-2.6.32.21/drivers/video/modedb.c 2010-09-04 15:54:52.000000000 -0400
29136@@ -38,240 +38,240 @@ static const struct fb_videomode modedb[ 29346@@ -38,240 +38,240 @@ static const struct fb_videomode modedb[
29137 { 29347 {
29138 /* 640x400 @ 70 Hz, 31.5 kHz hsync */ 29348 /* 640x400 @ 70 Hz, 31.5 kHz hsync */
@@ -29434,8 +29644,8 @@ diff -urNp linux-2.6.32.21/drivers/video/modedb.c linux-2.6.32.21/drivers/video/
29434 }; 29644 };
29435 29645
29436diff -urNp linux-2.6.32.21/drivers/video/nvidia/nv_backlight.c linux-2.6.32.21/drivers/video/nvidia/nv_backlight.c 29646diff -urNp linux-2.6.32.21/drivers/video/nvidia/nv_backlight.c linux-2.6.32.21/drivers/video/nvidia/nv_backlight.c
29437--- linux-2.6.32.21/drivers/video/nvidia/nv_backlight.c 2010-08-26 19:42:20.000000000 -0400 29647--- linux-2.6.32.21/drivers/video/nvidia/nv_backlight.c 2010-08-13 16:24:37.000000000 -0400
29438+++ linux-2.6.32.21/drivers/video/nvidia/nv_backlight.c 2010-09-13 08:10:10.000000000 -0400 29648+++ linux-2.6.32.21/drivers/video/nvidia/nv_backlight.c 2010-09-04 15:54:52.000000000 -0400
29439@@ -87,7 +87,7 @@ static int nvidia_bl_get_brightness(stru 29649@@ -87,7 +87,7 @@ static int nvidia_bl_get_brightness(stru
29440 return bd->props.brightness; 29650 return bd->props.brightness;
29441 } 29651 }
@@ -29446,8 +29656,8 @@ diff -urNp linux-2.6.32.21/drivers/video/nvidia/nv_backlight.c linux-2.6.32.21/d
29446 .update_status = nvidia_bl_update_status, 29656 .update_status = nvidia_bl_update_status,
29447 }; 29657 };
29448diff -urNp linux-2.6.32.21/drivers/video/riva/fbdev.c linux-2.6.32.21/drivers/video/riva/fbdev.c 29658diff -urNp linux-2.6.32.21/drivers/video/riva/fbdev.c linux-2.6.32.21/drivers/video/riva/fbdev.c
29449--- linux-2.6.32.21/drivers/video/riva/fbdev.c 2010-08-26 19:42:20.000000000 -0400 29659--- linux-2.6.32.21/drivers/video/riva/fbdev.c 2010-08-13 16:24:37.000000000 -0400
29450+++ linux-2.6.32.21/drivers/video/riva/fbdev.c 2010-09-13 08:10:10.000000000 -0400 29660+++ linux-2.6.32.21/drivers/video/riva/fbdev.c 2010-09-04 15:54:52.000000000 -0400
29451@@ -331,7 +331,7 @@ static int riva_bl_get_brightness(struct 29661@@ -331,7 +331,7 @@ static int riva_bl_get_brightness(struct
29452 return bd->props.brightness; 29662 return bd->props.brightness;
29453 } 29663 }
@@ -29458,8 +29668,8 @@ diff -urNp linux-2.6.32.21/drivers/video/riva/fbdev.c linux-2.6.32.21/drivers/vi
29458 .update_status = riva_bl_update_status, 29668 .update_status = riva_bl_update_status,
29459 }; 29669 };
29460diff -urNp linux-2.6.32.21/drivers/video/uvesafb.c linux-2.6.32.21/drivers/video/uvesafb.c 29670diff -urNp linux-2.6.32.21/drivers/video/uvesafb.c linux-2.6.32.21/drivers/video/uvesafb.c
29461--- linux-2.6.32.21/drivers/video/uvesafb.c 2010-08-26 19:42:20.000000000 -0400 29671--- linux-2.6.32.21/drivers/video/uvesafb.c 2010-08-13 16:24:37.000000000 -0400
29462+++ linux-2.6.32.21/drivers/video/uvesafb.c 2010-09-13 08:10:10.000000000 -0400 29672+++ linux-2.6.32.21/drivers/video/uvesafb.c 2010-09-04 15:54:52.000000000 -0400
29463@@ -18,6 +18,7 @@ 29673@@ -18,6 +18,7 @@
29464 #include <linux/fb.h> 29674 #include <linux/fb.h>
29465 #include <linux/io.h> 29675 #include <linux/io.h>
@@ -29536,8 +29746,8 @@ diff -urNp linux-2.6.32.21/drivers/video/uvesafb.c linux-2.6.32.21/drivers/video
29536 29746
29537 framebuffer_release(info); 29747 framebuffer_release(info);
29538diff -urNp linux-2.6.32.21/drivers/video/vesafb.c linux-2.6.32.21/drivers/video/vesafb.c 29748diff -urNp linux-2.6.32.21/drivers/video/vesafb.c linux-2.6.32.21/drivers/video/vesafb.c
29539--- linux-2.6.32.21/drivers/video/vesafb.c 2010-08-26 19:42:20.000000000 -0400 29749--- linux-2.6.32.21/drivers/video/vesafb.c 2010-08-13 16:24:37.000000000 -0400
29540+++ linux-2.6.32.21/drivers/video/vesafb.c 2010-09-13 08:10:10.000000000 -0400 29750+++ linux-2.6.32.21/drivers/video/vesafb.c 2010-09-04 15:54:52.000000000 -0400
29541@@ -9,6 +9,7 @@ 29751@@ -9,6 +9,7 @@
29542 */ 29752 */
29543 29753
@@ -29642,8 +29852,8 @@ diff -urNp linux-2.6.32.21/drivers/video/vesafb.c linux-2.6.32.21/drivers/video/
29642 iounmap(info->screen_base); 29852 iounmap(info->screen_base);
29643 framebuffer_release(info); 29853 framebuffer_release(info);
29644diff -urNp linux-2.6.32.21/drivers/xen/sys-hypervisor.c linux-2.6.32.21/drivers/xen/sys-hypervisor.c 29854diff -urNp linux-2.6.32.21/drivers/xen/sys-hypervisor.c linux-2.6.32.21/drivers/xen/sys-hypervisor.c
29645--- linux-2.6.32.21/drivers/xen/sys-hypervisor.c 2010-08-26 19:42:20.000000000 -0400 29855--- linux-2.6.32.21/drivers/xen/sys-hypervisor.c 2010-08-13 16:24:37.000000000 -0400
29646+++ linux-2.6.32.21/drivers/xen/sys-hypervisor.c 2010-09-13 08:10:10.000000000 -0400 29856+++ linux-2.6.32.21/drivers/xen/sys-hypervisor.c 2010-09-04 15:54:52.000000000 -0400
29647@@ -425,7 +425,7 @@ static ssize_t hyp_sysfs_store(struct ko 29857@@ -425,7 +425,7 @@ static ssize_t hyp_sysfs_store(struct ko
29648 return 0; 29858 return 0;
29649 } 29859 }
@@ -29654,8 +29864,8 @@ diff -urNp linux-2.6.32.21/drivers/xen/sys-hypervisor.c linux-2.6.32.21/drivers/
29654 .store = hyp_sysfs_store, 29864 .store = hyp_sysfs_store,
29655 }; 29865 };
29656diff -urNp linux-2.6.32.21/fs/9p/vfs_inode.c linux-2.6.32.21/fs/9p/vfs_inode.c 29866diff -urNp linux-2.6.32.21/fs/9p/vfs_inode.c linux-2.6.32.21/fs/9p/vfs_inode.c
29657--- linux-2.6.32.21/fs/9p/vfs_inode.c 2010-08-26 19:42:20.000000000 -0400 29867--- linux-2.6.32.21/fs/9p/vfs_inode.c 2010-08-13 16:24:37.000000000 -0400
29658+++ linux-2.6.32.21/fs/9p/vfs_inode.c 2010-09-13 08:10:10.000000000 -0400 29868+++ linux-2.6.32.21/fs/9p/vfs_inode.c 2010-09-04 15:54:52.000000000 -0400
29659@@ -1079,7 +1079,7 @@ static void *v9fs_vfs_follow_link(struct 29869@@ -1079,7 +1079,7 @@ static void *v9fs_vfs_follow_link(struct
29660 static void 29870 static void
29661 v9fs_vfs_put_link(struct dentry *dentry, struct nameidata *nd, void *p) 29871 v9fs_vfs_put_link(struct dentry *dentry, struct nameidata *nd, void *p)
@@ -29666,8 +29876,8 @@ diff -urNp linux-2.6.32.21/fs/9p/vfs_inode.c linux-2.6.32.21/fs/9p/vfs_inode.c
29666 P9_DPRINTK(P9_DEBUG_VFS, " %s %s\n", dentry->d_name.name, 29876 P9_DPRINTK(P9_DEBUG_VFS, " %s %s\n", dentry->d_name.name,
29667 IS_ERR(s) ? "<error>" : s); 29877 IS_ERR(s) ? "<error>" : s);
29668diff -urNp linux-2.6.32.21/fs/aio.c linux-2.6.32.21/fs/aio.c 29878diff -urNp linux-2.6.32.21/fs/aio.c linux-2.6.32.21/fs/aio.c
29669--- linux-2.6.32.21/fs/aio.c 2010-08-26 19:42:20.000000000 -0400 29879--- linux-2.6.32.21/fs/aio.c 2010-08-13 16:24:37.000000000 -0400
29670+++ linux-2.6.32.21/fs/aio.c 2010-09-13 08:10:10.000000000 -0400 29880+++ linux-2.6.32.21/fs/aio.c 2010-09-04 15:54:52.000000000 -0400
29671@@ -115,7 +115,7 @@ static int aio_setup_ring(struct kioctx 29881@@ -115,7 +115,7 @@ static int aio_setup_ring(struct kioctx
29672 size += sizeof(struct io_event) * nr_events; 29882 size += sizeof(struct io_event) * nr_events;
29673 nr_pages = (size + PAGE_SIZE-1) >> PAGE_SHIFT; 29883 nr_pages = (size + PAGE_SIZE-1) >> PAGE_SHIFT;
@@ -29678,8 +29888,8 @@ diff -urNp linux-2.6.32.21/fs/aio.c linux-2.6.32.21/fs/aio.c
29678 29888
29679 nr_events = (PAGE_SIZE * nr_pages - sizeof(struct aio_ring)) / sizeof(struct io_event); 29889 nr_events = (PAGE_SIZE * nr_pages - sizeof(struct aio_ring)) / sizeof(struct io_event);
29680diff -urNp linux-2.6.32.21/fs/attr.c linux-2.6.32.21/fs/attr.c 29890diff -urNp linux-2.6.32.21/fs/attr.c linux-2.6.32.21/fs/attr.c
29681--- linux-2.6.32.21/fs/attr.c 2010-08-26 19:42:20.000000000 -0400 29891--- linux-2.6.32.21/fs/attr.c 2010-08-13 16:24:37.000000000 -0400
29682+++ linux-2.6.32.21/fs/attr.c 2010-09-13 08:10:10.000000000 -0400 29892+++ linux-2.6.32.21/fs/attr.c 2010-09-04 15:54:52.000000000 -0400
29683@@ -83,6 +83,7 @@ int inode_newsize_ok(const struct inode 29893@@ -83,6 +83,7 @@ int inode_newsize_ok(const struct inode
29684 unsigned long limit; 29894 unsigned long limit;
29685 29895
@@ -29689,8 +29899,8 @@ diff -urNp linux-2.6.32.21/fs/attr.c linux-2.6.32.21/fs/attr.c
29689 goto out_sig; 29899 goto out_sig;
29690 if (offset > inode->i_sb->s_maxbytes) 29900 if (offset > inode->i_sb->s_maxbytes)
29691diff -urNp linux-2.6.32.21/fs/autofs/root.c linux-2.6.32.21/fs/autofs/root.c 29901diff -urNp linux-2.6.32.21/fs/autofs/root.c linux-2.6.32.21/fs/autofs/root.c
29692--- linux-2.6.32.21/fs/autofs/root.c 2010-08-26 19:42:20.000000000 -0400 29902--- linux-2.6.32.21/fs/autofs/root.c 2010-08-13 16:24:37.000000000 -0400
29693+++ linux-2.6.32.21/fs/autofs/root.c 2010-09-13 08:10:10.000000000 -0400 29903+++ linux-2.6.32.21/fs/autofs/root.c 2010-09-04 15:54:52.000000000 -0400
29694@@ -299,7 +299,8 @@ static int autofs_root_symlink(struct in 29904@@ -299,7 +299,8 @@ static int autofs_root_symlink(struct in
29695 set_bit(n,sbi->symlink_bitmap); 29905 set_bit(n,sbi->symlink_bitmap);
29696 sl = &sbi->symlink[n]; 29906 sl = &sbi->symlink[n];
@@ -29702,8 +29912,8 @@ diff -urNp linux-2.6.32.21/fs/autofs/root.c linux-2.6.32.21/fs/autofs/root.c
29702 clear_bit(n,sbi->symlink_bitmap); 29912 clear_bit(n,sbi->symlink_bitmap);
29703 unlock_kernel(); 29913 unlock_kernel();
29704diff -urNp linux-2.6.32.21/fs/autofs4/symlink.c linux-2.6.32.21/fs/autofs4/symlink.c 29914diff -urNp linux-2.6.32.21/fs/autofs4/symlink.c linux-2.6.32.21/fs/autofs4/symlink.c
29705--- linux-2.6.32.21/fs/autofs4/symlink.c 2010-08-26 19:42:20.000000000 -0400 29915--- linux-2.6.32.21/fs/autofs4/symlink.c 2010-08-13 16:24:37.000000000 -0400
29706+++ linux-2.6.32.21/fs/autofs4/symlink.c 2010-09-13 08:10:10.000000000 -0400 29916+++ linux-2.6.32.21/fs/autofs4/symlink.c 2010-09-04 15:54:52.000000000 -0400
29707@@ -15,7 +15,7 @@ 29917@@ -15,7 +15,7 @@
29708 static void *autofs4_follow_link(struct dentry *dentry, struct nameidata *nd) 29918 static void *autofs4_follow_link(struct dentry *dentry, struct nameidata *nd)
29709 { 29919 {
@@ -29714,8 +29924,8 @@ diff -urNp linux-2.6.32.21/fs/autofs4/symlink.c linux-2.6.32.21/fs/autofs4/symli
29714 } 29924 }
29715 29925
29716diff -urNp linux-2.6.32.21/fs/befs/linuxvfs.c linux-2.6.32.21/fs/befs/linuxvfs.c 29926diff -urNp linux-2.6.32.21/fs/befs/linuxvfs.c linux-2.6.32.21/fs/befs/linuxvfs.c
29717--- linux-2.6.32.21/fs/befs/linuxvfs.c 2010-08-26 19:42:20.000000000 -0400 29927--- linux-2.6.32.21/fs/befs/linuxvfs.c 2010-08-13 16:24:37.000000000 -0400
29718+++ linux-2.6.32.21/fs/befs/linuxvfs.c 2010-09-13 08:10:10.000000000 -0400 29928+++ linux-2.6.32.21/fs/befs/linuxvfs.c 2010-09-04 15:54:52.000000000 -0400
29719@@ -493,7 +493,7 @@ static void befs_put_link(struct dentry 29929@@ -493,7 +493,7 @@ static void befs_put_link(struct dentry
29720 { 29930 {
29721 befs_inode_info *befs_ino = BEFS_I(dentry->d_inode); 29931 befs_inode_info *befs_ino = BEFS_I(dentry->d_inode);
@@ -29726,8 +29936,8 @@ diff -urNp linux-2.6.32.21/fs/befs/linuxvfs.c linux-2.6.32.21/fs/befs/linuxvfs.c
29726 kfree(link); 29936 kfree(link);
29727 } 29937 }
29728diff -urNp linux-2.6.32.21/fs/binfmt_aout.c linux-2.6.32.21/fs/binfmt_aout.c 29938diff -urNp linux-2.6.32.21/fs/binfmt_aout.c linux-2.6.32.21/fs/binfmt_aout.c
29729--- linux-2.6.32.21/fs/binfmt_aout.c 2010-08-26 19:42:20.000000000 -0400 29939--- linux-2.6.32.21/fs/binfmt_aout.c 2010-08-13 16:24:37.000000000 -0400
29730+++ linux-2.6.32.21/fs/binfmt_aout.c 2010-09-13 08:10:10.000000000 -0400 29940+++ linux-2.6.32.21/fs/binfmt_aout.c 2010-09-04 15:54:52.000000000 -0400
29731@@ -16,6 +16,7 @@ 29941@@ -16,6 +16,7 @@
29732 #include <linux/string.h> 29942 #include <linux/string.h>
29733 #include <linux/fs.h> 29943 #include <linux/fs.h>
@@ -29796,8 +30006,8 @@ diff -urNp linux-2.6.32.21/fs/binfmt_aout.c linux-2.6.32.21/fs/binfmt_aout.c
29796 fd_offset + ex.a_text); 30006 fd_offset + ex.a_text);
29797 up_write(&current->mm->mmap_sem); 30007 up_write(&current->mm->mmap_sem);
29798diff -urNp linux-2.6.32.21/fs/binfmt_elf.c linux-2.6.32.21/fs/binfmt_elf.c 30008diff -urNp linux-2.6.32.21/fs/binfmt_elf.c linux-2.6.32.21/fs/binfmt_elf.c
29799--- linux-2.6.32.21/fs/binfmt_elf.c 2010-08-26 19:42:20.000000000 -0400 30009--- linux-2.6.32.21/fs/binfmt_elf.c 2010-08-13 16:24:37.000000000 -0400
29800+++ linux-2.6.32.21/fs/binfmt_elf.c 2010-09-13 08:10:10.000000000 -0400 30010+++ linux-2.6.32.21/fs/binfmt_elf.c 2010-09-04 15:54:52.000000000 -0400
29801@@ -50,6 +50,10 @@ static int elf_core_dump(long signr, str 30011@@ -50,6 +50,10 @@ static int elf_core_dump(long signr, str
29802 #define elf_core_dump NULL 30012 #define elf_core_dump NULL
29803 #endif 30013 #endif
@@ -30434,8 +30644,8 @@ diff -urNp linux-2.6.32.21/fs/binfmt_elf.c linux-2.6.32.21/fs/binfmt_elf.c
30434 { 30644 {
30435 return register_binfmt(&elf_format); 30645 return register_binfmt(&elf_format);
30436diff -urNp linux-2.6.32.21/fs/binfmt_flat.c linux-2.6.32.21/fs/binfmt_flat.c 30646diff -urNp linux-2.6.32.21/fs/binfmt_flat.c linux-2.6.32.21/fs/binfmt_flat.c
30437--- linux-2.6.32.21/fs/binfmt_flat.c 2010-08-26 19:42:20.000000000 -0400 30647--- linux-2.6.32.21/fs/binfmt_flat.c 2010-08-13 16:24:37.000000000 -0400
30438+++ linux-2.6.32.21/fs/binfmt_flat.c 2010-09-13 08:10:10.000000000 -0400 30648+++ linux-2.6.32.21/fs/binfmt_flat.c 2010-09-04 15:54:52.000000000 -0400
30439@@ -564,7 +564,9 @@ static int load_flat_file(struct linux_b 30649@@ -564,7 +564,9 @@ static int load_flat_file(struct linux_b
30440 realdatastart = (unsigned long) -ENOMEM; 30650 realdatastart = (unsigned long) -ENOMEM;
30441 printk("Unable to allocate RAM for process data, errno %d\n", 30651 printk("Unable to allocate RAM for process data, errno %d\n",
@@ -30469,8 +30679,8 @@ diff -urNp linux-2.6.32.21/fs/binfmt_flat.c linux-2.6.32.21/fs/binfmt_flat.c
30469 goto err; 30679 goto err;
30470 } 30680 }
30471diff -urNp linux-2.6.32.21/fs/binfmt_misc.c linux-2.6.32.21/fs/binfmt_misc.c 30681diff -urNp linux-2.6.32.21/fs/binfmt_misc.c linux-2.6.32.21/fs/binfmt_misc.c
30472--- linux-2.6.32.21/fs/binfmt_misc.c 2010-08-26 19:42:20.000000000 -0400 30682--- linux-2.6.32.21/fs/binfmt_misc.c 2010-08-13 16:24:37.000000000 -0400
30473+++ linux-2.6.32.21/fs/binfmt_misc.c 2010-09-13 08:10:10.000000000 -0400 30683+++ linux-2.6.32.21/fs/binfmt_misc.c 2010-09-04 15:54:52.000000000 -0400
30474@@ -693,7 +693,7 @@ static int bm_fill_super(struct super_bl 30684@@ -693,7 +693,7 @@ static int bm_fill_super(struct super_bl
30475 static struct tree_descr bm_files[] = { 30685 static struct tree_descr bm_files[] = {
30476 [2] = {"status", &bm_status_operations, S_IWUSR|S_IRUGO}, 30686 [2] = {"status", &bm_status_operations, S_IWUSR|S_IRUGO},
@@ -30481,8 +30691,8 @@ diff -urNp linux-2.6.32.21/fs/binfmt_misc.c linux-2.6.32.21/fs/binfmt_misc.c
30481 int err = simple_fill_super(sb, 0x42494e4d, bm_files); 30691 int err = simple_fill_super(sb, 0x42494e4d, bm_files);
30482 if (!err) 30692 if (!err)
30483diff -urNp linux-2.6.32.21/fs/bio.c linux-2.6.32.21/fs/bio.c 30693diff -urNp linux-2.6.32.21/fs/bio.c linux-2.6.32.21/fs/bio.c
30484--- linux-2.6.32.21/fs/bio.c 2010-08-26 19:42:20.000000000 -0400 30694--- linux-2.6.32.21/fs/bio.c 2010-08-13 16:24:37.000000000 -0400
30485+++ linux-2.6.32.21/fs/bio.c 2010-09-13 08:10:10.000000000 -0400 30695+++ linux-2.6.32.21/fs/bio.c 2010-09-04 15:54:52.000000000 -0400
30486@@ -78,7 +78,7 @@ static struct kmem_cache *bio_find_or_cr 30696@@ -78,7 +78,7 @@ static struct kmem_cache *bio_find_or_cr
30487 30697
30488 i = 0; 30698 i = 0;
@@ -30502,8 +30712,8 @@ diff -urNp linux-2.6.32.21/fs/bio.c linux-2.6.32.21/fs/bio.c
30502 __bio_for_each_segment(bvec, bio, i, 0) { 30712 __bio_for_each_segment(bvec, bio, i, 0) {
30503 char *addr = page_address(bvec->bv_page); 30713 char *addr = page_address(bvec->bv_page);
30504diff -urNp linux-2.6.32.21/fs/block_dev.c linux-2.6.32.21/fs/block_dev.c 30714diff -urNp linux-2.6.32.21/fs/block_dev.c linux-2.6.32.21/fs/block_dev.c
30505--- linux-2.6.32.21/fs/block_dev.c 2010-08-26 19:42:20.000000000 -0400 30715--- linux-2.6.32.21/fs/block_dev.c 2010-08-13 16:24:37.000000000 -0400
30506+++ linux-2.6.32.21/fs/block_dev.c 2010-09-13 08:10:10.000000000 -0400 30716+++ linux-2.6.32.21/fs/block_dev.c 2010-09-04 15:54:52.000000000 -0400
30507@@ -664,7 +664,7 @@ int bd_claim(struct block_device *bdev, 30717@@ -664,7 +664,7 @@ int bd_claim(struct block_device *bdev,
30508 else if (bdev->bd_contains == bdev) 30718 else if (bdev->bd_contains == bdev)
30509 res = 0; /* is a whole device which isn't held */ 30719 res = 0; /* is a whole device which isn't held */
@@ -30514,8 +30724,8 @@ diff -urNp linux-2.6.32.21/fs/block_dev.c linux-2.6.32.21/fs/block_dev.c
30514 else if (bdev->bd_contains->bd_holder != NULL) 30724 else if (bdev->bd_contains->bd_holder != NULL)
30515 res = -EBUSY; /* is a partition of a held device */ 30725 res = -EBUSY; /* is a partition of a held device */
30516diff -urNp linux-2.6.32.21/fs/btrfs/ctree.c linux-2.6.32.21/fs/btrfs/ctree.c 30726diff -urNp linux-2.6.32.21/fs/btrfs/ctree.c linux-2.6.32.21/fs/btrfs/ctree.c
30517--- linux-2.6.32.21/fs/btrfs/ctree.c 2010-08-26 19:42:20.000000000 -0400 30727--- linux-2.6.32.21/fs/btrfs/ctree.c 2010-08-13 16:24:37.000000000 -0400
30518+++ linux-2.6.32.21/fs/btrfs/ctree.c 2010-09-13 08:10:10.000000000 -0400 30728+++ linux-2.6.32.21/fs/btrfs/ctree.c 2010-09-04 15:54:52.000000000 -0400
30519@@ -3645,7 +3645,6 @@ setup_items_for_insert(struct btrfs_tran 30729@@ -3645,7 +3645,6 @@ setup_items_for_insert(struct btrfs_tran
30520 30730
30521 ret = 0; 30731 ret = 0;
@@ -30525,8 +30735,8 @@ diff -urNp linux-2.6.32.21/fs/btrfs/ctree.c linux-2.6.32.21/fs/btrfs/ctree.c
30525 ret = fixup_low_keys(trans, root, path, &disk_key, 1); 30735 ret = fixup_low_keys(trans, root, path, &disk_key, 1);
30526 } 30736 }
30527diff -urNp linux-2.6.32.21/fs/btrfs/disk-io.c linux-2.6.32.21/fs/btrfs/disk-io.c 30737diff -urNp linux-2.6.32.21/fs/btrfs/disk-io.c linux-2.6.32.21/fs/btrfs/disk-io.c
30528--- linux-2.6.32.21/fs/btrfs/disk-io.c 2010-08-26 19:42:20.000000000 -0400 30738--- linux-2.6.32.21/fs/btrfs/disk-io.c 2010-08-13 16:24:37.000000000 -0400
30529+++ linux-2.6.32.21/fs/btrfs/disk-io.c 2010-09-13 08:10:10.000000000 -0400 30739+++ linux-2.6.32.21/fs/btrfs/disk-io.c 2010-09-04 15:54:52.000000000 -0400
30530@@ -39,7 +39,7 @@ 30740@@ -39,7 +39,7 @@
30531 #include "tree-log.h" 30741 #include "tree-log.h"
30532 #include "free-space-cache.h" 30742 #include "free-space-cache.h"
@@ -30546,8 +30756,8 @@ diff -urNp linux-2.6.32.21/fs/btrfs/disk-io.c linux-2.6.32.21/fs/btrfs/disk-io.c
30546 .readpage_end_io_hook = btree_readpage_end_io_hook, 30756 .readpage_end_io_hook = btree_readpage_end_io_hook,
30547 .submit_bio_hook = btree_submit_bio_hook, 30757 .submit_bio_hook = btree_submit_bio_hook,
30548diff -urNp linux-2.6.32.21/fs/btrfs/extent_io.h linux-2.6.32.21/fs/btrfs/extent_io.h 30758diff -urNp linux-2.6.32.21/fs/btrfs/extent_io.h linux-2.6.32.21/fs/btrfs/extent_io.h
30549--- linux-2.6.32.21/fs/btrfs/extent_io.h 2010-08-26 19:42:20.000000000 -0400 30759--- linux-2.6.32.21/fs/btrfs/extent_io.h 2010-08-13 16:24:37.000000000 -0400
30550+++ linux-2.6.32.21/fs/btrfs/extent_io.h 2010-09-13 08:10:10.000000000 -0400 30760+++ linux-2.6.32.21/fs/btrfs/extent_io.h 2010-09-04 15:54:52.000000000 -0400
30551@@ -49,36 +49,36 @@ typedef int (extent_submit_bio_hook_t)(s 30761@@ -49,36 +49,36 @@ typedef int (extent_submit_bio_hook_t)(s
30552 struct bio *bio, int mirror_num, 30762 struct bio *bio, int mirror_num,
30553 unsigned long bio_flags); 30763 unsigned long bio_flags);
@@ -30609,8 +30819,8 @@ diff -urNp linux-2.6.32.21/fs/btrfs/extent_io.h linux-2.6.32.21/fs/btrfs/extent_
30609 30819
30610 struct extent_state { 30820 struct extent_state {
30611diff -urNp linux-2.6.32.21/fs/btrfs/free-space-cache.c linux-2.6.32.21/fs/btrfs/free-space-cache.c 30821diff -urNp linux-2.6.32.21/fs/btrfs/free-space-cache.c linux-2.6.32.21/fs/btrfs/free-space-cache.c
30612--- linux-2.6.32.21/fs/btrfs/free-space-cache.c 2010-08-26 19:42:20.000000000 -0400 30822--- linux-2.6.32.21/fs/btrfs/free-space-cache.c 2010-08-13 16:24:37.000000000 -0400
30613+++ linux-2.6.32.21/fs/btrfs/free-space-cache.c 2010-09-13 08:10:10.000000000 -0400 30823+++ linux-2.6.32.21/fs/btrfs/free-space-cache.c 2010-09-04 15:54:52.000000000 -0400
30614@@ -1074,8 +1074,6 @@ u64 btrfs_alloc_from_cluster(struct btrf 30824@@ -1074,8 +1074,6 @@ u64 btrfs_alloc_from_cluster(struct btrf
30615 30825
30616 while(1) { 30826 while(1) {
@@ -30630,8 +30840,8 @@ diff -urNp linux-2.6.32.21/fs/btrfs/free-space-cache.c linux-2.6.32.21/fs/btrfs/
30630 if (entry->bitmap && entry->bytes > bytes + empty_size) { 30840 if (entry->bitmap && entry->bytes > bytes + empty_size) {
30631 ret = btrfs_bitmap_cluster(block_group, entry, cluster, 30841 ret = btrfs_bitmap_cluster(block_group, entry, cluster,
30632diff -urNp linux-2.6.32.21/fs/btrfs/inode.c linux-2.6.32.21/fs/btrfs/inode.c 30842diff -urNp linux-2.6.32.21/fs/btrfs/inode.c linux-2.6.32.21/fs/btrfs/inode.c
30633--- linux-2.6.32.21/fs/btrfs/inode.c 2010-08-26 19:42:20.000000000 -0400 30843--- linux-2.6.32.21/fs/btrfs/inode.c 2010-08-13 16:24:37.000000000 -0400
30634+++ linux-2.6.32.21/fs/btrfs/inode.c 2010-09-13 08:10:10.000000000 -0400 30844+++ linux-2.6.32.21/fs/btrfs/inode.c 2010-09-04 15:54:52.000000000 -0400
30635@@ -63,7 +63,7 @@ static const struct inode_operations btr 30845@@ -63,7 +63,7 @@ static const struct inode_operations btr
30636 static const struct address_space_operations btrfs_aops; 30846 static const struct address_space_operations btrfs_aops;
30637 static const struct address_space_operations btrfs_symlink_aops; 30847 static const struct address_space_operations btrfs_symlink_aops;
@@ -30651,8 +30861,8 @@ diff -urNp linux-2.6.32.21/fs/btrfs/inode.c linux-2.6.32.21/fs/btrfs/inode.c
30651 .submit_bio_hook = btrfs_submit_bio_hook, 30861 .submit_bio_hook = btrfs_submit_bio_hook,
30652 .merge_bio_hook = btrfs_merge_bio_hook, 30862 .merge_bio_hook = btrfs_merge_bio_hook,
30653diff -urNp linux-2.6.32.21/fs/btrfs/sysfs.c linux-2.6.32.21/fs/btrfs/sysfs.c 30863diff -urNp linux-2.6.32.21/fs/btrfs/sysfs.c linux-2.6.32.21/fs/btrfs/sysfs.c
30654--- linux-2.6.32.21/fs/btrfs/sysfs.c 2010-08-26 19:42:20.000000000 -0400 30864--- linux-2.6.32.21/fs/btrfs/sysfs.c 2010-08-13 16:24:37.000000000 -0400
30655+++ linux-2.6.32.21/fs/btrfs/sysfs.c 2010-09-13 08:10:10.000000000 -0400 30865+++ linux-2.6.32.21/fs/btrfs/sysfs.c 2010-09-04 15:54:52.000000000 -0400
30656@@ -164,12 +164,12 @@ static void btrfs_root_release(struct ko 30866@@ -164,12 +164,12 @@ static void btrfs_root_release(struct ko
30657 complete(&root->kobj_unregister); 30867 complete(&root->kobj_unregister);
30658 } 30868 }
@@ -30669,8 +30879,8 @@ diff -urNp linux-2.6.32.21/fs/btrfs/sysfs.c linux-2.6.32.21/fs/btrfs/sysfs.c
30669 .store = btrfs_root_attr_store, 30879 .store = btrfs_root_attr_store,
30670 }; 30880 };
30671diff -urNp linux-2.6.32.21/fs/buffer.c linux-2.6.32.21/fs/buffer.c 30881diff -urNp linux-2.6.32.21/fs/buffer.c linux-2.6.32.21/fs/buffer.c
30672--- linux-2.6.32.21/fs/buffer.c 2010-08-26 19:42:20.000000000 -0400 30882--- linux-2.6.32.21/fs/buffer.c 2010-08-13 16:24:37.000000000 -0400
30673+++ linux-2.6.32.21/fs/buffer.c 2010-09-13 08:10:10.000000000 -0400 30883+++ linux-2.6.32.21/fs/buffer.c 2010-09-04 15:54:52.000000000 -0400
30674@@ -25,6 +25,7 @@ 30884@@ -25,6 +25,7 @@
30675 #include <linux/percpu.h> 30885 #include <linux/percpu.h>
30676 #include <linux/slab.h> 30886 #include <linux/slab.h>
@@ -30680,8 +30890,8 @@ diff -urNp linux-2.6.32.21/fs/buffer.c linux-2.6.32.21/fs/buffer.c
30680 #include <linux/file.h> 30890 #include <linux/file.h>
30681 #include <linux/quotaops.h> 30891 #include <linux/quotaops.h>
30682diff -urNp linux-2.6.32.21/fs/cachefiles/bind.c linux-2.6.32.21/fs/cachefiles/bind.c 30892diff -urNp linux-2.6.32.21/fs/cachefiles/bind.c linux-2.6.32.21/fs/cachefiles/bind.c
30683--- linux-2.6.32.21/fs/cachefiles/bind.c 2010-08-26 19:42:20.000000000 -0400 30893--- linux-2.6.32.21/fs/cachefiles/bind.c 2010-08-13 16:24:37.000000000 -0400
30684+++ linux-2.6.32.21/fs/cachefiles/bind.c 2010-09-13 08:10:10.000000000 -0400 30894+++ linux-2.6.32.21/fs/cachefiles/bind.c 2010-09-04 15:54:52.000000000 -0400
30685@@ -39,13 +39,11 @@ int cachefiles_daemon_bind(struct cachef 30895@@ -39,13 +39,11 @@ int cachefiles_daemon_bind(struct cachef
30686 args); 30896 args);
30687 30897
@@ -30699,8 +30909,8 @@ diff -urNp linux-2.6.32.21/fs/cachefiles/bind.c linux-2.6.32.21/fs/cachefiles/bi
30699 cache->brun_percent < 100); 30909 cache->brun_percent < 100);
30700 30910
30701diff -urNp linux-2.6.32.21/fs/cachefiles/daemon.c linux-2.6.32.21/fs/cachefiles/daemon.c 30911diff -urNp linux-2.6.32.21/fs/cachefiles/daemon.c linux-2.6.32.21/fs/cachefiles/daemon.c
30702--- linux-2.6.32.21/fs/cachefiles/daemon.c 2010-08-26 19:42:20.000000000 -0400 30912--- linux-2.6.32.21/fs/cachefiles/daemon.c 2010-08-13 16:24:37.000000000 -0400
30703+++ linux-2.6.32.21/fs/cachefiles/daemon.c 2010-09-13 08:10:10.000000000 -0400 30913+++ linux-2.6.32.21/fs/cachefiles/daemon.c 2010-09-04 15:54:52.000000000 -0400
30704@@ -220,7 +220,7 @@ static ssize_t cachefiles_daemon_write(s 30914@@ -220,7 +220,7 @@ static ssize_t cachefiles_daemon_write(s
30705 if (test_bit(CACHEFILES_DEAD, &cache->flags)) 30915 if (test_bit(CACHEFILES_DEAD, &cache->flags))
30706 return -EIO; 30916 return -EIO;
@@ -30729,8 +30939,8 @@ diff -urNp linux-2.6.32.21/fs/cachefiles/daemon.c linux-2.6.32.21/fs/cachefiles/
30729 30939
30730 cache->bstop_percent = bstop; 30940 cache->bstop_percent = bstop;
30731diff -urNp linux-2.6.32.21/fs/cachefiles/rdwr.c linux-2.6.32.21/fs/cachefiles/rdwr.c 30941diff -urNp linux-2.6.32.21/fs/cachefiles/rdwr.c linux-2.6.32.21/fs/cachefiles/rdwr.c
30732--- linux-2.6.32.21/fs/cachefiles/rdwr.c 2010-08-26 19:42:20.000000000 -0400 30942--- linux-2.6.32.21/fs/cachefiles/rdwr.c 2010-08-13 16:24:37.000000000 -0400
30733+++ linux-2.6.32.21/fs/cachefiles/rdwr.c 2010-09-13 08:10:10.000000000 -0400 30943+++ linux-2.6.32.21/fs/cachefiles/rdwr.c 2010-09-04 15:54:52.000000000 -0400
30734@@ -946,7 +946,7 @@ int cachefiles_write_page(struct fscache 30944@@ -946,7 +946,7 @@ int cachefiles_write_page(struct fscache
30735 old_fs = get_fs(); 30945 old_fs = get_fs();
30736 set_fs(KERNEL_DS); 30946 set_fs(KERNEL_DS);
@@ -30741,8 +30951,8 @@ diff -urNp linux-2.6.32.21/fs/cachefiles/rdwr.c linux-2.6.32.21/fs/cachefiles/rd
30741 kunmap(page); 30951 kunmap(page);
30742 if (ret != len) 30952 if (ret != len)
30743diff -urNp linux-2.6.32.21/fs/cifs/cifs_uniupr.h linux-2.6.32.21/fs/cifs/cifs_uniupr.h 30953diff -urNp linux-2.6.32.21/fs/cifs/cifs_uniupr.h linux-2.6.32.21/fs/cifs/cifs_uniupr.h
30744--- linux-2.6.32.21/fs/cifs/cifs_uniupr.h 2010-08-26 19:42:20.000000000 -0400 30954--- linux-2.6.32.21/fs/cifs/cifs_uniupr.h 2010-08-13 16:24:37.000000000 -0400
30745+++ linux-2.6.32.21/fs/cifs/cifs_uniupr.h 2010-09-13 08:10:10.000000000 -0400 30955+++ linux-2.6.32.21/fs/cifs/cifs_uniupr.h 2010-09-04 15:54:52.000000000 -0400
30746@@ -132,7 +132,7 @@ const struct UniCaseRange CifsUniUpperRa 30956@@ -132,7 +132,7 @@ const struct UniCaseRange CifsUniUpperRa
30747 {0x0490, 0x04cc, UniCaseRangeU0490}, 30957 {0x0490, 0x04cc, UniCaseRangeU0490},
30748 {0x1e00, 0x1ffc, UniCaseRangeU1e00}, 30958 {0x1e00, 0x1ffc, UniCaseRangeU1e00},
@@ -30753,8 +30963,8 @@ diff -urNp linux-2.6.32.21/fs/cifs/cifs_uniupr.h linux-2.6.32.21/fs/cifs/cifs_un
30753 #endif 30963 #endif
30754 30964
30755diff -urNp linux-2.6.32.21/fs/cifs/link.c linux-2.6.32.21/fs/cifs/link.c 30965diff -urNp linux-2.6.32.21/fs/cifs/link.c linux-2.6.32.21/fs/cifs/link.c
30756--- linux-2.6.32.21/fs/cifs/link.c 2010-08-26 19:42:20.000000000 -0400 30966--- linux-2.6.32.21/fs/cifs/link.c 2010-08-13 16:24:37.000000000 -0400
30757+++ linux-2.6.32.21/fs/cifs/link.c 2010-09-13 08:10:10.000000000 -0400 30967+++ linux-2.6.32.21/fs/cifs/link.c 2010-09-04 15:54:52.000000000 -0400
30758@@ -215,7 +215,7 @@ cifs_symlink(struct inode *inode, struct 30968@@ -215,7 +215,7 @@ cifs_symlink(struct inode *inode, struct
30759 30969
30760 void cifs_put_link(struct dentry *direntry, struct nameidata *nd, void *cookie) 30970 void cifs_put_link(struct dentry *direntry, struct nameidata *nd, void *cookie)
@@ -30764,9 +30974,25 @@ diff -urNp linux-2.6.32.21/fs/cifs/link.c linux-2.6.32.21/fs/cifs/link.c
30764 if (!IS_ERR(p)) 30974 if (!IS_ERR(p))
30765 kfree(p); 30975 kfree(p);
30766 } 30976 }
30977diff -urNp linux-2.6.32.21/fs/compat_binfmt_elf.c linux-2.6.32.21/fs/compat_binfmt_elf.c
30978--- linux-2.6.32.21/fs/compat_binfmt_elf.c 2010-08-13 16:24:37.000000000 -0400
30979+++ linux-2.6.32.21/fs/compat_binfmt_elf.c 2010-09-04 15:54:52.000000000 -0400
30980@@ -29,10 +29,12 @@
30981 #undef elfhdr
30982 #undef elf_phdr
30983 #undef elf_note
30984+#undef elf_dyn
30985 #undef elf_addr_t
30986 #define elfhdr elf32_hdr
30987 #define elf_phdr elf32_phdr
30988 #define elf_note elf32_note
30989+#define elf_dyn Elf32_Dyn
30990 #define elf_addr_t Elf32_Addr
30991
30992 /*
30767diff -urNp linux-2.6.32.21/fs/compat.c linux-2.6.32.21/fs/compat.c 30993diff -urNp linux-2.6.32.21/fs/compat.c linux-2.6.32.21/fs/compat.c
30768--- linux-2.6.32.21/fs/compat.c 2010-08-26 19:42:20.000000000 -0400 30994--- linux-2.6.32.21/fs/compat.c 2010-08-13 16:24:37.000000000 -0400
30769+++ linux-2.6.32.21/fs/compat.c 2010-09-13 08:10:10.000000000 -0400 30995+++ linux-2.6.32.21/fs/compat.c 2010-09-04 15:54:52.000000000 -0400
30770@@ -1410,14 +1410,12 @@ static int compat_copy_strings(int argc, 30996@@ -1410,14 +1410,12 @@ static int compat_copy_strings(int argc,
30771 if (!kmapped_page || kpos != (pos & PAGE_MASK)) { 30997 if (!kmapped_page || kpos != (pos & PAGE_MASK)) {
30772 struct page *page; 30998 struct page *page;
@@ -30866,25 +31092,9 @@ diff -urNp linux-2.6.32.21/fs/compat.c linux-2.6.32.21/fs/compat.c
30866 out: 31092 out:
30867 if (bprm->mm) 31093 if (bprm->mm)
30868 mmput(bprm->mm); 31094 mmput(bprm->mm);
30869diff -urNp linux-2.6.32.21/fs/compat_binfmt_elf.c linux-2.6.32.21/fs/compat_binfmt_elf.c
30870--- linux-2.6.32.21/fs/compat_binfmt_elf.c 2010-08-26 19:42:20.000000000 -0400
30871+++ linux-2.6.32.21/fs/compat_binfmt_elf.c 2010-09-13 08:10:10.000000000 -0400
30872@@ -29,10 +29,12 @@
30873 #undef elfhdr
30874 #undef elf_phdr
30875 #undef elf_note
30876+#undef elf_dyn
30877 #undef elf_addr_t
30878 #define elfhdr elf32_hdr
30879 #define elf_phdr elf32_phdr
30880 #define elf_note elf32_note
30881+#define elf_dyn Elf32_Dyn
30882 #define elf_addr_t Elf32_Addr
30883
30884 /*
30885diff -urNp linux-2.6.32.21/fs/compat_ioctl.c linux-2.6.32.21/fs/compat_ioctl.c 31095diff -urNp linux-2.6.32.21/fs/compat_ioctl.c linux-2.6.32.21/fs/compat_ioctl.c
30886--- linux-2.6.32.21/fs/compat_ioctl.c 2010-08-26 19:42:20.000000000 -0400 31096--- linux-2.6.32.21/fs/compat_ioctl.c 2010-08-13 16:24:37.000000000 -0400
30887+++ linux-2.6.32.21/fs/compat_ioctl.c 2010-09-13 08:10:10.000000000 -0400 31097+++ linux-2.6.32.21/fs/compat_ioctl.c 2010-09-04 15:54:52.000000000 -0400
30888@@ -1827,15 +1827,15 @@ struct ioctl_trans { 31098@@ -1827,15 +1827,15 @@ struct ioctl_trans {
30889 }; 31099 };
30890 31100
@@ -30905,8 +31115,8 @@ diff -urNp linux-2.6.32.21/fs/compat_ioctl.c linux-2.6.32.21/fs/compat_ioctl.c
30905 /* ioctl should not be warned about even if it's not implemented. 31115 /* ioctl should not be warned about even if it's not implemented.
30906 Valid reasons to use this: 31116 Valid reasons to use this:
30907diff -urNp linux-2.6.32.21/fs/debugfs/inode.c linux-2.6.32.21/fs/debugfs/inode.c 31117diff -urNp linux-2.6.32.21/fs/debugfs/inode.c linux-2.6.32.21/fs/debugfs/inode.c
30908--- linux-2.6.32.21/fs/debugfs/inode.c 2010-08-26 19:42:20.000000000 -0400 31118--- linux-2.6.32.21/fs/debugfs/inode.c 2010-08-13 16:24:37.000000000 -0400
30909+++ linux-2.6.32.21/fs/debugfs/inode.c 2010-09-13 08:10:10.000000000 -0400 31119+++ linux-2.6.32.21/fs/debugfs/inode.c 2010-09-04 15:54:52.000000000 -0400
30910@@ -128,7 +128,7 @@ static inline int debugfs_positive(struc 31120@@ -128,7 +128,7 @@ static inline int debugfs_positive(struc
30911 31121
30912 static int debug_fill_super(struct super_block *sb, void *data, int silent) 31122 static int debug_fill_super(struct super_block *sb, void *data, int silent)
@@ -30917,8 +31127,8 @@ diff -urNp linux-2.6.32.21/fs/debugfs/inode.c linux-2.6.32.21/fs/debugfs/inode.c
30917 return simple_fill_super(sb, DEBUGFS_MAGIC, debug_files); 31127 return simple_fill_super(sb, DEBUGFS_MAGIC, debug_files);
30918 } 31128 }
30919diff -urNp linux-2.6.32.21/fs/dlm/lockspace.c linux-2.6.32.21/fs/dlm/lockspace.c 31129diff -urNp linux-2.6.32.21/fs/dlm/lockspace.c linux-2.6.32.21/fs/dlm/lockspace.c
30920--- linux-2.6.32.21/fs/dlm/lockspace.c 2010-08-26 19:42:20.000000000 -0400 31130--- linux-2.6.32.21/fs/dlm/lockspace.c 2010-08-13 16:24:37.000000000 -0400
30921+++ linux-2.6.32.21/fs/dlm/lockspace.c 2010-09-13 08:10:10.000000000 -0400 31131+++ linux-2.6.32.21/fs/dlm/lockspace.c 2010-09-04 15:54:52.000000000 -0400
30922@@ -148,7 +148,7 @@ static void lockspace_kobj_release(struc 31132@@ -148,7 +148,7 @@ static void lockspace_kobj_release(struc
30923 kfree(ls); 31133 kfree(ls);
30924 } 31134 }
@@ -30929,8 +31139,8 @@ diff -urNp linux-2.6.32.21/fs/dlm/lockspace.c linux-2.6.32.21/fs/dlm/lockspace.c
30929 .store = dlm_attr_store, 31139 .store = dlm_attr_store,
30930 }; 31140 };
30931diff -urNp linux-2.6.32.21/fs/ecryptfs/inode.c linux-2.6.32.21/fs/ecryptfs/inode.c 31141diff -urNp linux-2.6.32.21/fs/ecryptfs/inode.c linux-2.6.32.21/fs/ecryptfs/inode.c
30932--- linux-2.6.32.21/fs/ecryptfs/inode.c 2010-08-26 19:42:20.000000000 -0400 31142--- linux-2.6.32.21/fs/ecryptfs/inode.c 2010-08-13 16:24:37.000000000 -0400
30933+++ linux-2.6.32.21/fs/ecryptfs/inode.c 2010-09-13 08:10:10.000000000 -0400 31143+++ linux-2.6.32.21/fs/ecryptfs/inode.c 2010-09-04 15:54:52.000000000 -0400
30934@@ -656,7 +656,7 @@ static int ecryptfs_readlink_lower(struc 31144@@ -656,7 +656,7 @@ static int ecryptfs_readlink_lower(struc
30935 old_fs = get_fs(); 31145 old_fs = get_fs();
30936 set_fs(get_ds()); 31146 set_fs(get_ds());
@@ -30950,8 +31160,8 @@ diff -urNp linux-2.6.32.21/fs/ecryptfs/inode.c linux-2.6.32.21/fs/ecryptfs/inode
30950 if (rc < 0) 31160 if (rc < 0)
30951 goto out_free; 31161 goto out_free;
30952diff -urNp linux-2.6.32.21/fs/exec.c linux-2.6.32.21/fs/exec.c 31162diff -urNp linux-2.6.32.21/fs/exec.c linux-2.6.32.21/fs/exec.c
30953--- linux-2.6.32.21/fs/exec.c 2010-08-26 19:42:20.000000000 -0400 31163--- linux-2.6.32.21/fs/exec.c 2010-08-13 16:24:37.000000000 -0400
30954+++ linux-2.6.32.21/fs/exec.c 2010-09-13 08:10:10.000000000 -0400 31164+++ linux-2.6.32.21/fs/exec.c 2010-09-14 20:45:47.000000000 -0400
30955@@ -56,12 +56,24 @@ 31165@@ -56,12 +56,24 @@
30956 #include <linux/fsnotify.h> 31166 #include <linux/fsnotify.h>
30957 #include <linux/fs_struct.h> 31167 #include <linux/fs_struct.h>
@@ -31226,7 +31436,7 @@ diff -urNp linux-2.6.32.21/fs/exec.c linux-2.6.32.21/fs/exec.c
31226 out: 31436 out:
31227 if (bprm->mm) 31437 if (bprm->mm)
31228 mmput (bprm->mm); 31438 mmput (bprm->mm);
31229@@ -1551,6 +1640,169 @@ out: 31439@@ -1551,6 +1640,225 @@ out:
31230 return ispipe; 31440 return ispipe;
31231 } 31441 }
31232 31442
@@ -31370,6 +31580,62 @@ diff -urNp linux-2.6.32.21/fs/exec.c linux-2.6.32.21/fs/exec.c
31370+#endif 31580+#endif
31371+ 31581+
31372+#ifdef CONFIG_PAX_USERCOPY 31582+#ifdef CONFIG_PAX_USERCOPY
31583+#if defined(CONFIG_FRAME_POINTER) && defined(CONFIG_X86)
31584+struct stack_frame {
31585+ struct stack_frame *next_frame;
31586+ unsigned long return_address;
31587+};
31588+#endif
31589+
31590+/* 0: not at all, 1: fully, 2: fully inside frame,
31591+ -1: partially (implies an error) */
31592+
31593+int object_is_on_stack(const void *obj, unsigned long len)
31594+{
31595+ const void *stack = task_stack_page(current);
31596+ const void *stackend = stack + THREAD_SIZE;
31597+
31598+ if (obj + len < obj)
31599+ return -1;
31600+
31601+ if (stack <= obj && obj + len <= stackend) {
31602+#if defined(CONFIG_FRAME_POINTER) && defined(CONFIG_X86)
31603+ void *frame = __builtin_frame_address(2);
31604+ void *oldframe = __builtin_frame_address(1);
31605+ /*
31606+ bottom ----------------------------------------------> top
31607+ [saved bp][saved ip][args][local vars][saved bp][saved ip]
31608+ ^----------------^
31609+ allow copies only within here
31610+ */
31611+ while (frame) {
31612+ /* if obj + len extends past the last frame, this
31613+ check won't pass and the next frame will be 0,
31614+ causing us to bail out and correctly report
31615+ the copy as invalid
31616+ */
31617+ if (obj + len <= frame) {
31618+ if (obj >= (oldframe + (2 * sizeof(void *))))
31619+ return 2;
31620+ else
31621+ return -1;
31622+ }
31623+ oldframe = frame;
31624+ frame = ((struct stack_frame *)frame)->next_frame;
31625+ }
31626+ return -1;
31627+#else
31628+ return 1;
31629+#endif
31630+ }
31631+
31632+ if (obj + len <= stack || stackend <= obj)
31633+ return 0;
31634+
31635+ return -1;
31636+}
31637+
31638+
31373+void pax_report_leak_to_user(const void *ptr, unsigned long len) 31639+void pax_report_leak_to_user(const void *ptr, unsigned long len)
31374+{ 31640+{
31375+ if (current->signal->curr_ip) 31641+ if (current->signal->curr_ip)
@@ -31396,7 +31662,7 @@ diff -urNp linux-2.6.32.21/fs/exec.c linux-2.6.32.21/fs/exec.c
31396 static int zap_process(struct task_struct *start) 31662 static int zap_process(struct task_struct *start)
31397 { 31663 {
31398 struct task_struct *t; 31664 struct task_struct *t;
31399@@ -1753,17 +2005,17 @@ static void wait_for_dump_helpers(struct 31665@@ -1753,17 +2061,17 @@ static void wait_for_dump_helpers(struct
31400 pipe = file->f_path.dentry->d_inode->i_pipe; 31666 pipe = file->f_path.dentry->d_inode->i_pipe;
31401 31667
31402 pipe_lock(pipe); 31668 pipe_lock(pipe);
@@ -31419,7 +31685,7 @@ diff -urNp linux-2.6.32.21/fs/exec.c linux-2.6.32.21/fs/exec.c
31419 pipe_unlock(pipe); 31685 pipe_unlock(pipe);
31420 31686
31421 } 31687 }
31422@@ -1834,6 +2086,10 @@ void do_coredump(long signr, int exit_co 31688@@ -1834,6 +2142,10 @@ void do_coredump(long signr, int exit_co
31423 */ 31689 */
31424 clear_thread_flag(TIF_SIGPENDING); 31690 clear_thread_flag(TIF_SIGPENDING);
31425 31691
@@ -31431,8 +31697,8 @@ diff -urNp linux-2.6.32.21/fs/exec.c linux-2.6.32.21/fs/exec.c
31431 * lock_kernel() because format_corename() is controlled by sysctl, which 31697 * lock_kernel() because format_corename() is controlled by sysctl, which
31432 * uses lock_kernel() 31698 * uses lock_kernel()
31433diff -urNp linux-2.6.32.21/fs/ext2/balloc.c linux-2.6.32.21/fs/ext2/balloc.c 31699diff -urNp linux-2.6.32.21/fs/ext2/balloc.c linux-2.6.32.21/fs/ext2/balloc.c
31434--- linux-2.6.32.21/fs/ext2/balloc.c 2010-08-26 19:42:20.000000000 -0400 31700--- linux-2.6.32.21/fs/ext2/balloc.c 2010-08-13 16:24:37.000000000 -0400
31435+++ linux-2.6.32.21/fs/ext2/balloc.c 2010-09-13 08:10:10.000000000 -0400 31701+++ linux-2.6.32.21/fs/ext2/balloc.c 2010-09-04 15:54:52.000000000 -0400
31436@@ -1192,7 +1192,7 @@ static int ext2_has_free_blocks(struct e 31702@@ -1192,7 +1192,7 @@ static int ext2_has_free_blocks(struct e
31437 31703
31438 free_blocks = percpu_counter_read_positive(&sbi->s_freeblocks_counter); 31704 free_blocks = percpu_counter_read_positive(&sbi->s_freeblocks_counter);
@@ -31443,8 +31709,8 @@ diff -urNp linux-2.6.32.21/fs/ext2/balloc.c linux-2.6.32.21/fs/ext2/balloc.c
31443 (sbi->s_resgid == 0 || !in_group_p (sbi->s_resgid))) { 31709 (sbi->s_resgid == 0 || !in_group_p (sbi->s_resgid))) {
31444 return 0; 31710 return 0;
31445diff -urNp linux-2.6.32.21/fs/ext2/xattr.c linux-2.6.32.21/fs/ext2/xattr.c 31711diff -urNp linux-2.6.32.21/fs/ext2/xattr.c linux-2.6.32.21/fs/ext2/xattr.c
31446--- linux-2.6.32.21/fs/ext2/xattr.c 2010-08-26 19:42:20.000000000 -0400 31712--- linux-2.6.32.21/fs/ext2/xattr.c 2010-08-13 16:24:37.000000000 -0400
31447+++ linux-2.6.32.21/fs/ext2/xattr.c 2010-09-13 08:10:10.000000000 -0400 31713+++ linux-2.6.32.21/fs/ext2/xattr.c 2010-09-04 15:54:52.000000000 -0400
31448@@ -85,8 +85,8 @@ 31714@@ -85,8 +85,8 @@
31449 printk("\n"); \ 31715 printk("\n"); \
31450 } while (0) 31716 } while (0)
@@ -31457,8 +31723,8 @@ diff -urNp linux-2.6.32.21/fs/ext2/xattr.c linux-2.6.32.21/fs/ext2/xattr.c
31457 31723
31458 static int ext2_xattr_set2(struct inode *, struct buffer_head *, 31724 static int ext2_xattr_set2(struct inode *, struct buffer_head *,
31459diff -urNp linux-2.6.32.21/fs/ext3/balloc.c linux-2.6.32.21/fs/ext3/balloc.c 31725diff -urNp linux-2.6.32.21/fs/ext3/balloc.c linux-2.6.32.21/fs/ext3/balloc.c
31460--- linux-2.6.32.21/fs/ext3/balloc.c 2010-08-26 19:42:20.000000000 -0400 31726--- linux-2.6.32.21/fs/ext3/balloc.c 2010-08-13 16:24:37.000000000 -0400
31461+++ linux-2.6.32.21/fs/ext3/balloc.c 2010-09-13 08:10:10.000000000 -0400 31727+++ linux-2.6.32.21/fs/ext3/balloc.c 2010-09-04 15:54:52.000000000 -0400
31462@@ -1421,7 +1421,7 @@ static int ext3_has_free_blocks(struct e 31728@@ -1421,7 +1421,7 @@ static int ext3_has_free_blocks(struct e
31463 31729
31464 free_blocks = percpu_counter_read_positive(&sbi->s_freeblocks_counter); 31730 free_blocks = percpu_counter_read_positive(&sbi->s_freeblocks_counter);
@@ -31469,8 +31735,8 @@ diff -urNp linux-2.6.32.21/fs/ext3/balloc.c linux-2.6.32.21/fs/ext3/balloc.c
31469 (sbi->s_resgid == 0 || !in_group_p (sbi->s_resgid))) { 31735 (sbi->s_resgid == 0 || !in_group_p (sbi->s_resgid))) {
31470 return 0; 31736 return 0;
31471diff -urNp linux-2.6.32.21/fs/ext3/namei.c linux-2.6.32.21/fs/ext3/namei.c 31737diff -urNp linux-2.6.32.21/fs/ext3/namei.c linux-2.6.32.21/fs/ext3/namei.c
31472--- linux-2.6.32.21/fs/ext3/namei.c 2010-08-26 19:42:20.000000000 -0400 31738--- linux-2.6.32.21/fs/ext3/namei.c 2010-08-13 16:24:37.000000000 -0400
31473+++ linux-2.6.32.21/fs/ext3/namei.c 2010-09-13 08:10:10.000000000 -0400 31739+++ linux-2.6.32.21/fs/ext3/namei.c 2010-09-04 15:54:52.000000000 -0400
31474@@ -1168,7 +1168,7 @@ static struct ext3_dir_entry_2 *do_split 31740@@ -1168,7 +1168,7 @@ static struct ext3_dir_entry_2 *do_split
31475 char *data1 = (*bh)->b_data, *data2; 31741 char *data1 = (*bh)->b_data, *data2;
31476 unsigned split, move, size; 31742 unsigned split, move, size;
@@ -31481,8 +31747,8 @@ diff -urNp linux-2.6.32.21/fs/ext3/namei.c linux-2.6.32.21/fs/ext3/namei.c
31481 bh2 = ext3_append (handle, dir, &newblock, &err); 31747 bh2 = ext3_append (handle, dir, &newblock, &err);
31482 if (!(bh2)) { 31748 if (!(bh2)) {
31483diff -urNp linux-2.6.32.21/fs/ext3/xattr.c linux-2.6.32.21/fs/ext3/xattr.c 31749diff -urNp linux-2.6.32.21/fs/ext3/xattr.c linux-2.6.32.21/fs/ext3/xattr.c
31484--- linux-2.6.32.21/fs/ext3/xattr.c 2010-08-26 19:42:20.000000000 -0400 31750--- linux-2.6.32.21/fs/ext3/xattr.c 2010-08-13 16:24:37.000000000 -0400
31485+++ linux-2.6.32.21/fs/ext3/xattr.c 2010-09-13 08:10:10.000000000 -0400 31751+++ linux-2.6.32.21/fs/ext3/xattr.c 2010-09-04 15:54:52.000000000 -0400
31486@@ -89,8 +89,8 @@ 31752@@ -89,8 +89,8 @@
31487 printk("\n"); \ 31753 printk("\n"); \
31488 } while (0) 31754 } while (0)
@@ -31495,8 +31761,8 @@ diff -urNp linux-2.6.32.21/fs/ext3/xattr.c linux-2.6.32.21/fs/ext3/xattr.c
31495 31761
31496 static void ext3_xattr_cache_insert(struct buffer_head *); 31762 static void ext3_xattr_cache_insert(struct buffer_head *);
31497diff -urNp linux-2.6.32.21/fs/ext4/balloc.c linux-2.6.32.21/fs/ext4/balloc.c 31763diff -urNp linux-2.6.32.21/fs/ext4/balloc.c linux-2.6.32.21/fs/ext4/balloc.c
31498--- linux-2.6.32.21/fs/ext4/balloc.c 2010-08-26 19:42:20.000000000 -0400 31764--- linux-2.6.32.21/fs/ext4/balloc.c 2010-08-29 21:08:20.000000000 -0400
31499+++ linux-2.6.32.21/fs/ext4/balloc.c 2010-09-13 08:10:10.000000000 -0400 31765+++ linux-2.6.32.21/fs/ext4/balloc.c 2010-09-04 15:54:52.000000000 -0400
31500@@ -570,7 +570,7 @@ int ext4_has_free_blocks(struct ext4_sb_ 31766@@ -570,7 +570,7 @@ int ext4_has_free_blocks(struct ext4_sb_
31501 /* Hm, nope. Are (enough) root reserved blocks available? */ 31767 /* Hm, nope. Are (enough) root reserved blocks available? */
31502 if (sbi->s_resuid == current_fsuid() || 31768 if (sbi->s_resuid == current_fsuid() ||
@@ -31507,8 +31773,8 @@ diff -urNp linux-2.6.32.21/fs/ext4/balloc.c linux-2.6.32.21/fs/ext4/balloc.c
31507 return 1; 31773 return 1;
31508 } 31774 }
31509diff -urNp linux-2.6.32.21/fs/ext4/ioctl.c linux-2.6.32.21/fs/ext4/ioctl.c 31775diff -urNp linux-2.6.32.21/fs/ext4/ioctl.c linux-2.6.32.21/fs/ext4/ioctl.c
31510--- linux-2.6.32.21/fs/ext4/ioctl.c 2010-08-26 19:42:20.000000000 -0400 31776--- linux-2.6.32.21/fs/ext4/ioctl.c 2010-08-13 16:24:37.000000000 -0400
31511+++ linux-2.6.32.21/fs/ext4/ioctl.c 2010-09-13 08:10:10.000000000 -0400 31777+++ linux-2.6.32.21/fs/ext4/ioctl.c 2010-09-04 15:54:52.000000000 -0400
31512@@ -230,6 +230,9 @@ setversion_out: 31778@@ -230,6 +230,9 @@ setversion_out:
31513 struct file *donor_filp; 31779 struct file *donor_filp;
31514 int err; 31780 int err;
@@ -31520,8 +31786,8 @@ diff -urNp linux-2.6.32.21/fs/ext4/ioctl.c linux-2.6.32.21/fs/ext4/ioctl.c
31520 !(filp->f_mode & FMODE_WRITE)) 31786 !(filp->f_mode & FMODE_WRITE))
31521 return -EBADF; 31787 return -EBADF;
31522diff -urNp linux-2.6.32.21/fs/ext4/namei.c linux-2.6.32.21/fs/ext4/namei.c 31788diff -urNp linux-2.6.32.21/fs/ext4/namei.c linux-2.6.32.21/fs/ext4/namei.c
31523--- linux-2.6.32.21/fs/ext4/namei.c 2010-08-26 19:42:20.000000000 -0400 31789--- linux-2.6.32.21/fs/ext4/namei.c 2010-08-13 16:24:37.000000000 -0400
31524+++ linux-2.6.32.21/fs/ext4/namei.c 2010-09-13 08:10:10.000000000 -0400 31790+++ linux-2.6.32.21/fs/ext4/namei.c 2010-09-04 15:54:52.000000000 -0400
31525@@ -1203,7 +1203,7 @@ static struct ext4_dir_entry_2 *do_split 31791@@ -1203,7 +1203,7 @@ static struct ext4_dir_entry_2 *do_split
31526 char *data1 = (*bh)->b_data, *data2; 31792 char *data1 = (*bh)->b_data, *data2;
31527 unsigned split, move, size; 31793 unsigned split, move, size;
@@ -31532,8 +31798,8 @@ diff -urNp linux-2.6.32.21/fs/ext4/namei.c linux-2.6.32.21/fs/ext4/namei.c
31532 bh2 = ext4_append (handle, dir, &newblock, &err); 31798 bh2 = ext4_append (handle, dir, &newblock, &err);
31533 if (!(bh2)) { 31799 if (!(bh2)) {
31534diff -urNp linux-2.6.32.21/fs/ext4/super.c linux-2.6.32.21/fs/ext4/super.c 31800diff -urNp linux-2.6.32.21/fs/ext4/super.c linux-2.6.32.21/fs/ext4/super.c
31535--- linux-2.6.32.21/fs/ext4/super.c 2010-08-26 19:42:20.000000000 -0400 31801--- linux-2.6.32.21/fs/ext4/super.c 2010-08-13 16:24:37.000000000 -0400
31536+++ linux-2.6.32.21/fs/ext4/super.c 2010-09-13 08:10:10.000000000 -0400 31802+++ linux-2.6.32.21/fs/ext4/super.c 2010-09-04 15:54:52.000000000 -0400
31537@@ -2287,7 +2287,7 @@ static void ext4_sb_release(struct kobje 31803@@ -2287,7 +2287,7 @@ static void ext4_sb_release(struct kobje
31538 } 31804 }
31539 31805
@@ -31544,8 +31810,8 @@ diff -urNp linux-2.6.32.21/fs/ext4/super.c linux-2.6.32.21/fs/ext4/super.c
31544 .store = ext4_attr_store, 31810 .store = ext4_attr_store,
31545 }; 31811 };
31546diff -urNp linux-2.6.32.21/fs/ext4/xattr.c linux-2.6.32.21/fs/ext4/xattr.c 31812diff -urNp linux-2.6.32.21/fs/ext4/xattr.c linux-2.6.32.21/fs/ext4/xattr.c
31547--- linux-2.6.32.21/fs/ext4/xattr.c 2010-08-26 19:42:20.000000000 -0400 31813--- linux-2.6.32.21/fs/ext4/xattr.c 2010-08-13 16:24:37.000000000 -0400
31548+++ linux-2.6.32.21/fs/ext4/xattr.c 2010-09-13 08:10:10.000000000 -0400 31814+++ linux-2.6.32.21/fs/ext4/xattr.c 2010-09-04 15:54:52.000000000 -0400
31549@@ -82,8 +82,8 @@ 31815@@ -82,8 +82,8 @@
31550 printk("\n"); \ 31816 printk("\n"); \
31551 } while (0) 31817 } while (0)
@@ -31558,8 +31824,8 @@ diff -urNp linux-2.6.32.21/fs/ext4/xattr.c linux-2.6.32.21/fs/ext4/xattr.c
31558 31824
31559 static void ext4_xattr_cache_insert(struct buffer_head *); 31825 static void ext4_xattr_cache_insert(struct buffer_head *);
31560diff -urNp linux-2.6.32.21/fs/fcntl.c linux-2.6.32.21/fs/fcntl.c 31826diff -urNp linux-2.6.32.21/fs/fcntl.c linux-2.6.32.21/fs/fcntl.c
31561--- linux-2.6.32.21/fs/fcntl.c 2010-08-26 19:42:20.000000000 -0400 31827--- linux-2.6.32.21/fs/fcntl.c 2010-08-13 16:24:37.000000000 -0400
31562+++ linux-2.6.32.21/fs/fcntl.c 2010-09-13 08:10:10.000000000 -0400 31828+++ linux-2.6.32.21/fs/fcntl.c 2010-09-04 15:54:52.000000000 -0400
31563@@ -223,6 +223,11 @@ int __f_setown(struct file *filp, struct 31829@@ -223,6 +223,11 @@ int __f_setown(struct file *filp, struct
31564 if (err) 31830 if (err)
31565 return err; 31831 return err;
@@ -31581,8 +31847,8 @@ diff -urNp linux-2.6.32.21/fs/fcntl.c linux-2.6.32.21/fs/fcntl.c
31581 break; 31847 break;
31582 err = alloc_fd(arg, cmd == F_DUPFD_CLOEXEC ? O_CLOEXEC : 0); 31848 err = alloc_fd(arg, cmd == F_DUPFD_CLOEXEC ? O_CLOEXEC : 0);
31583diff -urNp linux-2.6.32.21/fs/fifo.c linux-2.6.32.21/fs/fifo.c 31849diff -urNp linux-2.6.32.21/fs/fifo.c linux-2.6.32.21/fs/fifo.c
31584--- linux-2.6.32.21/fs/fifo.c 2010-08-26 19:42:20.000000000 -0400 31850--- linux-2.6.32.21/fs/fifo.c 2010-08-13 16:24:37.000000000 -0400
31585+++ linux-2.6.32.21/fs/fifo.c 2010-09-13 08:10:10.000000000 -0400 31851+++ linux-2.6.32.21/fs/fifo.c 2010-09-04 15:54:52.000000000 -0400
31586@@ -59,10 +59,10 @@ static int fifo_open(struct inode *inode 31852@@ -59,10 +59,10 @@ static int fifo_open(struct inode *inode
31587 */ 31853 */
31588 filp->f_op = &read_pipefifo_fops; 31854 filp->f_op = &read_pipefifo_fops;
@@ -31654,8 +31920,8 @@ diff -urNp linux-2.6.32.21/fs/fifo.c linux-2.6.32.21/fs/fifo.c
31654 31920
31655 err_nocleanup: 31921 err_nocleanup:
31656diff -urNp linux-2.6.32.21/fs/file.c linux-2.6.32.21/fs/file.c 31922diff -urNp linux-2.6.32.21/fs/file.c linux-2.6.32.21/fs/file.c
31657--- linux-2.6.32.21/fs/file.c 2010-08-26 19:42:20.000000000 -0400 31923--- linux-2.6.32.21/fs/file.c 2010-08-13 16:24:37.000000000 -0400
31658+++ linux-2.6.32.21/fs/file.c 2010-09-13 08:10:10.000000000 -0400 31924+++ linux-2.6.32.21/fs/file.c 2010-09-04 15:54:52.000000000 -0400
31659@@ -14,6 +14,7 @@ 31925@@ -14,6 +14,7 @@
31660 #include <linux/slab.h> 31926 #include <linux/slab.h>
31661 #include <linux/vmalloc.h> 31927 #include <linux/vmalloc.h>
@@ -31674,8 +31940,8 @@ diff -urNp linux-2.6.32.21/fs/file.c linux-2.6.32.21/fs/file.c
31674 return -EMFILE; 31940 return -EMFILE;
31675 31941
31676diff -urNp linux-2.6.32.21/fs/fs_struct.c linux-2.6.32.21/fs/fs_struct.c 31942diff -urNp linux-2.6.32.21/fs/fs_struct.c linux-2.6.32.21/fs/fs_struct.c
31677--- linux-2.6.32.21/fs/fs_struct.c 2010-08-26 19:42:20.000000000 -0400 31943--- linux-2.6.32.21/fs/fs_struct.c 2010-08-13 16:24:37.000000000 -0400
31678+++ linux-2.6.32.21/fs/fs_struct.c 2010-09-13 08:10:10.000000000 -0400 31944+++ linux-2.6.32.21/fs/fs_struct.c 2010-09-04 15:54:52.000000000 -0400
31679@@ -4,6 +4,7 @@ 31945@@ -4,6 +4,7 @@
31680 #include <linux/path.h> 31946 #include <linux/path.h>
31681 #include <linux/slab.h> 31947 #include <linux/slab.h>
@@ -31756,8 +32022,8 @@ diff -urNp linux-2.6.32.21/fs/fs_struct.c linux-2.6.32.21/fs/fs_struct.c
31756 32022
31757 task_unlock(current); 32023 task_unlock(current);
31758diff -urNp linux-2.6.32.21/fs/fuse/control.c linux-2.6.32.21/fs/fuse/control.c 32024diff -urNp linux-2.6.32.21/fs/fuse/control.c linux-2.6.32.21/fs/fuse/control.c
31759--- linux-2.6.32.21/fs/fuse/control.c 2010-08-26 19:42:20.000000000 -0400 32025--- linux-2.6.32.21/fs/fuse/control.c 2010-08-13 16:24:37.000000000 -0400
31760+++ linux-2.6.32.21/fs/fuse/control.c 2010-09-13 08:10:10.000000000 -0400 32026+++ linux-2.6.32.21/fs/fuse/control.c 2010-09-04 15:54:52.000000000 -0400
31761@@ -293,7 +293,7 @@ void fuse_ctl_remove_conn(struct fuse_co 32027@@ -293,7 +293,7 @@ void fuse_ctl_remove_conn(struct fuse_co
31762 32028
31763 static int fuse_ctl_fill_super(struct super_block *sb, void *data, int silent) 32029 static int fuse_ctl_fill_super(struct super_block *sb, void *data, int silent)
@@ -31768,8 +32034,8 @@ diff -urNp linux-2.6.32.21/fs/fuse/control.c linux-2.6.32.21/fs/fuse/control.c
31768 int err; 32034 int err;
31769 32035
31770diff -urNp linux-2.6.32.21/fs/fuse/cuse.c linux-2.6.32.21/fs/fuse/cuse.c 32036diff -urNp linux-2.6.32.21/fs/fuse/cuse.c linux-2.6.32.21/fs/fuse/cuse.c
31771--- linux-2.6.32.21/fs/fuse/cuse.c 2010-08-26 19:42:20.000000000 -0400 32037--- linux-2.6.32.21/fs/fuse/cuse.c 2010-08-13 16:24:37.000000000 -0400
31772+++ linux-2.6.32.21/fs/fuse/cuse.c 2010-09-13 08:10:10.000000000 -0400 32038+++ linux-2.6.32.21/fs/fuse/cuse.c 2010-09-04 15:54:52.000000000 -0400
31773@@ -528,8 +528,18 @@ static int cuse_channel_release(struct i 32039@@ -528,8 +528,18 @@ static int cuse_channel_release(struct i
31774 return rc; 32040 return rc;
31775 } 32041 }
@@ -31805,8 +32071,8 @@ diff -urNp linux-2.6.32.21/fs/fuse/cuse.c linux-2.6.32.21/fs/fuse/cuse.c
31805 if (IS_ERR(cuse_class)) 32071 if (IS_ERR(cuse_class))
31806 return PTR_ERR(cuse_class); 32072 return PTR_ERR(cuse_class);
31807diff -urNp linux-2.6.32.21/fs/fuse/dev.c linux-2.6.32.21/fs/fuse/dev.c 32073diff -urNp linux-2.6.32.21/fs/fuse/dev.c linux-2.6.32.21/fs/fuse/dev.c
31808--- linux-2.6.32.21/fs/fuse/dev.c 2010-08-26 19:42:20.000000000 -0400 32074--- linux-2.6.32.21/fs/fuse/dev.c 2010-08-13 16:24:37.000000000 -0400
31809+++ linux-2.6.32.21/fs/fuse/dev.c 2010-09-13 08:10:10.000000000 -0400 32075+++ linux-2.6.32.21/fs/fuse/dev.c 2010-09-04 15:54:52.000000000 -0400
31810@@ -745,7 +745,7 @@ __releases(&fc->lock) 32076@@ -745,7 +745,7 @@ __releases(&fc->lock)
31811 * request_end(). Otherwise add it to the processing list, and set 32077 * request_end(). Otherwise add it to the processing list, and set
31812 * the 'sent' flag. 32078 * the 'sent' flag.
@@ -31913,8 +32179,8 @@ diff -urNp linux-2.6.32.21/fs/fuse/dev.c linux-2.6.32.21/fs/fuse/dev.c
31913 const struct file_operations fuse_dev_operations = { 32179 const struct file_operations fuse_dev_operations = {
31914 .owner = THIS_MODULE, 32180 .owner = THIS_MODULE,
31915diff -urNp linux-2.6.32.21/fs/fuse/dir.c linux-2.6.32.21/fs/fuse/dir.c 32181diff -urNp linux-2.6.32.21/fs/fuse/dir.c linux-2.6.32.21/fs/fuse/dir.c
31916--- linux-2.6.32.21/fs/fuse/dir.c 2010-08-26 19:42:20.000000000 -0400 32182--- linux-2.6.32.21/fs/fuse/dir.c 2010-08-13 16:24:37.000000000 -0400
31917+++ linux-2.6.32.21/fs/fuse/dir.c 2010-09-13 08:10:10.000000000 -0400 32183+++ linux-2.6.32.21/fs/fuse/dir.c 2010-09-04 15:54:52.000000000 -0400
31918@@ -1127,7 +1127,7 @@ static char *read_link(struct dentry *de 32184@@ -1127,7 +1127,7 @@ static char *read_link(struct dentry *de
31919 return link; 32185 return link;
31920 } 32186 }
@@ -31925,8 +32191,8 @@ diff -urNp linux-2.6.32.21/fs/fuse/dir.c linux-2.6.32.21/fs/fuse/dir.c
31925 if (!IS_ERR(link)) 32191 if (!IS_ERR(link))
31926 free_page((unsigned long) link); 32192 free_page((unsigned long) link);
31927diff -urNp linux-2.6.32.21/fs/fuse/fuse_i.h linux-2.6.32.21/fs/fuse/fuse_i.h 32193diff -urNp linux-2.6.32.21/fs/fuse/fuse_i.h linux-2.6.32.21/fs/fuse/fuse_i.h
31928--- linux-2.6.32.21/fs/fuse/fuse_i.h 2010-08-26 19:42:20.000000000 -0400 32194--- linux-2.6.32.21/fs/fuse/fuse_i.h 2010-08-13 16:24:37.000000000 -0400
31929+++ linux-2.6.32.21/fs/fuse/fuse_i.h 2010-09-13 08:10:10.000000000 -0400 32195+++ linux-2.6.32.21/fs/fuse/fuse_i.h 2010-09-04 15:54:52.000000000 -0400
31930@@ -521,6 +521,16 @@ extern const struct file_operations fuse 32196@@ -521,6 +521,16 @@ extern const struct file_operations fuse
31931 32197
31932 extern const struct dentry_operations fuse_dentry_operations; 32198 extern const struct dentry_operations fuse_dentry_operations;
@@ -31945,8 +32211,8 @@ diff -urNp linux-2.6.32.21/fs/fuse/fuse_i.h linux-2.6.32.21/fs/fuse/fuse_i.h
31945 * Inode to nodeid comparison. 32211 * Inode to nodeid comparison.
31946 */ 32212 */
31947diff -urNp linux-2.6.32.21/fs/gfs2/sys.c linux-2.6.32.21/fs/gfs2/sys.c 32213diff -urNp linux-2.6.32.21/fs/gfs2/sys.c linux-2.6.32.21/fs/gfs2/sys.c
31948--- linux-2.6.32.21/fs/gfs2/sys.c 2010-08-26 19:42:20.000000000 -0400 32214--- linux-2.6.32.21/fs/gfs2/sys.c 2010-08-13 16:24:37.000000000 -0400
31949+++ linux-2.6.32.21/fs/gfs2/sys.c 2010-09-13 08:10:10.000000000 -0400 32215+++ linux-2.6.32.21/fs/gfs2/sys.c 2010-09-04 15:54:52.000000000 -0400
31950@@ -49,7 +49,7 @@ static ssize_t gfs2_attr_store(struct ko 32216@@ -49,7 +49,7 @@ static ssize_t gfs2_attr_store(struct ko
31951 return a->store ? a->store(sdp, buf, len) : len; 32217 return a->store ? a->store(sdp, buf, len) : len;
31952 } 32218 }
@@ -31966,8 +32232,8 @@ diff -urNp linux-2.6.32.21/fs/gfs2/sys.c linux-2.6.32.21/fs/gfs2/sys.c
31966 }; 32232 };
31967 32233
31968diff -urNp linux-2.6.32.21/fs/hfs/inode.c linux-2.6.32.21/fs/hfs/inode.c 32234diff -urNp linux-2.6.32.21/fs/hfs/inode.c linux-2.6.32.21/fs/hfs/inode.c
31969--- linux-2.6.32.21/fs/hfs/inode.c 2010-08-26 19:42:20.000000000 -0400 32235--- linux-2.6.32.21/fs/hfs/inode.c 2010-08-13 16:24:37.000000000 -0400
31970+++ linux-2.6.32.21/fs/hfs/inode.c 2010-09-13 08:10:10.000000000 -0400 32236+++ linux-2.6.32.21/fs/hfs/inode.c 2010-09-04 15:54:52.000000000 -0400
31971@@ -423,7 +423,7 @@ int hfs_write_inode(struct inode *inode, 32237@@ -423,7 +423,7 @@ int hfs_write_inode(struct inode *inode,
31972 32238
31973 if (S_ISDIR(main_inode->i_mode)) { 32239 if (S_ISDIR(main_inode->i_mode)) {
@@ -31987,8 +32253,8 @@ diff -urNp linux-2.6.32.21/fs/hfs/inode.c linux-2.6.32.21/fs/hfs/inode.c
31987 sizeof(struct hfs_cat_file)); 32253 sizeof(struct hfs_cat_file));
31988 if (rec.type != HFS_CDR_FIL || 32254 if (rec.type != HFS_CDR_FIL ||
31989diff -urNp linux-2.6.32.21/fs/hfsplus/inode.c linux-2.6.32.21/fs/hfsplus/inode.c 32255diff -urNp linux-2.6.32.21/fs/hfsplus/inode.c linux-2.6.32.21/fs/hfsplus/inode.c
31990--- linux-2.6.32.21/fs/hfsplus/inode.c 2010-08-26 19:42:20.000000000 -0400 32256--- linux-2.6.32.21/fs/hfsplus/inode.c 2010-08-13 16:24:37.000000000 -0400
31991+++ linux-2.6.32.21/fs/hfsplus/inode.c 2010-09-13 08:10:10.000000000 -0400 32257+++ linux-2.6.32.21/fs/hfsplus/inode.c 2010-09-04 15:54:52.000000000 -0400
31992@@ -406,7 +406,7 @@ int hfsplus_cat_read_inode(struct inode 32258@@ -406,7 +406,7 @@ int hfsplus_cat_read_inode(struct inode
31993 struct hfsplus_cat_folder *folder = &entry.folder; 32259 struct hfsplus_cat_folder *folder = &entry.folder;
31994 32260
@@ -32026,8 +32292,8 @@ diff -urNp linux-2.6.32.21/fs/hfsplus/inode.c linux-2.6.32.21/fs/hfsplus/inode.c
32026 sizeof(struct hfsplus_cat_file)); 32292 sizeof(struct hfsplus_cat_file));
32027 hfsplus_inode_write_fork(inode, &file->data_fork); 32293 hfsplus_inode_write_fork(inode, &file->data_fork);
32028diff -urNp linux-2.6.32.21/fs/hugetlbfs/inode.c linux-2.6.32.21/fs/hugetlbfs/inode.c 32294diff -urNp linux-2.6.32.21/fs/hugetlbfs/inode.c linux-2.6.32.21/fs/hugetlbfs/inode.c
32029--- linux-2.6.32.21/fs/hugetlbfs/inode.c 2010-08-26 19:42:20.000000000 -0400 32295--- linux-2.6.32.21/fs/hugetlbfs/inode.c 2010-08-13 16:24:37.000000000 -0400
32030+++ linux-2.6.32.21/fs/hugetlbfs/inode.c 2010-09-13 08:10:10.000000000 -0400 32296+++ linux-2.6.32.21/fs/hugetlbfs/inode.c 2010-09-04 15:54:52.000000000 -0400
32031@@ -909,7 +909,7 @@ static struct file_system_type hugetlbfs 32297@@ -909,7 +909,7 @@ static struct file_system_type hugetlbfs
32032 .kill_sb = kill_litter_super, 32298 .kill_sb = kill_litter_super,
32033 }; 32299 };
@@ -32038,8 +32304,8 @@ diff -urNp linux-2.6.32.21/fs/hugetlbfs/inode.c linux-2.6.32.21/fs/hugetlbfs/ino
32038 static int can_do_hugetlb_shm(void) 32304 static int can_do_hugetlb_shm(void)
32039 { 32305 {
32040diff -urNp linux-2.6.32.21/fs/ioctl.c linux-2.6.32.21/fs/ioctl.c 32306diff -urNp linux-2.6.32.21/fs/ioctl.c linux-2.6.32.21/fs/ioctl.c
32041--- linux-2.6.32.21/fs/ioctl.c 2010-08-26 19:42:20.000000000 -0400 32307--- linux-2.6.32.21/fs/ioctl.c 2010-08-13 16:24:37.000000000 -0400
32042+++ linux-2.6.32.21/fs/ioctl.c 2010-09-13 08:10:10.000000000 -0400 32308+++ linux-2.6.32.21/fs/ioctl.c 2010-09-04 15:54:52.000000000 -0400
32043@@ -97,7 +97,7 @@ int fiemap_fill_next_extent(struct fiema 32309@@ -97,7 +97,7 @@ int fiemap_fill_next_extent(struct fiema
32044 u64 phys, u64 len, u32 flags) 32310 u64 phys, u64 len, u32 flags)
32045 { 32311 {
@@ -32068,8 +32334,8 @@ diff -urNp linux-2.6.32.21/fs/ioctl.c linux-2.6.32.21/fs/ioctl.c
32068 32334
32069 return error; 32335 return error;
32070diff -urNp linux-2.6.32.21/fs/jffs2/debug.h linux-2.6.32.21/fs/jffs2/debug.h 32336diff -urNp linux-2.6.32.21/fs/jffs2/debug.h linux-2.6.32.21/fs/jffs2/debug.h
32071--- linux-2.6.32.21/fs/jffs2/debug.h 2010-08-26 19:42:20.000000000 -0400 32337--- linux-2.6.32.21/fs/jffs2/debug.h 2010-08-13 16:24:37.000000000 -0400
32072+++ linux-2.6.32.21/fs/jffs2/debug.h 2010-09-13 08:10:10.000000000 -0400 32338+++ linux-2.6.32.21/fs/jffs2/debug.h 2010-09-04 15:54:52.000000000 -0400
32073@@ -52,13 +52,13 @@ 32339@@ -52,13 +52,13 @@
32074 #if CONFIG_JFFS2_FS_DEBUG > 0 32340 #if CONFIG_JFFS2_FS_DEBUG > 0
32075 #define D1(x) x 32341 #define D1(x) x
@@ -32172,8 +32438,8 @@ diff -urNp linux-2.6.32.21/fs/jffs2/debug.h linux-2.6.32.21/fs/jffs2/debug.h
32172 32438
32173 /* "Sanity" checks */ 32439 /* "Sanity" checks */
32174diff -urNp linux-2.6.32.21/fs/jffs2/erase.c linux-2.6.32.21/fs/jffs2/erase.c 32440diff -urNp linux-2.6.32.21/fs/jffs2/erase.c linux-2.6.32.21/fs/jffs2/erase.c
32175--- linux-2.6.32.21/fs/jffs2/erase.c 2010-08-26 19:42:20.000000000 -0400 32441--- linux-2.6.32.21/fs/jffs2/erase.c 2010-08-13 16:24:37.000000000 -0400
32176+++ linux-2.6.32.21/fs/jffs2/erase.c 2010-09-13 08:10:10.000000000 -0400 32442+++ linux-2.6.32.21/fs/jffs2/erase.c 2010-09-04 15:54:52.000000000 -0400
32177@@ -434,7 +434,8 @@ static void jffs2_mark_erased_block(stru 32443@@ -434,7 +434,8 @@ static void jffs2_mark_erased_block(stru
32178 struct jffs2_unknown_node marker = { 32444 struct jffs2_unknown_node marker = {
32179 .magic = cpu_to_je16(JFFS2_MAGIC_BITMASK), 32445 .magic = cpu_to_je16(JFFS2_MAGIC_BITMASK),
@@ -32185,8 +32451,8 @@ diff -urNp linux-2.6.32.21/fs/jffs2/erase.c linux-2.6.32.21/fs/jffs2/erase.c
32185 32451
32186 jffs2_prealloc_raw_node_refs(c, jeb, 1); 32452 jffs2_prealloc_raw_node_refs(c, jeb, 1);
32187diff -urNp linux-2.6.32.21/fs/jffs2/summary.h linux-2.6.32.21/fs/jffs2/summary.h 32453diff -urNp linux-2.6.32.21/fs/jffs2/summary.h linux-2.6.32.21/fs/jffs2/summary.h
32188--- linux-2.6.32.21/fs/jffs2/summary.h 2010-08-26 19:42:20.000000000 -0400 32454--- linux-2.6.32.21/fs/jffs2/summary.h 2010-08-13 16:24:37.000000000 -0400
32189+++ linux-2.6.32.21/fs/jffs2/summary.h 2010-09-13 08:10:10.000000000 -0400 32455+++ linux-2.6.32.21/fs/jffs2/summary.h 2010-09-04 15:54:52.000000000 -0400
32190@@ -194,18 +194,18 @@ int jffs2_sum_scan_sumnode(struct jffs2_ 32456@@ -194,18 +194,18 @@ int jffs2_sum_scan_sumnode(struct jffs2_
32191 32457
32192 #define jffs2_sum_active() (0) 32458 #define jffs2_sum_active() (0)
@@ -32216,8 +32482,8 @@ diff -urNp linux-2.6.32.21/fs/jffs2/summary.h linux-2.6.32.21/fs/jffs2/summary.h
32216 32482
32217 #endif /* CONFIG_JFFS2_SUMMARY */ 32483 #endif /* CONFIG_JFFS2_SUMMARY */
32218diff -urNp linux-2.6.32.21/fs/jffs2/wbuf.c linux-2.6.32.21/fs/jffs2/wbuf.c 32484diff -urNp linux-2.6.32.21/fs/jffs2/wbuf.c linux-2.6.32.21/fs/jffs2/wbuf.c
32219--- linux-2.6.32.21/fs/jffs2/wbuf.c 2010-08-26 19:42:20.000000000 -0400 32485--- linux-2.6.32.21/fs/jffs2/wbuf.c 2010-08-13 16:24:37.000000000 -0400
32220+++ linux-2.6.32.21/fs/jffs2/wbuf.c 2010-09-13 08:10:10.000000000 -0400 32486+++ linux-2.6.32.21/fs/jffs2/wbuf.c 2010-09-04 15:54:52.000000000 -0400
32221@@ -1012,7 +1012,8 @@ static const struct jffs2_unknown_node o 32487@@ -1012,7 +1012,8 @@ static const struct jffs2_unknown_node o
32222 { 32488 {
32223 .magic = constant_cpu_to_je16(JFFS2_MAGIC_BITMASK), 32489 .magic = constant_cpu_to_je16(JFFS2_MAGIC_BITMASK),
@@ -32229,8 +32495,8 @@ diff -urNp linux-2.6.32.21/fs/jffs2/wbuf.c linux-2.6.32.21/fs/jffs2/wbuf.c
32229 32495
32230 /* 32496 /*
32231diff -urNp linux-2.6.32.21/fs/lockd/svc.c linux-2.6.32.21/fs/lockd/svc.c 32497diff -urNp linux-2.6.32.21/fs/lockd/svc.c linux-2.6.32.21/fs/lockd/svc.c
32232--- linux-2.6.32.21/fs/lockd/svc.c 2010-08-26 19:42:20.000000000 -0400 32498--- linux-2.6.32.21/fs/lockd/svc.c 2010-08-13 16:24:37.000000000 -0400
32233+++ linux-2.6.32.21/fs/lockd/svc.c 2010-09-13 08:10:10.000000000 -0400 32499+++ linux-2.6.32.21/fs/lockd/svc.c 2010-09-04 15:54:52.000000000 -0400
32234@@ -43,7 +43,7 @@ 32500@@ -43,7 +43,7 @@
32235 32501
32236 static struct svc_program nlmsvc_program; 32502 static struct svc_program nlmsvc_program;
@@ -32241,8 +32507,8 @@ diff -urNp linux-2.6.32.21/fs/lockd/svc.c linux-2.6.32.21/fs/lockd/svc.c
32241 32507
32242 static DEFINE_MUTEX(nlmsvc_mutex); 32508 static DEFINE_MUTEX(nlmsvc_mutex);
32243diff -urNp linux-2.6.32.21/fs/locks.c linux-2.6.32.21/fs/locks.c 32509diff -urNp linux-2.6.32.21/fs/locks.c linux-2.6.32.21/fs/locks.c
32244--- linux-2.6.32.21/fs/locks.c 2010-08-26 19:42:20.000000000 -0400 32510--- linux-2.6.32.21/fs/locks.c 2010-08-13 16:24:37.000000000 -0400
32245+++ linux-2.6.32.21/fs/locks.c 2010-09-13 08:10:10.000000000 -0400 32511+++ linux-2.6.32.21/fs/locks.c 2010-09-04 15:54:52.000000000 -0400
32246@@ -2007,16 +2007,16 @@ void locks_remove_flock(struct file *fil 32512@@ -2007,16 +2007,16 @@ void locks_remove_flock(struct file *fil
32247 return; 32513 return;
32248 32514
@@ -32265,8 +32531,8 @@ diff -urNp linux-2.6.32.21/fs/locks.c linux-2.6.32.21/fs/locks.c
32265 32531
32266 lock_kernel(); 32532 lock_kernel();
32267diff -urNp linux-2.6.32.21/fs/namei.c linux-2.6.32.21/fs/namei.c 32533diff -urNp linux-2.6.32.21/fs/namei.c linux-2.6.32.21/fs/namei.c
32268--- linux-2.6.32.21/fs/namei.c 2010-08-26 19:42:20.000000000 -0400 32534--- linux-2.6.32.21/fs/namei.c 2010-08-13 16:24:37.000000000 -0400
32269+++ linux-2.6.32.21/fs/namei.c 2010-09-13 08:10:10.000000000 -0400 32535+++ linux-2.6.32.21/fs/namei.c 2010-09-04 15:54:52.000000000 -0400
32270@@ -638,7 +638,7 @@ static __always_inline int __do_follow_l 32536@@ -638,7 +638,7 @@ static __always_inline int __do_follow_l
32271 cookie = dentry->d_inode->i_op->follow_link(dentry, nd); 32537 cookie = dentry->d_inode->i_op->follow_link(dentry, nd);
32272 error = PTR_ERR(cookie); 32538 error = PTR_ERR(cookie);
@@ -32594,8 +32860,8 @@ diff -urNp linux-2.6.32.21/fs/namei.c linux-2.6.32.21/fs/namei.c
32594 mnt_drop_write(oldnd.path.mnt); 32860 mnt_drop_write(oldnd.path.mnt);
32595 exit5: 32861 exit5:
32596diff -urNp linux-2.6.32.21/fs/namespace.c linux-2.6.32.21/fs/namespace.c 32862diff -urNp linux-2.6.32.21/fs/namespace.c linux-2.6.32.21/fs/namespace.c
32597--- linux-2.6.32.21/fs/namespace.c 2010-08-26 19:42:20.000000000 -0400 32863--- linux-2.6.32.21/fs/namespace.c 2010-08-13 16:24:37.000000000 -0400
32598+++ linux-2.6.32.21/fs/namespace.c 2010-09-13 08:10:10.000000000 -0400 32864+++ linux-2.6.32.21/fs/namespace.c 2010-09-04 15:54:52.000000000 -0400
32599@@ -1083,6 +1083,9 @@ static int do_umount(struct vfsmount *mn 32865@@ -1083,6 +1083,9 @@ static int do_umount(struct vfsmount *mn
32600 if (!(sb->s_flags & MS_RDONLY)) 32866 if (!(sb->s_flags & MS_RDONLY))
32601 retval = do_remount_sb(sb, MS_RDONLY, NULL, 0); 32867 retval = do_remount_sb(sb, MS_RDONLY, NULL, 0);
@@ -32657,8 +32923,8 @@ diff -urNp linux-2.6.32.21/fs/namespace.c linux-2.6.32.21/fs/namespace.c
32657 root = current->fs->root; 32923 root = current->fs->root;
32658 path_get(&current->fs->root); 32924 path_get(&current->fs->root);
32659diff -urNp linux-2.6.32.21/fs/nfs/inode.c linux-2.6.32.21/fs/nfs/inode.c 32925diff -urNp linux-2.6.32.21/fs/nfs/inode.c linux-2.6.32.21/fs/nfs/inode.c
32660--- linux-2.6.32.21/fs/nfs/inode.c 2010-08-26 19:42:20.000000000 -0400 32926--- linux-2.6.32.21/fs/nfs/inode.c 2010-08-13 16:24:37.000000000 -0400
32661+++ linux-2.6.32.21/fs/nfs/inode.c 2010-09-13 08:10:10.000000000 -0400 32927+++ linux-2.6.32.21/fs/nfs/inode.c 2010-09-04 15:54:52.000000000 -0400
32662@@ -965,16 +965,16 @@ static int nfs_size_need_update(const st 32928@@ -965,16 +965,16 @@ static int nfs_size_need_update(const st
32663 return nfs_size_to_loff_t(fattr->size) > i_size_read(inode); 32929 return nfs_size_to_loff_t(fattr->size) > i_size_read(inode);
32664 } 32930 }
@@ -32680,8 +32946,8 @@ diff -urNp linux-2.6.32.21/fs/nfs/inode.c linux-2.6.32.21/fs/nfs/inode.c
32680 32946
32681 void nfs_fattr_init(struct nfs_fattr *fattr) 32947 void nfs_fattr_init(struct nfs_fattr *fattr)
32682diff -urNp linux-2.6.32.21/fs/nfs/nfs4proc.c linux-2.6.32.21/fs/nfs/nfs4proc.c 32948diff -urNp linux-2.6.32.21/fs/nfs/nfs4proc.c linux-2.6.32.21/fs/nfs/nfs4proc.c
32683--- linux-2.6.32.21/fs/nfs/nfs4proc.c 2010-08-26 19:42:20.000000000 -0400 32949--- linux-2.6.32.21/fs/nfs/nfs4proc.c 2010-08-13 16:24:37.000000000 -0400
32684+++ linux-2.6.32.21/fs/nfs/nfs4proc.c 2010-09-13 08:10:10.000000000 -0400 32950+++ linux-2.6.32.21/fs/nfs/nfs4proc.c 2010-09-04 15:54:52.000000000 -0400
32685@@ -1131,7 +1131,7 @@ static int _nfs4_do_open_reclaim(struct 32951@@ -1131,7 +1131,7 @@ static int _nfs4_do_open_reclaim(struct
32686 static int nfs4_do_open_reclaim(struct nfs_open_context *ctx, struct nfs4_state *state) 32952 static int nfs4_do_open_reclaim(struct nfs_open_context *ctx, struct nfs4_state *state)
32687 { 32953 {
@@ -32953,8 +33219,8 @@ diff -urNp linux-2.6.32.21/fs/nfs/nfs4proc.c linux-2.6.32.21/fs/nfs/nfs4proc.c
32953 33219
32954 err = nfs4_set_lock_state(state, fl); 33220 err = nfs4_set_lock_state(state, fl);
32955diff -urNp linux-2.6.32.21/fs/nfsd/lockd.c linux-2.6.32.21/fs/nfsd/lockd.c 33221diff -urNp linux-2.6.32.21/fs/nfsd/lockd.c linux-2.6.32.21/fs/nfsd/lockd.c
32956--- linux-2.6.32.21/fs/nfsd/lockd.c 2010-08-26 19:42:20.000000000 -0400 33222--- linux-2.6.32.21/fs/nfsd/lockd.c 2010-08-13 16:24:37.000000000 -0400
32957+++ linux-2.6.32.21/fs/nfsd/lockd.c 2010-09-13 08:10:10.000000000 -0400 33223+++ linux-2.6.32.21/fs/nfsd/lockd.c 2010-09-04 15:54:52.000000000 -0400
32958@@ -67,7 +67,7 @@ nlm_fclose(struct file *filp) 33224@@ -67,7 +67,7 @@ nlm_fclose(struct file *filp)
32959 fput(filp); 33225 fput(filp);
32960 } 33226 }
@@ -32965,8 +33231,8 @@ diff -urNp linux-2.6.32.21/fs/nfsd/lockd.c linux-2.6.32.21/fs/nfsd/lockd.c
32965 .fclose = nlm_fclose, /* close file */ 33231 .fclose = nlm_fclose, /* close file */
32966 }; 33232 };
32967diff -urNp linux-2.6.32.21/fs/nfsd/vfs.c linux-2.6.32.21/fs/nfsd/vfs.c 33233diff -urNp linux-2.6.32.21/fs/nfsd/vfs.c linux-2.6.32.21/fs/nfsd/vfs.c
32968--- linux-2.6.32.21/fs/nfsd/vfs.c 2010-08-26 19:42:20.000000000 -0400 33234--- linux-2.6.32.21/fs/nfsd/vfs.c 2010-08-13 16:24:37.000000000 -0400
32969+++ linux-2.6.32.21/fs/nfsd/vfs.c 2010-09-13 08:10:10.000000000 -0400 33235+++ linux-2.6.32.21/fs/nfsd/vfs.c 2010-09-04 15:54:52.000000000 -0400
32970@@ -937,7 +937,7 @@ nfsd_vfs_read(struct svc_rqst *rqstp, st 33236@@ -937,7 +937,7 @@ nfsd_vfs_read(struct svc_rqst *rqstp, st
32971 } else { 33237 } else {
32972 oldfs = get_fs(); 33238 oldfs = get_fs();
@@ -32995,8 +33261,8 @@ diff -urNp linux-2.6.32.21/fs/nfsd/vfs.c linux-2.6.32.21/fs/nfsd/vfs.c
32995 33261
32996 if (host_err < 0) 33262 if (host_err < 0)
32997diff -urNp linux-2.6.32.21/fs/nls/nls_base.c linux-2.6.32.21/fs/nls/nls_base.c 33263diff -urNp linux-2.6.32.21/fs/nls/nls_base.c linux-2.6.32.21/fs/nls/nls_base.c
32998--- linux-2.6.32.21/fs/nls/nls_base.c 2010-08-26 19:42:20.000000000 -0400 33264--- linux-2.6.32.21/fs/nls/nls_base.c 2010-08-13 16:24:37.000000000 -0400
32999+++ linux-2.6.32.21/fs/nls/nls_base.c 2010-09-13 08:10:10.000000000 -0400 33265+++ linux-2.6.32.21/fs/nls/nls_base.c 2010-09-04 15:54:52.000000000 -0400
33000@@ -41,7 +41,7 @@ static const struct utf8_table utf8_tabl 33266@@ -41,7 +41,7 @@ static const struct utf8_table utf8_tabl
33001 {0xF8, 0xF0, 3*6, 0x1FFFFF, 0x10000, /* 4 byte sequence */}, 33267 {0xF8, 0xF0, 3*6, 0x1FFFFF, 0x10000, /* 4 byte sequence */},
33002 {0xFC, 0xF8, 4*6, 0x3FFFFFF, 0x200000, /* 5 byte sequence */}, 33268 {0xFC, 0xF8, 4*6, 0x3FFFFFF, 0x200000, /* 5 byte sequence */},
@@ -33007,8 +33273,8 @@ diff -urNp linux-2.6.32.21/fs/nls/nls_base.c linux-2.6.32.21/fs/nls/nls_base.c
33007 33273
33008 #define UNICODE_MAX 0x0010ffff 33274 #define UNICODE_MAX 0x0010ffff
33009diff -urNp linux-2.6.32.21/fs/ntfs/file.c linux-2.6.32.21/fs/ntfs/file.c 33275diff -urNp linux-2.6.32.21/fs/ntfs/file.c linux-2.6.32.21/fs/ntfs/file.c
33010--- linux-2.6.32.21/fs/ntfs/file.c 2010-08-26 19:42:20.000000000 -0400 33276--- linux-2.6.32.21/fs/ntfs/file.c 2010-08-13 16:24:37.000000000 -0400
33011+++ linux-2.6.32.21/fs/ntfs/file.c 2010-09-13 08:10:10.000000000 -0400 33277+++ linux-2.6.32.21/fs/ntfs/file.c 2010-09-04 15:54:52.000000000 -0400
33012@@ -2243,6 +2243,6 @@ const struct inode_operations ntfs_file_ 33278@@ -2243,6 +2243,6 @@ const struct inode_operations ntfs_file_
33013 #endif /* NTFS_RW */ 33279 #endif /* NTFS_RW */
33014 }; 33280 };
@@ -33019,8 +33285,8 @@ diff -urNp linux-2.6.32.21/fs/ntfs/file.c linux-2.6.32.21/fs/ntfs/file.c
33019-const struct inode_operations ntfs_empty_inode_ops = {}; 33285-const struct inode_operations ntfs_empty_inode_ops = {};
33020+const struct inode_operations ntfs_empty_inode_ops __read_only; 33286+const struct inode_operations ntfs_empty_inode_ops __read_only;
33021diff -urNp linux-2.6.32.21/fs/ocfs2/cluster/masklog.c linux-2.6.32.21/fs/ocfs2/cluster/masklog.c 33287diff -urNp linux-2.6.32.21/fs/ocfs2/cluster/masklog.c linux-2.6.32.21/fs/ocfs2/cluster/masklog.c
33022--- linux-2.6.32.21/fs/ocfs2/cluster/masklog.c 2010-08-26 19:42:20.000000000 -0400 33288--- linux-2.6.32.21/fs/ocfs2/cluster/masklog.c 2010-08-13 16:24:37.000000000 -0400
33023+++ linux-2.6.32.21/fs/ocfs2/cluster/masklog.c 2010-09-13 08:10:10.000000000 -0400 33289+++ linux-2.6.32.21/fs/ocfs2/cluster/masklog.c 2010-09-04 15:54:52.000000000 -0400
33024@@ -135,7 +135,7 @@ static ssize_t mlog_store(struct kobject 33290@@ -135,7 +135,7 @@ static ssize_t mlog_store(struct kobject
33025 return mlog_mask_store(mlog_attr->mask, buf, count); 33291 return mlog_mask_store(mlog_attr->mask, buf, count);
33026 } 33292 }
@@ -33031,8 +33297,8 @@ diff -urNp linux-2.6.32.21/fs/ocfs2/cluster/masklog.c linux-2.6.32.21/fs/ocfs2/c
33031 .store = mlog_store, 33297 .store = mlog_store,
33032 }; 33298 };
33033diff -urNp linux-2.6.32.21/fs/ocfs2/localalloc.c linux-2.6.32.21/fs/ocfs2/localalloc.c 33299diff -urNp linux-2.6.32.21/fs/ocfs2/localalloc.c linux-2.6.32.21/fs/ocfs2/localalloc.c
33034--- linux-2.6.32.21/fs/ocfs2/localalloc.c 2010-08-26 19:42:20.000000000 -0400 33300--- linux-2.6.32.21/fs/ocfs2/localalloc.c 2010-08-13 16:24:37.000000000 -0400
33035+++ linux-2.6.32.21/fs/ocfs2/localalloc.c 2010-09-13 08:10:10.000000000 -0400 33301+++ linux-2.6.32.21/fs/ocfs2/localalloc.c 2010-09-04 15:54:52.000000000 -0400
33036@@ -1188,7 +1188,7 @@ static int ocfs2_local_alloc_slide_windo 33302@@ -1188,7 +1188,7 @@ static int ocfs2_local_alloc_slide_windo
33037 goto bail; 33303 goto bail;
33038 } 33304 }
@@ -33043,8 +33309,8 @@ diff -urNp linux-2.6.32.21/fs/ocfs2/localalloc.c linux-2.6.32.21/fs/ocfs2/locala
33043 status = 0; 33309 status = 0;
33044 bail: 33310 bail:
33045diff -urNp linux-2.6.32.21/fs/ocfs2/ocfs2.h linux-2.6.32.21/fs/ocfs2/ocfs2.h 33311diff -urNp linux-2.6.32.21/fs/ocfs2/ocfs2.h linux-2.6.32.21/fs/ocfs2/ocfs2.h
33046--- linux-2.6.32.21/fs/ocfs2/ocfs2.h 2010-08-26 19:42:20.000000000 -0400 33312--- linux-2.6.32.21/fs/ocfs2/ocfs2.h 2010-08-13 16:24:37.000000000 -0400
33047+++ linux-2.6.32.21/fs/ocfs2/ocfs2.h 2010-09-13 08:10:10.000000000 -0400 33313+++ linux-2.6.32.21/fs/ocfs2/ocfs2.h 2010-09-04 15:54:52.000000000 -0400
33048@@ -217,11 +217,11 @@ enum ocfs2_vol_state 33314@@ -217,11 +217,11 @@ enum ocfs2_vol_state
33049 33315
33050 struct ocfs2_alloc_stats 33316 struct ocfs2_alloc_stats
@@ -33063,8 +33329,8 @@ diff -urNp linux-2.6.32.21/fs/ocfs2/ocfs2.h linux-2.6.32.21/fs/ocfs2/ocfs2.h
33063 33329
33064 enum ocfs2_local_alloc_state 33330 enum ocfs2_local_alloc_state
33065diff -urNp linux-2.6.32.21/fs/ocfs2/suballoc.c linux-2.6.32.21/fs/ocfs2/suballoc.c 33331diff -urNp linux-2.6.32.21/fs/ocfs2/suballoc.c linux-2.6.32.21/fs/ocfs2/suballoc.c
33066--- linux-2.6.32.21/fs/ocfs2/suballoc.c 2010-08-26 19:42:20.000000000 -0400 33332--- linux-2.6.32.21/fs/ocfs2/suballoc.c 2010-08-13 16:24:37.000000000 -0400
33067+++ linux-2.6.32.21/fs/ocfs2/suballoc.c 2010-09-13 08:10:10.000000000 -0400 33333+++ linux-2.6.32.21/fs/ocfs2/suballoc.c 2010-09-04 15:54:52.000000000 -0400
33068@@ -623,7 +623,7 @@ static int ocfs2_reserve_suballoc_bits(s 33334@@ -623,7 +623,7 @@ static int ocfs2_reserve_suballoc_bits(s
33069 mlog_errno(status); 33335 mlog_errno(status);
33070 goto bail; 33336 goto bail;
@@ -33111,8 +33377,8 @@ diff -urNp linux-2.6.32.21/fs/ocfs2/suballoc.c linux-2.6.32.21/fs/ocfs2/suballoc
33111 } 33377 }
33112 if (status < 0) { 33378 if (status < 0) {
33113diff -urNp linux-2.6.32.21/fs/ocfs2/super.c linux-2.6.32.21/fs/ocfs2/super.c 33379diff -urNp linux-2.6.32.21/fs/ocfs2/super.c linux-2.6.32.21/fs/ocfs2/super.c
33114--- linux-2.6.32.21/fs/ocfs2/super.c 2010-08-26 19:42:20.000000000 -0400 33380--- linux-2.6.32.21/fs/ocfs2/super.c 2010-08-13 16:24:37.000000000 -0400
33115+++ linux-2.6.32.21/fs/ocfs2/super.c 2010-09-13 08:10:10.000000000 -0400 33381+++ linux-2.6.32.21/fs/ocfs2/super.c 2010-09-04 15:54:52.000000000 -0400
33116@@ -284,11 +284,11 @@ static int ocfs2_osb_dump(struct ocfs2_s 33382@@ -284,11 +284,11 @@ static int ocfs2_osb_dump(struct ocfs2_s
33117 "%10s => GlobalAllocs: %d LocalAllocs: %d " 33383 "%10s => GlobalAllocs: %d LocalAllocs: %d "
33118 "SubAllocs: %d LAWinMoves: %d SAExtends: %d\n", 33384 "SubAllocs: %d LAWinMoves: %d SAExtends: %d\n",
@@ -33148,8 +33414,8 @@ diff -urNp linux-2.6.32.21/fs/ocfs2/super.c linux-2.6.32.21/fs/ocfs2/super.c
33148 /* Copy the blockcheck stats from the superblock probe */ 33414 /* Copy the blockcheck stats from the superblock probe */
33149 osb->osb_ecc_stats = *stats; 33415 osb->osb_ecc_stats = *stats;
33150diff -urNp linux-2.6.32.21/fs/open.c linux-2.6.32.21/fs/open.c 33416diff -urNp linux-2.6.32.21/fs/open.c linux-2.6.32.21/fs/open.c
33151--- linux-2.6.32.21/fs/open.c 2010-08-26 19:42:20.000000000 -0400 33417--- linux-2.6.32.21/fs/open.c 2010-08-13 16:24:37.000000000 -0400
33152+++ linux-2.6.32.21/fs/open.c 2010-09-13 08:10:10.000000000 -0400 33418+++ linux-2.6.32.21/fs/open.c 2010-09-04 15:54:52.000000000 -0400
33153@@ -206,6 +206,9 @@ int do_truncate(struct dentry *dentry, l 33419@@ -206,6 +206,9 @@ int do_truncate(struct dentry *dentry, l
33154 if (length < 0) 33420 if (length < 0)
33155 return -EINVAL; 33421 return -EINVAL;
@@ -33324,8 +33590,8 @@ diff -urNp linux-2.6.32.21/fs/open.c linux-2.6.32.21/fs/open.c
33324 out_fput: 33590 out_fput:
33325 fput(file); 33591 fput(file);
33326diff -urNp linux-2.6.32.21/fs/pipe.c linux-2.6.32.21/fs/pipe.c 33592diff -urNp linux-2.6.32.21/fs/pipe.c linux-2.6.32.21/fs/pipe.c
33327--- linux-2.6.32.21/fs/pipe.c 2010-08-26 19:42:20.000000000 -0400 33593--- linux-2.6.32.21/fs/pipe.c 2010-08-13 16:24:37.000000000 -0400
33328+++ linux-2.6.32.21/fs/pipe.c 2010-09-13 08:10:10.000000000 -0400 33594+++ linux-2.6.32.21/fs/pipe.c 2010-09-04 15:54:52.000000000 -0400
33329@@ -401,9 +401,9 @@ redo: 33595@@ -401,9 +401,9 @@ redo:
33330 } 33596 }
33331 if (bufs) /* More to do? */ 33597 if (bufs) /* More to do? */
@@ -33449,39 +33715,9 @@ diff -urNp linux-2.6.32.21/fs/pipe.c linux-2.6.32.21/fs/pipe.c
33449 inode->i_fop = &rdwr_pipefifo_fops; 33715 inode->i_fop = &rdwr_pipefifo_fops;
33450 33716
33451 /* 33717 /*
33452diff -urNp linux-2.6.32.21/fs/proc/Kconfig linux-2.6.32.21/fs/proc/Kconfig
33453--- linux-2.6.32.21/fs/proc/Kconfig 2010-08-26 19:42:20.000000000 -0400
33454+++ linux-2.6.32.21/fs/proc/Kconfig 2010-09-13 08:10:10.000000000 -0400
33455@@ -30,12 +30,12 @@ config PROC_FS
33456
33457 config PROC_KCORE
33458 bool "/proc/kcore support" if !ARM
33459- depends on PROC_FS && MMU
33460+ depends on PROC_FS && MMU && !GRKERNSEC_PROC_ADD
33461
33462 config PROC_VMCORE
33463 bool "/proc/vmcore support (EXPERIMENTAL)"
33464- depends on PROC_FS && CRASH_DUMP
33465- default y
33466+ depends on PROC_FS && CRASH_DUMP && !GRKERNSEC
33467+ default n
33468 help
33469 Exports the dump image of crashed kernel in ELF format.
33470
33471@@ -59,8 +59,8 @@ config PROC_SYSCTL
33472 limited in memory.
33473
33474 config PROC_PAGE_MONITOR
33475- default y
33476- depends on PROC_FS && MMU
33477+ default n
33478+ depends on PROC_FS && MMU && !GRKERNSEC
33479 bool "Enable /proc page monitoring" if EMBEDDED
33480 help
33481 Various /proc files exist to monitor process memory utilization:
33482diff -urNp linux-2.6.32.21/fs/proc/array.c linux-2.6.32.21/fs/proc/array.c 33718diff -urNp linux-2.6.32.21/fs/proc/array.c linux-2.6.32.21/fs/proc/array.c
33483--- linux-2.6.32.21/fs/proc/array.c 2010-08-26 19:42:20.000000000 -0400 33719--- linux-2.6.32.21/fs/proc/array.c 2010-08-13 16:24:37.000000000 -0400
33484+++ linux-2.6.32.21/fs/proc/array.c 2010-09-13 08:10:10.000000000 -0400 33720+++ linux-2.6.32.21/fs/proc/array.c 2010-09-04 15:54:52.000000000 -0400
33485@@ -321,6 +321,21 @@ static inline void task_context_switch_c 33721@@ -321,6 +321,21 @@ static inline void task_context_switch_c
33486 p->nivcsw); 33722 p->nivcsw);
33487 } 33723 }
@@ -33573,8 +33809,8 @@ diff -urNp linux-2.6.32.21/fs/proc/array.c linux-2.6.32.21/fs/proc/array.c
33573+} 33809+}
33574+#endif 33810+#endif
33575diff -urNp linux-2.6.32.21/fs/proc/base.c linux-2.6.32.21/fs/proc/base.c 33811diff -urNp linux-2.6.32.21/fs/proc/base.c linux-2.6.32.21/fs/proc/base.c
33576--- linux-2.6.32.21/fs/proc/base.c 2010-08-26 19:42:20.000000000 -0400 33812--- linux-2.6.32.21/fs/proc/base.c 2010-08-13 16:24:37.000000000 -0400
33577+++ linux-2.6.32.21/fs/proc/base.c 2010-09-13 08:10:10.000000000 -0400 33813+++ linux-2.6.32.21/fs/proc/base.c 2010-09-04 15:54:52.000000000 -0400
33578@@ -102,6 +102,22 @@ struct pid_entry { 33814@@ -102,6 +102,22 @@ struct pid_entry {
33579 union proc_op op; 33815 union proc_op op;
33580 }; 33816 };
@@ -33931,8 +34167,8 @@ diff -urNp linux-2.6.32.21/fs/proc/base.c linux-2.6.32.21/fs/proc/base.c
33931 #endif 34167 #endif
33932 #ifdef CONFIG_SCHEDSTATS 34168 #ifdef CONFIG_SCHEDSTATS
33933diff -urNp linux-2.6.32.21/fs/proc/cmdline.c linux-2.6.32.21/fs/proc/cmdline.c 34169diff -urNp linux-2.6.32.21/fs/proc/cmdline.c linux-2.6.32.21/fs/proc/cmdline.c
33934--- linux-2.6.32.21/fs/proc/cmdline.c 2010-08-26 19:42:20.000000000 -0400 34170--- linux-2.6.32.21/fs/proc/cmdline.c 2010-08-13 16:24:37.000000000 -0400
33935+++ linux-2.6.32.21/fs/proc/cmdline.c 2010-09-13 08:10:10.000000000 -0400 34171+++ linux-2.6.32.21/fs/proc/cmdline.c 2010-09-04 15:54:52.000000000 -0400
33936@@ -23,7 +23,11 @@ static const struct file_operations cmdl 34172@@ -23,7 +23,11 @@ static const struct file_operations cmdl
33937 34173
33938 static int __init proc_cmdline_init(void) 34174 static int __init proc_cmdline_init(void)
@@ -33946,8 +34182,8 @@ diff -urNp linux-2.6.32.21/fs/proc/cmdline.c linux-2.6.32.21/fs/proc/cmdline.c
33946 } 34182 }
33947 module_init(proc_cmdline_init); 34183 module_init(proc_cmdline_init);
33948diff -urNp linux-2.6.32.21/fs/proc/devices.c linux-2.6.32.21/fs/proc/devices.c 34184diff -urNp linux-2.6.32.21/fs/proc/devices.c linux-2.6.32.21/fs/proc/devices.c
33949--- linux-2.6.32.21/fs/proc/devices.c 2010-08-26 19:42:20.000000000 -0400 34185--- linux-2.6.32.21/fs/proc/devices.c 2010-08-13 16:24:37.000000000 -0400
33950+++ linux-2.6.32.21/fs/proc/devices.c 2010-09-13 08:10:10.000000000 -0400 34186+++ linux-2.6.32.21/fs/proc/devices.c 2010-09-04 15:54:52.000000000 -0400
33951@@ -64,7 +64,11 @@ static const struct file_operations proc 34187@@ -64,7 +64,11 @@ static const struct file_operations proc
33952 34188
33953 static int __init proc_devices_init(void) 34189 static int __init proc_devices_init(void)
@@ -33961,8 +34197,8 @@ diff -urNp linux-2.6.32.21/fs/proc/devices.c linux-2.6.32.21/fs/proc/devices.c
33961 } 34197 }
33962 module_init(proc_devices_init); 34198 module_init(proc_devices_init);
33963diff -urNp linux-2.6.32.21/fs/proc/inode.c linux-2.6.32.21/fs/proc/inode.c 34199diff -urNp linux-2.6.32.21/fs/proc/inode.c linux-2.6.32.21/fs/proc/inode.c
33964--- linux-2.6.32.21/fs/proc/inode.c 2010-08-26 19:42:20.000000000 -0400 34200--- linux-2.6.32.21/fs/proc/inode.c 2010-08-13 16:24:37.000000000 -0400
33965+++ linux-2.6.32.21/fs/proc/inode.c 2010-09-13 08:10:10.000000000 -0400 34201+++ linux-2.6.32.21/fs/proc/inode.c 2010-09-04 15:54:52.000000000 -0400
33966@@ -457,7 +457,11 @@ struct inode *proc_get_inode(struct supe 34202@@ -457,7 +457,11 @@ struct inode *proc_get_inode(struct supe
33967 if (de->mode) { 34203 if (de->mode) {
33968 inode->i_mode = de->mode; 34204 inode->i_mode = de->mode;
@@ -33976,8 +34212,8 @@ diff -urNp linux-2.6.32.21/fs/proc/inode.c linux-2.6.32.21/fs/proc/inode.c
33976 if (de->size) 34212 if (de->size)
33977 inode->i_size = de->size; 34213 inode->i_size = de->size;
33978diff -urNp linux-2.6.32.21/fs/proc/internal.h linux-2.6.32.21/fs/proc/internal.h 34214diff -urNp linux-2.6.32.21/fs/proc/internal.h linux-2.6.32.21/fs/proc/internal.h
33979--- linux-2.6.32.21/fs/proc/internal.h 2010-08-26 19:42:20.000000000 -0400 34215--- linux-2.6.32.21/fs/proc/internal.h 2010-08-13 16:24:37.000000000 -0400
33980+++ linux-2.6.32.21/fs/proc/internal.h 2010-09-13 08:10:10.000000000 -0400 34216+++ linux-2.6.32.21/fs/proc/internal.h 2010-09-04 15:54:52.000000000 -0400
33981@@ -51,6 +51,9 @@ extern int proc_pid_status(struct seq_fi 34217@@ -51,6 +51,9 @@ extern int proc_pid_status(struct seq_fi
33982 struct pid *pid, struct task_struct *task); 34218 struct pid *pid, struct task_struct *task);
33983 extern int proc_pid_statm(struct seq_file *m, struct pid_namespace *ns, 34219 extern int proc_pid_statm(struct seq_file *m, struct pid_namespace *ns,
@@ -33988,9 +34224,39 @@ diff -urNp linux-2.6.32.21/fs/proc/internal.h linux-2.6.32.21/fs/proc/internal.h
33988 extern loff_t mem_lseek(struct file *file, loff_t offset, int orig); 34224 extern loff_t mem_lseek(struct file *file, loff_t offset, int orig);
33989 34225
33990 extern const struct file_operations proc_maps_operations; 34226 extern const struct file_operations proc_maps_operations;
34227diff -urNp linux-2.6.32.21/fs/proc/Kconfig linux-2.6.32.21/fs/proc/Kconfig
34228--- linux-2.6.32.21/fs/proc/Kconfig 2010-08-13 16:24:37.000000000 -0400
34229+++ linux-2.6.32.21/fs/proc/Kconfig 2010-09-04 15:54:52.000000000 -0400
34230@@ -30,12 +30,12 @@ config PROC_FS
34231
34232 config PROC_KCORE
34233 bool "/proc/kcore support" if !ARM
34234- depends on PROC_FS && MMU
34235+ depends on PROC_FS && MMU && !GRKERNSEC_PROC_ADD
34236
34237 config PROC_VMCORE
34238 bool "/proc/vmcore support (EXPERIMENTAL)"
34239- depends on PROC_FS && CRASH_DUMP
34240- default y
34241+ depends on PROC_FS && CRASH_DUMP && !GRKERNSEC
34242+ default n
34243 help
34244 Exports the dump image of crashed kernel in ELF format.
34245
34246@@ -59,8 +59,8 @@ config PROC_SYSCTL
34247 limited in memory.
34248
34249 config PROC_PAGE_MONITOR
34250- default y
34251- depends on PROC_FS && MMU
34252+ default n
34253+ depends on PROC_FS && MMU && !GRKERNSEC
34254 bool "Enable /proc page monitoring" if EMBEDDED
34255 help
34256 Various /proc files exist to monitor process memory utilization:
33991diff -urNp linux-2.6.32.21/fs/proc/kcore.c linux-2.6.32.21/fs/proc/kcore.c 34257diff -urNp linux-2.6.32.21/fs/proc/kcore.c linux-2.6.32.21/fs/proc/kcore.c
33992--- linux-2.6.32.21/fs/proc/kcore.c 2010-08-26 19:42:20.000000000 -0400 34258--- linux-2.6.32.21/fs/proc/kcore.c 2010-08-13 16:24:37.000000000 -0400
33993+++ linux-2.6.32.21/fs/proc/kcore.c 2010-09-13 08:10:10.000000000 -0400 34259+++ linux-2.6.32.21/fs/proc/kcore.c 2010-09-04 15:54:52.000000000 -0400
33994@@ -477,9 +477,10 @@ read_kcore(struct file *file, char __use 34260@@ -477,9 +477,10 @@ read_kcore(struct file *file, char __use
33995 * the addresses in the elf_phdr on our list. 34261 * the addresses in the elf_phdr on our list.
33996 */ 34262 */
@@ -34045,8 +34311,8 @@ diff -urNp linux-2.6.32.21/fs/proc/kcore.c linux-2.6.32.21/fs/proc/kcore.c
34045 return -EPERM; 34311 return -EPERM;
34046 if (kcore_need_update) 34312 if (kcore_need_update)
34047diff -urNp linux-2.6.32.21/fs/proc/meminfo.c linux-2.6.32.21/fs/proc/meminfo.c 34313diff -urNp linux-2.6.32.21/fs/proc/meminfo.c linux-2.6.32.21/fs/proc/meminfo.c
34048--- linux-2.6.32.21/fs/proc/meminfo.c 2010-08-26 19:42:20.000000000 -0400 34314--- linux-2.6.32.21/fs/proc/meminfo.c 2010-08-13 16:24:37.000000000 -0400
34049+++ linux-2.6.32.21/fs/proc/meminfo.c 2010-09-13 08:10:10.000000000 -0400 34315+++ linux-2.6.32.21/fs/proc/meminfo.c 2010-09-04 15:54:52.000000000 -0400
34050@@ -149,7 +149,7 @@ static int meminfo_proc_show(struct seq_ 34316@@ -149,7 +149,7 @@ static int meminfo_proc_show(struct seq_
34051 vmi.used >> 10, 34317 vmi.used >> 10,
34052 vmi.largest_chunk >> 10 34318 vmi.largest_chunk >> 10
@@ -34057,8 +34323,8 @@ diff -urNp linux-2.6.32.21/fs/proc/meminfo.c linux-2.6.32.21/fs/proc/meminfo.c
34057 ); 34323 );
34058 34324
34059diff -urNp linux-2.6.32.21/fs/proc/nommu.c linux-2.6.32.21/fs/proc/nommu.c 34325diff -urNp linux-2.6.32.21/fs/proc/nommu.c linux-2.6.32.21/fs/proc/nommu.c
34060--- linux-2.6.32.21/fs/proc/nommu.c 2010-08-26 19:42:20.000000000 -0400 34326--- linux-2.6.32.21/fs/proc/nommu.c 2010-08-13 16:24:37.000000000 -0400
34061+++ linux-2.6.32.21/fs/proc/nommu.c 2010-09-13 08:10:10.000000000 -0400 34327+++ linux-2.6.32.21/fs/proc/nommu.c 2010-09-04 15:54:52.000000000 -0400
34062@@ -67,7 +67,7 @@ static int nommu_region_show(struct seq_ 34328@@ -67,7 +67,7 @@ static int nommu_region_show(struct seq_
34063 if (len < 1) 34329 if (len < 1)
34064 len = 1; 34330 len = 1;
@@ -34069,8 +34335,8 @@ diff -urNp linux-2.6.32.21/fs/proc/nommu.c linux-2.6.32.21/fs/proc/nommu.c
34069 34335
34070 seq_putc(m, '\n'); 34336 seq_putc(m, '\n');
34071diff -urNp linux-2.6.32.21/fs/proc/proc_net.c linux-2.6.32.21/fs/proc/proc_net.c 34337diff -urNp linux-2.6.32.21/fs/proc/proc_net.c linux-2.6.32.21/fs/proc/proc_net.c
34072--- linux-2.6.32.21/fs/proc/proc_net.c 2010-08-26 19:42:20.000000000 -0400 34338--- linux-2.6.32.21/fs/proc/proc_net.c 2010-08-13 16:24:37.000000000 -0400
34073+++ linux-2.6.32.21/fs/proc/proc_net.c 2010-09-13 08:10:10.000000000 -0400 34339+++ linux-2.6.32.21/fs/proc/proc_net.c 2010-09-04 15:54:52.000000000 -0400
34074@@ -104,6 +104,17 @@ static struct net *get_proc_task_net(str 34340@@ -104,6 +104,17 @@ static struct net *get_proc_task_net(str
34075 struct task_struct *task; 34341 struct task_struct *task;
34076 struct nsproxy *ns; 34342 struct nsproxy *ns;
@@ -34090,8 +34356,8 @@ diff -urNp linux-2.6.32.21/fs/proc/proc_net.c linux-2.6.32.21/fs/proc/proc_net.c
34090 rcu_read_lock(); 34356 rcu_read_lock();
34091 task = pid_task(proc_pid(dir), PIDTYPE_PID); 34357 task = pid_task(proc_pid(dir), PIDTYPE_PID);
34092diff -urNp linux-2.6.32.21/fs/proc/proc_sysctl.c linux-2.6.32.21/fs/proc/proc_sysctl.c 34358diff -urNp linux-2.6.32.21/fs/proc/proc_sysctl.c linux-2.6.32.21/fs/proc/proc_sysctl.c
34093--- linux-2.6.32.21/fs/proc/proc_sysctl.c 2010-08-26 19:42:20.000000000 -0400 34359--- linux-2.6.32.21/fs/proc/proc_sysctl.c 2010-08-13 16:24:37.000000000 -0400
34094+++ linux-2.6.32.21/fs/proc/proc_sysctl.c 2010-09-13 08:10:10.000000000 -0400 34360+++ linux-2.6.32.21/fs/proc/proc_sysctl.c 2010-09-04 15:54:52.000000000 -0400
34095@@ -7,6 +7,8 @@ 34361@@ -7,6 +7,8 @@
34096 #include <linux/security.h> 34362 #include <linux/security.h>
34097 #include "internal.h" 34363 #include "internal.h"
@@ -34132,8 +34398,8 @@ diff -urNp linux-2.6.32.21/fs/proc/proc_sysctl.c linux-2.6.32.21/fs/proc/proc_sy
34132 if (table) 34398 if (table)
34133 stat->mode = (stat->mode & S_IFMT) | table->mode; 34399 stat->mode = (stat->mode & S_IFMT) | table->mode;
34134diff -urNp linux-2.6.32.21/fs/proc/root.c linux-2.6.32.21/fs/proc/root.c 34400diff -urNp linux-2.6.32.21/fs/proc/root.c linux-2.6.32.21/fs/proc/root.c
34135--- linux-2.6.32.21/fs/proc/root.c 2010-08-26 19:42:20.000000000 -0400 34401--- linux-2.6.32.21/fs/proc/root.c 2010-08-13 16:24:37.000000000 -0400
34136+++ linux-2.6.32.21/fs/proc/root.c 2010-09-13 08:10:10.000000000 -0400 34402+++ linux-2.6.32.21/fs/proc/root.c 2010-09-04 15:54:52.000000000 -0400
34137@@ -134,7 +134,15 @@ void __init proc_root_init(void) 34403@@ -134,7 +134,15 @@ void __init proc_root_init(void)
34138 #ifdef CONFIG_PROC_DEVICETREE 34404 #ifdef CONFIG_PROC_DEVICETREE
34139 proc_device_tree_init(); 34405 proc_device_tree_init();
@@ -34151,8 +34417,8 @@ diff -urNp linux-2.6.32.21/fs/proc/root.c linux-2.6.32.21/fs/proc/root.c
34151 } 34417 }
34152 34418
34153diff -urNp linux-2.6.32.21/fs/proc/task_mmu.c linux-2.6.32.21/fs/proc/task_mmu.c 34419diff -urNp linux-2.6.32.21/fs/proc/task_mmu.c linux-2.6.32.21/fs/proc/task_mmu.c
34154--- linux-2.6.32.21/fs/proc/task_mmu.c 2010-08-26 19:42:20.000000000 -0400 34420--- linux-2.6.32.21/fs/proc/task_mmu.c 2010-08-29 21:08:16.000000000 -0400
34155+++ linux-2.6.32.21/fs/proc/task_mmu.c 2010-09-13 08:10:10.000000000 -0400 34421+++ linux-2.6.32.21/fs/proc/task_mmu.c 2010-09-04 15:54:52.000000000 -0400
34156@@ -46,15 +46,26 @@ void task_mem(struct seq_file *m, struct 34422@@ -46,15 +46,26 @@ void task_mem(struct seq_file *m, struct
34157 "VmStk:\t%8lu kB\n" 34423 "VmStk:\t%8lu kB\n"
34158 "VmExe:\t%8lu kB\n" 34424 "VmExe:\t%8lu kB\n"
@@ -34274,8 +34540,8 @@ diff -urNp linux-2.6.32.21/fs/proc/task_mmu.c linux-2.6.32.21/fs/proc/task_mmu.c
34274 (unsigned long)(mss.pss >> (10 + PSS_SHIFT)), 34540 (unsigned long)(mss.pss >> (10 + PSS_SHIFT)),
34275 mss.shared_clean >> 10, 34541 mss.shared_clean >> 10,
34276diff -urNp linux-2.6.32.21/fs/proc/task_nommu.c linux-2.6.32.21/fs/proc/task_nommu.c 34542diff -urNp linux-2.6.32.21/fs/proc/task_nommu.c linux-2.6.32.21/fs/proc/task_nommu.c
34277--- linux-2.6.32.21/fs/proc/task_nommu.c 2010-08-26 19:42:20.000000000 -0400 34543--- linux-2.6.32.21/fs/proc/task_nommu.c 2010-08-13 16:24:37.000000000 -0400
34278+++ linux-2.6.32.21/fs/proc/task_nommu.c 2010-09-13 08:10:10.000000000 -0400 34544+++ linux-2.6.32.21/fs/proc/task_nommu.c 2010-09-04 15:54:52.000000000 -0400
34279@@ -50,7 +50,7 @@ void task_mem(struct seq_file *m, struct 34545@@ -50,7 +50,7 @@ void task_mem(struct seq_file *m, struct
34280 else 34546 else
34281 bytes += kobjsize(mm); 34547 bytes += kobjsize(mm);
@@ -34295,8 +34561,8 @@ diff -urNp linux-2.6.32.21/fs/proc/task_nommu.c linux-2.6.32.21/fs/proc/task_nom
34295 34561
34296 seq_putc(m, '\n'); 34562 seq_putc(m, '\n');
34297diff -urNp linux-2.6.32.21/fs/readdir.c linux-2.6.32.21/fs/readdir.c 34563diff -urNp linux-2.6.32.21/fs/readdir.c linux-2.6.32.21/fs/readdir.c
34298--- linux-2.6.32.21/fs/readdir.c 2010-08-26 19:42:20.000000000 -0400 34564--- linux-2.6.32.21/fs/readdir.c 2010-08-13 16:24:37.000000000 -0400
34299+++ linux-2.6.32.21/fs/readdir.c 2010-09-13 08:10:10.000000000 -0400 34565+++ linux-2.6.32.21/fs/readdir.c 2010-09-04 15:54:52.000000000 -0400
34300@@ -16,6 +16,7 @@ 34566@@ -16,6 +16,7 @@
34301 #include <linux/security.h> 34567 #include <linux/security.h>
34302 #include <linux/syscalls.h> 34568 #include <linux/syscalls.h>
@@ -34387,8 +34653,8 @@ diff -urNp linux-2.6.32.21/fs/readdir.c linux-2.6.32.21/fs/readdir.c
34387 buf.error = 0; 34653 buf.error = 0;
34388 34654
34389diff -urNp linux-2.6.32.21/fs/reiserfs/do_balan.c linux-2.6.32.21/fs/reiserfs/do_balan.c 34655diff -urNp linux-2.6.32.21/fs/reiserfs/do_balan.c linux-2.6.32.21/fs/reiserfs/do_balan.c
34390--- linux-2.6.32.21/fs/reiserfs/do_balan.c 2010-08-26 19:42:20.000000000 -0400 34656--- linux-2.6.32.21/fs/reiserfs/do_balan.c 2010-08-13 16:24:37.000000000 -0400
34391+++ linux-2.6.32.21/fs/reiserfs/do_balan.c 2010-09-13 08:10:10.000000000 -0400 34657+++ linux-2.6.32.21/fs/reiserfs/do_balan.c 2010-09-04 15:54:52.000000000 -0400
34392@@ -2058,7 +2058,7 @@ void do_balance(struct tree_balance *tb, 34658@@ -2058,7 +2058,7 @@ void do_balance(struct tree_balance *tb,
34393 return; 34659 return;
34394 } 34660 }
@@ -34399,8 +34665,8 @@ diff -urNp linux-2.6.32.21/fs/reiserfs/do_balan.c linux-2.6.32.21/fs/reiserfs/do
34399 34665
34400 /* balance leaf returns 0 except if combining L R and S into 34666 /* balance leaf returns 0 except if combining L R and S into
34401diff -urNp linux-2.6.32.21/fs/reiserfs/item_ops.c linux-2.6.32.21/fs/reiserfs/item_ops.c 34667diff -urNp linux-2.6.32.21/fs/reiserfs/item_ops.c linux-2.6.32.21/fs/reiserfs/item_ops.c
34402--- linux-2.6.32.21/fs/reiserfs/item_ops.c 2010-08-26 19:42:20.000000000 -0400 34668--- linux-2.6.32.21/fs/reiserfs/item_ops.c 2010-08-13 16:24:37.000000000 -0400
34403+++ linux-2.6.32.21/fs/reiserfs/item_ops.c 2010-09-13 08:10:10.000000000 -0400 34669+++ linux-2.6.32.21/fs/reiserfs/item_ops.c 2010-09-04 15:54:52.000000000 -0400
34404@@ -102,7 +102,7 @@ static void sd_print_vi(struct virtual_i 34670@@ -102,7 +102,7 @@ static void sd_print_vi(struct virtual_i
34405 vi->vi_index, vi->vi_type, vi->vi_ih); 34671 vi->vi_index, vi->vi_type, vi->vi_ih);
34406 } 34672 }
@@ -34456,8 +34722,8 @@ diff -urNp linux-2.6.32.21/fs/reiserfs/item_ops.c linux-2.6.32.21/fs/reiserfs/it
34456 &indirect_ops, 34722 &indirect_ops,
34457 &direct_ops, 34723 &direct_ops,
34458diff -urNp linux-2.6.32.21/fs/reiserfs/procfs.c linux-2.6.32.21/fs/reiserfs/procfs.c 34724diff -urNp linux-2.6.32.21/fs/reiserfs/procfs.c linux-2.6.32.21/fs/reiserfs/procfs.c
34459--- linux-2.6.32.21/fs/reiserfs/procfs.c 2010-08-26 19:42:20.000000000 -0400 34725--- linux-2.6.32.21/fs/reiserfs/procfs.c 2010-08-13 16:24:37.000000000 -0400
34460+++ linux-2.6.32.21/fs/reiserfs/procfs.c 2010-09-13 08:10:10.000000000 -0400 34726+++ linux-2.6.32.21/fs/reiserfs/procfs.c 2010-09-04 15:54:52.000000000 -0400
34461@@ -123,7 +123,7 @@ static int show_super(struct seq_file *m 34727@@ -123,7 +123,7 @@ static int show_super(struct seq_file *m
34462 "SMALL_TAILS " : "NO_TAILS ", 34728 "SMALL_TAILS " : "NO_TAILS ",
34463 replay_only(sb) ? "REPLAY_ONLY " : "", 34729 replay_only(sb) ? "REPLAY_ONLY " : "",
@@ -34468,8 +34734,8 @@ diff -urNp linux-2.6.32.21/fs/reiserfs/procfs.c linux-2.6.32.21/fs/reiserfs/proc
34468 SF(s_do_balance), SF(s_unneeded_left_neighbor), 34734 SF(s_do_balance), SF(s_unneeded_left_neighbor),
34469 SF(s_good_search_by_key_reada), SF(s_bmaps), 34735 SF(s_good_search_by_key_reada), SF(s_bmaps),
34470diff -urNp linux-2.6.32.21/fs/select.c linux-2.6.32.21/fs/select.c 34736diff -urNp linux-2.6.32.21/fs/select.c linux-2.6.32.21/fs/select.c
34471--- linux-2.6.32.21/fs/select.c 2010-08-26 19:42:20.000000000 -0400 34737--- linux-2.6.32.21/fs/select.c 2010-08-13 16:24:37.000000000 -0400
34472+++ linux-2.6.32.21/fs/select.c 2010-09-13 08:10:10.000000000 -0400 34738+++ linux-2.6.32.21/fs/select.c 2010-09-04 15:54:52.000000000 -0400
34473@@ -20,6 +20,7 @@ 34739@@ -20,6 +20,7 @@
34474 #include <linux/module.h> 34740 #include <linux/module.h>
34475 #include <linux/slab.h> 34741 #include <linux/slab.h>
@@ -34487,8 +34753,8 @@ diff -urNp linux-2.6.32.21/fs/select.c linux-2.6.32.21/fs/select.c
34487 return -EINVAL; 34753 return -EINVAL;
34488 34754
34489diff -urNp linux-2.6.32.21/fs/seq_file.c linux-2.6.32.21/fs/seq_file.c 34755diff -urNp linux-2.6.32.21/fs/seq_file.c linux-2.6.32.21/fs/seq_file.c
34490--- linux-2.6.32.21/fs/seq_file.c 2010-08-26 19:42:20.000000000 -0400 34756--- linux-2.6.32.21/fs/seq_file.c 2010-08-13 16:24:37.000000000 -0400
34491+++ linux-2.6.32.21/fs/seq_file.c 2010-09-13 08:10:10.000000000 -0400 34757+++ linux-2.6.32.21/fs/seq_file.c 2010-09-04 15:54:52.000000000 -0400
34492@@ -76,7 +76,8 @@ static int traverse(struct seq_file *m, 34758@@ -76,7 +76,8 @@ static int traverse(struct seq_file *m,
34493 return 0; 34759 return 0;
34494 } 34760 }
@@ -34530,8 +34796,8 @@ diff -urNp linux-2.6.32.21/fs/seq_file.c linux-2.6.32.21/fs/seq_file.c
34530 goto Enomem; 34796 goto Enomem;
34531 m->count = 0; 34797 m->count = 0;
34532diff -urNp linux-2.6.32.21/fs/smbfs/symlink.c linux-2.6.32.21/fs/smbfs/symlink.c 34798diff -urNp linux-2.6.32.21/fs/smbfs/symlink.c linux-2.6.32.21/fs/smbfs/symlink.c
34533--- linux-2.6.32.21/fs/smbfs/symlink.c 2010-08-26 19:42:20.000000000 -0400 34799--- linux-2.6.32.21/fs/smbfs/symlink.c 2010-08-13 16:24:37.000000000 -0400
34534+++ linux-2.6.32.21/fs/smbfs/symlink.c 2010-09-13 08:10:10.000000000 -0400 34800+++ linux-2.6.32.21/fs/smbfs/symlink.c 2010-09-04 15:54:52.000000000 -0400
34535@@ -55,7 +55,7 @@ static void *smb_follow_link(struct dent 34801@@ -55,7 +55,7 @@ static void *smb_follow_link(struct dent
34536 34802
34537 static void smb_put_link(struct dentry *dentry, struct nameidata *nd, void *p) 34803 static void smb_put_link(struct dentry *dentry, struct nameidata *nd, void *p)
@@ -34542,8 +34808,8 @@ diff -urNp linux-2.6.32.21/fs/smbfs/symlink.c linux-2.6.32.21/fs/smbfs/symlink.c
34542 __putname(s); 34808 __putname(s);
34543 } 34809 }
34544diff -urNp linux-2.6.32.21/fs/splice.c linux-2.6.32.21/fs/splice.c 34810diff -urNp linux-2.6.32.21/fs/splice.c linux-2.6.32.21/fs/splice.c
34545--- linux-2.6.32.21/fs/splice.c 2010-08-26 19:42:20.000000000 -0400 34811--- linux-2.6.32.21/fs/splice.c 2010-08-13 16:24:37.000000000 -0400
34546+++ linux-2.6.32.21/fs/splice.c 2010-09-13 08:10:10.000000000 -0400 34812+++ linux-2.6.32.21/fs/splice.c 2010-09-04 15:54:52.000000000 -0400
34547@@ -185,7 +185,7 @@ ssize_t splice_to_pipe(struct pipe_inode 34813@@ -185,7 +185,7 @@ ssize_t splice_to_pipe(struct pipe_inode
34548 pipe_lock(pipe); 34814 pipe_lock(pipe);
34549 34815
@@ -34683,8 +34949,8 @@ diff -urNp linux-2.6.32.21/fs/splice.c linux-2.6.32.21/fs/splice.c
34683 34949
34684 pipe_unlock(ipipe); 34950 pipe_unlock(ipipe);
34685diff -urNp linux-2.6.32.21/fs/sysfs/file.c linux-2.6.32.21/fs/sysfs/file.c 34951diff -urNp linux-2.6.32.21/fs/sysfs/file.c linux-2.6.32.21/fs/sysfs/file.c
34686--- linux-2.6.32.21/fs/sysfs/file.c 2010-08-26 19:42:20.000000000 -0400 34952--- linux-2.6.32.21/fs/sysfs/file.c 2010-08-13 16:24:37.000000000 -0400
34687+++ linux-2.6.32.21/fs/sysfs/file.c 2010-09-13 08:10:10.000000000 -0400 34953+++ linux-2.6.32.21/fs/sysfs/file.c 2010-09-04 15:54:52.000000000 -0400
34688@@ -53,7 +53,7 @@ struct sysfs_buffer { 34954@@ -53,7 +53,7 @@ struct sysfs_buffer {
34689 size_t count; 34955 size_t count;
34690 loff_t pos; 34956 loff_t pos;
@@ -34722,8 +34988,8 @@ diff -urNp linux-2.6.32.21/fs/sysfs/file.c linux-2.6.32.21/fs/sysfs/file.c
34722 char *p; 34988 char *p;
34723 34989
34724diff -urNp linux-2.6.32.21/fs/sysfs/symlink.c linux-2.6.32.21/fs/sysfs/symlink.c 34990diff -urNp linux-2.6.32.21/fs/sysfs/symlink.c linux-2.6.32.21/fs/sysfs/symlink.c
34725--- linux-2.6.32.21/fs/sysfs/symlink.c 2010-08-26 19:42:20.000000000 -0400 34991--- linux-2.6.32.21/fs/sysfs/symlink.c 2010-08-13 16:24:37.000000000 -0400
34726+++ linux-2.6.32.21/fs/sysfs/symlink.c 2010-09-13 08:10:10.000000000 -0400 34992+++ linux-2.6.32.21/fs/sysfs/symlink.c 2010-09-04 15:54:52.000000000 -0400
34727@@ -204,7 +204,7 @@ static void *sysfs_follow_link(struct de 34993@@ -204,7 +204,7 @@ static void *sysfs_follow_link(struct de
34728 34994
34729 static void sysfs_put_link(struct dentry *dentry, struct nameidata *nd, void *cookie) 34995 static void sysfs_put_link(struct dentry *dentry, struct nameidata *nd, void *cookie)
@@ -34734,8 +35000,8 @@ diff -urNp linux-2.6.32.21/fs/sysfs/symlink.c linux-2.6.32.21/fs/sysfs/symlink.c
34734 free_page((unsigned long)page); 35000 free_page((unsigned long)page);
34735 } 35001 }
34736diff -urNp linux-2.6.32.21/fs/udf/balloc.c linux-2.6.32.21/fs/udf/balloc.c 35002diff -urNp linux-2.6.32.21/fs/udf/balloc.c linux-2.6.32.21/fs/udf/balloc.c
34737--- linux-2.6.32.21/fs/udf/balloc.c 2010-08-26 19:42:20.000000000 -0400 35003--- linux-2.6.32.21/fs/udf/balloc.c 2010-08-13 16:24:37.000000000 -0400
34738+++ linux-2.6.32.21/fs/udf/balloc.c 2010-09-13 08:10:10.000000000 -0400 35004+++ linux-2.6.32.21/fs/udf/balloc.c 2010-09-04 15:54:52.000000000 -0400
34739@@ -172,9 +172,7 @@ static void udf_bitmap_free_blocks(struc 35005@@ -172,9 +172,7 @@ static void udf_bitmap_free_blocks(struc
34740 35006
34741 mutex_lock(&sbi->s_alloc_mutex); 35007 mutex_lock(&sbi->s_alloc_mutex);
@@ -34759,8 +35025,8 @@ diff -urNp linux-2.6.32.21/fs/udf/balloc.c linux-2.6.32.21/fs/udf/balloc.c
34759 bloc.logicalBlockNum, 0, bloc.logicalBlockNum, count, 35025 bloc.logicalBlockNum, 0, bloc.logicalBlockNum, count,
34760 partmap->s_partition_len); 35026 partmap->s_partition_len);
34761diff -urNp linux-2.6.32.21/fs/udf/misc.c linux-2.6.32.21/fs/udf/misc.c 35027diff -urNp linux-2.6.32.21/fs/udf/misc.c linux-2.6.32.21/fs/udf/misc.c
34762--- linux-2.6.32.21/fs/udf/misc.c 2010-08-26 19:42:20.000000000 -0400 35028--- linux-2.6.32.21/fs/udf/misc.c 2010-08-13 16:24:37.000000000 -0400
34763+++ linux-2.6.32.21/fs/udf/misc.c 2010-09-13 08:10:10.000000000 -0400 35029+++ linux-2.6.32.21/fs/udf/misc.c 2010-09-04 15:54:52.000000000 -0400
34764@@ -142,8 +142,8 @@ struct genericFormat *udf_add_extendedat 35030@@ -142,8 +142,8 @@ struct genericFormat *udf_add_extendedat
34765 iinfo->i_lenEAttr += size; 35031 iinfo->i_lenEAttr += size;
34766 return (struct genericFormat *)&ea[offset]; 35032 return (struct genericFormat *)&ea[offset];
@@ -34773,8 +35039,8 @@ diff -urNp linux-2.6.32.21/fs/udf/misc.c linux-2.6.32.21/fs/udf/misc.c
34773 return NULL; 35039 return NULL;
34774 } 35040 }
34775diff -urNp linux-2.6.32.21/fs/udf/udfdecl.h linux-2.6.32.21/fs/udf/udfdecl.h 35041diff -urNp linux-2.6.32.21/fs/udf/udfdecl.h linux-2.6.32.21/fs/udf/udfdecl.h
34776--- linux-2.6.32.21/fs/udf/udfdecl.h 2010-08-26 19:42:20.000000000 -0400 35042--- linux-2.6.32.21/fs/udf/udfdecl.h 2010-08-13 16:24:37.000000000 -0400
34777+++ linux-2.6.32.21/fs/udf/udfdecl.h 2010-09-13 08:10:10.000000000 -0400 35043+++ linux-2.6.32.21/fs/udf/udfdecl.h 2010-09-04 15:54:52.000000000 -0400
34778@@ -26,7 +26,7 @@ do { \ 35044@@ -26,7 +26,7 @@ do { \
34779 printk(f, ##a); \ 35045 printk(f, ##a); \
34780 } while (0) 35046 } while (0)
@@ -34785,8 +35051,8 @@ diff -urNp linux-2.6.32.21/fs/udf/udfdecl.h linux-2.6.32.21/fs/udf/udfdecl.h
34785 35051
34786 #define udf_info(f, a...) \ 35052 #define udf_info(f, a...) \
34787diff -urNp linux-2.6.32.21/fs/utimes.c linux-2.6.32.21/fs/utimes.c 35053diff -urNp linux-2.6.32.21/fs/utimes.c linux-2.6.32.21/fs/utimes.c
34788--- linux-2.6.32.21/fs/utimes.c 2010-08-26 19:42:20.000000000 -0400 35054--- linux-2.6.32.21/fs/utimes.c 2010-08-13 16:24:37.000000000 -0400
34789+++ linux-2.6.32.21/fs/utimes.c 2010-09-13 08:10:10.000000000 -0400 35055+++ linux-2.6.32.21/fs/utimes.c 2010-09-04 15:54:52.000000000 -0400
34790@@ -1,6 +1,7 @@ 35056@@ -1,6 +1,7 @@
34791 #include <linux/compiler.h> 35057 #include <linux/compiler.h>
34792 #include <linux/file.h> 35058 #include <linux/file.h>
@@ -34809,8 +35075,8 @@ diff -urNp linux-2.6.32.21/fs/utimes.c linux-2.6.32.21/fs/utimes.c
34809 error = notify_change(path->dentry, &newattrs); 35075 error = notify_change(path->dentry, &newattrs);
34810 mutex_unlock(&inode->i_mutex); 35076 mutex_unlock(&inode->i_mutex);
34811diff -urNp linux-2.6.32.21/fs/xfs/linux-2.6/xfs_ioctl.c linux-2.6.32.21/fs/xfs/linux-2.6/xfs_ioctl.c 35077diff -urNp linux-2.6.32.21/fs/xfs/linux-2.6/xfs_ioctl.c linux-2.6.32.21/fs/xfs/linux-2.6/xfs_ioctl.c
34812--- linux-2.6.32.21/fs/xfs/linux-2.6/xfs_ioctl.c 2010-08-26 19:42:20.000000000 -0400 35078--- linux-2.6.32.21/fs/xfs/linux-2.6/xfs_ioctl.c 2010-08-13 16:24:37.000000000 -0400
34813+++ linux-2.6.32.21/fs/xfs/linux-2.6/xfs_ioctl.c 2010-09-13 08:10:10.000000000 -0400 35079+++ linux-2.6.32.21/fs/xfs/linux-2.6/xfs_ioctl.c 2010-09-04 15:54:52.000000000 -0400
34814@@ -134,7 +134,7 @@ xfs_find_handle( 35080@@ -134,7 +134,7 @@ xfs_find_handle(
34815 } 35081 }
34816 35082
@@ -34821,8 +35087,8 @@ diff -urNp linux-2.6.32.21/fs/xfs/linux-2.6/xfs_ioctl.c linux-2.6.32.21/fs/xfs/l
34821 goto out_put; 35087 goto out_put;
34822 35088
34823diff -urNp linux-2.6.32.21/fs/xfs/linux-2.6/xfs_iops.c linux-2.6.32.21/fs/xfs/linux-2.6/xfs_iops.c 35089diff -urNp linux-2.6.32.21/fs/xfs/linux-2.6/xfs_iops.c linux-2.6.32.21/fs/xfs/linux-2.6/xfs_iops.c
34824--- linux-2.6.32.21/fs/xfs/linux-2.6/xfs_iops.c 2010-08-26 19:42:20.000000000 -0400 35090--- linux-2.6.32.21/fs/xfs/linux-2.6/xfs_iops.c 2010-08-13 16:24:37.000000000 -0400
34825+++ linux-2.6.32.21/fs/xfs/linux-2.6/xfs_iops.c 2010-09-13 08:10:10.000000000 -0400 35091+++ linux-2.6.32.21/fs/xfs/linux-2.6/xfs_iops.c 2010-09-04 15:54:52.000000000 -0400
34826@@ -468,7 +468,7 @@ xfs_vn_put_link( 35092@@ -468,7 +468,7 @@ xfs_vn_put_link(
34827 struct nameidata *nd, 35093 struct nameidata *nd,
34828 void *p) 35094 void *p)
@@ -34833,8 +35099,8 @@ diff -urNp linux-2.6.32.21/fs/xfs/linux-2.6/xfs_iops.c linux-2.6.32.21/fs/xfs/li
34833 if (!IS_ERR(s)) 35099 if (!IS_ERR(s))
34834 kfree(s); 35100 kfree(s);
34835diff -urNp linux-2.6.32.21/fs/xfs/xfs_bmap.c linux-2.6.32.21/fs/xfs/xfs_bmap.c 35101diff -urNp linux-2.6.32.21/fs/xfs/xfs_bmap.c linux-2.6.32.21/fs/xfs/xfs_bmap.c
34836--- linux-2.6.32.21/fs/xfs/xfs_bmap.c 2010-08-26 19:42:20.000000000 -0400 35102--- linux-2.6.32.21/fs/xfs/xfs_bmap.c 2010-08-13 16:24:37.000000000 -0400
34837+++ linux-2.6.32.21/fs/xfs/xfs_bmap.c 2010-09-13 08:10:10.000000000 -0400 35103+++ linux-2.6.32.21/fs/xfs/xfs_bmap.c 2010-09-04 15:54:52.000000000 -0400
34838@@ -360,7 +360,7 @@ xfs_bmap_validate_ret( 35104@@ -360,7 +360,7 @@ xfs_bmap_validate_ret(
34839 int nmap, 35105 int nmap,
34840 int ret_nmap); 35106 int ret_nmap);
@@ -34844,1028 +35110,118 @@ diff -urNp linux-2.6.32.21/fs/xfs/xfs_bmap.c linux-2.6.32.21/fs/xfs/xfs_bmap.c
34844 #endif /* DEBUG */ 35110 #endif /* DEBUG */
34845 35111
34846 #if defined(XFS_RW_TRACE) 35112 #if defined(XFS_RW_TRACE)
34847diff -urNp linux-2.6.32.21/grsecurity/Kconfig linux-2.6.32.21/grsecurity/Kconfig 35113diff -urNp linux-2.6.32.21/grsecurity/gracl_alloc.c linux-2.6.32.21/grsecurity/gracl_alloc.c
34848--- linux-2.6.32.21/grsecurity/Kconfig 1969-12-31 19:00:00.000000000 -0500 35114--- linux-2.6.32.21/grsecurity/gracl_alloc.c 1969-12-31 19:00:00.000000000 -0500
34849+++ linux-2.6.32.21/grsecurity/Kconfig 2010-09-13 08:10:10.000000000 -0400 35115+++ linux-2.6.32.21/grsecurity/gracl_alloc.c 2010-09-04 15:54:52.000000000 -0400
34850@@ -0,0 +1,982 @@ 35116@@ -0,0 +1,105 @@
34851+# 35117+#include <linux/kernel.h>
34852+# grecurity configuration 35118+#include <linux/mm.h>
34853+# 35119+#include <linux/slab.h>
34854+ 35120+#include <linux/vmalloc.h>
34855+menu "Grsecurity" 35121+#include <linux/gracl.h>
34856+ 35122+#include <linux/grsecurity.h>
34857+config GRKERNSEC
34858+ bool "Grsecurity"
34859+ select CRYPTO
34860+ select CRYPTO_SHA256
34861+ help
34862+ If you say Y here, you will be able to configure many features
34863+ that will enhance the security of your system. It is highly
34864+ recommended that you say Y here and read through the help
34865+ for each option so that you fully understand the features and
34866+ can evaluate their usefulness for your machine.
34867+
34868+choice
34869+ prompt "Security Level"
34870+ depends on GRKERNSEC
34871+ default GRKERNSEC_CUSTOM
34872+
34873+config GRKERNSEC_LOW
34874+ bool "Low"
34875+ select GRKERNSEC_LINK
34876+ select GRKERNSEC_FIFO
34877+ select GRKERNSEC_EXECVE
34878+ select GRKERNSEC_RANDNET
34879+ select GRKERNSEC_DMESG
34880+ select GRKERNSEC_CHROOT
34881+ select GRKERNSEC_CHROOT_CHDIR
34882+
34883+ help
34884+ If you choose this option, several of the grsecurity options will
34885+ be enabled that will give you greater protection against a number
34886+ of attacks, while assuring that none of your software will have any
34887+ conflicts with the additional security measures. If you run a lot
34888+ of unusual software, or you are having problems with the higher
34889+ security levels, you should say Y here. With this option, the
34890+ following features are enabled:
34891+
34892+ - Linking restrictions
34893+ - FIFO restrictions
34894+ - Enforcing RLIMIT_NPROC on execve
34895+ - Restricted dmesg
34896+ - Enforced chdir("/") on chroot
34897+ - Runtime module disabling
34898+
34899+config GRKERNSEC_MEDIUM
34900+ bool "Medium"
34901+ select PAX
34902+ select PAX_EI_PAX
34903+ select PAX_PT_PAX_FLAGS
34904+ select PAX_HAVE_ACL_FLAGS
34905+ select GRKERNSEC_PROC_MEMMAP if (PAX_NOEXEC || PAX_ASLR)
34906+ select GRKERNSEC_CHROOT
34907+ select GRKERNSEC_CHROOT_SYSCTL
34908+ select GRKERNSEC_LINK
34909+ select GRKERNSEC_FIFO
34910+ select GRKERNSEC_EXECVE
34911+ select GRKERNSEC_DMESG
34912+ select GRKERNSEC_RANDNET
34913+ select GRKERNSEC_FORKFAIL
34914+ select GRKERNSEC_TIME
34915+ select GRKERNSEC_SIGNAL
34916+ select GRKERNSEC_CHROOT
34917+ select GRKERNSEC_CHROOT_UNIX
34918+ select GRKERNSEC_CHROOT_MOUNT
34919+ select GRKERNSEC_CHROOT_PIVOT
34920+ select GRKERNSEC_CHROOT_DOUBLE
34921+ select GRKERNSEC_CHROOT_CHDIR
34922+ select GRKERNSEC_CHROOT_MKNOD
34923+ select GRKERNSEC_PROC
34924+ select GRKERNSEC_PROC_USERGROUP
34925+ select PAX_RANDUSTACK
34926+ select PAX_ASLR
34927+ select PAX_RANDMMAP
34928+ select PAX_REFCOUNT if (X86 || SPARC64)
34929+ select PAX_USERCOPY if ((X86 || SPARC32 || SPARC64 || PPC) && (SLAB || SLUB || SLOB))
34930+
34931+ help
34932+ If you say Y here, several features in addition to those included
34933+ in the low additional security level will be enabled. These
34934+ features provide even more security to your system, though in rare
34935+ cases they may be incompatible with very old or poorly written
34936+ software. If you enable this option, make sure that your auth
34937+ service (identd) is running as gid 1001. With this option,
34938+ the following features (in addition to those provided in the
34939+ low additional security level) will be enabled:
34940+
34941+ - Failed fork logging
34942+ - Time change logging
34943+ - Signal logging
34944+ - Deny mounts in chroot
34945+ - Deny double chrooting
34946+ - Deny sysctl writes in chroot
34947+ - Deny mknod in chroot
34948+ - Deny access to abstract AF_UNIX sockets out of chroot
34949+ - Deny pivot_root in chroot
34950+ - Denied writes of /dev/kmem, /dev/mem, and /dev/port
34951+ - /proc restrictions with special GID set to 10 (usually wheel)
34952+ - Address Space Layout Randomization (ASLR)
34953+ - Prevent exploitation of most refcount overflows
34954+ - Bounds checking of copying between the kernel and userland
34955+
34956+config GRKERNSEC_HIGH
34957+ bool "High"
34958+ select GRKERNSEC_LINK
34959+ select GRKERNSEC_FIFO
34960+ select GRKERNSEC_EXECVE
34961+ select GRKERNSEC_DMESG
34962+ select GRKERNSEC_FORKFAIL
34963+ select GRKERNSEC_TIME
34964+ select GRKERNSEC_SIGNAL
34965+ select GRKERNSEC_CHROOT
34966+ select GRKERNSEC_CHROOT_SHMAT
34967+ select GRKERNSEC_CHROOT_UNIX
34968+ select GRKERNSEC_CHROOT_MOUNT
34969+ select GRKERNSEC_CHROOT_FCHDIR
34970+ select GRKERNSEC_CHROOT_PIVOT
34971+ select GRKERNSEC_CHROOT_DOUBLE
34972+ select GRKERNSEC_CHROOT_CHDIR
34973+ select GRKERNSEC_CHROOT_MKNOD
34974+ select GRKERNSEC_CHROOT_CAPS
34975+ select GRKERNSEC_CHROOT_SYSCTL
34976+ select GRKERNSEC_CHROOT_FINDTASK
34977+ select GRKERNSEC_PROC
34978+ select GRKERNSEC_PROC_MEMMAP if (PAX_NOEXEC || PAX_ASLR)
34979+ select GRKERNSEC_HIDESYM
34980+ select GRKERNSEC_BRUTE
34981+ select GRKERNSEC_PROC_USERGROUP
34982+ select GRKERNSEC_KMEM
34983+ select GRKERNSEC_RESLOG
34984+ select GRKERNSEC_RANDNET
34985+ select GRKERNSEC_PROC_ADD
34986+ select GRKERNSEC_CHROOT_CHMOD
34987+ select GRKERNSEC_CHROOT_NICE
34988+ select GRKERNSEC_AUDIT_MOUNT
34989+ select GRKERNSEC_MODHARDEN if (MODULES)
34990+ select GRKERNSEC_HARDEN_PTRACE
34991+ select GRKERNSEC_VM86 if (X86_32)
34992+ select PAX
34993+ select PAX_RANDUSTACK
34994+ select PAX_ASLR
34995+ select PAX_RANDMMAP
34996+ select PAX_NOEXEC
34997+ select PAX_MPROTECT
34998+ select PAX_EI_PAX
34999+ select PAX_PT_PAX_FLAGS
35000+ select PAX_HAVE_ACL_FLAGS
35001+ select PAX_KERNEXEC if ((PPC || X86) && (!X86_32 || X86_WP_WORKS_OK) && !XEN)
35002+ select PAX_MEMORY_UDEREF if (X86_32 && !XEN)
35003+ select PAX_RANDKSTACK if (X86_TSC && !X86_64)
35004+ select PAX_SEGMEXEC if (X86_32)
35005+ select PAX_PAGEEXEC
35006+ select PAX_EMUPLT if (ALPHA || PARISC || SPARC32 || SPARC64)
35007+ select PAX_EMUTRAMP if (PARISC)
35008+ select PAX_EMUSIGRT if (PARISC)
35009+ select PAX_ETEXECRELOCS if (ALPHA || IA64 || PARISC)
35010+ select PAX_ELFRELOCS if (PAX_ETEXECRELOCS || (IA64 || PPC || X86))
35011+ select PAX_REFCOUNT if (X86 || SPARC64)
35012+ select PAX_USERCOPY if ((X86 || PPC || SPARC32 || SPARC64) && (SLAB || SLUB || SLOB))
35013+ help
35014+ If you say Y here, many of the features of grsecurity will be
35015+ enabled, which will protect you against many kinds of attacks
35016+ against your system. The heightened security comes at a cost
35017+ of an increased chance of incompatibilities with rare software
35018+ on your machine. Since this security level enables PaX, you should
35019+ view <http://pax.grsecurity.net> and read about the PaX
35020+ project. While you are there, download chpax and run it on
35021+ binaries that cause problems with PaX. Also remember that
35022+ since the /proc restrictions are enabled, you must run your
35023+ identd as gid 1001. This security level enables the following
35024+ features in addition to those listed in the low and medium
35025+ security levels:
35026+
35027+ - Additional /proc restrictions
35028+ - Chmod restrictions in chroot
35029+ - No signals, ptrace, or viewing of processes outside of chroot
35030+ - Capability restrictions in chroot
35031+ - Deny fchdir out of chroot
35032+ - Priority restrictions in chroot
35033+ - Segmentation-based implementation of PaX
35034+ - Mprotect restrictions
35035+ - Removal of addresses from /proc/<pid>/[smaps|maps|stat]
35036+ - Kernel stack randomization
35037+ - Mount/unmount/remount logging
35038+ - Kernel symbol hiding
35039+ - Prevention of memory exhaustion-based exploits
35040+ - Hardening of module auto-loading
35041+ - Ptrace restrictions
35042+ - Restricted vm86 mode
35043+
35044+config GRKERNSEC_CUSTOM
35045+ bool "Custom"
35046+ help
35047+ If you say Y here, you will be able to configure every grsecurity
35048+ option, which allows you to enable many more features that aren't
35049+ covered in the basic security levels. These additional features
35050+ include TPE, socket restrictions, and the sysctl system for
35051+ grsecurity. It is advised that you read through the help for
35052+ each option to determine its usefulness in your situation.
35053+
35054+endchoice
35055+
35056+menu "Address Space Protection"
35057+depends on GRKERNSEC
35058+
35059+config GRKERNSEC_KMEM
35060+ bool "Deny writing to /dev/kmem, /dev/mem, and /dev/port"
35061+ help
35062+ If you say Y here, /dev/kmem and /dev/mem won't be allowed to
35063+ be written to via mmap or otherwise to modify the running kernel.
35064+ /dev/port will also not be allowed to be opened. If you have module
35065+ support disabled, enabling this will close up four ways that are
35066+ currently used to insert malicious code into the running kernel.
35067+ Even with all these features enabled, we still highly recommend that
35068+ you use the RBAC system, as it is still possible for an attacker to
35069+ modify the running kernel through privileged I/O granted by ioperm/iopl.
35070+ If you are not using XFree86, you may be able to stop this additional
35071+ case by enabling the 'Disable privileged I/O' option. Though nothing
35072+ legitimately writes to /dev/kmem, XFree86 does need to write to /dev/mem,
35073+ but only to video memory, which is the only writing we allow in this
35074+ case. If /dev/kmem or /dev/mem are mmaped without PROT_WRITE, they will
35075+ not be allowed to mprotect it with PROT_WRITE later.
35076+ It is highly recommended that you say Y here if you meet all the
35077+ conditions above.
35078+
35079+config GRKERNSEC_VM86
35080+ bool "Restrict VM86 mode"
35081+ depends on X86_32
35082+
35083+ help
35084+ If you say Y here, only processes with CAP_SYS_RAWIO will be able to
35085+ make use of a special execution mode on 32bit x86 processors called
35086+ Virtual 8086 (VM86) mode. XFree86 may need vm86 mode for certain
35087+ video cards and will still work with this option enabled. The purpose
35088+ of the option is to prevent exploitation of emulation errors in
35089+ virtualization of vm86 mode like the one discovered in VMWare in 2009.
35090+ Nearly all users should be able to enable this option.
35091+
35092+config GRKERNSEC_IO
35093+ bool "Disable privileged I/O"
35094+ depends on X86
35095+ select RTC_CLASS
35096+ select RTC_INTF_DEV
35097+ select RTC_DRV_CMOS
35098+
35099+ help
35100+ If you say Y here, all ioperm and iopl calls will return an error.
35101+ Ioperm and iopl can be used to modify the running kernel.
35102+ Unfortunately, some programs need this access to operate properly,
35103+ the most notable of which are XFree86 and hwclock. hwclock can be
35104+ remedied by having RTC support in the kernel, so real-time
35105+ clock support is enabled if this option is enabled, to ensure
35106+ that hwclock operates correctly. XFree86 still will not
35107+ operate correctly with this option enabled, so DO NOT CHOOSE Y
35108+ IF YOU USE XFree86. If you use XFree86 and you still want to
35109+ protect your kernel against modification, use the RBAC system.
35110+
35111+config GRKERNSEC_PROC_MEMMAP
35112+ bool "Remove addresses from /proc/<pid>/[smaps|maps|stat]"
35113+ default y if (PAX_NOEXEC || PAX_ASLR)
35114+ depends on PAX_NOEXEC || PAX_ASLR
35115+ help
35116+ If you say Y here, the /proc/<pid>/maps and /proc/<pid>/stat files will
35117+ give no information about the addresses of its mappings if
35118+ PaX features that rely on random addresses are enabled on the task.
35119+ If you use PaX it is greatly recommended that you say Y here as it
35120+ closes up a hole that makes the full ASLR useless for suid
35121+ binaries.
35122+
35123+config GRKERNSEC_BRUTE
35124+ bool "Deter exploit bruteforcing"
35125+ help
35126+ If you say Y here, attempts to bruteforce exploits against forking
35127+ daemons such as apache or sshd will be deterred. When a child of a
35128+ forking daemon is killed by PaX or crashes due to an illegal
35129+ instruction, the parent process will be delayed 30 seconds upon every
35130+ subsequent fork until the administrator is able to assess the
35131+ situation and restart the daemon. It is recommended that you also
35132+ enable signal logging in the auditing section so that logs are
35133+ generated when a process performs an illegal instruction.
35134+
35135+config GRKERNSEC_MODHARDEN
35136+ bool "Harden module auto-loading"
35137+ depends on MODULES
35138+ help
35139+ If you say Y here, module auto-loading in response to use of some
35140+ feature implemented by an unloaded module will be restricted to
35141+ root users. Enabling this option helps defend against attacks
35142+ by unprivileged users who abuse the auto-loading behavior to
35143+ cause a vulnerable module to load that is then exploited.
35144+
35145+ If this option prevents a legitimate use of auto-loading for a
35146+ non-root user, the administrator can execute modprobe manually
35147+ with the exact name of the module mentioned in the alert log.
35148+ Alternatively, the administrator can add the module to the list
35149+ of modules loaded at boot by modifying init scripts.
35150+
35151+ Modification of init scripts will most likely be needed on
35152+ Ubuntu servers with encrypted home directory support enabled,
35153+ as the first non-root user logging in will cause the ecb(aes),
35154+ ecb(aes)-all, cbc(aes), and cbc(aes)-all modules to be loaded.
35155+
35156+config GRKERNSEC_HIDESYM
35157+ bool "Hide kernel symbols"
35158+ help
35159+ If you say Y here, getting information on loaded modules, and
35160+ displaying all kernel symbols through a syscall will be restricted
35161+ to users with CAP_SYS_MODULE. For software compatibility reasons,
35162+ /proc/kallsyms will be restricted to the root user. The RBAC
35163+ system can hide that entry even from root. Note that this option
35164+ is only effective provided the following conditions are met:
35165+ 1) The kernel using grsecurity is not precompiled by some distribution
35166+ 2) You are using the RBAC system and hiding other files such as your
35167+ kernel image and System.map. Alternatively, enabling this option
35168+ causes the permissions on /boot, /lib/modules, and the kernel
35169+ source directory to change at compile time to prevent
35170+ reading by non-root users.
35171+ If the above conditions are met, this option will aid in providing a
35172+ useful protection against local kernel exploitation of overflows
35173+ and arbitrary read/write vulnerabilities.
35174+
35175+endmenu
35176+menu "Role Based Access Control Options"
35177+depends on GRKERNSEC
35178+
35179+config GRKERNSEC_NO_RBAC
35180+ bool "Disable RBAC system"
35181+ help
35182+ If you say Y here, the /dev/grsec device will be removed from the kernel,
35183+ preventing the RBAC system from being enabled. You should only say Y
35184+ here if you have no intention of using the RBAC system, so as to prevent
35185+ an attacker with root access from misusing the RBAC system to hide files
35186+ and processes when loadable module support and /dev/[k]mem have been
35187+ locked down.
35188+
35189+config GRKERNSEC_ACL_HIDEKERN
35190+ bool "Hide kernel processes"
35191+ help
35192+ If you say Y here, all kernel threads will be hidden to all
35193+ processes but those whose subject has the "view hidden processes"
35194+ flag.
35195+
35196+config GRKERNSEC_ACL_MAXTRIES
35197+ int "Maximum tries before password lockout"
35198+ default 3
35199+ help
35200+ This option enforces the maximum number of times a user can attempt
35201+ to authorize themselves with the grsecurity RBAC system before being
35202+ denied the ability to attempt authorization again for a specified time.
35203+ The lower the number, the harder it will be to brute-force a password.
35204+
35205+config GRKERNSEC_ACL_TIMEOUT
35206+ int "Time to wait after max password tries, in seconds"
35207+ default 30
35208+ help
35209+ This option specifies the time the user must wait after attempting to
35210+ authorize to the RBAC system with the maximum number of invalid
35211+ passwords. The higher the number, the harder it will be to brute-force
35212+ a password.
35213+
35214+endmenu
35215+menu "Filesystem Protections"
35216+depends on GRKERNSEC
35217+
35218+config GRKERNSEC_PROC
35219+ bool "Proc restrictions"
35220+ help
35221+ If you say Y here, the permissions of the /proc filesystem
35222+ will be altered to enhance system security and privacy. You MUST
35223+ choose either a user only restriction or a user and group restriction.
35224+ Depending upon the option you choose, you can either restrict users to
35225+ see only the processes they themselves run, or choose a group that can
35226+ view all processes and files normally restricted to root if you choose
35227+ the "restrict to user only" option. NOTE: If you're running identd as
35228+ a non-root user, you will have to run it as the group you specify here.
35229+
35230+config GRKERNSEC_PROC_USER
35231+ bool "Restrict /proc to user only"
35232+ depends on GRKERNSEC_PROC
35233+ help
35234+ If you say Y here, non-root users will only be able to view their own
35235+ processes, and restricts them from viewing network-related information,
35236+ and viewing kernel symbol and module information.
35237+
35238+config GRKERNSEC_PROC_USERGROUP
35239+ bool "Allow special group"
35240+ depends on GRKERNSEC_PROC && !GRKERNSEC_PROC_USER
35241+ help
35242+ If you say Y here, you will be able to select a group that will be
35243+ able to view all processes, network-related information, and
35244+ kernel and symbol information. This option is useful if you want
35245+ to run identd as a non-root user.
35246+
35247+config GRKERNSEC_PROC_GID
35248+ int "GID for special group"
35249+ depends on GRKERNSEC_PROC_USERGROUP
35250+ default 1001
35251+
35252+config GRKERNSEC_PROC_ADD
35253+ bool "Additional restrictions"
35254+ depends on GRKERNSEC_PROC_USER || GRKERNSEC_PROC_USERGROUP
35255+ help
35256+ If you say Y here, additional restrictions will be placed on
35257+ /proc that keep normal users from viewing device information and
35258+ slabinfo information that could be useful for exploits.
35259+
35260+config GRKERNSEC_LINK
35261+ bool "Linking restrictions"
35262+ help
35263+ If you say Y here, /tmp race exploits will be prevented, since users
35264+ will no longer be able to follow symlinks owned by other users in
35265+ world-writable +t directories (i.e. /tmp), unless the owner of the
35266+ symlink is the owner of the directory. users will also not be
35267+ able to hardlink to files they do not own. If the sysctl option is
35268+ enabled, a sysctl option with name "linking_restrictions" is created.
35269+
35270+config GRKERNSEC_FIFO
35271+ bool "FIFO restrictions"
35272+ help
35273+ If you say Y here, users will not be able to write to FIFOs they don't
35274+ own in world-writable +t directories (i.e. /tmp), unless the owner of
35275+ the FIFO is the same owner of the directory it's held in. If the sysctl
35276+ option is enabled, a sysctl option with name "fifo_restrictions" is
35277+ created.
35278+
35279+config GRKERNSEC_ROFS
35280+ bool "Runtime read-only mount protection"
35281+ help
35282+ If you say Y here, a sysctl option with name "romount_protect" will
35283+ be created. By setting this option to 1 at runtime, filesystems
35284+ will be protected in the following ways:
35285+ * No new writable mounts will be allowed
35286+ * Existing read-only mounts won't be able to be remounted read/write
35287+ * Write operations will be denied on all block devices
35288+ This option acts independently of grsec_lock: once it is set to 1,
35289+ it cannot be turned off. Therefore, please be mindful of the resulting
35290+ behavior if this option is enabled in an init script on a read-only
35291+ filesystem. This feature is mainly intended for secure embedded systems.
35292+
35293+config GRKERNSEC_CHROOT
35294+ bool "Chroot jail restrictions"
35295+ help
35296+ If you say Y here, you will be able to choose several options that will
35297+ make breaking out of a chrooted jail much more difficult. If you
35298+ encounter no software incompatibilities with the following options, it
35299+ is recommended that you enable each one.
35300+
35301+config GRKERNSEC_CHROOT_MOUNT
35302+ bool "Deny mounts"
35303+ depends on GRKERNSEC_CHROOT
35304+ help
35305+ If you say Y here, processes inside a chroot will not be able to
35306+ mount or remount filesystems. If the sysctl option is enabled, a
35307+ sysctl option with name "chroot_deny_mount" is created.
35308+
35309+config GRKERNSEC_CHROOT_DOUBLE
35310+ bool "Deny double-chroots"
35311+ depends on GRKERNSEC_CHROOT
35312+ help
35313+ If you say Y here, processes inside a chroot will not be able to chroot
35314+ again outside the chroot. This is a widely used method of breaking
35315+ out of a chroot jail and should not be allowed. If the sysctl
35316+ option is enabled, a sysctl option with name
35317+ "chroot_deny_chroot" is created.
35318+
35319+config GRKERNSEC_CHROOT_PIVOT
35320+ bool "Deny pivot_root in chroot"
35321+ depends on GRKERNSEC_CHROOT
35322+ help
35323+ If you say Y here, processes inside a chroot will not be able to use
35324+ a function called pivot_root() that was introduced in Linux 2.3.41. It
35325+ works similar to chroot in that it changes the root filesystem. This
35326+ function could be misused in a chrooted process to attempt to break out
35327+ of the chroot, and therefore should not be allowed. If the sysctl
35328+ option is enabled, a sysctl option with name "chroot_deny_pivot" is
35329+ created.
35330+
35331+config GRKERNSEC_CHROOT_CHDIR
35332+ bool "Enforce chdir(\"/\") on all chroots"
35333+ depends on GRKERNSEC_CHROOT
35334+ help
35335+ If you say Y here, the current working directory of all newly-chrooted
35336+ applications will be set to the the root directory of the chroot.
35337+ The man page on chroot(2) states:
35338+ Note that this call does not change the current working
35339+ directory, so that `.' can be outside the tree rooted at
35340+ `/'. In particular, the super-user can escape from a
35341+ `chroot jail' by doing `mkdir foo; chroot foo; cd ..'.
35342+
35343+ It is recommended that you say Y here, since it's not known to break
35344+ any software. If the sysctl option is enabled, a sysctl option with
35345+ name "chroot_enforce_chdir" is created.
35346+
35347+config GRKERNSEC_CHROOT_CHMOD
35348+ bool "Deny (f)chmod +s"
35349+ depends on GRKERNSEC_CHROOT
35350+ help
35351+ If you say Y here, processes inside a chroot will not be able to chmod
35352+ or fchmod files to make them have suid or sgid bits. This protects
35353+ against another published method of breaking a chroot. If the sysctl
35354+ option is enabled, a sysctl option with name "chroot_deny_chmod" is
35355+ created.
35356+
35357+config GRKERNSEC_CHROOT_FCHDIR
35358+ bool "Deny fchdir out of chroot"
35359+ depends on GRKERNSEC_CHROOT
35360+ help
35361+ If you say Y here, a well-known method of breaking chroots by fchdir'ing
35362+ to a file descriptor of the chrooting process that points to a directory
35363+ outside the filesystem will be stopped. If the sysctl option
35364+ is enabled, a sysctl option with name "chroot_deny_fchdir" is created.
35365+
35366+config GRKERNSEC_CHROOT_MKNOD
35367+ bool "Deny mknod"
35368+ depends on GRKERNSEC_CHROOT
35369+ help
35370+ If you say Y here, processes inside a chroot will not be allowed to
35371+ mknod. The problem with using mknod inside a chroot is that it
35372+ would allow an attacker to create a device entry that is the same
35373+ as one on the physical root of your system, which could range from
35374+ anything from the console device to a device for your harddrive (which
35375+ they could then use to wipe the drive or steal data). It is recommended
35376+ that you say Y here, unless you run into software incompatibilities.
35377+ If the sysctl option is enabled, a sysctl option with name
35378+ "chroot_deny_mknod" is created.
35379+
35380+config GRKERNSEC_CHROOT_SHMAT
35381+ bool "Deny shmat() out of chroot"
35382+ depends on GRKERNSEC_CHROOT
35383+ help
35384+ If you say Y here, processes inside a chroot will not be able to attach
35385+ to shared memory segments that were created outside of the chroot jail.
35386+ It is recommended that you say Y here. If the sysctl option is enabled,
35387+ a sysctl option with name "chroot_deny_shmat" is created.
35388+
35389+config GRKERNSEC_CHROOT_UNIX
35390+ bool "Deny access to abstract AF_UNIX sockets out of chroot"
35391+ depends on GRKERNSEC_CHROOT
35392+ help
35393+ If you say Y here, processes inside a chroot will not be able to
35394+ connect to abstract (meaning not belonging to a filesystem) Unix
35395+ domain sockets that were bound outside of a chroot. It is recommended
35396+ that you say Y here. If the sysctl option is enabled, a sysctl option
35397+ with name "chroot_deny_unix" is created.
35398+
35399+config GRKERNSEC_CHROOT_FINDTASK
35400+ bool "Protect outside processes"
35401+ depends on GRKERNSEC_CHROOT
35402+ help
35403+ If you say Y here, processes inside a chroot will not be able to
35404+ kill, send signals with fcntl, ptrace, capget, getpgid, setpgid,
35405+ getsid, or view any process outside of the chroot. If the sysctl
35406+ option is enabled, a sysctl option with name "chroot_findtask" is
35407+ created.
35408+
35409+config GRKERNSEC_CHROOT_NICE
35410+ bool "Restrict priority changes"
35411+ depends on GRKERNSEC_CHROOT
35412+ help
35413+ If you say Y here, processes inside a chroot will not be able to raise
35414+ the priority of processes in the chroot, or alter the priority of
35415+ processes outside the chroot. This provides more security than simply
35416+ removing CAP_SYS_NICE from the process' capability set. If the
35417+ sysctl option is enabled, a sysctl option with name "chroot_restrict_nice"
35418+ is created.
35419+
35420+config GRKERNSEC_CHROOT_SYSCTL
35421+ bool "Deny sysctl writes"
35422+ depends on GRKERNSEC_CHROOT
35423+ help
35424+ If you say Y here, an attacker in a chroot will not be able to
35425+ write to sysctl entries, either by sysctl(2) or through a /proc
35426+ interface. It is strongly recommended that you say Y here. If the
35427+ sysctl option is enabled, a sysctl option with name
35428+ "chroot_deny_sysctl" is created.
35429+
35430+config GRKERNSEC_CHROOT_CAPS
35431+ bool "Capability restrictions"
35432+ depends on GRKERNSEC_CHROOT
35433+ help
35434+ If you say Y here, the capabilities on all root processes within a
35435+ chroot jail will be lowered to stop module insertion, raw i/o,
35436+ system and net admin tasks, rebooting the system, modifying immutable
35437+ files, modifying IPC owned by another, and changing the system time.
35438+ This is left an option because it can break some apps. Disable this
35439+ if your chrooted apps are having problems performing those kinds of
35440+ tasks. If the sysctl option is enabled, a sysctl option with
35441+ name "chroot_caps" is created.
35442+
35443+endmenu
35444+menu "Kernel Auditing"
35445+depends on GRKERNSEC
35446+
35447+config GRKERNSEC_AUDIT_GROUP
35448+ bool "Single group for auditing"
35449+ help
35450+ If you say Y here, the exec, chdir, and (un)mount logging features
35451+ will only operate on a group you specify. This option is recommended
35452+ if you only want to watch certain users instead of having a large
35453+ amount of logs from the entire system. If the sysctl option is enabled,
35454+ a sysctl option with name "audit_group" is created.
35455+
35456+config GRKERNSEC_AUDIT_GID
35457+ int "GID for auditing"
35458+ depends on GRKERNSEC_AUDIT_GROUP
35459+ default 1007
35460+
35461+config GRKERNSEC_EXECLOG
35462+ bool "Exec logging"
35463+ help
35464+ If you say Y here, all execve() calls will be logged (since the
35465+ other exec*() calls are frontends to execve(), all execution
35466+ will be logged). Useful for shell-servers that like to keep track
35467+ of their users. If the sysctl option is enabled, a sysctl option with
35468+ name "exec_logging" is created.
35469+ WARNING: This option when enabled will produce a LOT of logs, especially
35470+ on an active system.
35471+
35472+config GRKERNSEC_RESLOG
35473+ bool "Resource logging"
35474+ help
35475+ If you say Y here, all attempts to overstep resource limits will
35476+ be logged with the resource name, the requested size, and the current
35477+ limit. It is highly recommended that you say Y here. If the sysctl
35478+ option is enabled, a sysctl option with name "resource_logging" is
35479+ created. If the RBAC system is enabled, the sysctl value is ignored.
35480+
35481+config GRKERNSEC_CHROOT_EXECLOG
35482+ bool "Log execs within chroot"
35483+ help
35484+ If you say Y here, all executions inside a chroot jail will be logged
35485+ to syslog. This can cause a large amount of logs if certain
35486+ applications (eg. djb's daemontools) are installed on the system, and
35487+ is therefore left as an option. If the sysctl option is enabled, a
35488+ sysctl option with name "chroot_execlog" is created.
35489+
35490+config GRKERNSEC_AUDIT_PTRACE
35491+ bool "Ptrace logging"
35492+ help
35493+ If you say Y here, all attempts to attach to a process via ptrace
35494+ will be logged. If the sysctl option is enabled, a sysctl option
35495+ with name "audit_ptrace" is created.
35496+
35497+config GRKERNSEC_AUDIT_CHDIR
35498+ bool "Chdir logging"
35499+ help
35500+ If you say Y here, all chdir() calls will be logged. If the sysctl
35501+ option is enabled, a sysctl option with name "audit_chdir" is created.
35502+
35503+config GRKERNSEC_AUDIT_MOUNT
35504+ bool "(Un)Mount logging"
35505+ help
35506+ If you say Y here, all mounts and unmounts will be logged. If the
35507+ sysctl option is enabled, a sysctl option with name "audit_mount" is
35508+ created.
35509+
35510+config GRKERNSEC_SIGNAL
35511+ bool "Signal logging"
35512+ help
35513+ If you say Y here, certain important signals will be logged, such as
35514+ SIGSEGV, which will as a result inform you of when a error in a program
35515+ occurred, which in some cases could mean a possible exploit attempt.
35516+ If the sysctl option is enabled, a sysctl option with name
35517+ "signal_logging" is created.
35518+
35519+config GRKERNSEC_FORKFAIL
35520+ bool "Fork failure logging"
35521+ help
35522+ If you say Y here, all failed fork() attempts will be logged.
35523+ This could suggest a fork bomb, or someone attempting to overstep
35524+ their process limit. If the sysctl option is enabled, a sysctl option
35525+ with name "forkfail_logging" is created.
35526+
35527+config GRKERNSEC_TIME
35528+ bool "Time change logging"
35529+ help
35530+ If you say Y here, any changes of the system clock will be logged.
35531+ If the sysctl option is enabled, a sysctl option with name
35532+ "timechange_logging" is created.
35533+
35534+config GRKERNSEC_PROC_IPADDR
35535+ bool "/proc/<pid>/ipaddr support"
35536+ help
35537+ If you say Y here, a new entry will be added to each /proc/<pid>
35538+ directory that contains the IP address of the person using the task.
35539+ The IP is carried across local TCP and AF_UNIX stream sockets.
35540+ This information can be useful for IDS/IPSes to perform remote response
35541+ to a local attack. The entry is readable by only the owner of the
35542+ process (and root if he has CAP_DAC_OVERRIDE, which can be removed via
35543+ the RBAC system), and thus does not create privacy concerns.
35544+
35545+config GRKERNSEC_AUDIT_TEXTREL
35546+ bool 'ELF text relocations logging (READ HELP)'
35547+ depends on PAX_MPROTECT
35548+ help
35549+ If you say Y here, text relocations will be logged with the filename
35550+ of the offending library or binary. The purpose of the feature is
35551+ to help Linux distribution developers get rid of libraries and
35552+ binaries that need text relocations which hinder the future progress
35553+ of PaX. Only Linux distribution developers should say Y here, and
35554+ never on a production machine, as this option creates an information
35555+ leak that could aid an attacker in defeating the randomization of
35556+ a single memory region. If the sysctl option is enabled, a sysctl
35557+ option with name "audit_textrel" is created.
35558+
35559+endmenu
35560+
35561+menu "Executable Protections"
35562+depends on GRKERNSEC
35563+
35564+config GRKERNSEC_EXECVE
35565+ bool "Enforce RLIMIT_NPROC on execs"
35566+ help
35567+ If you say Y here, users with a resource limit on processes will
35568+ have the value checked during execve() calls. The current system
35569+ only checks the system limit during fork() calls. If the sysctl option
35570+ is enabled, a sysctl option with name "execve_limiting" is created.
35571+
35572+config GRKERNSEC_DMESG
35573+ bool "Dmesg(8) restriction"
35574+ help
35575+ If you say Y here, non-root users will not be able to use dmesg(8)
35576+ to view up to the last 4kb of messages in the kernel's log buffer.
35577+ If the sysctl option is enabled, a sysctl option with name "dmesg" is
35578+ created.
35579+
35580+config GRKERNSEC_HARDEN_PTRACE
35581+ bool "Deter ptrace-based process snooping"
35582+ help
35583+ If you say Y here, TTY sniffers and other malicious monitoring
35584+ programs implemented through ptrace will be defeated. If you
35585+ have been using the RBAC system, this option has already been
35586+ enabled for several years for all users, with the ability to make
35587+ fine-grained exceptions.
35588+
35589+ This option only affects the ability of non-root users to ptrace
35590+ processes that are not a descendent of the ptracing process.
35591+ This means that strace ./binary and gdb ./binary will still work,
35592+ but attaching to arbitrary processes will not. If the sysctl
35593+ option is enabled, a sysctl option with name "harden_ptrace" is
35594+ created.
35595+
35596+config GRKERNSEC_TPE
35597+ bool "Trusted Path Execution (TPE)"
35598+ help
35599+ If you say Y here, you will be able to choose a gid to add to the
35600+ supplementary groups of users you want to mark as "untrusted."
35601+ These users will not be able to execute any files that are not in
35602+ root-owned directories writable only by root. If the sysctl option
35603+ is enabled, a sysctl option with name "tpe" is created.
35604+
35605+config GRKERNSEC_TPE_ALL
35606+ bool "Partially restrict non-root users"
35607+ depends on GRKERNSEC_TPE
35608+ help
35609+ If you say Y here, All non-root users other than the ones in the
35610+ group specified in the main TPE option will only be allowed to
35611+ execute files in directories they own that are not group or
35612+ world-writable, or in directories owned by root and writable only by
35613+ root. If the sysctl option is enabled, a sysctl option with name
35614+ "tpe_restrict_all" is created.
35615+
35616+config GRKERNSEC_TPE_INVERT
35617+ bool "Invert GID option"
35618+ depends on GRKERNSEC_TPE
35619+ help
35620+ If you say Y here, the group you specify in the TPE configuration will
35621+ decide what group TPE restrictions will be *disabled* for. This
35622+ option is useful if you want TPE restrictions to be applied to most
35623+ users on the system.
35624+
35625+config GRKERNSEC_TPE_GID
35626+ int "GID for untrusted users"
35627+ depends on GRKERNSEC_TPE && !GRKERNSEC_TPE_INVERT
35628+ default 1005
35629+ help
35630+ If you have selected the "Invert GID option" above, setting this
35631+ GID determines what group TPE restrictions will be *disabled* for.
35632+ If you have not selected the "Invert GID option" above, setting this
35633+ GID determines what group TPE restrictions will be *enabled* for.
35634+ If the sysctl option is enabled, a sysctl option with name "tpe_gid"
35635+ is created.
35636+
35637+config GRKERNSEC_TPE_GID
35638+ int "GID for trusted users"
35639+ depends on GRKERNSEC_TPE && GRKERNSEC_TPE_INVERT
35640+ default 1005
35641+ help
35642+ If you have selected the "Invert GID option" above, setting this
35643+ GID determines what group TPE restrictions will be *disabled* for.
35644+ If you have not selected the "Invert GID option" above, setting this
35645+ GID determines what group TPE restrictions will be *enabled* for.
35646+ If the sysctl option is enabled, a sysctl option with name "tpe_gid"
35647+ is created.
35648+
35649+endmenu
35650+menu "Network Protections"
35651+depends on GRKERNSEC
35652+
35653+config GRKERNSEC_RANDNET
35654+ bool "Larger entropy pools"
35655+ help
35656+ If you say Y here, the entropy pools used for many features of Linux
35657+ and grsecurity will be doubled in size. Since several grsecurity
35658+ features use additional randomness, it is recommended that you say Y
35659+ here. Saying Y here has a similar effect as modifying
35660+ /proc/sys/kernel/random/poolsize.
35661+ 35123+
35662+config GRKERNSEC_BLACKHOLE 35124+static unsigned long alloc_stack_next = 1;
35663+ bool "TCP/UDP blackhole and LAST_ACK DoS prevention" 35125+static unsigned long alloc_stack_size = 1;
35664+ help 35126+static void **alloc_stack;
35665+ If you say Y here, neither TCP resets nor ICMP
35666+ destination-unreachable packets will be sent in response to packets
35667+ sent to ports for which no associated listening process exists.
35668+ This feature supports both IPV4 and IPV6 and exempts the
35669+ loopback interface from blackholing. Enabling this feature
35670+ makes a host more resilient to DoS attacks and reduces network
35671+ visibility against scanners.
35672+ 35127+
35673+ The blackhole feature as-implemented is equivalent to the FreeBSD 35128+static __inline__ int
35674+ blackhole feature, as it prevents RST responses to all packets, not 35129+alloc_pop(void)
35675+ just SYNs. Under most application behavior this causes no 35130+{
35676+ problems, but applications (like haproxy) may not close certain 35131+ if (alloc_stack_next == 1)
35677+ connections in a way that cleanly terminates them on the remote 35132+ return 0;
35678+ end, leaving the remote host in LAST_ACK state. Because of this
35679+ side-effect and to prevent intentional LAST_ACK DoSes, this
35680+ feature also adds automatic mitigation against such attacks.
35681+ The mitigation drastically reduces the amount of time a socket
35682+ can spend in LAST_ACK state. If you're using haproxy and not
35683+ all servers it connects to have this option enabled, consider
35684+ disabling this feature on the haproxy host.
35685+ 35133+
35686+ If the sysctl option is enabled, two sysctl options with names 35134+ kfree(alloc_stack[alloc_stack_next - 2]);
35687+ "ip_blackhole" and "lastack_retries" will be created.
35688+ While "ip_blackhole" takes the standard zero/non-zero on/off
35689+ toggle, "lastack_retries" uses the same kinds of values as
35690+ "tcp_retries1" and "tcp_retries2". The default value of 4
35691+ prevents a socket from lasting more than 45 seconds in LAST_ACK
35692+ state.
35693+ 35135+
35694+config GRKERNSEC_SOCKET 35136+ alloc_stack_next--;
35695+ bool "Socket restrictions"
35696+ help
35697+ If you say Y here, you will be able to choose from several options.
35698+ If you assign a GID on your system and add it to the supplementary
35699+ groups of users you want to restrict socket access to, this patch
35700+ will perform up to three things, based on the option(s) you choose.
35701+ 35137+
35702+config GRKERNSEC_SOCKET_ALL 35138+ return 1;
35703+ bool "Deny any sockets to group" 35139+}
35704+ depends on GRKERNSEC_SOCKET
35705+ help
35706+ If you say Y here, you will be able to choose a GID of whose users will
35707+ be unable to connect to other hosts from your machine or run server
35708+ applications from your machine. If the sysctl option is enabled, a
35709+ sysctl option with name "socket_all" is created.
35710+ 35140+
35711+config GRKERNSEC_SOCKET_ALL_GID 35141+static __inline__ int
35712+ int "GID to deny all sockets for" 35142+alloc_push(void *buf)
35713+ depends on GRKERNSEC_SOCKET_ALL 35143+{
35714+ default 1004 35144+ if (alloc_stack_next >= alloc_stack_size)
35715+ help 35145+ return 1;
35716+ Here you can choose the GID to disable socket access for. Remember to
35717+ add the users you want socket access disabled for to the GID
35718+ specified here. If the sysctl option is enabled, a sysctl option
35719+ with name "socket_all_gid" is created.
35720+ 35146+
35721+config GRKERNSEC_SOCKET_CLIENT 35147+ alloc_stack[alloc_stack_next - 1] = buf;
35722+ bool "Deny client sockets to group"
35723+ depends on GRKERNSEC_SOCKET
35724+ help
35725+ If you say Y here, you will be able to choose a GID of whose users will
35726+ be unable to connect to other hosts from your machine, but will be
35727+ able to run servers. If this option is enabled, all users in the group
35728+ you specify will have to use passive mode when initiating ftp transfers
35729+ from the shell on your machine. If the sysctl option is enabled, a
35730+ sysctl option with name "socket_client" is created.
35731+ 35148+
35732+config GRKERNSEC_SOCKET_CLIENT_GID 35149+ alloc_stack_next++;
35733+ int "GID to deny client sockets for"
35734+ depends on GRKERNSEC_SOCKET_CLIENT
35735+ default 1003
35736+ help
35737+ Here you can choose the GID to disable client socket access for.
35738+ Remember to add the users you want client socket access disabled for to
35739+ the GID specified here. If the sysctl option is enabled, a sysctl
35740+ option with name "socket_client_gid" is created.
35741+ 35150+
35742+config GRKERNSEC_SOCKET_SERVER 35151+ return 0;
35743+ bool "Deny server sockets to group" 35152+}
35744+ depends on GRKERNSEC_SOCKET
35745+ help
35746+ If you say Y here, you will be able to choose a GID of whose users will
35747+ be unable to run server applications from your machine. If the sysctl
35748+ option is enabled, a sysctl option with name "socket_server" is created.
35749+ 35153+
35750+config GRKERNSEC_SOCKET_SERVER_GID 35154+void *
35751+ int "GID to deny server sockets for" 35155+acl_alloc(unsigned long len)
35752+ depends on GRKERNSEC_SOCKET_SERVER 35156+{
35753+ default 1002 35157+ void *ret = NULL;
35754+ help
35755+ Here you can choose the GID to disable server socket access for.
35756+ Remember to add the users you want server socket access disabled for to
35757+ the GID specified here. If the sysctl option is enabled, a sysctl
35758+ option with name "socket_server_gid" is created.
35759+ 35158+
35760+endmenu 35159+ if (!len || len > PAGE_SIZE)
35761+menu "Sysctl support" 35160+ goto out;
35762+depends on GRKERNSEC && SYSCTL
35763+ 35161+
35764+config GRKERNSEC_SYSCTL 35162+ ret = kmalloc(len, GFP_KERNEL);
35765+ bool "Sysctl support"
35766+ help
35767+ If you say Y here, you will be able to change the options that
35768+ grsecurity runs with at bootup, without having to recompile your
35769+ kernel. You can echo values to files in /proc/sys/kernel/grsecurity
35770+ to enable (1) or disable (0) various features. All the sysctl entries
35771+ are mutable until the "grsec_lock" entry is set to a non-zero value.
35772+ All features enabled in the kernel configuration are disabled at boot
35773+ if you do not say Y to the "Turn on features by default" option.
35774+ All options should be set at startup, and the grsec_lock entry should
35775+ be set to a non-zero value after all the options are set.
35776+ *THIS IS EXTREMELY IMPORTANT*
35777+ 35163+
35778+config GRKERNSEC_SYSCTL_DISTRO 35164+ if (ret) {
35779+ bool "Extra sysctl support for distro makers (READ HELP)" 35165+ if (alloc_push(ret)) {
35780+ depends on GRKERNSEC_SYSCTL && GRKERNSEC_IO 35166+ kfree(ret);
35781+ help 35167+ ret = NULL;
35782+ If you say Y here, additional sysctl options will be created 35168+ }
35783+ for features that affect processes running as root. Therefore, 35169+ }
35784+ it is critical when using this option that the grsec_lock entry be
35785+ enabled after boot. Only distros with prebuilt kernel packages
35786+ with this option enabled that can ensure grsec_lock is enabled
35787+ after boot should use this option.
35788+ *Failure to set grsec_lock after boot makes all grsec features
35789+ this option covers useless*
35790+ 35170+
35791+ Currently this option creates the following sysctl entries: 35171+out:
35792+ "Disable Privileged I/O": "disable_priv_io" 35172+ return ret;
35173+}
35793+ 35174+
35794+config GRKERNSEC_SYSCTL_ON 35175+void *
35795+ bool "Turn on features by default" 35176+acl_alloc_num(unsigned long num, unsigned long len)
35796+ depends on GRKERNSEC_SYSCTL 35177+{
35797+ help 35178+ if (!len || (num > (PAGE_SIZE / len)))
35798+ If you say Y here, instead of having all features enabled in the 35179+ return NULL;
35799+ kernel configuration disabled at boot time, the features will be
35800+ enabled at boot time. It is recommended you say Y here unless
35801+ there is some reason you would want all sysctl-tunable features to
35802+ be disabled by default. As mentioned elsewhere, it is important
35803+ to enable the grsec_lock entry once you have finished modifying
35804+ the sysctl entries.
35805+ 35180+
35806+endmenu 35181+ return acl_alloc(num * len);
35807+menu "Logging Options" 35182+}
35808+depends on GRKERNSEC
35809+ 35183+
35810+config GRKERNSEC_FLOODTIME 35184+void
35811+ int "Seconds in between log messages (minimum)" 35185+acl_free_all(void)
35812+ default 10 35186+{
35813+ help 35187+ if (gr_acl_is_enabled() || !alloc_stack)
35814+ This option allows you to enforce the number of seconds between 35188+ return;
35815+ grsecurity log messages. The default should be suitable for most
35816+ people, however, if you choose to change it, choose a value small enough
35817+ to allow informative logs to be produced, but large enough to
35818+ prevent flooding.
35819+ 35189+
35820+config GRKERNSEC_FLOODBURST 35190+ while (alloc_pop()) ;
35821+ int "Number of messages in a burst (maximum)"
35822+ default 4
35823+ help
35824+ This option allows you to choose the maximum number of messages allowed
35825+ within the flood time interval you chose in a separate option. The
35826+ default should be suitable for most people, however if you find that
35827+ many of your logs are being interpreted as flooding, you may want to
35828+ raise this value.
35829+ 35191+
35830+endmenu 35192+ if (alloc_stack) {
35193+ if ((alloc_stack_size * sizeof (void *)) <= PAGE_SIZE)
35194+ kfree(alloc_stack);
35195+ else
35196+ vfree(alloc_stack);
35197+ }
35831+ 35198+
35832+endmenu 35199+ alloc_stack = NULL;
35833diff -urNp linux-2.6.32.21/grsecurity/Makefile linux-2.6.32.21/grsecurity/Makefile 35200+ alloc_stack_size = 1;
35834--- linux-2.6.32.21/grsecurity/Makefile 1969-12-31 19:00:00.000000000 -0500 35201+ alloc_stack_next = 1;
35835+++ linux-2.6.32.21/grsecurity/Makefile 2010-09-13 08:10:10.000000000 -0400
35836@@ -0,0 +1,29 @@
35837+# grsecurity's ACL system was originally written in 2001 by Michael Dalton
35838+# during 2001-2009 it has been completely redesigned by Brad Spengler
35839+# into an RBAC system
35840+#
35841+# All code in this directory and various hooks inserted throughout the kernel
35842+# are copyright Brad Spengler - Open Source Security, Inc., and released
35843+# under the GPL v2 or higher
35844+ 35202+
35845+obj-y = grsec_chdir.o grsec_chroot.o grsec_exec.o grsec_fifo.o grsec_fork.o \ 35203+ return;
35846+ grsec_mount.o grsec_sig.o grsec_sock.o grsec_sysctl.o \ 35204+}
35847+ grsec_time.o grsec_tpe.o grsec_link.o grsec_textrel.o grsec_ptrace.o
35848+ 35205+
35849+obj-$(CONFIG_GRKERNSEC) += grsec_init.o grsum.o gracl.o gracl_ip.o gracl_segv.o \ 35206+int
35850+ gracl_cap.o gracl_alloc.o gracl_shm.o grsec_mem.o gracl_fs.o \ 35207+acl_alloc_stack_init(unsigned long size)
35851+ gracl_learn.o grsec_log.o 35208+{
35852+obj-$(CONFIG_GRKERNSEC_RESLOG) += gracl_res.o 35209+ if ((size * sizeof (void *)) <= PAGE_SIZE)
35210+ alloc_stack =
35211+ (void **) kmalloc(size * sizeof (void *), GFP_KERNEL);
35212+ else
35213+ alloc_stack = (void **) vmalloc(size * sizeof (void *));
35853+ 35214+
35854+ifndef CONFIG_GRKERNSEC 35215+ alloc_stack_size = size;
35855+obj-y += grsec_disabled.o
35856+endif
35857+ 35216+
35858+ifdef CONFIG_GRKERNSEC_HIDESYM 35217+ if (!alloc_stack)
35859+extra-y := grsec_hidesym.o 35218+ return 0;
35860+$(obj)/grsec_hidesym.o: 35219+ else
35861+ @-chmod -f 500 /boot 35220+ return 1;
35862+ @-chmod -f 500 /lib/modules 35221+}
35863+ @-chmod -f 700 .
35864+ @echo ' grsec: protected kernel image paths'
35865+endif
35866diff -urNp linux-2.6.32.21/grsecurity/gracl.c linux-2.6.32.21/grsecurity/gracl.c 35222diff -urNp linux-2.6.32.21/grsecurity/gracl.c linux-2.6.32.21/grsecurity/gracl.c
35867--- linux-2.6.32.21/grsecurity/gracl.c 1969-12-31 19:00:00.000000000 -0500 35223--- linux-2.6.32.21/grsecurity/gracl.c 1969-12-31 19:00:00.000000000 -0500
35868+++ linux-2.6.32.21/grsecurity/gracl.c 2010-09-13 08:10:10.000000000 -0400 35224+++ linux-2.6.32.21/grsecurity/gracl.c 2010-09-04 15:54:52.000000000 -0400
35869@@ -0,0 +1,3919 @@ 35225@@ -0,0 +1,3919 @@
35870+#include <linux/kernel.h> 35226+#include <linux/kernel.h>
35871+#include <linux/module.h> 35227+#include <linux/module.h>
@@ -39786,118 +39142,9 @@ diff -urNp linux-2.6.32.21/grsecurity/gracl.c linux-2.6.32.21/grsecurity/gracl.c
39786+EXPORT_SYMBOL(gr_check_group_change); 39142+EXPORT_SYMBOL(gr_check_group_change);
39787+#endif 39143+#endif
39788+ 39144+
39789diff -urNp linux-2.6.32.21/grsecurity/gracl_alloc.c linux-2.6.32.21/grsecurity/gracl_alloc.c
39790--- linux-2.6.32.21/grsecurity/gracl_alloc.c 1969-12-31 19:00:00.000000000 -0500
39791+++ linux-2.6.32.21/grsecurity/gracl_alloc.c 2010-09-13 08:10:10.000000000 -0400
39792@@ -0,0 +1,105 @@
39793+#include <linux/kernel.h>
39794+#include <linux/mm.h>
39795+#include <linux/slab.h>
39796+#include <linux/vmalloc.h>
39797+#include <linux/gracl.h>
39798+#include <linux/grsecurity.h>
39799+
39800+static unsigned long alloc_stack_next = 1;
39801+static unsigned long alloc_stack_size = 1;
39802+static void **alloc_stack;
39803+
39804+static __inline__ int
39805+alloc_pop(void)
39806+{
39807+ if (alloc_stack_next == 1)
39808+ return 0;
39809+
39810+ kfree(alloc_stack[alloc_stack_next - 2]);
39811+
39812+ alloc_stack_next--;
39813+
39814+ return 1;
39815+}
39816+
39817+static __inline__ int
39818+alloc_push(void *buf)
39819+{
39820+ if (alloc_stack_next >= alloc_stack_size)
39821+ return 1;
39822+
39823+ alloc_stack[alloc_stack_next - 1] = buf;
39824+
39825+ alloc_stack_next++;
39826+
39827+ return 0;
39828+}
39829+
39830+void *
39831+acl_alloc(unsigned long len)
39832+{
39833+ void *ret = NULL;
39834+
39835+ if (!len || len > PAGE_SIZE)
39836+ goto out;
39837+
39838+ ret = kmalloc(len, GFP_KERNEL);
39839+
39840+ if (ret) {
39841+ if (alloc_push(ret)) {
39842+ kfree(ret);
39843+ ret = NULL;
39844+ }
39845+ }
39846+
39847+out:
39848+ return ret;
39849+}
39850+
39851+void *
39852+acl_alloc_num(unsigned long num, unsigned long len)
39853+{
39854+ if (!len || (num > (PAGE_SIZE / len)))
39855+ return NULL;
39856+
39857+ return acl_alloc(num * len);
39858+}
39859+
39860+void
39861+acl_free_all(void)
39862+{
39863+ if (gr_acl_is_enabled() || !alloc_stack)
39864+ return;
39865+
39866+ while (alloc_pop()) ;
39867+
39868+ if (alloc_stack) {
39869+ if ((alloc_stack_size * sizeof (void *)) <= PAGE_SIZE)
39870+ kfree(alloc_stack);
39871+ else
39872+ vfree(alloc_stack);
39873+ }
39874+
39875+ alloc_stack = NULL;
39876+ alloc_stack_size = 1;
39877+ alloc_stack_next = 1;
39878+
39879+ return;
39880+}
39881+
39882+int
39883+acl_alloc_stack_init(unsigned long size)
39884+{
39885+ if ((size * sizeof (void *)) <= PAGE_SIZE)
39886+ alloc_stack =
39887+ (void **) kmalloc(size * sizeof (void *), GFP_KERNEL);
39888+ else
39889+ alloc_stack = (void **) vmalloc(size * sizeof (void *));
39890+
39891+ alloc_stack_size = size;
39892+
39893+ if (!alloc_stack)
39894+ return 0;
39895+ else
39896+ return 1;
39897+}
39898diff -urNp linux-2.6.32.21/grsecurity/gracl_cap.c linux-2.6.32.21/grsecurity/gracl_cap.c 39145diff -urNp linux-2.6.32.21/grsecurity/gracl_cap.c linux-2.6.32.21/grsecurity/gracl_cap.c
39899--- linux-2.6.32.21/grsecurity/gracl_cap.c 1969-12-31 19:00:00.000000000 -0500 39146--- linux-2.6.32.21/grsecurity/gracl_cap.c 1969-12-31 19:00:00.000000000 -0500
39900+++ linux-2.6.32.21/grsecurity/gracl_cap.c 2010-09-13 08:10:10.000000000 -0400 39147+++ linux-2.6.32.21/grsecurity/gracl_cap.c 2010-09-04 15:54:52.000000000 -0400
39901@@ -0,0 +1,138 @@ 39148@@ -0,0 +1,138 @@
39902+#include <linux/kernel.h> 39149+#include <linux/kernel.h>
39903+#include <linux/module.h> 39150+#include <linux/module.h>
@@ -40039,7 +39286,7 @@ diff -urNp linux-2.6.32.21/grsecurity/gracl_cap.c linux-2.6.32.21/grsecurity/gra
40039+ 39286+
40040diff -urNp linux-2.6.32.21/grsecurity/gracl_fs.c linux-2.6.32.21/grsecurity/gracl_fs.c 39287diff -urNp linux-2.6.32.21/grsecurity/gracl_fs.c linux-2.6.32.21/grsecurity/gracl_fs.c
40041--- linux-2.6.32.21/grsecurity/gracl_fs.c 1969-12-31 19:00:00.000000000 -0500 39288--- linux-2.6.32.21/grsecurity/gracl_fs.c 1969-12-31 19:00:00.000000000 -0500
40042+++ linux-2.6.32.21/grsecurity/gracl_fs.c 2010-09-13 08:10:10.000000000 -0400 39289+++ linux-2.6.32.21/grsecurity/gracl_fs.c 2010-09-04 15:54:52.000000000 -0400
40043@@ -0,0 +1,424 @@ 39290@@ -0,0 +1,424 @@
40044+#include <linux/kernel.h> 39291+#include <linux/kernel.h>
40045+#include <linux/sched.h> 39292+#include <linux/sched.h>
@@ -40467,7 +39714,7 @@ diff -urNp linux-2.6.32.21/grsecurity/gracl_fs.c linux-2.6.32.21/grsecurity/grac
40467+} 39714+}
40468diff -urNp linux-2.6.32.21/grsecurity/gracl_ip.c linux-2.6.32.21/grsecurity/gracl_ip.c 39715diff -urNp linux-2.6.32.21/grsecurity/gracl_ip.c linux-2.6.32.21/grsecurity/gracl_ip.c
40469--- linux-2.6.32.21/grsecurity/gracl_ip.c 1969-12-31 19:00:00.000000000 -0500 39716--- linux-2.6.32.21/grsecurity/gracl_ip.c 1969-12-31 19:00:00.000000000 -0500
40470+++ linux-2.6.32.21/grsecurity/gracl_ip.c 2010-09-13 08:10:10.000000000 -0400 39717+++ linux-2.6.32.21/grsecurity/gracl_ip.c 2010-09-04 15:54:52.000000000 -0400
40471@@ -0,0 +1,339 @@ 39718@@ -0,0 +1,339 @@
40472+#include <linux/kernel.h> 39719+#include <linux/kernel.h>
40473+#include <asm/uaccess.h> 39720+#include <asm/uaccess.h>
@@ -40810,7 +40057,7 @@ diff -urNp linux-2.6.32.21/grsecurity/gracl_ip.c linux-2.6.32.21/grsecurity/grac
40810+} 40057+}
40811diff -urNp linux-2.6.32.21/grsecurity/gracl_learn.c linux-2.6.32.21/grsecurity/gracl_learn.c 40058diff -urNp linux-2.6.32.21/grsecurity/gracl_learn.c linux-2.6.32.21/grsecurity/gracl_learn.c
40812--- linux-2.6.32.21/grsecurity/gracl_learn.c 1969-12-31 19:00:00.000000000 -0500 40059--- linux-2.6.32.21/grsecurity/gracl_learn.c 1969-12-31 19:00:00.000000000 -0500
40813+++ linux-2.6.32.21/grsecurity/gracl_learn.c 2010-09-13 08:10:10.000000000 -0400 40060+++ linux-2.6.32.21/grsecurity/gracl_learn.c 2010-09-04 15:54:52.000000000 -0400
40814@@ -0,0 +1,211 @@ 40061@@ -0,0 +1,211 @@
40815+#include <linux/kernel.h> 40062+#include <linux/kernel.h>
40816+#include <linux/mm.h> 40063+#include <linux/mm.h>
@@ -41025,7 +40272,7 @@ diff -urNp linux-2.6.32.21/grsecurity/gracl_learn.c linux-2.6.32.21/grsecurity/g
41025+}; 40272+};
41026diff -urNp linux-2.6.32.21/grsecurity/gracl_res.c linux-2.6.32.21/grsecurity/gracl_res.c 40273diff -urNp linux-2.6.32.21/grsecurity/gracl_res.c linux-2.6.32.21/grsecurity/gracl_res.c
41027--- linux-2.6.32.21/grsecurity/gracl_res.c 1969-12-31 19:00:00.000000000 -0500 40274--- linux-2.6.32.21/grsecurity/gracl_res.c 1969-12-31 19:00:00.000000000 -0500
41028+++ linux-2.6.32.21/grsecurity/gracl_res.c 2010-09-13 08:10:10.000000000 -0400 40275+++ linux-2.6.32.21/grsecurity/gracl_res.c 2010-09-04 15:54:52.000000000 -0400
41029@@ -0,0 +1,67 @@ 40276@@ -0,0 +1,67 @@
41030+#include <linux/kernel.h> 40277+#include <linux/kernel.h>
41031+#include <linux/sched.h> 40278+#include <linux/sched.h>
@@ -41096,7 +40343,7 @@ diff -urNp linux-2.6.32.21/grsecurity/gracl_res.c linux-2.6.32.21/grsecurity/gra
41096+} 40343+}
41097diff -urNp linux-2.6.32.21/grsecurity/gracl_segv.c linux-2.6.32.21/grsecurity/gracl_segv.c 40344diff -urNp linux-2.6.32.21/grsecurity/gracl_segv.c linux-2.6.32.21/grsecurity/gracl_segv.c
41098--- linux-2.6.32.21/grsecurity/gracl_segv.c 1969-12-31 19:00:00.000000000 -0500 40345--- linux-2.6.32.21/grsecurity/gracl_segv.c 1969-12-31 19:00:00.000000000 -0500
41099+++ linux-2.6.32.21/grsecurity/gracl_segv.c 2010-09-13 08:10:10.000000000 -0400 40346+++ linux-2.6.32.21/grsecurity/gracl_segv.c 2010-09-04 15:54:52.000000000 -0400
41100@@ -0,0 +1,310 @@ 40347@@ -0,0 +1,310 @@
41101+#include <linux/kernel.h> 40348+#include <linux/kernel.h>
41102+#include <linux/mm.h> 40349+#include <linux/mm.h>
@@ -41410,7 +40657,7 @@ diff -urNp linux-2.6.32.21/grsecurity/gracl_segv.c linux-2.6.32.21/grsecurity/gr
41410+} 40657+}
41411diff -urNp linux-2.6.32.21/grsecurity/gracl_shm.c linux-2.6.32.21/grsecurity/gracl_shm.c 40658diff -urNp linux-2.6.32.21/grsecurity/gracl_shm.c linux-2.6.32.21/grsecurity/gracl_shm.c
41412--- linux-2.6.32.21/grsecurity/gracl_shm.c 1969-12-31 19:00:00.000000000 -0500 40659--- linux-2.6.32.21/grsecurity/gracl_shm.c 1969-12-31 19:00:00.000000000 -0500
41413+++ linux-2.6.32.21/grsecurity/gracl_shm.c 2010-09-13 08:10:10.000000000 -0400 40660+++ linux-2.6.32.21/grsecurity/gracl_shm.c 2010-09-04 15:54:52.000000000 -0400
41414@@ -0,0 +1,40 @@ 40661@@ -0,0 +1,40 @@
41415+#include <linux/kernel.h> 40662+#include <linux/kernel.h>
41416+#include <linux/mm.h> 40663+#include <linux/mm.h>
@@ -41454,7 +40701,7 @@ diff -urNp linux-2.6.32.21/grsecurity/gracl_shm.c linux-2.6.32.21/grsecurity/gra
41454+} 40701+}
41455diff -urNp linux-2.6.32.21/grsecurity/grsec_chdir.c linux-2.6.32.21/grsecurity/grsec_chdir.c 40702diff -urNp linux-2.6.32.21/grsecurity/grsec_chdir.c linux-2.6.32.21/grsecurity/grsec_chdir.c
41456--- linux-2.6.32.21/grsecurity/grsec_chdir.c 1969-12-31 19:00:00.000000000 -0500 40703--- linux-2.6.32.21/grsecurity/grsec_chdir.c 1969-12-31 19:00:00.000000000 -0500
41457+++ linux-2.6.32.21/grsecurity/grsec_chdir.c 2010-09-13 08:10:10.000000000 -0400 40704+++ linux-2.6.32.21/grsecurity/grsec_chdir.c 2010-09-04 15:54:52.000000000 -0400
41458@@ -0,0 +1,19 @@ 40705@@ -0,0 +1,19 @@
41459+#include <linux/kernel.h> 40706+#include <linux/kernel.h>
41460+#include <linux/sched.h> 40707+#include <linux/sched.h>
@@ -41477,7 +40724,7 @@ diff -urNp linux-2.6.32.21/grsecurity/grsec_chdir.c linux-2.6.32.21/grsecurity/g
41477+} 40724+}
41478diff -urNp linux-2.6.32.21/grsecurity/grsec_chroot.c linux-2.6.32.21/grsecurity/grsec_chroot.c 40725diff -urNp linux-2.6.32.21/grsecurity/grsec_chroot.c linux-2.6.32.21/grsecurity/grsec_chroot.c
41479--- linux-2.6.32.21/grsecurity/grsec_chroot.c 1969-12-31 19:00:00.000000000 -0500 40726--- linux-2.6.32.21/grsecurity/grsec_chroot.c 1969-12-31 19:00:00.000000000 -0500
41480+++ linux-2.6.32.21/grsecurity/grsec_chroot.c 2010-09-13 08:10:10.000000000 -0400 40727+++ linux-2.6.32.21/grsecurity/grsec_chroot.c 2010-09-04 15:54:52.000000000 -0400
41481@@ -0,0 +1,389 @@ 40728@@ -0,0 +1,389 @@
41482+#include <linux/kernel.h> 40729+#include <linux/kernel.h>
41483+#include <linux/module.h> 40730+#include <linux/module.h>
@@ -41870,7 +41117,7 @@ diff -urNp linux-2.6.32.21/grsecurity/grsec_chroot.c linux-2.6.32.21/grsecurity/
41870+#endif 41117+#endif
41871diff -urNp linux-2.6.32.21/grsecurity/grsec_disabled.c linux-2.6.32.21/grsecurity/grsec_disabled.c 41118diff -urNp linux-2.6.32.21/grsecurity/grsec_disabled.c linux-2.6.32.21/grsecurity/grsec_disabled.c
41872--- linux-2.6.32.21/grsecurity/grsec_disabled.c 1969-12-31 19:00:00.000000000 -0500 41119--- linux-2.6.32.21/grsecurity/grsec_disabled.c 1969-12-31 19:00:00.000000000 -0500
41873+++ linux-2.6.32.21/grsecurity/grsec_disabled.c 2010-09-13 08:10:10.000000000 -0400 41120+++ linux-2.6.32.21/grsecurity/grsec_disabled.c 2010-09-04 15:54:52.000000000 -0400
41874@@ -0,0 +1,431 @@ 41121@@ -0,0 +1,431 @@
41875+#include <linux/kernel.h> 41122+#include <linux/kernel.h>
41876+#include <linux/module.h> 41123+#include <linux/module.h>
@@ -42305,7 +41552,7 @@ diff -urNp linux-2.6.32.21/grsecurity/grsec_disabled.c linux-2.6.32.21/grsecurit
42305+#endif 41552+#endif
42306diff -urNp linux-2.6.32.21/grsecurity/grsec_exec.c linux-2.6.32.21/grsecurity/grsec_exec.c 41553diff -urNp linux-2.6.32.21/grsecurity/grsec_exec.c linux-2.6.32.21/grsecurity/grsec_exec.c
42307--- linux-2.6.32.21/grsecurity/grsec_exec.c 1969-12-31 19:00:00.000000000 -0500 41554--- linux-2.6.32.21/grsecurity/grsec_exec.c 1969-12-31 19:00:00.000000000 -0500
42308+++ linux-2.6.32.21/grsecurity/grsec_exec.c 2010-09-13 08:10:10.000000000 -0400 41555+++ linux-2.6.32.21/grsecurity/grsec_exec.c 2010-09-04 15:54:52.000000000 -0400
42309@@ -0,0 +1,89 @@ 41556@@ -0,0 +1,89 @@
42310+#include <linux/kernel.h> 41557+#include <linux/kernel.h>
42311+#include <linux/sched.h> 41558+#include <linux/sched.h>
@@ -42398,7 +41645,7 @@ diff -urNp linux-2.6.32.21/grsecurity/grsec_exec.c linux-2.6.32.21/grsecurity/gr
42398+} 41645+}
42399diff -urNp linux-2.6.32.21/grsecurity/grsec_fifo.c linux-2.6.32.21/grsecurity/grsec_fifo.c 41646diff -urNp linux-2.6.32.21/grsecurity/grsec_fifo.c linux-2.6.32.21/grsecurity/grsec_fifo.c
42400--- linux-2.6.32.21/grsecurity/grsec_fifo.c 1969-12-31 19:00:00.000000000 -0500 41647--- linux-2.6.32.21/grsecurity/grsec_fifo.c 1969-12-31 19:00:00.000000000 -0500
42401+++ linux-2.6.32.21/grsecurity/grsec_fifo.c 2010-09-13 08:10:10.000000000 -0400 41648+++ linux-2.6.32.21/grsecurity/grsec_fifo.c 2010-09-04 15:54:52.000000000 -0400
42402@@ -0,0 +1,24 @@ 41649@@ -0,0 +1,24 @@
42403+#include <linux/kernel.h> 41650+#include <linux/kernel.h>
42404+#include <linux/sched.h> 41651+#include <linux/sched.h>
@@ -42426,7 +41673,7 @@ diff -urNp linux-2.6.32.21/grsecurity/grsec_fifo.c linux-2.6.32.21/grsecurity/gr
42426+} 41673+}
42427diff -urNp linux-2.6.32.21/grsecurity/grsec_fork.c linux-2.6.32.21/grsecurity/grsec_fork.c 41674diff -urNp linux-2.6.32.21/grsecurity/grsec_fork.c linux-2.6.32.21/grsecurity/grsec_fork.c
42428--- linux-2.6.32.21/grsecurity/grsec_fork.c 1969-12-31 19:00:00.000000000 -0500 41675--- linux-2.6.32.21/grsecurity/grsec_fork.c 1969-12-31 19:00:00.000000000 -0500
42429+++ linux-2.6.32.21/grsecurity/grsec_fork.c 2010-09-13 08:10:10.000000000 -0400 41676+++ linux-2.6.32.21/grsecurity/grsec_fork.c 2010-09-04 15:54:52.000000000 -0400
42430@@ -0,0 +1,15 @@ 41677@@ -0,0 +1,15 @@
42431+#include <linux/kernel.h> 41678+#include <linux/kernel.h>
42432+#include <linux/sched.h> 41679+#include <linux/sched.h>
@@ -42445,7 +41692,7 @@ diff -urNp linux-2.6.32.21/grsecurity/grsec_fork.c linux-2.6.32.21/grsecurity/gr
42445+} 41692+}
42446diff -urNp linux-2.6.32.21/grsecurity/grsec_init.c linux-2.6.32.21/grsecurity/grsec_init.c 41693diff -urNp linux-2.6.32.21/grsecurity/grsec_init.c linux-2.6.32.21/grsecurity/grsec_init.c
42447--- linux-2.6.32.21/grsecurity/grsec_init.c 1969-12-31 19:00:00.000000000 -0500 41694--- linux-2.6.32.21/grsecurity/grsec_init.c 1969-12-31 19:00:00.000000000 -0500
42448+++ linux-2.6.32.21/grsecurity/grsec_init.c 2010-09-13 08:10:10.000000000 -0400 41695+++ linux-2.6.32.21/grsecurity/grsec_init.c 2010-09-04 15:54:52.000000000 -0400
42449@@ -0,0 +1,258 @@ 41696@@ -0,0 +1,258 @@
42450+#include <linux/kernel.h> 41697+#include <linux/kernel.h>
42451+#include <linux/sched.h> 41698+#include <linux/sched.h>
@@ -42707,7 +41954,7 @@ diff -urNp linux-2.6.32.21/grsecurity/grsec_init.c linux-2.6.32.21/grsecurity/gr
42707+} 41954+}
42708diff -urNp linux-2.6.32.21/grsecurity/grsec_link.c linux-2.6.32.21/grsecurity/grsec_link.c 41955diff -urNp linux-2.6.32.21/grsecurity/grsec_link.c linux-2.6.32.21/grsecurity/grsec_link.c
42709--- linux-2.6.32.21/grsecurity/grsec_link.c 1969-12-31 19:00:00.000000000 -0500 41956--- linux-2.6.32.21/grsecurity/grsec_link.c 1969-12-31 19:00:00.000000000 -0500
42710+++ linux-2.6.32.21/grsecurity/grsec_link.c 2010-09-13 08:10:10.000000000 -0400 41957+++ linux-2.6.32.21/grsecurity/grsec_link.c 2010-09-04 15:54:52.000000000 -0400
42711@@ -0,0 +1,43 @@ 41958@@ -0,0 +1,43 @@
42712+#include <linux/kernel.h> 41959+#include <linux/kernel.h>
42713+#include <linux/sched.h> 41960+#include <linux/sched.h>
@@ -42754,7 +42001,7 @@ diff -urNp linux-2.6.32.21/grsecurity/grsec_link.c linux-2.6.32.21/grsecurity/gr
42754+} 42001+}
42755diff -urNp linux-2.6.32.21/grsecurity/grsec_log.c linux-2.6.32.21/grsecurity/grsec_log.c 42002diff -urNp linux-2.6.32.21/grsecurity/grsec_log.c linux-2.6.32.21/grsecurity/grsec_log.c
42756--- linux-2.6.32.21/grsecurity/grsec_log.c 1969-12-31 19:00:00.000000000 -0500 42003--- linux-2.6.32.21/grsecurity/grsec_log.c 1969-12-31 19:00:00.000000000 -0500
42757+++ linux-2.6.32.21/grsecurity/grsec_log.c 2010-09-13 08:10:10.000000000 -0400 42004+++ linux-2.6.32.21/grsecurity/grsec_log.c 2010-09-04 15:54:52.000000000 -0400
42758@@ -0,0 +1,306 @@ 42005@@ -0,0 +1,306 @@
42759+#include <linux/kernel.h> 42006+#include <linux/kernel.h>
42760+#include <linux/sched.h> 42007+#include <linux/sched.h>
@@ -43064,7 +42311,7 @@ diff -urNp linux-2.6.32.21/grsecurity/grsec_log.c linux-2.6.32.21/grsecurity/grs
43064+} 42311+}
43065diff -urNp linux-2.6.32.21/grsecurity/grsec_mem.c linux-2.6.32.21/grsecurity/grsec_mem.c 42312diff -urNp linux-2.6.32.21/grsecurity/grsec_mem.c linux-2.6.32.21/grsecurity/grsec_mem.c
43066--- linux-2.6.32.21/grsecurity/grsec_mem.c 1969-12-31 19:00:00.000000000 -0500 42313--- linux-2.6.32.21/grsecurity/grsec_mem.c 1969-12-31 19:00:00.000000000 -0500
43067+++ linux-2.6.32.21/grsecurity/grsec_mem.c 2010-09-13 08:10:10.000000000 -0400 42314+++ linux-2.6.32.21/grsecurity/grsec_mem.c 2010-09-04 15:54:52.000000000 -0400
43068@@ -0,0 +1,85 @@ 42315@@ -0,0 +1,85 @@
43069+#include <linux/kernel.h> 42316+#include <linux/kernel.h>
43070+#include <linux/sched.h> 42317+#include <linux/sched.h>
@@ -43153,7 +42400,7 @@ diff -urNp linux-2.6.32.21/grsecurity/grsec_mem.c linux-2.6.32.21/grsecurity/grs
43153+} 42400+}
43154diff -urNp linux-2.6.32.21/grsecurity/grsec_mount.c linux-2.6.32.21/grsecurity/grsec_mount.c 42401diff -urNp linux-2.6.32.21/grsecurity/grsec_mount.c linux-2.6.32.21/grsecurity/grsec_mount.c
43155--- linux-2.6.32.21/grsecurity/grsec_mount.c 1969-12-31 19:00:00.000000000 -0500 42402--- linux-2.6.32.21/grsecurity/grsec_mount.c 1969-12-31 19:00:00.000000000 -0500
43156+++ linux-2.6.32.21/grsecurity/grsec_mount.c 2010-09-13 08:10:10.000000000 -0400 42403+++ linux-2.6.32.21/grsecurity/grsec_mount.c 2010-09-04 15:54:52.000000000 -0400
43157@@ -0,0 +1,62 @@ 42404@@ -0,0 +1,62 @@
43158+#include <linux/kernel.h> 42405+#include <linux/kernel.h>
43159+#include <linux/sched.h> 42406+#include <linux/sched.h>
@@ -43219,7 +42466,7 @@ diff -urNp linux-2.6.32.21/grsecurity/grsec_mount.c linux-2.6.32.21/grsecurity/g
43219+} 42466+}
43220diff -urNp linux-2.6.32.21/grsecurity/grsec_ptrace.c linux-2.6.32.21/grsecurity/grsec_ptrace.c 42467diff -urNp linux-2.6.32.21/grsecurity/grsec_ptrace.c linux-2.6.32.21/grsecurity/grsec_ptrace.c
43221--- linux-2.6.32.21/grsecurity/grsec_ptrace.c 1969-12-31 19:00:00.000000000 -0500 42468--- linux-2.6.32.21/grsecurity/grsec_ptrace.c 1969-12-31 19:00:00.000000000 -0500
43222+++ linux-2.6.32.21/grsecurity/grsec_ptrace.c 2010-09-13 08:10:10.000000000 -0400 42469+++ linux-2.6.32.21/grsecurity/grsec_ptrace.c 2010-09-04 15:54:52.000000000 -0400
43223@@ -0,0 +1,14 @@ 42470@@ -0,0 +1,14 @@
43224+#include <linux/kernel.h> 42471+#include <linux/kernel.h>
43225+#include <linux/sched.h> 42472+#include <linux/sched.h>
@@ -43237,7 +42484,7 @@ diff -urNp linux-2.6.32.21/grsecurity/grsec_ptrace.c linux-2.6.32.21/grsecurity/
43237+} 42484+}
43238diff -urNp linux-2.6.32.21/grsecurity/grsec_sig.c linux-2.6.32.21/grsecurity/grsec_sig.c 42485diff -urNp linux-2.6.32.21/grsecurity/grsec_sig.c linux-2.6.32.21/grsecurity/grsec_sig.c
43239--- linux-2.6.32.21/grsecurity/grsec_sig.c 1969-12-31 19:00:00.000000000 -0500 42486--- linux-2.6.32.21/grsecurity/grsec_sig.c 1969-12-31 19:00:00.000000000 -0500
43240+++ linux-2.6.32.21/grsecurity/grsec_sig.c 2010-09-13 08:10:10.000000000 -0400 42487+++ linux-2.6.32.21/grsecurity/grsec_sig.c 2010-09-04 15:54:52.000000000 -0400
43241@@ -0,0 +1,65 @@ 42488@@ -0,0 +1,65 @@
43242+#include <linux/kernel.h> 42489+#include <linux/kernel.h>
43243+#include <linux/sched.h> 42490+#include <linux/sched.h>
@@ -43306,7 +42553,7 @@ diff -urNp linux-2.6.32.21/grsecurity/grsec_sig.c linux-2.6.32.21/grsecurity/grs
43306+ 42553+
43307diff -urNp linux-2.6.32.21/grsecurity/grsec_sock.c linux-2.6.32.21/grsecurity/grsec_sock.c 42554diff -urNp linux-2.6.32.21/grsecurity/grsec_sock.c linux-2.6.32.21/grsecurity/grsec_sock.c
43308--- linux-2.6.32.21/grsecurity/grsec_sock.c 1969-12-31 19:00:00.000000000 -0500 42555--- linux-2.6.32.21/grsecurity/grsec_sock.c 1969-12-31 19:00:00.000000000 -0500
43309+++ linux-2.6.32.21/grsecurity/grsec_sock.c 2010-09-13 08:10:10.000000000 -0400 42556+++ linux-2.6.32.21/grsecurity/grsec_sock.c 2010-09-04 15:54:52.000000000 -0400
43310@@ -0,0 +1,271 @@ 42557@@ -0,0 +1,271 @@
43311+#include <linux/kernel.h> 42558+#include <linux/kernel.h>
43312+#include <linux/module.h> 42559+#include <linux/module.h>
@@ -43581,7 +42828,7 @@ diff -urNp linux-2.6.32.21/grsecurity/grsec_sock.c linux-2.6.32.21/grsecurity/gr
43581+} 42828+}
43582diff -urNp linux-2.6.32.21/grsecurity/grsec_sysctl.c linux-2.6.32.21/grsecurity/grsec_sysctl.c 42829diff -urNp linux-2.6.32.21/grsecurity/grsec_sysctl.c linux-2.6.32.21/grsecurity/grsec_sysctl.c
43583--- linux-2.6.32.21/grsecurity/grsec_sysctl.c 1969-12-31 19:00:00.000000000 -0500 42830--- linux-2.6.32.21/grsecurity/grsec_sysctl.c 1969-12-31 19:00:00.000000000 -0500
43584+++ linux-2.6.32.21/grsecurity/grsec_sysctl.c 2010-09-13 08:10:10.000000000 -0400 42831+++ linux-2.6.32.21/grsecurity/grsec_sysctl.c 2010-09-04 15:54:52.000000000 -0400
43585@@ -0,0 +1,459 @@ 42832@@ -0,0 +1,459 @@
43586+#include <linux/kernel.h> 42833+#include <linux/kernel.h>
43587+#include <linux/sched.h> 42834+#include <linux/sched.h>
@@ -44044,7 +43291,7 @@ diff -urNp linux-2.6.32.21/grsecurity/grsec_sysctl.c linux-2.6.32.21/grsecurity/
44044+#endif 43291+#endif
44045diff -urNp linux-2.6.32.21/grsecurity/grsec_textrel.c linux-2.6.32.21/grsecurity/grsec_textrel.c 43292diff -urNp linux-2.6.32.21/grsecurity/grsec_textrel.c linux-2.6.32.21/grsecurity/grsec_textrel.c
44046--- linux-2.6.32.21/grsecurity/grsec_textrel.c 1969-12-31 19:00:00.000000000 -0500 43293--- linux-2.6.32.21/grsecurity/grsec_textrel.c 1969-12-31 19:00:00.000000000 -0500
44047+++ linux-2.6.32.21/grsecurity/grsec_textrel.c 2010-09-13 08:10:10.000000000 -0400 43294+++ linux-2.6.32.21/grsecurity/grsec_textrel.c 2010-09-04 15:54:52.000000000 -0400
44048@@ -0,0 +1,16 @@ 43295@@ -0,0 +1,16 @@
44049+#include <linux/kernel.h> 43296+#include <linux/kernel.h>
44050+#include <linux/sched.h> 43297+#include <linux/sched.h>
@@ -44064,7 +43311,7 @@ diff -urNp linux-2.6.32.21/grsecurity/grsec_textrel.c linux-2.6.32.21/grsecurity
44064+} 43311+}
44065diff -urNp linux-2.6.32.21/grsecurity/grsec_time.c linux-2.6.32.21/grsecurity/grsec_time.c 43312diff -urNp linux-2.6.32.21/grsecurity/grsec_time.c linux-2.6.32.21/grsecurity/grsec_time.c
44066--- linux-2.6.32.21/grsecurity/grsec_time.c 1969-12-31 19:00:00.000000000 -0500 43313--- linux-2.6.32.21/grsecurity/grsec_time.c 1969-12-31 19:00:00.000000000 -0500
44067+++ linux-2.6.32.21/grsecurity/grsec_time.c 2010-09-13 08:10:10.000000000 -0400 43314+++ linux-2.6.32.21/grsecurity/grsec_time.c 2010-09-04 15:54:52.000000000 -0400
44068@@ -0,0 +1,13 @@ 43315@@ -0,0 +1,13 @@
44069+#include <linux/kernel.h> 43316+#include <linux/kernel.h>
44070+#include <linux/sched.h> 43317+#include <linux/sched.h>
@@ -44081,7 +43328,7 @@ diff -urNp linux-2.6.32.21/grsecurity/grsec_time.c linux-2.6.32.21/grsecurity/gr
44081+} 43328+}
44082diff -urNp linux-2.6.32.21/grsecurity/grsec_tpe.c linux-2.6.32.21/grsecurity/grsec_tpe.c 43329diff -urNp linux-2.6.32.21/grsecurity/grsec_tpe.c linux-2.6.32.21/grsecurity/grsec_tpe.c
44083--- linux-2.6.32.21/grsecurity/grsec_tpe.c 1969-12-31 19:00:00.000000000 -0500 43330--- linux-2.6.32.21/grsecurity/grsec_tpe.c 1969-12-31 19:00:00.000000000 -0500
44084+++ linux-2.6.32.21/grsecurity/grsec_tpe.c 2010-09-13 08:10:10.000000000 -0400 43331+++ linux-2.6.32.21/grsecurity/grsec_tpe.c 2010-09-04 15:54:52.000000000 -0400
44085@@ -0,0 +1,38 @@ 43332@@ -0,0 +1,38 @@
44086+#include <linux/kernel.h> 43333+#include <linux/kernel.h>
44087+#include <linux/sched.h> 43334+#include <linux/sched.h>
@@ -44123,7 +43370,7 @@ diff -urNp linux-2.6.32.21/grsecurity/grsec_tpe.c linux-2.6.32.21/grsecurity/grs
44123+} 43370+}
44124diff -urNp linux-2.6.32.21/grsecurity/grsum.c linux-2.6.32.21/grsecurity/grsum.c 43371diff -urNp linux-2.6.32.21/grsecurity/grsum.c linux-2.6.32.21/grsecurity/grsum.c
44125--- linux-2.6.32.21/grsecurity/grsum.c 1969-12-31 19:00:00.000000000 -0500 43372--- linux-2.6.32.21/grsecurity/grsum.c 1969-12-31 19:00:00.000000000 -0500
44126+++ linux-2.6.32.21/grsecurity/grsum.c 2010-09-13 08:10:10.000000000 -0400 43373+++ linux-2.6.32.21/grsecurity/grsum.c 2010-09-04 15:54:52.000000000 -0400
44127@@ -0,0 +1,61 @@ 43374@@ -0,0 +1,61 @@
44128+#include <linux/err.h> 43375+#include <linux/err.h>
44129+#include <linux/kernel.h> 43376+#include <linux/kernel.h>
@@ -44186,9 +43433,1033 @@ diff -urNp linux-2.6.32.21/grsecurity/grsum.c linux-2.6.32.21/grsecurity/grsum.c
44186+ 43433+
44187+ return retval; 43434+ return retval;
44188+} 43435+}
43436diff -urNp linux-2.6.32.21/grsecurity/Kconfig linux-2.6.32.21/grsecurity/Kconfig
43437--- linux-2.6.32.21/grsecurity/Kconfig 1969-12-31 19:00:00.000000000 -0500
43438+++ linux-2.6.32.21/grsecurity/Kconfig 2010-09-14 21:34:38.000000000 -0400
43439@@ -0,0 +1,987 @@
43440+#
43441+# grecurity configuration
43442+#
43443+
43444+menu "Grsecurity"
43445+
43446+config GRKERNSEC
43447+ bool "Grsecurity"
43448+ select CRYPTO
43449+ select CRYPTO_SHA256
43450+ help
43451+ If you say Y here, you will be able to configure many features
43452+ that will enhance the security of your system. It is highly
43453+ recommended that you say Y here and read through the help
43454+ for each option so that you fully understand the features and
43455+ can evaluate their usefulness for your machine.
43456+
43457+choice
43458+ prompt "Security Level"
43459+ depends on GRKERNSEC
43460+ default GRKERNSEC_CUSTOM
43461+
43462+config GRKERNSEC_LOW
43463+ bool "Low"
43464+ select GRKERNSEC_LINK
43465+ select GRKERNSEC_FIFO
43466+ select GRKERNSEC_EXECVE
43467+ select GRKERNSEC_RANDNET
43468+ select GRKERNSEC_DMESG
43469+ select GRKERNSEC_CHROOT
43470+ select GRKERNSEC_CHROOT_CHDIR
43471+
43472+ help
43473+ If you choose this option, several of the grsecurity options will
43474+ be enabled that will give you greater protection against a number
43475+ of attacks, while assuring that none of your software will have any
43476+ conflicts with the additional security measures. If you run a lot
43477+ of unusual software, or you are having problems with the higher
43478+ security levels, you should say Y here. With this option, the
43479+ following features are enabled:
43480+
43481+ - Linking restrictions
43482+ - FIFO restrictions
43483+ - Enforcing RLIMIT_NPROC on execve
43484+ - Restricted dmesg
43485+ - Enforced chdir("/") on chroot
43486+ - Runtime module disabling
43487+
43488+config GRKERNSEC_MEDIUM
43489+ bool "Medium"
43490+ select PAX
43491+ select PAX_EI_PAX
43492+ select PAX_PT_PAX_FLAGS
43493+ select PAX_HAVE_ACL_FLAGS
43494+ select GRKERNSEC_PROC_MEMMAP if (PAX_NOEXEC || PAX_ASLR)
43495+ select GRKERNSEC_CHROOT
43496+ select GRKERNSEC_CHROOT_SYSCTL
43497+ select GRKERNSEC_LINK
43498+ select GRKERNSEC_FIFO
43499+ select GRKERNSEC_EXECVE
43500+ select GRKERNSEC_DMESG
43501+ select GRKERNSEC_RANDNET
43502+ select GRKERNSEC_FORKFAIL
43503+ select GRKERNSEC_TIME
43504+ select GRKERNSEC_SIGNAL
43505+ select GRKERNSEC_CHROOT
43506+ select GRKERNSEC_CHROOT_UNIX
43507+ select GRKERNSEC_CHROOT_MOUNT
43508+ select GRKERNSEC_CHROOT_PIVOT
43509+ select GRKERNSEC_CHROOT_DOUBLE
43510+ select GRKERNSEC_CHROOT_CHDIR
43511+ select GRKERNSEC_CHROOT_MKNOD
43512+ select GRKERNSEC_PROC
43513+ select GRKERNSEC_PROC_USERGROUP
43514+ select PAX_RANDUSTACK
43515+ select PAX_ASLR
43516+ select PAX_RANDMMAP
43517+ select PAX_REFCOUNT if (X86 || SPARC64)
43518+ select PAX_USERCOPY if ((X86 || SPARC32 || SPARC64 || PPC) && (SLAB || SLUB || SLOB))
43519+
43520+ help
43521+ If you say Y here, several features in addition to those included
43522+ in the low additional security level will be enabled. These
43523+ features provide even more security to your system, though in rare
43524+ cases they may be incompatible with very old or poorly written
43525+ software. If you enable this option, make sure that your auth
43526+ service (identd) is running as gid 1001. With this option,
43527+ the following features (in addition to those provided in the
43528+ low additional security level) will be enabled:
43529+
43530+ - Failed fork logging
43531+ - Time change logging
43532+ - Signal logging
43533+ - Deny mounts in chroot
43534+ - Deny double chrooting
43535+ - Deny sysctl writes in chroot
43536+ - Deny mknod in chroot
43537+ - Deny access to abstract AF_UNIX sockets out of chroot
43538+ - Deny pivot_root in chroot
43539+ - Denied writes of /dev/kmem, /dev/mem, and /dev/port
43540+ - /proc restrictions with special GID set to 10 (usually wheel)
43541+ - Address Space Layout Randomization (ASLR)
43542+ - Prevent exploitation of most refcount overflows
43543+ - Bounds checking of copying between the kernel and userland
43544+
43545+config GRKERNSEC_HIGH
43546+ bool "High"
43547+ select GRKERNSEC_LINK
43548+ select GRKERNSEC_FIFO
43549+ select GRKERNSEC_EXECVE
43550+ select GRKERNSEC_DMESG
43551+ select GRKERNSEC_FORKFAIL
43552+ select GRKERNSEC_TIME
43553+ select GRKERNSEC_SIGNAL
43554+ select GRKERNSEC_CHROOT
43555+ select GRKERNSEC_CHROOT_SHMAT
43556+ select GRKERNSEC_CHROOT_UNIX
43557+ select GRKERNSEC_CHROOT_MOUNT
43558+ select GRKERNSEC_CHROOT_FCHDIR
43559+ select GRKERNSEC_CHROOT_PIVOT
43560+ select GRKERNSEC_CHROOT_DOUBLE
43561+ select GRKERNSEC_CHROOT_CHDIR
43562+ select GRKERNSEC_CHROOT_MKNOD
43563+ select GRKERNSEC_CHROOT_CAPS
43564+ select GRKERNSEC_CHROOT_SYSCTL
43565+ select GRKERNSEC_CHROOT_FINDTASK
43566+ select GRKERNSEC_PROC
43567+ select GRKERNSEC_PROC_MEMMAP if (PAX_NOEXEC || PAX_ASLR)
43568+ select GRKERNSEC_HIDESYM
43569+ select GRKERNSEC_BRUTE
43570+ select GRKERNSEC_PROC_USERGROUP
43571+ select GRKERNSEC_KMEM
43572+ select GRKERNSEC_RESLOG
43573+ select GRKERNSEC_RANDNET
43574+ select GRKERNSEC_PROC_ADD
43575+ select GRKERNSEC_CHROOT_CHMOD
43576+ select GRKERNSEC_CHROOT_NICE
43577+ select GRKERNSEC_AUDIT_MOUNT
43578+ select GRKERNSEC_MODHARDEN if (MODULES)
43579+ select GRKERNSEC_HARDEN_PTRACE
43580+ select GRKERNSEC_VM86 if (X86_32)
43581+ select PAX
43582+ select PAX_RANDUSTACK
43583+ select PAX_ASLR
43584+ select PAX_RANDMMAP
43585+ select PAX_NOEXEC
43586+ select PAX_MPROTECT
43587+ select PAX_EI_PAX
43588+ select PAX_PT_PAX_FLAGS
43589+ select PAX_HAVE_ACL_FLAGS
43590+ select PAX_KERNEXEC if ((PPC || X86) && (!X86_32 || X86_WP_WORKS_OK) && !XEN)
43591+ select PAX_MEMORY_UDEREF if (X86_32 && !XEN)
43592+ select PAX_RANDKSTACK if (X86_TSC && !X86_64)
43593+ select PAX_SEGMEXEC if (X86_32)
43594+ select PAX_PAGEEXEC
43595+ select PAX_EMUPLT if (ALPHA || PARISC || SPARC32 || SPARC64)
43596+ select PAX_EMUTRAMP if (PARISC)
43597+ select PAX_EMUSIGRT if (PARISC)
43598+ select PAX_ETEXECRELOCS if (ALPHA || IA64 || PARISC)
43599+ select PAX_ELFRELOCS if (PAX_ETEXECRELOCS || (IA64 || PPC || X86))
43600+ select PAX_REFCOUNT if (X86 || SPARC64)
43601+ select PAX_USERCOPY if ((X86 || PPC || SPARC32 || SPARC64) && (SLAB || SLUB || SLOB))
43602+ help
43603+ If you say Y here, many of the features of grsecurity will be
43604+ enabled, which will protect you against many kinds of attacks
43605+ against your system. The heightened security comes at a cost
43606+ of an increased chance of incompatibilities with rare software
43607+ on your machine. Since this security level enables PaX, you should
43608+ view <http://pax.grsecurity.net> and read about the PaX
43609+ project. While you are there, download chpax and run it on
43610+ binaries that cause problems with PaX. Also remember that
43611+ since the /proc restrictions are enabled, you must run your
43612+ identd as gid 1001. This security level enables the following
43613+ features in addition to those listed in the low and medium
43614+ security levels:
43615+
43616+ - Additional /proc restrictions
43617+ - Chmod restrictions in chroot
43618+ - No signals, ptrace, or viewing of processes outside of chroot
43619+ - Capability restrictions in chroot
43620+ - Deny fchdir out of chroot
43621+ - Priority restrictions in chroot
43622+ - Segmentation-based implementation of PaX
43623+ - Mprotect restrictions
43624+ - Removal of addresses from /proc/<pid>/[smaps|maps|stat]
43625+ - Kernel stack randomization
43626+ - Mount/unmount/remount logging
43627+ - Kernel symbol hiding
43628+ - Prevention of memory exhaustion-based exploits
43629+ - Hardening of module auto-loading
43630+ - Ptrace restrictions
43631+ - Restricted vm86 mode
43632+
43633+config GRKERNSEC_CUSTOM
43634+ bool "Custom"
43635+ help
43636+ If you say Y here, you will be able to configure every grsecurity
43637+ option, which allows you to enable many more features that aren't
43638+ covered in the basic security levels. These additional features
43639+ include TPE, socket restrictions, and the sysctl system for
43640+ grsecurity. It is advised that you read through the help for
43641+ each option to determine its usefulness in your situation.
43642+
43643+endchoice
43644+
43645+menu "Address Space Protection"
43646+depends on GRKERNSEC
43647+
43648+config GRKERNSEC_KMEM
43649+ bool "Deny writing to /dev/kmem, /dev/mem, and /dev/port"
43650+ help
43651+ If you say Y here, /dev/kmem and /dev/mem won't be allowed to
43652+ be written to via mmap or otherwise to modify the running kernel.
43653+ /dev/port will also not be allowed to be opened. If you have module
43654+ support disabled, enabling this will close up four ways that are
43655+ currently used to insert malicious code into the running kernel.
43656+ Even with all these features enabled, we still highly recommend that
43657+ you use the RBAC system, as it is still possible for an attacker to
43658+ modify the running kernel through privileged I/O granted by ioperm/iopl.
43659+ If you are not using XFree86, you may be able to stop this additional
43660+ case by enabling the 'Disable privileged I/O' option. Though nothing
43661+ legitimately writes to /dev/kmem, XFree86 does need to write to /dev/mem,
43662+ but only to video memory, which is the only writing we allow in this
43663+ case. If /dev/kmem or /dev/mem are mmaped without PROT_WRITE, they will
43664+ not be allowed to mprotect it with PROT_WRITE later.
43665+ It is highly recommended that you say Y here if you meet all the
43666+ conditions above.
43667+
43668+config GRKERNSEC_VM86
43669+ bool "Restrict VM86 mode"
43670+ depends on X86_32
43671+
43672+ help
43673+ If you say Y here, only processes with CAP_SYS_RAWIO will be able to
43674+ make use of a special execution mode on 32bit x86 processors called
43675+ Virtual 8086 (VM86) mode. XFree86 may need vm86 mode for certain
43676+ video cards and will still work with this option enabled. The purpose
43677+ of the option is to prevent exploitation of emulation errors in
43678+ virtualization of vm86 mode like the one discovered in VMWare in 2009.
43679+ Nearly all users should be able to enable this option.
43680+
43681+config GRKERNSEC_IO
43682+ bool "Disable privileged I/O"
43683+ depends on X86
43684+ select RTC_CLASS
43685+ select RTC_INTF_DEV
43686+ select RTC_DRV_CMOS
43687+
43688+ help
43689+ If you say Y here, all ioperm and iopl calls will return an error.
43690+ Ioperm and iopl can be used to modify the running kernel.
43691+ Unfortunately, some programs need this access to operate properly,
43692+ the most notable of which are XFree86 and hwclock. hwclock can be
43693+ remedied by having RTC support in the kernel, so real-time
43694+ clock support is enabled if this option is enabled, to ensure
43695+ that hwclock operates correctly. XFree86 still will not
43696+ operate correctly with this option enabled, so DO NOT CHOOSE Y
43697+ IF YOU USE XFree86. If you use XFree86 and you still want to
43698+ protect your kernel against modification, use the RBAC system.
43699+
43700+config GRKERNSEC_PROC_MEMMAP
43701+ bool "Remove addresses from /proc/<pid>/[smaps|maps|stat]"
43702+ default y if (PAX_NOEXEC || PAX_ASLR)
43703+ depends on PAX_NOEXEC || PAX_ASLR
43704+ help
43705+ If you say Y here, the /proc/<pid>/maps and /proc/<pid>/stat files will
43706+ give no information about the addresses of its mappings if
43707+ PaX features that rely on random addresses are enabled on the task.
43708+ If you use PaX it is greatly recommended that you say Y here as it
43709+ closes up a hole that makes the full ASLR useless for suid
43710+ binaries.
43711+
43712+config GRKERNSEC_BRUTE
43713+ bool "Deter exploit bruteforcing"
43714+ help
43715+ If you say Y here, attempts to bruteforce exploits against forking
43716+ daemons such as apache or sshd will be deterred. When a child of a
43717+ forking daemon is killed by PaX or crashes due to an illegal
43718+ instruction, the parent process will be delayed 30 seconds upon every
43719+ subsequent fork until the administrator is able to assess the
43720+ situation and restart the daemon. It is recommended that you also
43721+ enable signal logging in the auditing section so that logs are
43722+ generated when a process performs an illegal instruction.
43723+
43724+config GRKERNSEC_MODHARDEN
43725+ bool "Harden module auto-loading"
43726+ depends on MODULES
43727+ help
43728+ If you say Y here, module auto-loading in response to use of some
43729+ feature implemented by an unloaded module will be restricted to
43730+ root users. Enabling this option helps defend against attacks
43731+ by unprivileged users who abuse the auto-loading behavior to
43732+ cause a vulnerable module to load that is then exploited.
43733+
43734+ If this option prevents a legitimate use of auto-loading for a
43735+ non-root user, the administrator can execute modprobe manually
43736+ with the exact name of the module mentioned in the alert log.
43737+ Alternatively, the administrator can add the module to the list
43738+ of modules loaded at boot by modifying init scripts.
43739+
43740+ Modification of init scripts will most likely be needed on
43741+ Ubuntu servers with encrypted home directory support enabled,
43742+ as the first non-root user logging in will cause the ecb(aes),
43743+ ecb(aes)-all, cbc(aes), and cbc(aes)-all modules to be loaded.
43744+
43745+config GRKERNSEC_HIDESYM
43746+ bool "Hide kernel symbols"
43747+ help
43748+ If you say Y here, getting information on loaded modules, and
43749+ displaying all kernel symbols through a syscall will be restricted
43750+ to users with CAP_SYS_MODULE. For software compatibility reasons,
43751+ /proc/kallsyms will be restricted to the root user. The RBAC
43752+ system can hide that entry even from root.
43753+
43754+ This option also prevents leaking of kernel addresses through
43755+ several /proc entries.
43756+
43757+ Note that this option is only effective provided the following
43758+ conditions are met:
43759+ 1) The kernel using grsecurity is not precompiled by some distribution
43760+ 2) You are using the RBAC system and hiding other files such as your
43761+ kernel image and System.map. Alternatively, enabling this option
43762+ causes the permissions on /boot, /lib/modules, and the kernel
43763+ source directory to change at compile time to prevent
43764+ reading by non-root users.
43765+ If the above conditions are met, this option will aid in providing a
43766+ useful protection against local kernel exploitation of overflows
43767+ and arbitrary read/write vulnerabilities.
43768+
43769+endmenu
43770+menu "Role Based Access Control Options"
43771+depends on GRKERNSEC
43772+
43773+config GRKERNSEC_NO_RBAC
43774+ bool "Disable RBAC system"
43775+ help
43776+ If you say Y here, the /dev/grsec device will be removed from the kernel,
43777+ preventing the RBAC system from being enabled. You should only say Y
43778+ here if you have no intention of using the RBAC system, so as to prevent
43779+ an attacker with root access from misusing the RBAC system to hide files
43780+ and processes when loadable module support and /dev/[k]mem have been
43781+ locked down.
43782+
43783+config GRKERNSEC_ACL_HIDEKERN
43784+ bool "Hide kernel processes"
43785+ help
43786+ If you say Y here, all kernel threads will be hidden to all
43787+ processes but those whose subject has the "view hidden processes"
43788+ flag.
43789+
43790+config GRKERNSEC_ACL_MAXTRIES
43791+ int "Maximum tries before password lockout"
43792+ default 3
43793+ help
43794+ This option enforces the maximum number of times a user can attempt
43795+ to authorize themselves with the grsecurity RBAC system before being
43796+ denied the ability to attempt authorization again for a specified time.
43797+ The lower the number, the harder it will be to brute-force a password.
43798+
43799+config GRKERNSEC_ACL_TIMEOUT
43800+ int "Time to wait after max password tries, in seconds"
43801+ default 30
43802+ help
43803+ This option specifies the time the user must wait after attempting to
43804+ authorize to the RBAC system with the maximum number of invalid
43805+ passwords. The higher the number, the harder it will be to brute-force
43806+ a password.
43807+
43808+endmenu
43809+menu "Filesystem Protections"
43810+depends on GRKERNSEC
43811+
43812+config GRKERNSEC_PROC
43813+ bool "Proc restrictions"
43814+ help
43815+ If you say Y here, the permissions of the /proc filesystem
43816+ will be altered to enhance system security and privacy. You MUST
43817+ choose either a user only restriction or a user and group restriction.
43818+ Depending upon the option you choose, you can either restrict users to
43819+ see only the processes they themselves run, or choose a group that can
43820+ view all processes and files normally restricted to root if you choose
43821+ the "restrict to user only" option. NOTE: If you're running identd as
43822+ a non-root user, you will have to run it as the group you specify here.
43823+
43824+config GRKERNSEC_PROC_USER
43825+ bool "Restrict /proc to user only"
43826+ depends on GRKERNSEC_PROC
43827+ help
43828+ If you say Y here, non-root users will only be able to view their own
43829+ processes, and restricts them from viewing network-related information,
43830+ and viewing kernel symbol and module information.
43831+
43832+config GRKERNSEC_PROC_USERGROUP
43833+ bool "Allow special group"
43834+ depends on GRKERNSEC_PROC && !GRKERNSEC_PROC_USER
43835+ help
43836+ If you say Y here, you will be able to select a group that will be
43837+ able to view all processes, network-related information, and
43838+ kernel and symbol information. This option is useful if you want
43839+ to run identd as a non-root user.
43840+
43841+config GRKERNSEC_PROC_GID
43842+ int "GID for special group"
43843+ depends on GRKERNSEC_PROC_USERGROUP
43844+ default 1001
43845+
43846+config GRKERNSEC_PROC_ADD
43847+ bool "Additional restrictions"
43848+ depends on GRKERNSEC_PROC_USER || GRKERNSEC_PROC_USERGROUP
43849+ help
43850+ If you say Y here, additional restrictions will be placed on
43851+ /proc that keep normal users from viewing device information and
43852+ slabinfo information that could be useful for exploits.
43853+
43854+config GRKERNSEC_LINK
43855+ bool "Linking restrictions"
43856+ help
43857+ If you say Y here, /tmp race exploits will be prevented, since users
43858+ will no longer be able to follow symlinks owned by other users in
43859+ world-writable +t directories (i.e. /tmp), unless the owner of the
43860+ symlink is the owner of the directory. users will also not be
43861+ able to hardlink to files they do not own. If the sysctl option is
43862+ enabled, a sysctl option with name "linking_restrictions" is created.
43863+
43864+config GRKERNSEC_FIFO
43865+ bool "FIFO restrictions"
43866+ help
43867+ If you say Y here, users will not be able to write to FIFOs they don't
43868+ own in world-writable +t directories (i.e. /tmp), unless the owner of
43869+ the FIFO is the same owner of the directory it's held in. If the sysctl
43870+ option is enabled, a sysctl option with name "fifo_restrictions" is
43871+ created.
43872+
43873+config GRKERNSEC_ROFS
43874+ bool "Runtime read-only mount protection"
43875+ help
43876+ If you say Y here, a sysctl option with name "romount_protect" will
43877+ be created. By setting this option to 1 at runtime, filesystems
43878+ will be protected in the following ways:
43879+ * No new writable mounts will be allowed
43880+ * Existing read-only mounts won't be able to be remounted read/write
43881+ * Write operations will be denied on all block devices
43882+ This option acts independently of grsec_lock: once it is set to 1,
43883+ it cannot be turned off. Therefore, please be mindful of the resulting
43884+ behavior if this option is enabled in an init script on a read-only
43885+ filesystem. This feature is mainly intended for secure embedded systems.
43886+
43887+config GRKERNSEC_CHROOT
43888+ bool "Chroot jail restrictions"
43889+ help
43890+ If you say Y here, you will be able to choose several options that will
43891+ make breaking out of a chrooted jail much more difficult. If you
43892+ encounter no software incompatibilities with the following options, it
43893+ is recommended that you enable each one.
43894+
43895+config GRKERNSEC_CHROOT_MOUNT
43896+ bool "Deny mounts"
43897+ depends on GRKERNSEC_CHROOT
43898+ help
43899+ If you say Y here, processes inside a chroot will not be able to
43900+ mount or remount filesystems. If the sysctl option is enabled, a
43901+ sysctl option with name "chroot_deny_mount" is created.
43902+
43903+config GRKERNSEC_CHROOT_DOUBLE
43904+ bool "Deny double-chroots"
43905+ depends on GRKERNSEC_CHROOT
43906+ help
43907+ If you say Y here, processes inside a chroot will not be able to chroot
43908+ again outside the chroot. This is a widely used method of breaking
43909+ out of a chroot jail and should not be allowed. If the sysctl
43910+ option is enabled, a sysctl option with name
43911+ "chroot_deny_chroot" is created.
43912+
43913+config GRKERNSEC_CHROOT_PIVOT
43914+ bool "Deny pivot_root in chroot"
43915+ depends on GRKERNSEC_CHROOT
43916+ help
43917+ If you say Y here, processes inside a chroot will not be able to use
43918+ a function called pivot_root() that was introduced in Linux 2.3.41. It
43919+ works similar to chroot in that it changes the root filesystem. This
43920+ function could be misused in a chrooted process to attempt to break out
43921+ of the chroot, and therefore should not be allowed. If the sysctl
43922+ option is enabled, a sysctl option with name "chroot_deny_pivot" is
43923+ created.
43924+
43925+config GRKERNSEC_CHROOT_CHDIR
43926+ bool "Enforce chdir(\"/\") on all chroots"
43927+ depends on GRKERNSEC_CHROOT
43928+ help
43929+ If you say Y here, the current working directory of all newly-chrooted
43930+ applications will be set to the the root directory of the chroot.
43931+ The man page on chroot(2) states:
43932+ Note that this call does not change the current working
43933+ directory, so that `.' can be outside the tree rooted at
43934+ `/'. In particular, the super-user can escape from a
43935+ `chroot jail' by doing `mkdir foo; chroot foo; cd ..'.
43936+
43937+ It is recommended that you say Y here, since it's not known to break
43938+ any software. If the sysctl option is enabled, a sysctl option with
43939+ name "chroot_enforce_chdir" is created.
43940+
43941+config GRKERNSEC_CHROOT_CHMOD
43942+ bool "Deny (f)chmod +s"
43943+ depends on GRKERNSEC_CHROOT
43944+ help
43945+ If you say Y here, processes inside a chroot will not be able to chmod
43946+ or fchmod files to make them have suid or sgid bits. This protects
43947+ against another published method of breaking a chroot. If the sysctl
43948+ option is enabled, a sysctl option with name "chroot_deny_chmod" is
43949+ created.
43950+
43951+config GRKERNSEC_CHROOT_FCHDIR
43952+ bool "Deny fchdir out of chroot"
43953+ depends on GRKERNSEC_CHROOT
43954+ help
43955+ If you say Y here, a well-known method of breaking chroots by fchdir'ing
43956+ to a file descriptor of the chrooting process that points to a directory
43957+ outside the filesystem will be stopped. If the sysctl option
43958+ is enabled, a sysctl option with name "chroot_deny_fchdir" is created.
43959+
43960+config GRKERNSEC_CHROOT_MKNOD
43961+ bool "Deny mknod"
43962+ depends on GRKERNSEC_CHROOT
43963+ help
43964+ If you say Y here, processes inside a chroot will not be allowed to
43965+ mknod. The problem with using mknod inside a chroot is that it
43966+ would allow an attacker to create a device entry that is the same
43967+ as one on the physical root of your system, which could range from
43968+ anything from the console device to a device for your harddrive (which
43969+ they could then use to wipe the drive or steal data). It is recommended
43970+ that you say Y here, unless you run into software incompatibilities.
43971+ If the sysctl option is enabled, a sysctl option with name
43972+ "chroot_deny_mknod" is created.
43973+
43974+config GRKERNSEC_CHROOT_SHMAT
43975+ bool "Deny shmat() out of chroot"
43976+ depends on GRKERNSEC_CHROOT
43977+ help
43978+ If you say Y here, processes inside a chroot will not be able to attach
43979+ to shared memory segments that were created outside of the chroot jail.
43980+ It is recommended that you say Y here. If the sysctl option is enabled,
43981+ a sysctl option with name "chroot_deny_shmat" is created.
43982+
43983+config GRKERNSEC_CHROOT_UNIX
43984+ bool "Deny access to abstract AF_UNIX sockets out of chroot"
43985+ depends on GRKERNSEC_CHROOT
43986+ help
43987+ If you say Y here, processes inside a chroot will not be able to
43988+ connect to abstract (meaning not belonging to a filesystem) Unix
43989+ domain sockets that were bound outside of a chroot. It is recommended
43990+ that you say Y here. If the sysctl option is enabled, a sysctl option
43991+ with name "chroot_deny_unix" is created.
43992+
43993+config GRKERNSEC_CHROOT_FINDTASK
43994+ bool "Protect outside processes"
43995+ depends on GRKERNSEC_CHROOT
43996+ help
43997+ If you say Y here, processes inside a chroot will not be able to
43998+ kill, send signals with fcntl, ptrace, capget, getpgid, setpgid,
43999+ getsid, or view any process outside of the chroot. If the sysctl
44000+ option is enabled, a sysctl option with name "chroot_findtask" is
44001+ created.
44002+
44003+config GRKERNSEC_CHROOT_NICE
44004+ bool "Restrict priority changes"
44005+ depends on GRKERNSEC_CHROOT
44006+ help
44007+ If you say Y here, processes inside a chroot will not be able to raise
44008+ the priority of processes in the chroot, or alter the priority of
44009+ processes outside the chroot. This provides more security than simply
44010+ removing CAP_SYS_NICE from the process' capability set. If the
44011+ sysctl option is enabled, a sysctl option with name "chroot_restrict_nice"
44012+ is created.
44013+
44014+config GRKERNSEC_CHROOT_SYSCTL
44015+ bool "Deny sysctl writes"
44016+ depends on GRKERNSEC_CHROOT
44017+ help
44018+ If you say Y here, an attacker in a chroot will not be able to
44019+ write to sysctl entries, either by sysctl(2) or through a /proc
44020+ interface. It is strongly recommended that you say Y here. If the
44021+ sysctl option is enabled, a sysctl option with name
44022+ "chroot_deny_sysctl" is created.
44023+
44024+config GRKERNSEC_CHROOT_CAPS
44025+ bool "Capability restrictions"
44026+ depends on GRKERNSEC_CHROOT
44027+ help
44028+ If you say Y here, the capabilities on all root processes within a
44029+ chroot jail will be lowered to stop module insertion, raw i/o,
44030+ system and net admin tasks, rebooting the system, modifying immutable
44031+ files, modifying IPC owned by another, and changing the system time.
44032+ This is left an option because it can break some apps. Disable this
44033+ if your chrooted apps are having problems performing those kinds of
44034+ tasks. If the sysctl option is enabled, a sysctl option with
44035+ name "chroot_caps" is created.
44036+
44037+endmenu
44038+menu "Kernel Auditing"
44039+depends on GRKERNSEC
44040+
44041+config GRKERNSEC_AUDIT_GROUP
44042+ bool "Single group for auditing"
44043+ help
44044+ If you say Y here, the exec, chdir, and (un)mount logging features
44045+ will only operate on a group you specify. This option is recommended
44046+ if you only want to watch certain users instead of having a large
44047+ amount of logs from the entire system. If the sysctl option is enabled,
44048+ a sysctl option with name "audit_group" is created.
44049+
44050+config GRKERNSEC_AUDIT_GID
44051+ int "GID for auditing"
44052+ depends on GRKERNSEC_AUDIT_GROUP
44053+ default 1007
44054+
44055+config GRKERNSEC_EXECLOG
44056+ bool "Exec logging"
44057+ help
44058+ If you say Y here, all execve() calls will be logged (since the
44059+ other exec*() calls are frontends to execve(), all execution
44060+ will be logged). Useful for shell-servers that like to keep track
44061+ of their users. If the sysctl option is enabled, a sysctl option with
44062+ name "exec_logging" is created.
44063+ WARNING: This option when enabled will produce a LOT of logs, especially
44064+ on an active system.
44065+
44066+config GRKERNSEC_RESLOG
44067+ bool "Resource logging"
44068+ help
44069+ If you say Y here, all attempts to overstep resource limits will
44070+ be logged with the resource name, the requested size, and the current
44071+ limit. It is highly recommended that you say Y here. If the sysctl
44072+ option is enabled, a sysctl option with name "resource_logging" is
44073+ created. If the RBAC system is enabled, the sysctl value is ignored.
44074+
44075+config GRKERNSEC_CHROOT_EXECLOG
44076+ bool "Log execs within chroot"
44077+ help
44078+ If you say Y here, all executions inside a chroot jail will be logged
44079+ to syslog. This can cause a large amount of logs if certain
44080+ applications (eg. djb's daemontools) are installed on the system, and
44081+ is therefore left as an option. If the sysctl option is enabled, a
44082+ sysctl option with name "chroot_execlog" is created.
44083+
44084+config GRKERNSEC_AUDIT_PTRACE
44085+ bool "Ptrace logging"
44086+ help
44087+ If you say Y here, all attempts to attach to a process via ptrace
44088+ will be logged. If the sysctl option is enabled, a sysctl option
44089+ with name "audit_ptrace" is created.
44090+
44091+config GRKERNSEC_AUDIT_CHDIR
44092+ bool "Chdir logging"
44093+ help
44094+ If you say Y here, all chdir() calls will be logged. If the sysctl
44095+ option is enabled, a sysctl option with name "audit_chdir" is created.
44096+
44097+config GRKERNSEC_AUDIT_MOUNT
44098+ bool "(Un)Mount logging"
44099+ help
44100+ If you say Y here, all mounts and unmounts will be logged. If the
44101+ sysctl option is enabled, a sysctl option with name "audit_mount" is
44102+ created.
44103+
44104+config GRKERNSEC_SIGNAL
44105+ bool "Signal logging"
44106+ help
44107+ If you say Y here, certain important signals will be logged, such as
44108+ SIGSEGV, which will as a result inform you of when a error in a program
44109+ occurred, which in some cases could mean a possible exploit attempt.
44110+ If the sysctl option is enabled, a sysctl option with name
44111+ "signal_logging" is created.
44112+
44113+config GRKERNSEC_FORKFAIL
44114+ bool "Fork failure logging"
44115+ help
44116+ If you say Y here, all failed fork() attempts will be logged.
44117+ This could suggest a fork bomb, or someone attempting to overstep
44118+ their process limit. If the sysctl option is enabled, a sysctl option
44119+ with name "forkfail_logging" is created.
44120+
44121+config GRKERNSEC_TIME
44122+ bool "Time change logging"
44123+ help
44124+ If you say Y here, any changes of the system clock will be logged.
44125+ If the sysctl option is enabled, a sysctl option with name
44126+ "timechange_logging" is created.
44127+
44128+config GRKERNSEC_PROC_IPADDR
44129+ bool "/proc/<pid>/ipaddr support"
44130+ help
44131+ If you say Y here, a new entry will be added to each /proc/<pid>
44132+ directory that contains the IP address of the person using the task.
44133+ The IP is carried across local TCP and AF_UNIX stream sockets.
44134+ This information can be useful for IDS/IPSes to perform remote response
44135+ to a local attack. The entry is readable by only the owner of the
44136+ process (and root if he has CAP_DAC_OVERRIDE, which can be removed via
44137+ the RBAC system), and thus does not create privacy concerns.
44138+
44139+config GRKERNSEC_AUDIT_TEXTREL
44140+ bool 'ELF text relocations logging (READ HELP)'
44141+ depends on PAX_MPROTECT
44142+ help
44143+ If you say Y here, text relocations will be logged with the filename
44144+ of the offending library or binary. The purpose of the feature is
44145+ to help Linux distribution developers get rid of libraries and
44146+ binaries that need text relocations which hinder the future progress
44147+ of PaX. Only Linux distribution developers should say Y here, and
44148+ never on a production machine, as this option creates an information
44149+ leak that could aid an attacker in defeating the randomization of
44150+ a single memory region. If the sysctl option is enabled, a sysctl
44151+ option with name "audit_textrel" is created.
44152+
44153+endmenu
44154+
44155+menu "Executable Protections"
44156+depends on GRKERNSEC
44157+
44158+config GRKERNSEC_EXECVE
44159+ bool "Enforce RLIMIT_NPROC on execs"
44160+ help
44161+ If you say Y here, users with a resource limit on processes will
44162+ have the value checked during execve() calls. The current system
44163+ only checks the system limit during fork() calls. If the sysctl option
44164+ is enabled, a sysctl option with name "execve_limiting" is created.
44165+
44166+config GRKERNSEC_DMESG
44167+ bool "Dmesg(8) restriction"
44168+ help
44169+ If you say Y here, non-root users will not be able to use dmesg(8)
44170+ to view up to the last 4kb of messages in the kernel's log buffer.
44171+ If the sysctl option is enabled, a sysctl option with name "dmesg" is
44172+ created.
44173+
44174+config GRKERNSEC_HARDEN_PTRACE
44175+ bool "Deter ptrace-based process snooping"
44176+ help
44177+ If you say Y here, TTY sniffers and other malicious monitoring
44178+ programs implemented through ptrace will be defeated. If you
44179+ have been using the RBAC system, this option has already been
44180+ enabled for several years for all users, with the ability to make
44181+ fine-grained exceptions.
44182+
44183+ This option only affects the ability of non-root users to ptrace
44184+ processes that are not a descendent of the ptracing process.
44185+ This means that strace ./binary and gdb ./binary will still work,
44186+ but attaching to arbitrary processes will not. If the sysctl
44187+ option is enabled, a sysctl option with name "harden_ptrace" is
44188+ created.
44189+
44190+config GRKERNSEC_TPE
44191+ bool "Trusted Path Execution (TPE)"
44192+ help
44193+ If you say Y here, you will be able to choose a gid to add to the
44194+ supplementary groups of users you want to mark as "untrusted."
44195+ These users will not be able to execute any files that are not in
44196+ root-owned directories writable only by root. If the sysctl option
44197+ is enabled, a sysctl option with name "tpe" is created.
44198+
44199+config GRKERNSEC_TPE_ALL
44200+ bool "Partially restrict non-root users"
44201+ depends on GRKERNSEC_TPE
44202+ help
44203+ If you say Y here, All non-root users other than the ones in the
44204+ group specified in the main TPE option will only be allowed to
44205+ execute files in directories they own that are not group or
44206+ world-writable, or in directories owned by root and writable only by
44207+ root. If the sysctl option is enabled, a sysctl option with name
44208+ "tpe_restrict_all" is created.
44209+
44210+config GRKERNSEC_TPE_INVERT
44211+ bool "Invert GID option"
44212+ depends on GRKERNSEC_TPE
44213+ help
44214+ If you say Y here, the group you specify in the TPE configuration will
44215+ decide what group TPE restrictions will be *disabled* for. This
44216+ option is useful if you want TPE restrictions to be applied to most
44217+ users on the system.
44218+
44219+config GRKERNSEC_TPE_GID
44220+ int "GID for untrusted users"
44221+ depends on GRKERNSEC_TPE && !GRKERNSEC_TPE_INVERT
44222+ default 1005
44223+ help
44224+ If you have selected the "Invert GID option" above, setting this
44225+ GID determines what group TPE restrictions will be *disabled* for.
44226+ If you have not selected the "Invert GID option" above, setting this
44227+ GID determines what group TPE restrictions will be *enabled* for.
44228+ If the sysctl option is enabled, a sysctl option with name "tpe_gid"
44229+ is created.
44230+
44231+config GRKERNSEC_TPE_GID
44232+ int "GID for trusted users"
44233+ depends on GRKERNSEC_TPE && GRKERNSEC_TPE_INVERT
44234+ default 1005
44235+ help
44236+ If you have selected the "Invert GID option" above, setting this
44237+ GID determines what group TPE restrictions will be *disabled* for.
44238+ If you have not selected the "Invert GID option" above, setting this
44239+ GID determines what group TPE restrictions will be *enabled* for.
44240+ If the sysctl option is enabled, a sysctl option with name "tpe_gid"
44241+ is created.
44242+
44243+endmenu
44244+menu "Network Protections"
44245+depends on GRKERNSEC
44246+
44247+config GRKERNSEC_RANDNET
44248+ bool "Larger entropy pools"
44249+ help
44250+ If you say Y here, the entropy pools used for many features of Linux
44251+ and grsecurity will be doubled in size. Since several grsecurity
44252+ features use additional randomness, it is recommended that you say Y
44253+ here. Saying Y here has a similar effect as modifying
44254+ /proc/sys/kernel/random/poolsize.
44255+
44256+config GRKERNSEC_BLACKHOLE
44257+ bool "TCP/UDP blackhole and LAST_ACK DoS prevention"
44258+ help
44259+ If you say Y here, neither TCP resets nor ICMP
44260+ destination-unreachable packets will be sent in response to packets
44261+ sent to ports for which no associated listening process exists.
44262+ This feature supports both IPV4 and IPV6 and exempts the
44263+ loopback interface from blackholing. Enabling this feature
44264+ makes a host more resilient to DoS attacks and reduces network
44265+ visibility against scanners.
44266+
44267+ The blackhole feature as-implemented is equivalent to the FreeBSD
44268+ blackhole feature, as it prevents RST responses to all packets, not
44269+ just SYNs. Under most application behavior this causes no
44270+ problems, but applications (like haproxy) may not close certain
44271+ connections in a way that cleanly terminates them on the remote
44272+ end, leaving the remote host in LAST_ACK state. Because of this
44273+ side-effect and to prevent intentional LAST_ACK DoSes, this
44274+ feature also adds automatic mitigation against such attacks.
44275+ The mitigation drastically reduces the amount of time a socket
44276+ can spend in LAST_ACK state. If you're using haproxy and not
44277+ all servers it connects to have this option enabled, consider
44278+ disabling this feature on the haproxy host.
44279+
44280+ If the sysctl option is enabled, two sysctl options with names
44281+ "ip_blackhole" and "lastack_retries" will be created.
44282+ While "ip_blackhole" takes the standard zero/non-zero on/off
44283+ toggle, "lastack_retries" uses the same kinds of values as
44284+ "tcp_retries1" and "tcp_retries2". The default value of 4
44285+ prevents a socket from lasting more than 45 seconds in LAST_ACK
44286+ state.
44287+
44288+config GRKERNSEC_SOCKET
44289+ bool "Socket restrictions"
44290+ help
44291+ If you say Y here, you will be able to choose from several options.
44292+ If you assign a GID on your system and add it to the supplementary
44293+ groups of users you want to restrict socket access to, this patch
44294+ will perform up to three things, based on the option(s) you choose.
44295+
44296+config GRKERNSEC_SOCKET_ALL
44297+ bool "Deny any sockets to group"
44298+ depends on GRKERNSEC_SOCKET
44299+ help
44300+ If you say Y here, you will be able to choose a GID of whose users will
44301+ be unable to connect to other hosts from your machine or run server
44302+ applications from your machine. If the sysctl option is enabled, a
44303+ sysctl option with name "socket_all" is created.
44304+
44305+config GRKERNSEC_SOCKET_ALL_GID
44306+ int "GID to deny all sockets for"
44307+ depends on GRKERNSEC_SOCKET_ALL
44308+ default 1004
44309+ help
44310+ Here you can choose the GID to disable socket access for. Remember to
44311+ add the users you want socket access disabled for to the GID
44312+ specified here. If the sysctl option is enabled, a sysctl option
44313+ with name "socket_all_gid" is created.
44314+
44315+config GRKERNSEC_SOCKET_CLIENT
44316+ bool "Deny client sockets to group"
44317+ depends on GRKERNSEC_SOCKET
44318+ help
44319+ If you say Y here, you will be able to choose a GID of whose users will
44320+ be unable to connect to other hosts from your machine, but will be
44321+ able to run servers. If this option is enabled, all users in the group
44322+ you specify will have to use passive mode when initiating ftp transfers
44323+ from the shell on your machine. If the sysctl option is enabled, a
44324+ sysctl option with name "socket_client" is created.
44325+
44326+config GRKERNSEC_SOCKET_CLIENT_GID
44327+ int "GID to deny client sockets for"
44328+ depends on GRKERNSEC_SOCKET_CLIENT
44329+ default 1003
44330+ help
44331+ Here you can choose the GID to disable client socket access for.
44332+ Remember to add the users you want client socket access disabled for to
44333+ the GID specified here. If the sysctl option is enabled, a sysctl
44334+ option with name "socket_client_gid" is created.
44335+
44336+config GRKERNSEC_SOCKET_SERVER
44337+ bool "Deny server sockets to group"
44338+ depends on GRKERNSEC_SOCKET
44339+ help
44340+ If you say Y here, you will be able to choose a GID of whose users will
44341+ be unable to run server applications from your machine. If the sysctl
44342+ option is enabled, a sysctl option with name "socket_server" is created.
44343+
44344+config GRKERNSEC_SOCKET_SERVER_GID
44345+ int "GID to deny server sockets for"
44346+ depends on GRKERNSEC_SOCKET_SERVER
44347+ default 1002
44348+ help
44349+ Here you can choose the GID to disable server socket access for.
44350+ Remember to add the users you want server socket access disabled for to
44351+ the GID specified here. If the sysctl option is enabled, a sysctl
44352+ option with name "socket_server_gid" is created.
44353+
44354+endmenu
44355+menu "Sysctl support"
44356+depends on GRKERNSEC && SYSCTL
44357+
44358+config GRKERNSEC_SYSCTL
44359+ bool "Sysctl support"
44360+ help
44361+ If you say Y here, you will be able to change the options that
44362+ grsecurity runs with at bootup, without having to recompile your
44363+ kernel. You can echo values to files in /proc/sys/kernel/grsecurity
44364+ to enable (1) or disable (0) various features. All the sysctl entries
44365+ are mutable until the "grsec_lock" entry is set to a non-zero value.
44366+ All features enabled in the kernel configuration are disabled at boot
44367+ if you do not say Y to the "Turn on features by default" option.
44368+ All options should be set at startup, and the grsec_lock entry should
44369+ be set to a non-zero value after all the options are set.
44370+ *THIS IS EXTREMELY IMPORTANT*
44371+
44372+config GRKERNSEC_SYSCTL_DISTRO
44373+ bool "Extra sysctl support for distro makers (READ HELP)"
44374+ depends on GRKERNSEC_SYSCTL && GRKERNSEC_IO
44375+ help
44376+ If you say Y here, additional sysctl options will be created
44377+ for features that affect processes running as root. Therefore,
44378+ it is critical when using this option that the grsec_lock entry be
44379+ enabled after boot. Only distros with prebuilt kernel packages
44380+ with this option enabled that can ensure grsec_lock is enabled
44381+ after boot should use this option.
44382+ *Failure to set grsec_lock after boot makes all grsec features
44383+ this option covers useless*
44384+
44385+ Currently this option creates the following sysctl entries:
44386+ "Disable Privileged I/O": "disable_priv_io"
44387+
44388+config GRKERNSEC_SYSCTL_ON
44389+ bool "Turn on features by default"
44390+ depends on GRKERNSEC_SYSCTL
44391+ help
44392+ If you say Y here, instead of having all features enabled in the
44393+ kernel configuration disabled at boot time, the features will be
44394+ enabled at boot time. It is recommended you say Y here unless
44395+ there is some reason you would want all sysctl-tunable features to
44396+ be disabled by default. As mentioned elsewhere, it is important
44397+ to enable the grsec_lock entry once you have finished modifying
44398+ the sysctl entries.
44399+
44400+endmenu
44401+menu "Logging Options"
44402+depends on GRKERNSEC
44403+
44404+config GRKERNSEC_FLOODTIME
44405+ int "Seconds in between log messages (minimum)"
44406+ default 10
44407+ help
44408+ This option allows you to enforce the number of seconds between
44409+ grsecurity log messages. The default should be suitable for most
44410+ people, however, if you choose to change it, choose a value small enough
44411+ to allow informative logs to be produced, but large enough to
44412+ prevent flooding.
44413+
44414+config GRKERNSEC_FLOODBURST
44415+ int "Number of messages in a burst (maximum)"
44416+ default 4
44417+ help
44418+ This option allows you to choose the maximum number of messages allowed
44419+ within the flood time interval you chose in a separate option. The
44420+ default should be suitable for most people, however if you find that
44421+ many of your logs are being interpreted as flooding, you may want to
44422+ raise this value.
44423+
44424+endmenu
44425+
44426+endmenu
44427diff -urNp linux-2.6.32.21/grsecurity/Makefile linux-2.6.32.21/grsecurity/Makefile
44428--- linux-2.6.32.21/grsecurity/Makefile 1969-12-31 19:00:00.000000000 -0500
44429+++ linux-2.6.32.21/grsecurity/Makefile 2010-09-04 15:54:52.000000000 -0400
44430@@ -0,0 +1,29 @@
44431+# grsecurity's ACL system was originally written in 2001 by Michael Dalton
44432+# during 2001-2009 it has been completely redesigned by Brad Spengler
44433+# into an RBAC system
44434+#
44435+# All code in this directory and various hooks inserted throughout the kernel
44436+# are copyright Brad Spengler - Open Source Security, Inc., and released
44437+# under the GPL v2 or higher
44438+
44439+obj-y = grsec_chdir.o grsec_chroot.o grsec_exec.o grsec_fifo.o grsec_fork.o \
44440+ grsec_mount.o grsec_sig.o grsec_sock.o grsec_sysctl.o \
44441+ grsec_time.o grsec_tpe.o grsec_link.o grsec_textrel.o grsec_ptrace.o
44442+
44443+obj-$(CONFIG_GRKERNSEC) += grsec_init.o grsum.o gracl.o gracl_ip.o gracl_segv.o \
44444+ gracl_cap.o gracl_alloc.o gracl_shm.o grsec_mem.o gracl_fs.o \
44445+ gracl_learn.o grsec_log.o
44446+obj-$(CONFIG_GRKERNSEC_RESLOG) += gracl_res.o
44447+
44448+ifndef CONFIG_GRKERNSEC
44449+obj-y += grsec_disabled.o
44450+endif
44451+
44452+ifdef CONFIG_GRKERNSEC_HIDESYM
44453+extra-y := grsec_hidesym.o
44454+$(obj)/grsec_hidesym.o:
44455+ @-chmod -f 500 /boot
44456+ @-chmod -f 500 /lib/modules
44457+ @-chmod -f 700 .
44458+ @echo ' grsec: protected kernel image paths'
44459+endif
44189diff -urNp linux-2.6.32.21/include/acpi/acoutput.h linux-2.6.32.21/include/acpi/acoutput.h 44460diff -urNp linux-2.6.32.21/include/acpi/acoutput.h linux-2.6.32.21/include/acpi/acoutput.h
44190--- linux-2.6.32.21/include/acpi/acoutput.h 2010-08-26 19:42:20.000000000 -0400 44461--- linux-2.6.32.21/include/acpi/acoutput.h 2010-08-13 16:24:37.000000000 -0400
44191+++ linux-2.6.32.21/include/acpi/acoutput.h 2010-09-13 08:10:10.000000000 -0400 44462+++ linux-2.6.32.21/include/acpi/acoutput.h 2010-09-04 15:54:52.000000000 -0400
44192@@ -264,8 +264,8 @@ 44463@@ -264,8 +264,8 @@
44193 * leaving no executable debug code! 44464 * leaving no executable debug code!
44194 */ 44465 */
@@ -44201,8 +44472,8 @@ diff -urNp linux-2.6.32.21/include/acpi/acoutput.h linux-2.6.32.21/include/acpi/
44201 #endif /* ACPI_DEBUG_OUTPUT */ 44472 #endif /* ACPI_DEBUG_OUTPUT */
44202 44473
44203diff -urNp linux-2.6.32.21/include/acpi/acpi_drivers.h linux-2.6.32.21/include/acpi/acpi_drivers.h 44474diff -urNp linux-2.6.32.21/include/acpi/acpi_drivers.h linux-2.6.32.21/include/acpi/acpi_drivers.h
44204--- linux-2.6.32.21/include/acpi/acpi_drivers.h 2010-08-26 19:42:20.000000000 -0400 44475--- linux-2.6.32.21/include/acpi/acpi_drivers.h 2010-08-13 16:24:37.000000000 -0400
44205+++ linux-2.6.32.21/include/acpi/acpi_drivers.h 2010-09-13 08:10:10.000000000 -0400 44476+++ linux-2.6.32.21/include/acpi/acpi_drivers.h 2010-09-04 15:54:52.000000000 -0400
44206@@ -119,8 +119,8 @@ int acpi_processor_set_thermal_limit(acp 44477@@ -119,8 +119,8 @@ int acpi_processor_set_thermal_limit(acp
44207 Dock Station 44478 Dock Station
44208 -------------------------------------------------------------------------- */ 44479 -------------------------------------------------------------------------- */
@@ -44233,8 +44504,8 @@ diff -urNp linux-2.6.32.21/include/acpi/acpi_drivers.h linux-2.6.32.21/include/a
44233 { 44504 {
44234 return -ENODEV; 44505 return -ENODEV;
44235diff -urNp linux-2.6.32.21/include/asm-generic/atomic-long.h linux-2.6.32.21/include/asm-generic/atomic-long.h 44506diff -urNp linux-2.6.32.21/include/asm-generic/atomic-long.h linux-2.6.32.21/include/asm-generic/atomic-long.h
44236--- linux-2.6.32.21/include/asm-generic/atomic-long.h 2010-08-26 19:42:20.000000000 -0400 44507--- linux-2.6.32.21/include/asm-generic/atomic-long.h 2010-08-13 16:24:37.000000000 -0400
44237+++ linux-2.6.32.21/include/asm-generic/atomic-long.h 2010-09-13 08:10:10.000000000 -0400 44508+++ linux-2.6.32.21/include/asm-generic/atomic-long.h 2010-09-04 15:54:56.000000000 -0400
44238@@ -22,6 +22,12 @@ 44509@@ -22,6 +22,12 @@
44239 44510
44240 typedef atomic64_t atomic_long_t; 44511 typedef atomic64_t atomic_long_t;
@@ -44492,8 +44763,8 @@ diff -urNp linux-2.6.32.21/include/asm-generic/atomic-long.h linux-2.6.32.21/inc
44492+ 44763+
44493 #endif /* _ASM_GENERIC_ATOMIC_LONG_H */ 44764 #endif /* _ASM_GENERIC_ATOMIC_LONG_H */
44494diff -urNp linux-2.6.32.21/include/asm-generic/dma-mapping-common.h linux-2.6.32.21/include/asm-generic/dma-mapping-common.h 44765diff -urNp linux-2.6.32.21/include/asm-generic/dma-mapping-common.h linux-2.6.32.21/include/asm-generic/dma-mapping-common.h
44495--- linux-2.6.32.21/include/asm-generic/dma-mapping-common.h 2010-08-26 19:42:20.000000000 -0400 44766--- linux-2.6.32.21/include/asm-generic/dma-mapping-common.h 2010-08-13 16:24:37.000000000 -0400
44496+++ linux-2.6.32.21/include/asm-generic/dma-mapping-common.h 2010-09-13 08:10:10.000000000 -0400 44767+++ linux-2.6.32.21/include/asm-generic/dma-mapping-common.h 2010-09-04 15:54:52.000000000 -0400
44497@@ -11,7 +11,7 @@ static inline dma_addr_t dma_map_single_ 44768@@ -11,7 +11,7 @@ static inline dma_addr_t dma_map_single_
44498 enum dma_data_direction dir, 44769 enum dma_data_direction dir,
44499 struct dma_attrs *attrs) 44770 struct dma_attrs *attrs)
@@ -44603,8 +44874,8 @@ diff -urNp linux-2.6.32.21/include/asm-generic/dma-mapping-common.h linux-2.6.32
44603 BUG_ON(!valid_dma_direction(dir)); 44874 BUG_ON(!valid_dma_direction(dir));
44604 if (ops->sync_sg_for_device) 44875 if (ops->sync_sg_for_device)
44605diff -urNp linux-2.6.32.21/include/asm-generic/futex.h linux-2.6.32.21/include/asm-generic/futex.h 44876diff -urNp linux-2.6.32.21/include/asm-generic/futex.h linux-2.6.32.21/include/asm-generic/futex.h
44606--- linux-2.6.32.21/include/asm-generic/futex.h 2010-08-26 19:42:20.000000000 -0400 44877--- linux-2.6.32.21/include/asm-generic/futex.h 2010-08-13 16:24:37.000000000 -0400
44607+++ linux-2.6.32.21/include/asm-generic/futex.h 2010-09-13 08:10:10.000000000 -0400 44878+++ linux-2.6.32.21/include/asm-generic/futex.h 2010-09-04 15:54:52.000000000 -0400
44608@@ -6,7 +6,7 @@ 44879@@ -6,7 +6,7 @@
44609 #include <asm/errno.h> 44880 #include <asm/errno.h>
44610 44881
@@ -44624,8 +44895,8 @@ diff -urNp linux-2.6.32.21/include/asm-generic/futex.h linux-2.6.32.21/include/a
44624 return -ENOSYS; 44895 return -ENOSYS;
44625 } 44896 }
44626diff -urNp linux-2.6.32.21/include/asm-generic/int-l64.h linux-2.6.32.21/include/asm-generic/int-l64.h 44897diff -urNp linux-2.6.32.21/include/asm-generic/int-l64.h linux-2.6.32.21/include/asm-generic/int-l64.h
44627--- linux-2.6.32.21/include/asm-generic/int-l64.h 2010-08-26 19:42:20.000000000 -0400 44898--- linux-2.6.32.21/include/asm-generic/int-l64.h 2010-08-13 16:24:37.000000000 -0400
44628+++ linux-2.6.32.21/include/asm-generic/int-l64.h 2010-09-13 08:10:10.000000000 -0400 44899+++ linux-2.6.32.21/include/asm-generic/int-l64.h 2010-09-04 15:54:52.000000000 -0400
44629@@ -46,6 +46,8 @@ typedef unsigned int u32; 44900@@ -46,6 +46,8 @@ typedef unsigned int u32;
44630 typedef signed long s64; 44901 typedef signed long s64;
44631 typedef unsigned long u64; 44902 typedef unsigned long u64;
@@ -44636,8 +44907,8 @@ diff -urNp linux-2.6.32.21/include/asm-generic/int-l64.h linux-2.6.32.21/include
44636 #define U8_C(x) x ## U 44907 #define U8_C(x) x ## U
44637 #define S16_C(x) x 44908 #define S16_C(x) x
44638diff -urNp linux-2.6.32.21/include/asm-generic/int-ll64.h linux-2.6.32.21/include/asm-generic/int-ll64.h 44909diff -urNp linux-2.6.32.21/include/asm-generic/int-ll64.h linux-2.6.32.21/include/asm-generic/int-ll64.h
44639--- linux-2.6.32.21/include/asm-generic/int-ll64.h 2010-08-26 19:42:20.000000000 -0400 44910--- linux-2.6.32.21/include/asm-generic/int-ll64.h 2010-08-13 16:24:37.000000000 -0400
44640+++ linux-2.6.32.21/include/asm-generic/int-ll64.h 2010-09-13 08:10:10.000000000 -0400 44911+++ linux-2.6.32.21/include/asm-generic/int-ll64.h 2010-09-04 15:54:52.000000000 -0400
44641@@ -51,6 +51,8 @@ typedef unsigned int u32; 44912@@ -51,6 +51,8 @@ typedef unsigned int u32;
44642 typedef signed long long s64; 44913 typedef signed long long s64;
44643 typedef unsigned long long u64; 44914 typedef unsigned long long u64;
@@ -44648,8 +44919,8 @@ diff -urNp linux-2.6.32.21/include/asm-generic/int-ll64.h linux-2.6.32.21/includ
44648 #define U8_C(x) x ## U 44919 #define U8_C(x) x ## U
44649 #define S16_C(x) x 44920 #define S16_C(x) x
44650diff -urNp linux-2.6.32.21/include/asm-generic/kmap_types.h linux-2.6.32.21/include/asm-generic/kmap_types.h 44921diff -urNp linux-2.6.32.21/include/asm-generic/kmap_types.h linux-2.6.32.21/include/asm-generic/kmap_types.h
44651--- linux-2.6.32.21/include/asm-generic/kmap_types.h 2010-08-26 19:42:20.000000000 -0400 44922--- linux-2.6.32.21/include/asm-generic/kmap_types.h 2010-08-13 16:24:37.000000000 -0400
44652+++ linux-2.6.32.21/include/asm-generic/kmap_types.h 2010-09-13 08:10:10.000000000 -0400 44923+++ linux-2.6.32.21/include/asm-generic/kmap_types.h 2010-09-04 15:54:52.000000000 -0400
44653@@ -28,7 +28,8 @@ KMAP_D(15) KM_UML_USERCOPY, 44924@@ -28,7 +28,8 @@ KMAP_D(15) KM_UML_USERCOPY,
44654 KMAP_D(16) KM_IRQ_PTE, 44925 KMAP_D(16) KM_IRQ_PTE,
44655 KMAP_D(17) KM_NMI, 44926 KMAP_D(17) KM_NMI,
@@ -44660,9 +44931,27 @@ diff -urNp linux-2.6.32.21/include/asm-generic/kmap_types.h linux-2.6.32.21/incl
44660 }; 44931 };
44661 44932
44662 #undef KMAP_D 44933 #undef KMAP_D
44934diff -urNp linux-2.6.32.21/include/asm-generic/pgtable.h linux-2.6.32.21/include/asm-generic/pgtable.h
44935--- linux-2.6.32.21/include/asm-generic/pgtable.h 2010-08-13 16:24:37.000000000 -0400
44936+++ linux-2.6.32.21/include/asm-generic/pgtable.h 2010-09-04 15:54:52.000000000 -0400
44937@@ -344,6 +344,14 @@ extern void untrack_pfn_vma(struct vm_ar
44938 unsigned long size);
44939 #endif
44940
44941+#ifndef __HAVE_ARCH_PAX_OPEN_KERNEL
44942+static inline unsigned long pax_open_kernel(void) { return 0; }
44943+#endif
44944+
44945+#ifndef __HAVE_ARCH_PAX_CLOSE_KERNEL
44946+static inline unsigned long pax_close_kernel(void) { return 0; }
44947+#endif
44948+
44949 #endif /* !__ASSEMBLY__ */
44950
44951 #endif /* _ASM_GENERIC_PGTABLE_H */
44663diff -urNp linux-2.6.32.21/include/asm-generic/pgtable-nopmd.h linux-2.6.32.21/include/asm-generic/pgtable-nopmd.h 44952diff -urNp linux-2.6.32.21/include/asm-generic/pgtable-nopmd.h linux-2.6.32.21/include/asm-generic/pgtable-nopmd.h
44664--- linux-2.6.32.21/include/asm-generic/pgtable-nopmd.h 2010-08-26 19:42:20.000000000 -0400 44953--- linux-2.6.32.21/include/asm-generic/pgtable-nopmd.h 2010-08-13 16:24:37.000000000 -0400
44665+++ linux-2.6.32.21/include/asm-generic/pgtable-nopmd.h 2010-09-13 08:10:10.000000000 -0400 44954+++ linux-2.6.32.21/include/asm-generic/pgtable-nopmd.h 2010-09-04 15:54:52.000000000 -0400
44666@@ -1,14 +1,19 @@ 44955@@ -1,14 +1,19 @@
44667 #ifndef _PGTABLE_NOPMD_H 44956 #ifndef _PGTABLE_NOPMD_H
44668 #define _PGTABLE_NOPMD_H 44957 #define _PGTABLE_NOPMD_H
@@ -44700,8 +44989,8 @@ diff -urNp linux-2.6.32.21/include/asm-generic/pgtable-nopmd.h linux-2.6.32.21/i
44700 * The "pud_xxx()" functions here are trivial for a folded two-level 44989 * The "pud_xxx()" functions here are trivial for a folded two-level
44701 * setup: the pmd is never bad, and a pmd always exists (as it's folded 44990 * setup: the pmd is never bad, and a pmd always exists (as it's folded
44702diff -urNp linux-2.6.32.21/include/asm-generic/pgtable-nopud.h linux-2.6.32.21/include/asm-generic/pgtable-nopud.h 44991diff -urNp linux-2.6.32.21/include/asm-generic/pgtable-nopud.h linux-2.6.32.21/include/asm-generic/pgtable-nopud.h
44703--- linux-2.6.32.21/include/asm-generic/pgtable-nopud.h 2010-08-26 19:42:20.000000000 -0400 44992--- linux-2.6.32.21/include/asm-generic/pgtable-nopud.h 2010-08-13 16:24:37.000000000 -0400
44704+++ linux-2.6.32.21/include/asm-generic/pgtable-nopud.h 2010-09-13 08:10:10.000000000 -0400 44993+++ linux-2.6.32.21/include/asm-generic/pgtable-nopud.h 2010-09-04 15:54:52.000000000 -0400
44705@@ -1,10 +1,15 @@ 44994@@ -1,10 +1,15 @@
44706 #ifndef _PGTABLE_NOPUD_H 44995 #ifndef _PGTABLE_NOPUD_H
44707 #define _PGTABLE_NOPUD_H 44996 #define _PGTABLE_NOPUD_H
@@ -44732,27 +45021,9 @@ diff -urNp linux-2.6.32.21/include/asm-generic/pgtable-nopud.h linux-2.6.32.21/i
44732 /* 45021 /*
44733 * The "pgd_xxx()" functions here are trivial for a folded two-level 45022 * The "pgd_xxx()" functions here are trivial for a folded two-level
44734 * setup: the pud is never bad, and a pud always exists (as it's folded 45023 * setup: the pud is never bad, and a pud always exists (as it's folded
44735diff -urNp linux-2.6.32.21/include/asm-generic/pgtable.h linux-2.6.32.21/include/asm-generic/pgtable.h
44736--- linux-2.6.32.21/include/asm-generic/pgtable.h 2010-08-26 19:42:20.000000000 -0400
44737+++ linux-2.6.32.21/include/asm-generic/pgtable.h 2010-09-13 08:10:10.000000000 -0400
44738@@ -344,6 +344,14 @@ extern void untrack_pfn_vma(struct vm_ar
44739 unsigned long size);
44740 #endif
44741
44742+#ifndef __HAVE_ARCH_PAX_OPEN_KERNEL
44743+static inline unsigned long pax_open_kernel(void) { return 0; }
44744+#endif
44745+
44746+#ifndef __HAVE_ARCH_PAX_CLOSE_KERNEL
44747+static inline unsigned long pax_close_kernel(void) { return 0; }
44748+#endif
44749+
44750 #endif /* !__ASSEMBLY__ */
44751
44752 #endif /* _ASM_GENERIC_PGTABLE_H */
44753diff -urNp linux-2.6.32.21/include/asm-generic/vmlinux.lds.h linux-2.6.32.21/include/asm-generic/vmlinux.lds.h 45024diff -urNp linux-2.6.32.21/include/asm-generic/vmlinux.lds.h linux-2.6.32.21/include/asm-generic/vmlinux.lds.h
44754--- linux-2.6.32.21/include/asm-generic/vmlinux.lds.h 2010-08-26 19:42:20.000000000 -0400 45025--- linux-2.6.32.21/include/asm-generic/vmlinux.lds.h 2010-08-13 16:24:37.000000000 -0400
44755+++ linux-2.6.32.21/include/asm-generic/vmlinux.lds.h 2010-09-13 08:10:10.000000000 -0400 45026+++ linux-2.6.32.21/include/asm-generic/vmlinux.lds.h 2010-09-04 15:54:52.000000000 -0400
44756@@ -199,6 +199,7 @@ 45027@@ -199,6 +199,7 @@
44757 .rodata : AT(ADDR(.rodata) - LOAD_OFFSET) { \ 45028 .rodata : AT(ADDR(.rodata) - LOAD_OFFSET) { \
44758 VMLINUX_SYMBOL(__start_rodata) = .; \ 45029 VMLINUX_SYMBOL(__start_rodata) = .; \
@@ -44791,39 +45062,9 @@ diff -urNp linux-2.6.32.21/include/asm-generic/vmlinux.lds.h linux-2.6.32.21/inc
44791 45062
44792 /** 45063 /**
44793 * PERCPU - define output section for percpu area, simple version 45064 * PERCPU - define output section for percpu area, simple version
44794diff -urNp linux-2.6.32.21/include/drm/drmP.h linux-2.6.32.21/include/drm/drmP.h
44795--- linux-2.6.32.21/include/drm/drmP.h 2010-08-26 19:42:20.000000000 -0400
44796+++ linux-2.6.32.21/include/drm/drmP.h 2010-09-13 08:10:10.000000000 -0400
44797@@ -814,7 +814,7 @@ struct drm_driver {
44798 void (*vgaarb_irq)(struct drm_device *dev, bool state);
44799
44800 /* Driver private ops for this object */
44801- struct vm_operations_struct *gem_vm_ops;
44802+ const struct vm_operations_struct *gem_vm_ops;
44803
44804 int major;
44805 int minor;
44806@@ -917,7 +917,7 @@ struct drm_device {
44807
44808 /** \name Usage Counters */
44809 /*@{ */
44810- int open_count; /**< Outstanding files open */
44811+ atomic_t open_count; /**< Outstanding files open */
44812 atomic_t ioctl_count; /**< Outstanding IOCTLs pending */
44813 atomic_t vma_count; /**< Outstanding vma areas open */
44814 int buf_use; /**< Buffers in use -- cannot alloc */
44815@@ -928,7 +928,7 @@ struct drm_device {
44816 /*@{ */
44817 unsigned long counters;
44818 enum drm_stat_type types[15];
44819- atomic_t counts[15];
44820+ atomic_unchecked_t counts[15];
44821 /*@} */
44822
44823 struct list_head filelist;
44824diff -urNp linux-2.6.32.21/include/drm/drm_pciids.h linux-2.6.32.21/include/drm/drm_pciids.h 45065diff -urNp linux-2.6.32.21/include/drm/drm_pciids.h linux-2.6.32.21/include/drm/drm_pciids.h
44825--- linux-2.6.32.21/include/drm/drm_pciids.h 2010-08-26 19:42:20.000000000 -0400 45066--- linux-2.6.32.21/include/drm/drm_pciids.h 2010-08-13 16:24:37.000000000 -0400
44826+++ linux-2.6.32.21/include/drm/drm_pciids.h 2010-09-13 08:10:10.000000000 -0400 45067+++ linux-2.6.32.21/include/drm/drm_pciids.h 2010-09-04 15:54:52.000000000 -0400
44827@@ -377,7 +377,7 @@ 45068@@ -377,7 +377,7 @@
44828 {0x1002, 0x9713, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RS880|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ 45069 {0x1002, 0x9713, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RS880|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \
44829 {0x1002, 0x9714, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RS880|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ 45070 {0x1002, 0x9714, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RS880|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \
@@ -44927,9 +45168,39 @@ diff -urNp linux-2.6.32.21/include/drm/drm_pciids.h linux-2.6.32.21/include/drm/
44927 {0x8086, 0x0046, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, 0xffff00, 0}, \ 45168 {0x8086, 0x0046, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, 0xffff00, 0}, \
44928- {0, 0, 0} 45169- {0, 0, 0}
44929+ {0, 0, 0, 0, 0, 0} 45170+ {0, 0, 0, 0, 0, 0}
45171diff -urNp linux-2.6.32.21/include/drm/drmP.h linux-2.6.32.21/include/drm/drmP.h
45172--- linux-2.6.32.21/include/drm/drmP.h 2010-08-13 16:24:37.000000000 -0400
45173+++ linux-2.6.32.21/include/drm/drmP.h 2010-09-04 15:54:52.000000000 -0400
45174@@ -814,7 +814,7 @@ struct drm_driver {
45175 void (*vgaarb_irq)(struct drm_device *dev, bool state);
45176
45177 /* Driver private ops for this object */
45178- struct vm_operations_struct *gem_vm_ops;
45179+ const struct vm_operations_struct *gem_vm_ops;
45180
45181 int major;
45182 int minor;
45183@@ -917,7 +917,7 @@ struct drm_device {
45184
45185 /** \name Usage Counters */
45186 /*@{ */
45187- int open_count; /**< Outstanding files open */
45188+ atomic_t open_count; /**< Outstanding files open */
45189 atomic_t ioctl_count; /**< Outstanding IOCTLs pending */
45190 atomic_t vma_count; /**< Outstanding vma areas open */
45191 int buf_use; /**< Buffers in use -- cannot alloc */
45192@@ -928,7 +928,7 @@ struct drm_device {
45193 /*@{ */
45194 unsigned long counters;
45195 enum drm_stat_type types[15];
45196- atomic_t counts[15];
45197+ atomic_unchecked_t counts[15];
45198 /*@} */
45199
45200 struct list_head filelist;
44930diff -urNp linux-2.6.32.21/include/linux/a.out.h linux-2.6.32.21/include/linux/a.out.h 45201diff -urNp linux-2.6.32.21/include/linux/a.out.h linux-2.6.32.21/include/linux/a.out.h
44931--- linux-2.6.32.21/include/linux/a.out.h 2010-08-26 19:42:20.000000000 -0400 45202--- linux-2.6.32.21/include/linux/a.out.h 2010-08-13 16:24:37.000000000 -0400
44932+++ linux-2.6.32.21/include/linux/a.out.h 2010-09-13 08:10:10.000000000 -0400 45203+++ linux-2.6.32.21/include/linux/a.out.h 2010-09-04 15:54:52.000000000 -0400
44933@@ -39,6 +39,14 @@ enum machine_type { 45204@@ -39,6 +39,14 @@ enum machine_type {
44934 M_MIPS2 = 152 /* MIPS R6000/R4000 binary */ 45205 M_MIPS2 = 152 /* MIPS R6000/R4000 binary */
44935 }; 45206 };
@@ -44946,8 +45217,8 @@ diff -urNp linux-2.6.32.21/include/linux/a.out.h linux-2.6.32.21/include/linux/a
44946 #define N_MAGIC(exec) ((exec).a_info & 0xffff) 45217 #define N_MAGIC(exec) ((exec).a_info & 0xffff)
44947 #endif 45218 #endif
44948diff -urNp linux-2.6.32.21/include/linux/atmdev.h linux-2.6.32.21/include/linux/atmdev.h 45219diff -urNp linux-2.6.32.21/include/linux/atmdev.h linux-2.6.32.21/include/linux/atmdev.h
44949--- linux-2.6.32.21/include/linux/atmdev.h 2010-08-26 19:42:20.000000000 -0400 45220--- linux-2.6.32.21/include/linux/atmdev.h 2010-08-13 16:24:37.000000000 -0400
44950+++ linux-2.6.32.21/include/linux/atmdev.h 2010-09-13 08:10:10.000000000 -0400 45221+++ linux-2.6.32.21/include/linux/atmdev.h 2010-09-04 15:54:52.000000000 -0400
44951@@ -237,7 +237,7 @@ struct compat_atm_iobuf { 45222@@ -237,7 +237,7 @@ struct compat_atm_iobuf {
44952 #endif 45223 #endif
44953 45224
@@ -44958,8 +45229,8 @@ diff -urNp linux-2.6.32.21/include/linux/atmdev.h linux-2.6.32.21/include/linux/
44958 #undef __HANDLE_ITEM 45229 #undef __HANDLE_ITEM
44959 }; 45230 };
44960diff -urNp linux-2.6.32.21/include/linux/backlight.h linux-2.6.32.21/include/linux/backlight.h 45231diff -urNp linux-2.6.32.21/include/linux/backlight.h linux-2.6.32.21/include/linux/backlight.h
44961--- linux-2.6.32.21/include/linux/backlight.h 2010-08-26 19:42:20.000000000 -0400 45232--- linux-2.6.32.21/include/linux/backlight.h 2010-08-13 16:24:37.000000000 -0400
44962+++ linux-2.6.32.21/include/linux/backlight.h 2010-09-13 08:10:10.000000000 -0400 45233+++ linux-2.6.32.21/include/linux/backlight.h 2010-09-04 15:54:52.000000000 -0400
44963@@ -36,18 +36,18 @@ struct backlight_device; 45234@@ -36,18 +36,18 @@ struct backlight_device;
44964 struct fb_info; 45235 struct fb_info;
44965 45236
@@ -45002,8 +45273,8 @@ diff -urNp linux-2.6.32.21/include/linux/backlight.h linux-2.6.32.21/include/lin
45002 extern void backlight_force_update(struct backlight_device *bd, 45273 extern void backlight_force_update(struct backlight_device *bd,
45003 enum backlight_update_reason reason); 45274 enum backlight_update_reason reason);
45004diff -urNp linux-2.6.32.21/include/linux/binfmts.h linux-2.6.32.21/include/linux/binfmts.h 45275diff -urNp linux-2.6.32.21/include/linux/binfmts.h linux-2.6.32.21/include/linux/binfmts.h
45005--- linux-2.6.32.21/include/linux/binfmts.h 2010-08-26 19:42:20.000000000 -0400 45276--- linux-2.6.32.21/include/linux/binfmts.h 2010-08-13 16:24:37.000000000 -0400
45006+++ linux-2.6.32.21/include/linux/binfmts.h 2010-09-13 08:10:10.000000000 -0400 45277+++ linux-2.6.32.21/include/linux/binfmts.h 2010-09-04 15:54:52.000000000 -0400
45007@@ -78,6 +78,7 @@ struct linux_binfmt { 45278@@ -78,6 +78,7 @@ struct linux_binfmt {
45008 int (*load_binary)(struct linux_binprm *, struct pt_regs * regs); 45279 int (*load_binary)(struct linux_binprm *, struct pt_regs * regs);
45009 int (*load_shlib)(struct file *); 45280 int (*load_shlib)(struct file *);
@@ -45013,8 +45284,8 @@ diff -urNp linux-2.6.32.21/include/linux/binfmts.h linux-2.6.32.21/include/linux
45013 int hasvdso; 45284 int hasvdso;
45014 }; 45285 };
45015diff -urNp linux-2.6.32.21/include/linux/blkdev.h linux-2.6.32.21/include/linux/blkdev.h 45286diff -urNp linux-2.6.32.21/include/linux/blkdev.h linux-2.6.32.21/include/linux/blkdev.h
45016--- linux-2.6.32.21/include/linux/blkdev.h 2010-08-26 19:42:20.000000000 -0400 45287--- linux-2.6.32.21/include/linux/blkdev.h 2010-08-13 16:24:37.000000000 -0400
45017+++ linux-2.6.32.21/include/linux/blkdev.h 2010-09-13 08:10:10.000000000 -0400 45288+++ linux-2.6.32.21/include/linux/blkdev.h 2010-09-04 15:54:52.000000000 -0400
45018@@ -1262,19 +1262,19 @@ static inline int blk_integrity_rq(struc 45289@@ -1262,19 +1262,19 @@ static inline int blk_integrity_rq(struc
45019 #endif /* CONFIG_BLK_DEV_INTEGRITY */ 45290 #endif /* CONFIG_BLK_DEV_INTEGRITY */
45020 45291
@@ -45047,8 +45318,8 @@ diff -urNp linux-2.6.32.21/include/linux/blkdev.h linux-2.6.32.21/include/linux/
45047 45318
45048 extern int __blkdev_driver_ioctl(struct block_device *, fmode_t, unsigned int, 45319 extern int __blkdev_driver_ioctl(struct block_device *, fmode_t, unsigned int,
45049diff -urNp linux-2.6.32.21/include/linux/cache.h linux-2.6.32.21/include/linux/cache.h 45320diff -urNp linux-2.6.32.21/include/linux/cache.h linux-2.6.32.21/include/linux/cache.h
45050--- linux-2.6.32.21/include/linux/cache.h 2010-08-26 19:42:20.000000000 -0400 45321--- linux-2.6.32.21/include/linux/cache.h 2010-08-13 16:24:37.000000000 -0400
45051+++ linux-2.6.32.21/include/linux/cache.h 2010-09-13 08:10:10.000000000 -0400 45322+++ linux-2.6.32.21/include/linux/cache.h 2010-09-04 15:54:52.000000000 -0400
45052@@ -16,6 +16,10 @@ 45323@@ -16,6 +16,10 @@
45053 #define __read_mostly 45324 #define __read_mostly
45054 #endif 45325 #endif
@@ -45061,8 +45332,8 @@ diff -urNp linux-2.6.32.21/include/linux/cache.h linux-2.6.32.21/include/linux/c
45061 #define ____cacheline_aligned __attribute__((__aligned__(SMP_CACHE_BYTES))) 45332 #define ____cacheline_aligned __attribute__((__aligned__(SMP_CACHE_BYTES)))
45062 #endif 45333 #endif
45063diff -urNp linux-2.6.32.21/include/linux/capability.h linux-2.6.32.21/include/linux/capability.h 45334diff -urNp linux-2.6.32.21/include/linux/capability.h linux-2.6.32.21/include/linux/capability.h
45064--- linux-2.6.32.21/include/linux/capability.h 2010-08-26 19:42:20.000000000 -0400 45335--- linux-2.6.32.21/include/linux/capability.h 2010-08-13 16:24:37.000000000 -0400
45065+++ linux-2.6.32.21/include/linux/capability.h 2010-09-13 08:10:10.000000000 -0400 45336+++ linux-2.6.32.21/include/linux/capability.h 2010-09-04 15:54:52.000000000 -0400
45066@@ -563,6 +563,7 @@ extern const kernel_cap_t __cap_init_eff 45337@@ -563,6 +563,7 @@ extern const kernel_cap_t __cap_init_eff
45067 (security_real_capable_noaudit((t), (cap)) == 0) 45338 (security_real_capable_noaudit((t), (cap)) == 0)
45068 45339
@@ -45071,9 +45342,20 @@ diff -urNp linux-2.6.32.21/include/linux/capability.h linux-2.6.32.21/include/li
45071 45342
45072 /* audit system wants to get cap info from files as well */ 45343 /* audit system wants to get cap info from files as well */
45073 struct dentry; 45344 struct dentry;
45345diff -urNp linux-2.6.32.21/include/linux/compat.h linux-2.6.32.21/include/linux/compat.h
45346--- linux-2.6.32.21/include/linux/compat.h 2010-08-13 16:24:37.000000000 -0400
45347+++ linux-2.6.32.21/include/linux/compat.h 2010-09-15 02:04:33.000000000 -0400
45348@@ -309,5 +309,7 @@ asmlinkage long compat_sys_newfstatat(un
45349 asmlinkage long compat_sys_openat(unsigned int dfd, const char __user *filename,
45350 int flags, int mode);
45351
45352+extern void __user *compat_alloc_user_space(unsigned long len);
45353+
45354 #endif /* CONFIG_COMPAT */
45355 #endif /* _LINUX_COMPAT_H */
45074diff -urNp linux-2.6.32.21/include/linux/compiler-gcc4.h linux-2.6.32.21/include/linux/compiler-gcc4.h 45356diff -urNp linux-2.6.32.21/include/linux/compiler-gcc4.h linux-2.6.32.21/include/linux/compiler-gcc4.h
45075--- linux-2.6.32.21/include/linux/compiler-gcc4.h 2010-08-26 19:42:20.000000000 -0400 45357--- linux-2.6.32.21/include/linux/compiler-gcc4.h 2010-08-13 16:24:37.000000000 -0400
45076+++ linux-2.6.32.21/include/linux/compiler-gcc4.h 2010-09-13 08:10:10.000000000 -0400 45358+++ linux-2.6.32.21/include/linux/compiler-gcc4.h 2010-09-04 15:54:52.000000000 -0400
45077@@ -36,4 +36,8 @@ 45359@@ -36,4 +36,8 @@
45078 the kernel context */ 45360 the kernel context */
45079 #define __cold __attribute__((__cold__)) 45361 #define __cold __attribute__((__cold__))
@@ -45084,8 +45366,8 @@ diff -urNp linux-2.6.32.21/include/linux/compiler-gcc4.h linux-2.6.32.21/include
45084+#define __bos1(ptr) __bos((ptr), 1) 45366+#define __bos1(ptr) __bos((ptr), 1)
45085 #endif 45367 #endif
45086diff -urNp linux-2.6.32.21/include/linux/compiler.h linux-2.6.32.21/include/linux/compiler.h 45368diff -urNp linux-2.6.32.21/include/linux/compiler.h linux-2.6.32.21/include/linux/compiler.h
45087--- linux-2.6.32.21/include/linux/compiler.h 2010-08-26 19:42:20.000000000 -0400 45369--- linux-2.6.32.21/include/linux/compiler.h 2010-08-13 16:24:37.000000000 -0400
45088+++ linux-2.6.32.21/include/linux/compiler.h 2010-09-13 08:10:10.000000000 -0400 45370+++ linux-2.6.32.21/include/linux/compiler.h 2010-09-04 15:54:52.000000000 -0400
45089@@ -256,6 +256,22 @@ void ftrace_likely_update(struct ftrace_ 45371@@ -256,6 +256,22 @@ void ftrace_likely_update(struct ftrace_
45090 #define __cold 45372 #define __cold
45091 #endif 45373 #endif
@@ -45110,8 +45392,8 @@ diff -urNp linux-2.6.32.21/include/linux/compiler.h linux-2.6.32.21/include/linu
45110 #ifndef __section 45392 #ifndef __section
45111 # define __section(S) __attribute__ ((__section__(#S))) 45393 # define __section(S) __attribute__ ((__section__(#S)))
45112diff -urNp linux-2.6.32.21/include/linux/decompress/mm.h linux-2.6.32.21/include/linux/decompress/mm.h 45394diff -urNp linux-2.6.32.21/include/linux/decompress/mm.h linux-2.6.32.21/include/linux/decompress/mm.h
45113--- linux-2.6.32.21/include/linux/decompress/mm.h 2010-08-26 19:42:20.000000000 -0400 45395--- linux-2.6.32.21/include/linux/decompress/mm.h 2010-08-13 16:24:37.000000000 -0400
45114+++ linux-2.6.32.21/include/linux/decompress/mm.h 2010-09-13 08:10:10.000000000 -0400 45396+++ linux-2.6.32.21/include/linux/decompress/mm.h 2010-09-04 15:54:52.000000000 -0400
45115@@ -78,7 +78,7 @@ static void free(void *where) 45397@@ -78,7 +78,7 @@ static void free(void *where)
45116 * warnings when not needed (indeed large_malloc / large_free are not 45398 * warnings when not needed (indeed large_malloc / large_free are not
45117 * needed by inflate */ 45399 * needed by inflate */
@@ -45122,8 +45404,8 @@ diff -urNp linux-2.6.32.21/include/linux/decompress/mm.h linux-2.6.32.21/include
45122 45404
45123 #define large_malloc(a) vmalloc(a) 45405 #define large_malloc(a) vmalloc(a)
45124diff -urNp linux-2.6.32.21/include/linux/dma-mapping.h linux-2.6.32.21/include/linux/dma-mapping.h 45406diff -urNp linux-2.6.32.21/include/linux/dma-mapping.h linux-2.6.32.21/include/linux/dma-mapping.h
45125--- linux-2.6.32.21/include/linux/dma-mapping.h 2010-08-26 19:42:20.000000000 -0400 45407--- linux-2.6.32.21/include/linux/dma-mapping.h 2010-08-13 16:24:37.000000000 -0400
45126+++ linux-2.6.32.21/include/linux/dma-mapping.h 2010-09-13 08:10:10.000000000 -0400 45408+++ linux-2.6.32.21/include/linux/dma-mapping.h 2010-09-04 15:54:52.000000000 -0400
45127@@ -16,50 +16,50 @@ enum dma_data_direction { 45409@@ -16,50 +16,50 @@ enum dma_data_direction {
45128 }; 45410 };
45129 45411
@@ -45191,8 +45473,8 @@ diff -urNp linux-2.6.32.21/include/linux/dma-mapping.h linux-2.6.32.21/include/l
45191 45473
45192 #define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1)) 45474 #define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1))
45193diff -urNp linux-2.6.32.21/include/linux/dst.h linux-2.6.32.21/include/linux/dst.h 45475diff -urNp linux-2.6.32.21/include/linux/dst.h linux-2.6.32.21/include/linux/dst.h
45194--- linux-2.6.32.21/include/linux/dst.h 2010-08-26 19:42:20.000000000 -0400 45476--- linux-2.6.32.21/include/linux/dst.h 2010-08-13 16:24:37.000000000 -0400
45195+++ linux-2.6.32.21/include/linux/dst.h 2010-09-13 08:10:10.000000000 -0400 45477+++ linux-2.6.32.21/include/linux/dst.h 2010-09-04 15:54:52.000000000 -0400
45196@@ -380,7 +380,7 @@ struct dst_node 45478@@ -380,7 +380,7 @@ struct dst_node
45197 struct thread_pool *pool; 45479 struct thread_pool *pool;
45198 45480
@@ -45203,8 +45485,8 @@ diff -urNp linux-2.6.32.21/include/linux/dst.h linux-2.6.32.21/include/linux/dst
45203 /* 45485 /*
45204 * How frequently and how many times transaction 45486 * How frequently and how many times transaction
45205diff -urNp linux-2.6.32.21/include/linux/elf.h linux-2.6.32.21/include/linux/elf.h 45487diff -urNp linux-2.6.32.21/include/linux/elf.h linux-2.6.32.21/include/linux/elf.h
45206--- linux-2.6.32.21/include/linux/elf.h 2010-08-26 19:42:20.000000000 -0400 45488--- linux-2.6.32.21/include/linux/elf.h 2010-08-13 16:24:37.000000000 -0400
45207+++ linux-2.6.32.21/include/linux/elf.h 2010-09-13 08:10:10.000000000 -0400 45489+++ linux-2.6.32.21/include/linux/elf.h 2010-09-04 15:54:52.000000000 -0400
45208@@ -49,6 +49,17 @@ typedef __s64 Elf64_Sxword; 45490@@ -49,6 +49,17 @@ typedef __s64 Elf64_Sxword;
45209 #define PT_GNU_EH_FRAME 0x6474e550 45491 #define PT_GNU_EH_FRAME 0x6474e550
45210 45492
@@ -45278,8 +45560,8 @@ diff -urNp linux-2.6.32.21/include/linux/elf.h linux-2.6.32.21/include/linux/elf
45278 #endif 45560 #endif
45279 45561
45280diff -urNp linux-2.6.32.21/include/linux/fs.h linux-2.6.32.21/include/linux/fs.h 45562diff -urNp linux-2.6.32.21/include/linux/fs.h linux-2.6.32.21/include/linux/fs.h
45281--- linux-2.6.32.21/include/linux/fs.h 2010-08-26 19:42:20.000000000 -0400 45563--- linux-2.6.32.21/include/linux/fs.h 2010-08-13 16:24:37.000000000 -0400
45282+++ linux-2.6.32.21/include/linux/fs.h 2010-09-13 08:10:10.000000000 -0400 45564+++ linux-2.6.32.21/include/linux/fs.h 2010-09-04 15:54:52.000000000 -0400
45283@@ -90,6 +90,11 @@ struct inodes_stat_t { 45565@@ -90,6 +90,11 @@ struct inodes_stat_t {
45284 /* Expect random access pattern */ 45566 /* Expect random access pattern */
45285 #define FMODE_RANDOM ((__force fmode_t)4096) 45567 #define FMODE_RANDOM ((__force fmode_t)4096)
@@ -45442,8 +45724,8 @@ diff -urNp linux-2.6.32.21/include/linux/fs.h linux-2.6.32.21/include/linux/fs.h
45442 45724
45443 /* 45725 /*
45444diff -urNp linux-2.6.32.21/include/linux/fs_struct.h linux-2.6.32.21/include/linux/fs_struct.h 45726diff -urNp linux-2.6.32.21/include/linux/fs_struct.h linux-2.6.32.21/include/linux/fs_struct.h
45445--- linux-2.6.32.21/include/linux/fs_struct.h 2010-08-26 19:42:20.000000000 -0400 45727--- linux-2.6.32.21/include/linux/fs_struct.h 2010-08-13 16:24:37.000000000 -0400
45446+++ linux-2.6.32.21/include/linux/fs_struct.h 2010-09-13 08:10:10.000000000 -0400 45728+++ linux-2.6.32.21/include/linux/fs_struct.h 2010-09-04 15:54:52.000000000 -0400
45447@@ -4,7 +4,7 @@ 45729@@ -4,7 +4,7 @@
45448 #include <linux/path.h> 45730 #include <linux/path.h>
45449 45731
@@ -45454,8 +45736,8 @@ diff -urNp linux-2.6.32.21/include/linux/fs_struct.h linux-2.6.32.21/include/lin
45454 int umask; 45736 int umask;
45455 int in_exec; 45737 int in_exec;
45456diff -urNp linux-2.6.32.21/include/linux/genhd.h linux-2.6.32.21/include/linux/genhd.h 45738diff -urNp linux-2.6.32.21/include/linux/genhd.h linux-2.6.32.21/include/linux/genhd.h
45457--- linux-2.6.32.21/include/linux/genhd.h 2010-08-26 19:42:20.000000000 -0400 45739--- linux-2.6.32.21/include/linux/genhd.h 2010-08-13 16:24:37.000000000 -0400
45458+++ linux-2.6.32.21/include/linux/genhd.h 2010-09-13 08:10:10.000000000 -0400 45740+++ linux-2.6.32.21/include/linux/genhd.h 2010-09-04 15:54:52.000000000 -0400
45459@@ -161,7 +161,7 @@ struct gendisk { 45741@@ -161,7 +161,7 @@ struct gendisk {
45460 45742
45461 struct timer_rand_state *random; 45743 struct timer_rand_state *random;
@@ -45467,7 +45749,7 @@ diff -urNp linux-2.6.32.21/include/linux/genhd.h linux-2.6.32.21/include/linux/g
45467 struct blk_integrity *integrity; 45749 struct blk_integrity *integrity;
45468diff -urNp linux-2.6.32.21/include/linux/gracl.h linux-2.6.32.21/include/linux/gracl.h 45750diff -urNp linux-2.6.32.21/include/linux/gracl.h linux-2.6.32.21/include/linux/gracl.h
45469--- linux-2.6.32.21/include/linux/gracl.h 1969-12-31 19:00:00.000000000 -0500 45751--- linux-2.6.32.21/include/linux/gracl.h 1969-12-31 19:00:00.000000000 -0500
45470+++ linux-2.6.32.21/include/linux/gracl.h 2010-09-13 08:10:10.000000000 -0400 45752+++ linux-2.6.32.21/include/linux/gracl.h 2010-09-04 15:54:52.000000000 -0400
45471@@ -0,0 +1,310 @@ 45753@@ -0,0 +1,310 @@
45472+#ifndef GR_ACL_H 45754+#ifndef GR_ACL_H
45473+#define GR_ACL_H 45755+#define GR_ACL_H
@@ -45781,7 +46063,7 @@ diff -urNp linux-2.6.32.21/include/linux/gracl.h linux-2.6.32.21/include/linux/g
45781+ 46063+
45782diff -urNp linux-2.6.32.21/include/linux/gralloc.h linux-2.6.32.21/include/linux/gralloc.h 46064diff -urNp linux-2.6.32.21/include/linux/gralloc.h linux-2.6.32.21/include/linux/gralloc.h
45783--- linux-2.6.32.21/include/linux/gralloc.h 1969-12-31 19:00:00.000000000 -0500 46065--- linux-2.6.32.21/include/linux/gralloc.h 1969-12-31 19:00:00.000000000 -0500
45784+++ linux-2.6.32.21/include/linux/gralloc.h 2010-09-13 08:10:10.000000000 -0400 46066+++ linux-2.6.32.21/include/linux/gralloc.h 2010-09-04 15:54:52.000000000 -0400
45785@@ -0,0 +1,9 @@ 46067@@ -0,0 +1,9 @@
45786+#ifndef __GRALLOC_H 46068+#ifndef __GRALLOC_H
45787+#define __GRALLOC_H 46069+#define __GRALLOC_H
@@ -45794,7 +46076,7 @@ diff -urNp linux-2.6.32.21/include/linux/gralloc.h linux-2.6.32.21/include/linux
45794+#endif 46076+#endif
45795diff -urNp linux-2.6.32.21/include/linux/grdefs.h linux-2.6.32.21/include/linux/grdefs.h 46077diff -urNp linux-2.6.32.21/include/linux/grdefs.h linux-2.6.32.21/include/linux/grdefs.h
45796--- linux-2.6.32.21/include/linux/grdefs.h 1969-12-31 19:00:00.000000000 -0500 46078--- linux-2.6.32.21/include/linux/grdefs.h 1969-12-31 19:00:00.000000000 -0500
45797+++ linux-2.6.32.21/include/linux/grdefs.h 2010-09-13 08:10:10.000000000 -0400 46079+++ linux-2.6.32.21/include/linux/grdefs.h 2010-09-04 15:54:52.000000000 -0400
45798@@ -0,0 +1,136 @@ 46080@@ -0,0 +1,136 @@
45799+#ifndef GRDEFS_H 46081+#ifndef GRDEFS_H
45800+#define GRDEFS_H 46082+#define GRDEFS_H
@@ -45934,7 +46216,7 @@ diff -urNp linux-2.6.32.21/include/linux/grdefs.h linux-2.6.32.21/include/linux/
45934+#endif 46216+#endif
45935diff -urNp linux-2.6.32.21/include/linux/grinternal.h linux-2.6.32.21/include/linux/grinternal.h 46217diff -urNp linux-2.6.32.21/include/linux/grinternal.h linux-2.6.32.21/include/linux/grinternal.h
45936--- linux-2.6.32.21/include/linux/grinternal.h 1969-12-31 19:00:00.000000000 -0500 46218--- linux-2.6.32.21/include/linux/grinternal.h 1969-12-31 19:00:00.000000000 -0500
45937+++ linux-2.6.32.21/include/linux/grinternal.h 2010-09-13 08:10:10.000000000 -0400 46219+++ linux-2.6.32.21/include/linux/grinternal.h 2010-09-04 15:54:52.000000000 -0400
45938@@ -0,0 +1,211 @@ 46220@@ -0,0 +1,211 @@
45939+#ifndef __GRINTERNAL_H 46221+#ifndef __GRINTERNAL_H
45940+#define __GRINTERNAL_H 46222+#define __GRINTERNAL_H
@@ -46149,7 +46431,7 @@ diff -urNp linux-2.6.32.21/include/linux/grinternal.h linux-2.6.32.21/include/li
46149+#endif 46431+#endif
46150diff -urNp linux-2.6.32.21/include/linux/grmsg.h linux-2.6.32.21/include/linux/grmsg.h 46432diff -urNp linux-2.6.32.21/include/linux/grmsg.h linux-2.6.32.21/include/linux/grmsg.h
46151--- linux-2.6.32.21/include/linux/grmsg.h 1969-12-31 19:00:00.000000000 -0500 46433--- linux-2.6.32.21/include/linux/grmsg.h 1969-12-31 19:00:00.000000000 -0500
46152+++ linux-2.6.32.21/include/linux/grmsg.h 2010-09-13 08:10:10.000000000 -0400 46434+++ linux-2.6.32.21/include/linux/grmsg.h 2010-09-04 15:54:52.000000000 -0400
46153@@ -0,0 +1,108 @@ 46435@@ -0,0 +1,108 @@
46154+#define DEFAULTSECMSG "%.256s[%.16s:%d] uid/euid:%u/%u gid/egid:%u/%u, parent %.256s[%.16s:%d] uid/euid:%u/%u gid/egid:%u/%u" 46436+#define DEFAULTSECMSG "%.256s[%.16s:%d] uid/euid:%u/%u gid/egid:%u/%u, parent %.256s[%.16s:%d] uid/euid:%u/%u gid/egid:%u/%u"
46155+#define GR_ACL_PROCACCT_MSG "%.256s[%.16s:%d] IP:%pI4 TTY:%.64s uid/euid:%u/%u gid/egid:%u/%u run time:[%ud %uh %um %us] cpu time:[%ud %uh %um %us] %s with exit code %ld, parent %.256s[%.16s:%d] IP:%pI4 TTY:%.64s uid/euid:%u/%u gid/egid:%u/%u" 46437+#define GR_ACL_PROCACCT_MSG "%.256s[%.16s:%d] IP:%pI4 TTY:%.64s uid/euid:%u/%u gid/egid:%u/%u run time:[%ud %uh %um %us] cpu time:[%ud %uh %um %us] %s with exit code %ld, parent %.256s[%.16s:%d] IP:%pI4 TTY:%.64s uid/euid:%u/%u gid/egid:%u/%u"
@@ -46261,7 +46543,7 @@ diff -urNp linux-2.6.32.21/include/linux/grmsg.h linux-2.6.32.21/include/linux/g
46261+#define GR_PTRACE_AUDIT_MSG "process %.950s(%.16s:%d) attached to via ptrace by " 46543+#define GR_PTRACE_AUDIT_MSG "process %.950s(%.16s:%d) attached to via ptrace by "
46262diff -urNp linux-2.6.32.21/include/linux/grsecurity.h linux-2.6.32.21/include/linux/grsecurity.h 46544diff -urNp linux-2.6.32.21/include/linux/grsecurity.h linux-2.6.32.21/include/linux/grsecurity.h
46263--- linux-2.6.32.21/include/linux/grsecurity.h 1969-12-31 19:00:00.000000000 -0500 46545--- linux-2.6.32.21/include/linux/grsecurity.h 1969-12-31 19:00:00.000000000 -0500
46264+++ linux-2.6.32.21/include/linux/grsecurity.h 2010-09-13 08:10:10.000000000 -0400 46546+++ linux-2.6.32.21/include/linux/grsecurity.h 2010-09-04 15:54:52.000000000 -0400
46265@@ -0,0 +1,203 @@ 46547@@ -0,0 +1,203 @@
46266+#ifndef GR_SECURITY_H 46548+#ifndef GR_SECURITY_H
46267+#define GR_SECURITY_H 46549+#define GR_SECURITY_H
@@ -46467,8 +46749,8 @@ diff -urNp linux-2.6.32.21/include/linux/grsecurity.h linux-2.6.32.21/include/li
46467+ 46749+
46468+#endif 46750+#endif
46469diff -urNp linux-2.6.32.21/include/linux/hdpu_features.h linux-2.6.32.21/include/linux/hdpu_features.h 46751diff -urNp linux-2.6.32.21/include/linux/hdpu_features.h linux-2.6.32.21/include/linux/hdpu_features.h
46470--- linux-2.6.32.21/include/linux/hdpu_features.h 2010-08-26 19:42:20.000000000 -0400 46752--- linux-2.6.32.21/include/linux/hdpu_features.h 2010-08-13 16:24:37.000000000 -0400
46471+++ linux-2.6.32.21/include/linux/hdpu_features.h 2010-09-13 08:10:10.000000000 -0400 46753+++ linux-2.6.32.21/include/linux/hdpu_features.h 2010-09-04 15:54:52.000000000 -0400
46472@@ -3,7 +3,7 @@ 46754@@ -3,7 +3,7 @@
46473 struct cpustate_t { 46755 struct cpustate_t {
46474 spinlock_t lock; 46756 spinlock_t lock;
@@ -46479,8 +46761,8 @@ diff -urNp linux-2.6.32.21/include/linux/hdpu_features.h linux-2.6.32.21/include
46479 int inited; 46761 int inited;
46480 unsigned long *set_addr; 46762 unsigned long *set_addr;
46481diff -urNp linux-2.6.32.21/include/linux/highmem.h linux-2.6.32.21/include/linux/highmem.h 46763diff -urNp linux-2.6.32.21/include/linux/highmem.h linux-2.6.32.21/include/linux/highmem.h
46482--- linux-2.6.32.21/include/linux/highmem.h 2010-08-26 19:42:20.000000000 -0400 46764--- linux-2.6.32.21/include/linux/highmem.h 2010-08-13 16:24:37.000000000 -0400
46483+++ linux-2.6.32.21/include/linux/highmem.h 2010-09-13 08:10:10.000000000 -0400 46765+++ linux-2.6.32.21/include/linux/highmem.h 2010-09-04 15:54:52.000000000 -0400
46484@@ -137,6 +137,18 @@ static inline void clear_highpage(struct 46766@@ -137,6 +137,18 @@ static inline void clear_highpage(struct
46485 kunmap_atomic(kaddr, KM_USER0); 46767 kunmap_atomic(kaddr, KM_USER0);
46486 } 46768 }
@@ -46501,8 +46783,8 @@ diff -urNp linux-2.6.32.21/include/linux/highmem.h linux-2.6.32.21/include/linux
46501 unsigned start1, unsigned end1, 46783 unsigned start1, unsigned end1,
46502 unsigned start2, unsigned end2) 46784 unsigned start2, unsigned end2)
46503diff -urNp linux-2.6.32.21/include/linux/interrupt.h linux-2.6.32.21/include/linux/interrupt.h 46785diff -urNp linux-2.6.32.21/include/linux/interrupt.h linux-2.6.32.21/include/linux/interrupt.h
46504--- linux-2.6.32.21/include/linux/interrupt.h 2010-08-26 19:42:20.000000000 -0400 46786--- linux-2.6.32.21/include/linux/interrupt.h 2010-08-13 16:24:37.000000000 -0400
46505+++ linux-2.6.32.21/include/linux/interrupt.h 2010-09-13 08:10:10.000000000 -0400 46787+++ linux-2.6.32.21/include/linux/interrupt.h 2010-09-04 15:54:52.000000000 -0400
46506@@ -362,7 +362,7 @@ enum 46788@@ -362,7 +362,7 @@ enum
46507 /* map softirq index to softirq name. update 'softirq_to_name' in 46789 /* map softirq index to softirq name. update 'softirq_to_name' in
46508 * kernel/softirq.c when adding a new softirq. 46790 * kernel/softirq.c when adding a new softirq.
@@ -46527,10 +46809,10 @@ diff -urNp linux-2.6.32.21/include/linux/interrupt.h linux-2.6.32.21/include/lin
46527 extern void softirq_init(void); 46809 extern void softirq_init(void);
46528 #define __raise_softirq_irqoff(nr) do { or_softirq_pending(1UL << (nr)); } while (0) 46810 #define __raise_softirq_irqoff(nr) do { or_softirq_pending(1UL << (nr)); } while (0)
46529 extern void raise_softirq_irqoff(unsigned int nr); 46811 extern void raise_softirq_irqoff(unsigned int nr);
46530diff -urNp linux-2.6.32.21/include/linux/jbd.h linux-2.6.32.21/include/linux/jbd.h 46812diff -urNp linux-2.6.32.21/include/linux/jbd2.h linux-2.6.32.21/include/linux/jbd2.h
46531--- linux-2.6.32.21/include/linux/jbd.h 2010-08-26 19:42:20.000000000 -0400 46813--- linux-2.6.32.21/include/linux/jbd2.h 2010-08-13 16:24:37.000000000 -0400
46532+++ linux-2.6.32.21/include/linux/jbd.h 2010-09-13 08:10:10.000000000 -0400 46814+++ linux-2.6.32.21/include/linux/jbd2.h 2010-09-04 15:54:52.000000000 -0400
46533@@ -66,7 +66,7 @@ extern u8 journal_enable_debug; 46815@@ -66,7 +66,7 @@ extern u8 jbd2_journal_enable_debug;
46534 } \ 46816 } \
46535 } while (0) 46817 } while (0)
46536 #else 46818 #else
@@ -46538,11 +46820,11 @@ diff -urNp linux-2.6.32.21/include/linux/jbd.h linux-2.6.32.21/include/linux/jbd
46538+#define jbd_debug(f, a...) do {} while (0) 46820+#define jbd_debug(f, a...) do {} while (0)
46539 #endif 46821 #endif
46540 46822
46541 static inline void *jbd_alloc(size_t size, gfp_t flags) 46823 static inline void *jbd2_alloc(size_t size, gfp_t flags)
46542diff -urNp linux-2.6.32.21/include/linux/jbd2.h linux-2.6.32.21/include/linux/jbd2.h 46824diff -urNp linux-2.6.32.21/include/linux/jbd.h linux-2.6.32.21/include/linux/jbd.h
46543--- linux-2.6.32.21/include/linux/jbd2.h 2010-08-26 19:42:20.000000000 -0400 46825--- linux-2.6.32.21/include/linux/jbd.h 2010-08-13 16:24:37.000000000 -0400
46544+++ linux-2.6.32.21/include/linux/jbd2.h 2010-09-13 08:10:10.000000000 -0400 46826+++ linux-2.6.32.21/include/linux/jbd.h 2010-09-04 15:54:52.000000000 -0400
46545@@ -66,7 +66,7 @@ extern u8 jbd2_journal_enable_debug; 46827@@ -66,7 +66,7 @@ extern u8 journal_enable_debug;
46546 } \ 46828 } \
46547 } while (0) 46829 } while (0)
46548 #else 46830 #else
@@ -46550,10 +46832,10 @@ diff -urNp linux-2.6.32.21/include/linux/jbd2.h linux-2.6.32.21/include/linux/jb
46550+#define jbd_debug(f, a...) do {} while (0) 46832+#define jbd_debug(f, a...) do {} while (0)
46551 #endif 46833 #endif
46552 46834
46553 static inline void *jbd2_alloc(size_t size, gfp_t flags) 46835 static inline void *jbd_alloc(size_t size, gfp_t flags)
46554diff -urNp linux-2.6.32.21/include/linux/kallsyms.h linux-2.6.32.21/include/linux/kallsyms.h 46836diff -urNp linux-2.6.32.21/include/linux/kallsyms.h linux-2.6.32.21/include/linux/kallsyms.h
46555--- linux-2.6.32.21/include/linux/kallsyms.h 2010-08-26 19:42:20.000000000 -0400 46837--- linux-2.6.32.21/include/linux/kallsyms.h 2010-08-13 16:24:37.000000000 -0400
46556+++ linux-2.6.32.21/include/linux/kallsyms.h 2010-09-13 08:10:10.000000000 -0400 46838+++ linux-2.6.32.21/include/linux/kallsyms.h 2010-09-04 15:54:52.000000000 -0400
46557@@ -15,7 +15,8 @@ 46839@@ -15,7 +15,8 @@
46558 46840
46559 struct module; 46841 struct module;
@@ -46575,8 +46857,8 @@ diff -urNp linux-2.6.32.21/include/linux/kallsyms.h linux-2.6.32.21/include/linu
46575 /* This macro allows us to keep printk typechecking */ 46857 /* This macro allows us to keep printk typechecking */
46576 static void __check_printsym_format(const char *fmt, ...) 46858 static void __check_printsym_format(const char *fmt, ...)
46577diff -urNp linux-2.6.32.21/include/linux/kgdb.h linux-2.6.32.21/include/linux/kgdb.h 46859diff -urNp linux-2.6.32.21/include/linux/kgdb.h linux-2.6.32.21/include/linux/kgdb.h
46578--- linux-2.6.32.21/include/linux/kgdb.h 2010-08-26 19:42:20.000000000 -0400 46860--- linux-2.6.32.21/include/linux/kgdb.h 2010-08-13 16:24:37.000000000 -0400
46579+++ linux-2.6.32.21/include/linux/kgdb.h 2010-09-13 08:10:10.000000000 -0400 46861+++ linux-2.6.32.21/include/linux/kgdb.h 2010-09-04 15:54:52.000000000 -0400
46580@@ -251,20 +251,20 @@ struct kgdb_arch { 46862@@ -251,20 +251,20 @@ struct kgdb_arch {
46581 */ 46863 */
46582 struct kgdb_io { 46864 struct kgdb_io {
@@ -46608,8 +46890,8 @@ diff -urNp linux-2.6.32.21/include/linux/kgdb.h linux-2.6.32.21/include/linux/kg
46608 extern int kgdb_hex2long(char **ptr, unsigned long *long_val); 46890 extern int kgdb_hex2long(char **ptr, unsigned long *long_val);
46609 extern int kgdb_mem2hex(char *mem, char *buf, int count); 46891 extern int kgdb_mem2hex(char *mem, char *buf, int count);
46610diff -urNp linux-2.6.32.21/include/linux/kobject.h linux-2.6.32.21/include/linux/kobject.h 46892diff -urNp linux-2.6.32.21/include/linux/kobject.h linux-2.6.32.21/include/linux/kobject.h
46611--- linux-2.6.32.21/include/linux/kobject.h 2010-08-26 19:42:20.000000000 -0400 46893--- linux-2.6.32.21/include/linux/kobject.h 2010-08-13 16:24:37.000000000 -0400
46612+++ linux-2.6.32.21/include/linux/kobject.h 2010-09-13 08:10:10.000000000 -0400 46894+++ linux-2.6.32.21/include/linux/kobject.h 2010-09-04 15:54:52.000000000 -0400
46613@@ -106,7 +106,7 @@ extern char *kobject_get_path(struct kob 46895@@ -106,7 +106,7 @@ extern char *kobject_get_path(struct kob
46614 46896
46615 struct kobj_type { 46897 struct kobj_type {
@@ -46659,8 +46941,8 @@ diff -urNp linux-2.6.32.21/include/linux/kobject.h linux-2.6.32.21/include/linux
46659 46941
46660 static inline struct kset *to_kset(struct kobject *kobj) 46942 static inline struct kset *to_kset(struct kobject *kobj)
46661diff -urNp linux-2.6.32.21/include/linux/kvm_host.h linux-2.6.32.21/include/linux/kvm_host.h 46943diff -urNp linux-2.6.32.21/include/linux/kvm_host.h linux-2.6.32.21/include/linux/kvm_host.h
46662--- linux-2.6.32.21/include/linux/kvm_host.h 2010-08-26 19:42:20.000000000 -0400 46944--- linux-2.6.32.21/include/linux/kvm_host.h 2010-08-13 16:24:37.000000000 -0400
46663+++ linux-2.6.32.21/include/linux/kvm_host.h 2010-09-13 08:10:10.000000000 -0400 46945+++ linux-2.6.32.21/include/linux/kvm_host.h 2010-09-04 15:54:52.000000000 -0400
46664@@ -210,7 +210,7 @@ void kvm_vcpu_uninit(struct kvm_vcpu *vc 46946@@ -210,7 +210,7 @@ void kvm_vcpu_uninit(struct kvm_vcpu *vc
46665 void vcpu_load(struct kvm_vcpu *vcpu); 46947 void vcpu_load(struct kvm_vcpu *vcpu);
46666 void vcpu_put(struct kvm_vcpu *vcpu); 46948 void vcpu_put(struct kvm_vcpu *vcpu);
@@ -46680,8 +46962,8 @@ diff -urNp linux-2.6.32.21/include/linux/kvm_host.h linux-2.6.32.21/include/linu
46680 46962
46681 int kvm_arch_vcpu_init(struct kvm_vcpu *vcpu); 46963 int kvm_arch_vcpu_init(struct kvm_vcpu *vcpu);
46682diff -urNp linux-2.6.32.21/include/linux/libata.h linux-2.6.32.21/include/linux/libata.h 46964diff -urNp linux-2.6.32.21/include/linux/libata.h linux-2.6.32.21/include/linux/libata.h
46683--- linux-2.6.32.21/include/linux/libata.h 2010-08-26 19:42:20.000000000 -0400 46965--- linux-2.6.32.21/include/linux/libata.h 2010-08-13 16:24:37.000000000 -0400
46684+++ linux-2.6.32.21/include/linux/libata.h 2010-09-13 08:10:10.000000000 -0400 46966+++ linux-2.6.32.21/include/linux/libata.h 2010-09-04 15:54:52.000000000 -0400
46685@@ -64,11 +64,11 @@ 46967@@ -64,11 +64,11 @@
46686 #ifdef ATA_VERBOSE_DEBUG 46968 #ifdef ATA_VERBOSE_DEBUG
46687 #define VPRINTK(fmt, args...) printk(KERN_ERR "%s: " fmt, __func__, ## args) 46969 #define VPRINTK(fmt, args...) printk(KERN_ERR "%s: " fmt, __func__, ## args)
@@ -46748,8 +47030,8 @@ diff -urNp linux-2.6.32.21/include/linux/libata.h linux-2.6.32.21/include/linux/
46748 extern int ata_scsi_ioctl(struct scsi_device *dev, int cmd, void __user *arg); 47030 extern int ata_scsi_ioctl(struct scsi_device *dev, int cmd, void __user *arg);
46749 extern int ata_scsi_queuecmd(struct scsi_cmnd *cmd, void (*done)(struct scsi_cmnd *)); 47031 extern int ata_scsi_queuecmd(struct scsi_cmnd *cmd, void (*done)(struct scsi_cmnd *));
46750diff -urNp linux-2.6.32.21/include/linux/lockd/bind.h linux-2.6.32.21/include/linux/lockd/bind.h 47032diff -urNp linux-2.6.32.21/include/linux/lockd/bind.h linux-2.6.32.21/include/linux/lockd/bind.h
46751--- linux-2.6.32.21/include/linux/lockd/bind.h 2010-08-26 19:42:20.000000000 -0400 47033--- linux-2.6.32.21/include/linux/lockd/bind.h 2010-08-13 16:24:37.000000000 -0400
46752+++ linux-2.6.32.21/include/linux/lockd/bind.h 2010-09-13 08:10:10.000000000 -0400 47034+++ linux-2.6.32.21/include/linux/lockd/bind.h 2010-09-04 15:54:52.000000000 -0400
46753@@ -23,13 +23,13 @@ struct svc_rqst; 47035@@ -23,13 +23,13 @@ struct svc_rqst;
46754 * This is the set of functions for lockd->nfsd communication 47036 * This is the set of functions for lockd->nfsd communication
46755 */ 47037 */
@@ -46768,8 +47050,8 @@ diff -urNp linux-2.6.32.21/include/linux/lockd/bind.h linux-2.6.32.21/include/li
46768 /* 47050 /*
46769 * Similar to nfs_client_initdata, but without the NFS-specific 47051 * Similar to nfs_client_initdata, but without the NFS-specific
46770diff -urNp linux-2.6.32.21/include/linux/mm.h linux-2.6.32.21/include/linux/mm.h 47052diff -urNp linux-2.6.32.21/include/linux/mm.h linux-2.6.32.21/include/linux/mm.h
46771--- linux-2.6.32.21/include/linux/mm.h 2010-08-26 19:42:20.000000000 -0400 47053--- linux-2.6.32.21/include/linux/mm.h 2010-08-13 16:24:37.000000000 -0400
46772+++ linux-2.6.32.21/include/linux/mm.h 2010-09-13 08:10:10.000000000 -0400 47054+++ linux-2.6.32.21/include/linux/mm.h 2010-09-04 15:54:52.000000000 -0400
46773@@ -102,7 +102,14 @@ extern unsigned int kobjsize(const void 47055@@ -102,7 +102,14 @@ extern unsigned int kobjsize(const void
46774 47056
46775 #define VM_CAN_NONLINEAR 0x08000000 /* Has ->fault & does nonlinear pages */ 47057 #define VM_CAN_NONLINEAR 0x08000000 /* Has ->fault & does nonlinear pages */
@@ -46837,8 +47119,8 @@ diff -urNp linux-2.6.32.21/include/linux/mm.h linux-2.6.32.21/include/linux/mm.h
46837 #endif /* __KERNEL__ */ 47119 #endif /* __KERNEL__ */
46838 #endif /* _LINUX_MM_H */ 47120 #endif /* _LINUX_MM_H */
46839diff -urNp linux-2.6.32.21/include/linux/mm_types.h linux-2.6.32.21/include/linux/mm_types.h 47121diff -urNp linux-2.6.32.21/include/linux/mm_types.h linux-2.6.32.21/include/linux/mm_types.h
46840--- linux-2.6.32.21/include/linux/mm_types.h 2010-08-26 19:42:20.000000000 -0400 47122--- linux-2.6.32.21/include/linux/mm_types.h 2010-08-29 21:08:20.000000000 -0400
46841+++ linux-2.6.32.21/include/linux/mm_types.h 2010-09-13 08:10:10.000000000 -0400 47123+++ linux-2.6.32.21/include/linux/mm_types.h 2010-09-04 15:54:52.000000000 -0400
46842@@ -186,6 +186,8 @@ struct vm_area_struct { 47124@@ -186,6 +186,8 @@ struct vm_area_struct {
46843 #ifdef CONFIG_NUMA 47125 #ifdef CONFIG_NUMA
46844 struct mempolicy *vm_policy; /* NUMA policy for the VMA */ 47126 struct mempolicy *vm_policy; /* NUMA policy for the VMA */
@@ -46874,8 +47156,8 @@ diff -urNp linux-2.6.32.21/include/linux/mm_types.h linux-2.6.32.21/include/linu
46874 47156
46875 /* Future-safe accessor for struct mm_struct's cpu_vm_mask. */ 47157 /* Future-safe accessor for struct mm_struct's cpu_vm_mask. */
46876diff -urNp linux-2.6.32.21/include/linux/mmu_notifier.h linux-2.6.32.21/include/linux/mmu_notifier.h 47158diff -urNp linux-2.6.32.21/include/linux/mmu_notifier.h linux-2.6.32.21/include/linux/mmu_notifier.h
46877--- linux-2.6.32.21/include/linux/mmu_notifier.h 2010-08-26 19:42:20.000000000 -0400 47159--- linux-2.6.32.21/include/linux/mmu_notifier.h 2010-08-13 16:24:37.000000000 -0400
46878+++ linux-2.6.32.21/include/linux/mmu_notifier.h 2010-09-13 08:10:10.000000000 -0400 47160+++ linux-2.6.32.21/include/linux/mmu_notifier.h 2010-09-04 15:54:52.000000000 -0400
46879@@ -235,12 +235,12 @@ static inline void mmu_notifier_mm_destr 47161@@ -235,12 +235,12 @@ static inline void mmu_notifier_mm_destr
46880 */ 47162 */
46881 #define ptep_clear_flush_notify(__vma, __address, __ptep) \ 47163 #define ptep_clear_flush_notify(__vma, __address, __ptep) \
@@ -46893,8 +47175,8 @@ diff -urNp linux-2.6.32.21/include/linux/mmu_notifier.h linux-2.6.32.21/include/
46893 47175
46894 #define ptep_clear_flush_young_notify(__vma, __address, __ptep) \ 47176 #define ptep_clear_flush_young_notify(__vma, __address, __ptep) \
46895diff -urNp linux-2.6.32.21/include/linux/mmzone.h linux-2.6.32.21/include/linux/mmzone.h 47177diff -urNp linux-2.6.32.21/include/linux/mmzone.h linux-2.6.32.21/include/linux/mmzone.h
46896--- linux-2.6.32.21/include/linux/mmzone.h 2010-08-26 19:42:20.000000000 -0400 47178--- linux-2.6.32.21/include/linux/mmzone.h 2010-08-13 16:24:37.000000000 -0400
46897+++ linux-2.6.32.21/include/linux/mmzone.h 2010-09-13 08:10:10.000000000 -0400 47179+++ linux-2.6.32.21/include/linux/mmzone.h 2010-09-04 15:54:52.000000000 -0400
46898@@ -343,7 +343,7 @@ struct zone { 47180@@ -343,7 +343,7 @@ struct zone {
46899 unsigned long flags; /* zone flags, see below */ 47181 unsigned long flags; /* zone flags, see below */
46900 47182
@@ -46905,8 +47187,8 @@ diff -urNp linux-2.6.32.21/include/linux/mmzone.h linux-2.6.32.21/include/linux/
46905 /* 47187 /*
46906 * prev_priority holds the scanning priority for this zone. It is 47188 * prev_priority holds the scanning priority for this zone. It is
46907diff -urNp linux-2.6.32.21/include/linux/mod_devicetable.h linux-2.6.32.21/include/linux/mod_devicetable.h 47189diff -urNp linux-2.6.32.21/include/linux/mod_devicetable.h linux-2.6.32.21/include/linux/mod_devicetable.h
46908--- linux-2.6.32.21/include/linux/mod_devicetable.h 2010-08-26 19:42:20.000000000 -0400 47190--- linux-2.6.32.21/include/linux/mod_devicetable.h 2010-08-13 16:24:37.000000000 -0400
46909+++ linux-2.6.32.21/include/linux/mod_devicetable.h 2010-09-13 08:10:10.000000000 -0400 47191+++ linux-2.6.32.21/include/linux/mod_devicetable.h 2010-09-04 15:54:52.000000000 -0400
46910@@ -12,7 +12,7 @@ 47192@@ -12,7 +12,7 @@
46911 typedef unsigned long kernel_ulong_t; 47193 typedef unsigned long kernel_ulong_t;
46912 #endif 47194 #endif
@@ -46926,8 +47208,8 @@ diff -urNp linux-2.6.32.21/include/linux/mod_devicetable.h linux-2.6.32.21/inclu
46926 struct hid_device_id { 47208 struct hid_device_id {
46927 __u16 bus; 47209 __u16 bus;
46928diff -urNp linux-2.6.32.21/include/linux/module.h linux-2.6.32.21/include/linux/module.h 47210diff -urNp linux-2.6.32.21/include/linux/module.h linux-2.6.32.21/include/linux/module.h
46929--- linux-2.6.32.21/include/linux/module.h 2010-08-26 19:42:20.000000000 -0400 47211--- linux-2.6.32.21/include/linux/module.h 2010-08-13 16:24:37.000000000 -0400
46930+++ linux-2.6.32.21/include/linux/module.h 2010-09-13 08:10:10.000000000 -0400 47212+++ linux-2.6.32.21/include/linux/module.h 2010-09-04 15:54:52.000000000 -0400
46931@@ -287,16 +287,16 @@ struct module 47213@@ -287,16 +287,16 @@ struct module
46932 int (*init)(void); 47214 int (*init)(void);
46933 47215
@@ -47001,8 +47283,8 @@ diff -urNp linux-2.6.32.21/include/linux/module.h linux-2.6.32.21/include/linux/
47001 47283
47002 /* Search for module by name: must hold module_mutex. */ 47284 /* Search for module by name: must hold module_mutex. */
47003diff -urNp linux-2.6.32.21/include/linux/moduleloader.h linux-2.6.32.21/include/linux/moduleloader.h 47285diff -urNp linux-2.6.32.21/include/linux/moduleloader.h linux-2.6.32.21/include/linux/moduleloader.h
47004--- linux-2.6.32.21/include/linux/moduleloader.h 2010-08-26 19:42:20.000000000 -0400 47286--- linux-2.6.32.21/include/linux/moduleloader.h 2010-08-13 16:24:37.000000000 -0400
47005+++ linux-2.6.32.21/include/linux/moduleloader.h 2010-09-13 08:10:10.000000000 -0400 47287+++ linux-2.6.32.21/include/linux/moduleloader.h 2010-09-04 15:54:52.000000000 -0400
47006@@ -20,9 +20,21 @@ unsigned int arch_mod_section_prepend(st 47288@@ -20,9 +20,21 @@ unsigned int arch_mod_section_prepend(st
47007 sections. Returns NULL on failure. */ 47289 sections. Returns NULL on failure. */
47008 void *module_alloc(unsigned long size); 47290 void *module_alloc(unsigned long size);
@@ -47026,8 +47308,8 @@ diff -urNp linux-2.6.32.21/include/linux/moduleloader.h linux-2.6.32.21/include/
47026 or 0. */ 47308 or 0. */
47027 int apply_relocate(Elf_Shdr *sechdrs, 47309 int apply_relocate(Elf_Shdr *sechdrs,
47028diff -urNp linux-2.6.32.21/include/linux/namei.h linux-2.6.32.21/include/linux/namei.h 47310diff -urNp linux-2.6.32.21/include/linux/namei.h linux-2.6.32.21/include/linux/namei.h
47029--- linux-2.6.32.21/include/linux/namei.h 2010-08-26 19:42:20.000000000 -0400 47311--- linux-2.6.32.21/include/linux/namei.h 2010-08-13 16:24:37.000000000 -0400
47030+++ linux-2.6.32.21/include/linux/namei.h 2010-09-13 08:10:10.000000000 -0400 47312+++ linux-2.6.32.21/include/linux/namei.h 2010-09-04 15:54:52.000000000 -0400
47031@@ -22,7 +22,7 @@ struct nameidata { 47313@@ -22,7 +22,7 @@ struct nameidata {
47032 unsigned int flags; 47314 unsigned int flags;
47033 int last_type; 47315 int last_type;
@@ -47053,8 +47335,8 @@ diff -urNp linux-2.6.32.21/include/linux/namei.h linux-2.6.32.21/include/linux/n
47053 return nd->saved_names[nd->depth]; 47335 return nd->saved_names[nd->depth];
47054 } 47336 }
47055diff -urNp linux-2.6.32.21/include/linux/nodemask.h linux-2.6.32.21/include/linux/nodemask.h 47337diff -urNp linux-2.6.32.21/include/linux/nodemask.h linux-2.6.32.21/include/linux/nodemask.h
47056--- linux-2.6.32.21/include/linux/nodemask.h 2010-08-26 19:42:20.000000000 -0400 47338--- linux-2.6.32.21/include/linux/nodemask.h 2010-08-13 16:24:37.000000000 -0400
47057+++ linux-2.6.32.21/include/linux/nodemask.h 2010-09-13 08:10:10.000000000 -0400 47339+++ linux-2.6.32.21/include/linux/nodemask.h 2010-09-04 15:54:52.000000000 -0400
47058@@ -464,11 +464,11 @@ static inline int num_node_state(enum no 47340@@ -464,11 +464,11 @@ static inline int num_node_state(enum no
47059 47341
47060 #define any_online_node(mask) \ 47342 #define any_online_node(mask) \
@@ -47072,8 +47354,8 @@ diff -urNp linux-2.6.32.21/include/linux/nodemask.h linux-2.6.32.21/include/linu
47072 47354
47073 #define num_online_nodes() num_node_state(N_ONLINE) 47355 #define num_online_nodes() num_node_state(N_ONLINE)
47074diff -urNp linux-2.6.32.21/include/linux/oprofile.h linux-2.6.32.21/include/linux/oprofile.h 47356diff -urNp linux-2.6.32.21/include/linux/oprofile.h linux-2.6.32.21/include/linux/oprofile.h
47075--- linux-2.6.32.21/include/linux/oprofile.h 2010-08-26 19:42:20.000000000 -0400 47357--- linux-2.6.32.21/include/linux/oprofile.h 2010-08-13 16:24:37.000000000 -0400
47076+++ linux-2.6.32.21/include/linux/oprofile.h 2010-09-13 08:10:10.000000000 -0400 47358+++ linux-2.6.32.21/include/linux/oprofile.h 2010-09-04 15:54:52.000000000 -0400
47077@@ -129,9 +129,9 @@ int oprofilefs_create_ulong(struct super 47359@@ -129,9 +129,9 @@ int oprofilefs_create_ulong(struct super
47078 int oprofilefs_create_ro_ulong(struct super_block * sb, struct dentry * root, 47360 int oprofilefs_create_ro_ulong(struct super_block * sb, struct dentry * root,
47079 char const * name, ulong * val); 47361 char const * name, ulong * val);
@@ -47087,8 +47369,8 @@ diff -urNp linux-2.6.32.21/include/linux/oprofile.h linux-2.6.32.21/include/linu
47087 /** create a directory */ 47369 /** create a directory */
47088 struct dentry * oprofilefs_mkdir(struct super_block * sb, struct dentry * root, 47370 struct dentry * oprofilefs_mkdir(struct super_block * sb, struct dentry * root,
47089diff -urNp linux-2.6.32.21/include/linux/pipe_fs_i.h linux-2.6.32.21/include/linux/pipe_fs_i.h 47371diff -urNp linux-2.6.32.21/include/linux/pipe_fs_i.h linux-2.6.32.21/include/linux/pipe_fs_i.h
47090--- linux-2.6.32.21/include/linux/pipe_fs_i.h 2010-08-26 19:42:20.000000000 -0400 47372--- linux-2.6.32.21/include/linux/pipe_fs_i.h 2010-08-13 16:24:37.000000000 -0400
47091+++ linux-2.6.32.21/include/linux/pipe_fs_i.h 2010-09-13 08:10:10.000000000 -0400 47373+++ linux-2.6.32.21/include/linux/pipe_fs_i.h 2010-09-04 15:54:52.000000000 -0400
47092@@ -46,9 +46,9 @@ struct pipe_inode_info { 47374@@ -46,9 +46,9 @@ struct pipe_inode_info {
47093 wait_queue_head_t wait; 47375 wait_queue_head_t wait;
47094 unsigned int nrbufs, curbuf; 47376 unsigned int nrbufs, curbuf;
@@ -47103,8 +47385,8 @@ diff -urNp linux-2.6.32.21/include/linux/pipe_fs_i.h linux-2.6.32.21/include/lin
47103 unsigned int w_counter; 47385 unsigned int w_counter;
47104 struct fasync_struct *fasync_readers; 47386 struct fasync_struct *fasync_readers;
47105diff -urNp linux-2.6.32.21/include/linux/poison.h linux-2.6.32.21/include/linux/poison.h 47387diff -urNp linux-2.6.32.21/include/linux/poison.h linux-2.6.32.21/include/linux/poison.h
47106--- linux-2.6.32.21/include/linux/poison.h 2010-08-26 19:42:20.000000000 -0400 47388--- linux-2.6.32.21/include/linux/poison.h 2010-08-13 16:24:37.000000000 -0400
47107+++ linux-2.6.32.21/include/linux/poison.h 2010-09-13 08:10:10.000000000 -0400 47389+++ linux-2.6.32.21/include/linux/poison.h 2010-09-04 15:54:52.000000000 -0400
47108@@ -19,8 +19,8 @@ 47390@@ -19,8 +19,8 @@
47109 * under normal circumstances, used to verify that nobody uses 47391 * under normal circumstances, used to verify that nobody uses
47110 * non-initialized list entries. 47392 * non-initialized list entries.
@@ -47117,8 +47399,8 @@ diff -urNp linux-2.6.32.21/include/linux/poison.h linux-2.6.32.21/include/linux/
47117 /********** include/linux/timer.h **********/ 47399 /********** include/linux/timer.h **********/
47118 /* 47400 /*
47119diff -urNp linux-2.6.32.21/include/linux/proc_fs.h linux-2.6.32.21/include/linux/proc_fs.h 47401diff -urNp linux-2.6.32.21/include/linux/proc_fs.h linux-2.6.32.21/include/linux/proc_fs.h
47120--- linux-2.6.32.21/include/linux/proc_fs.h 2010-08-26 19:42:20.000000000 -0400 47402--- linux-2.6.32.21/include/linux/proc_fs.h 2010-08-13 16:24:37.000000000 -0400
47121+++ linux-2.6.32.21/include/linux/proc_fs.h 2010-09-13 08:10:10.000000000 -0400 47403+++ linux-2.6.32.21/include/linux/proc_fs.h 2010-09-04 15:54:52.000000000 -0400
47122@@ -155,6 +155,19 @@ static inline struct proc_dir_entry *pro 47404@@ -155,6 +155,19 @@ static inline struct proc_dir_entry *pro
47123 return proc_create_data(name, mode, parent, proc_fops, NULL); 47405 return proc_create_data(name, mode, parent, proc_fops, NULL);
47124 } 47406 }
@@ -47140,8 +47422,8 @@ diff -urNp linux-2.6.32.21/include/linux/proc_fs.h linux-2.6.32.21/include/linux
47140 mode_t mode, struct proc_dir_entry *base, 47422 mode_t mode, struct proc_dir_entry *base,
47141 read_proc_t *read_proc, void * data) 47423 read_proc_t *read_proc, void * data)
47142diff -urNp linux-2.6.32.21/include/linux/random.h linux-2.6.32.21/include/linux/random.h 47424diff -urNp linux-2.6.32.21/include/linux/random.h linux-2.6.32.21/include/linux/random.h
47143--- linux-2.6.32.21/include/linux/random.h 2010-08-26 19:42:20.000000000 -0400 47425--- linux-2.6.32.21/include/linux/random.h 2010-08-13 16:24:37.000000000 -0400
47144+++ linux-2.6.32.21/include/linux/random.h 2010-09-13 08:10:10.000000000 -0400 47426+++ linux-2.6.32.21/include/linux/random.h 2010-09-04 15:54:52.000000000 -0400
47145@@ -74,6 +74,11 @@ unsigned long randomize_range(unsigned l 47427@@ -74,6 +74,11 @@ unsigned long randomize_range(unsigned l
47146 u32 random32(void); 47428 u32 random32(void);
47147 void srandom32(u32 seed); 47429 void srandom32(u32 seed);
@@ -47155,8 +47437,8 @@ diff -urNp linux-2.6.32.21/include/linux/random.h linux-2.6.32.21/include/linux/
47155 47437
47156 #endif /* _LINUX_RANDOM_H */ 47438 #endif /* _LINUX_RANDOM_H */
47157diff -urNp linux-2.6.32.21/include/linux/reiserfs_fs.h linux-2.6.32.21/include/linux/reiserfs_fs.h 47439diff -urNp linux-2.6.32.21/include/linux/reiserfs_fs.h linux-2.6.32.21/include/linux/reiserfs_fs.h
47158--- linux-2.6.32.21/include/linux/reiserfs_fs.h 2010-08-26 19:42:20.000000000 -0400 47440--- linux-2.6.32.21/include/linux/reiserfs_fs.h 2010-08-13 16:24:37.000000000 -0400
47159+++ linux-2.6.32.21/include/linux/reiserfs_fs.h 2010-09-13 08:10:10.000000000 -0400 47441+++ linux-2.6.32.21/include/linux/reiserfs_fs.h 2010-09-04 15:54:52.000000000 -0400
47160@@ -1326,7 +1326,7 @@ static inline loff_t max_reiserfs_offset 47442@@ -1326,7 +1326,7 @@ static inline loff_t max_reiserfs_offset
47161 #define REISERFS_USER_MEM 1 /* reiserfs user memory mode */ 47443 #define REISERFS_USER_MEM 1 /* reiserfs user memory mode */
47162 47444
@@ -47204,8 +47486,8 @@ diff -urNp linux-2.6.32.21/include/linux/reiserfs_fs.h linux-2.6.32.21/include/l
47204 #define op_bytes_number(ih,bsize) item_ops[le_ih_k_type (ih)]->bytes_number (ih, bsize) 47486 #define op_bytes_number(ih,bsize) item_ops[le_ih_k_type (ih)]->bytes_number (ih, bsize)
47205 #define op_is_left_mergeable(key,bsize) item_ops[le_key_k_type (le_key_version (key), key)]->is_left_mergeable (key, bsize) 47487 #define op_is_left_mergeable(key,bsize) item_ops[le_key_k_type (le_key_version (key), key)]->is_left_mergeable (key, bsize)
47206diff -urNp linux-2.6.32.21/include/linux/reiserfs_fs_sb.h linux-2.6.32.21/include/linux/reiserfs_fs_sb.h 47488diff -urNp linux-2.6.32.21/include/linux/reiserfs_fs_sb.h linux-2.6.32.21/include/linux/reiserfs_fs_sb.h
47207--- linux-2.6.32.21/include/linux/reiserfs_fs_sb.h 2010-08-26 19:42:20.000000000 -0400 47489--- linux-2.6.32.21/include/linux/reiserfs_fs_sb.h 2010-08-13 16:24:37.000000000 -0400
47208+++ linux-2.6.32.21/include/linux/reiserfs_fs_sb.h 2010-09-13 08:10:10.000000000 -0400 47490+++ linux-2.6.32.21/include/linux/reiserfs_fs_sb.h 2010-09-04 15:54:52.000000000 -0400
47209@@ -377,7 +377,7 @@ struct reiserfs_sb_info { 47491@@ -377,7 +377,7 @@ struct reiserfs_sb_info {
47210 /* Comment? -Hans */ 47492 /* Comment? -Hans */
47211 wait_queue_head_t s_wait; 47493 wait_queue_head_t s_wait;
@@ -47216,8 +47498,8 @@ diff -urNp linux-2.6.32.21/include/linux/reiserfs_fs_sb.h linux-2.6.32.21/includ
47216 unsigned long s_properties; /* File system properties. Currently holds 47498 unsigned long s_properties; /* File system properties. Currently holds
47217 on-disk FS format */ 47499 on-disk FS format */
47218diff -urNp linux-2.6.32.21/include/linux/sched.h linux-2.6.32.21/include/linux/sched.h 47500diff -urNp linux-2.6.32.21/include/linux/sched.h linux-2.6.32.21/include/linux/sched.h
47219--- linux-2.6.32.21/include/linux/sched.h 2010-08-26 19:42:20.000000000 -0400 47501--- linux-2.6.32.21/include/linux/sched.h 2010-08-13 16:24:37.000000000 -0400
47220+++ linux-2.6.32.21/include/linux/sched.h 2010-09-13 08:10:10.000000000 -0400 47502+++ linux-2.6.32.21/include/linux/sched.h 2010-09-14 18:41:02.000000000 -0400
47221@@ -101,6 +101,7 @@ struct bio; 47503@@ -101,6 +101,7 @@ struct bio;
47222 struct fs_struct; 47504 struct fs_struct;
47223 struct bts_context; 47505 struct bts_context;
@@ -47399,7 +47681,7 @@ diff -urNp linux-2.6.32.21/include/linux/sched.h linux-2.6.32.21/include/linux/s
47399 47681
47400 static inline void setup_thread_stack(struct task_struct *p, struct task_struct *org) 47682 static inline void setup_thread_stack(struct task_struct *p, struct task_struct *org)
47401 { 47683 {
47402@@ -2275,13 +2347,31 @@ static inline unsigned long *end_of_stac 47684@@ -2275,13 +2347,17 @@ static inline unsigned long *end_of_stac
47403 47685
47404 #endif 47686 #endif
47405 47687
@@ -47412,30 +47694,16 @@ diff -urNp linux-2.6.32.21/include/linux/sched.h linux-2.6.32.21/include/linux/s
47412 return (obj >= stack) && (obj < (stack + THREAD_SIZE)); 47694 return (obj >= stack) && (obj < (stack + THREAD_SIZE));
47413 } 47695 }
47414 47696
47415+/* 0: not at all, 1: fully, -1: partially (implies an error) */ 47697+#ifdef CONFIG_PAX_USERCOPY
47416+static inline int object_is_on_stack(const void *obj, unsigned long len) 47698+extern int object_is_on_stack(const void *obj, unsigned long len);
47417+{ 47699+#endif
47418+ const void *stack = task_stack_page(current);
47419+ const void *stackend = stack + THREAD_SIZE;
47420+
47421+ if (obj + len < obj)
47422+ return -1;
47423+
47424+ if (stack <= obj && obj + len <= stackend)
47425+ return 1;
47426+
47427+ if (obj + len <= stack || stackend <= obj)
47428+ return 0;
47429+
47430+ return -1;
47431+}
47432+ 47700+
47433 extern void thread_info_cache_init(void); 47701 extern void thread_info_cache_init(void);
47434 47702
47435 #ifdef CONFIG_DEBUG_STACK_USAGE 47703 #ifdef CONFIG_DEBUG_STACK_USAGE
47436diff -urNp linux-2.6.32.21/include/linux/screen_info.h linux-2.6.32.21/include/linux/screen_info.h 47704diff -urNp linux-2.6.32.21/include/linux/screen_info.h linux-2.6.32.21/include/linux/screen_info.h
47437--- linux-2.6.32.21/include/linux/screen_info.h 2010-08-26 19:42:20.000000000 -0400 47705--- linux-2.6.32.21/include/linux/screen_info.h 2010-08-13 16:24:37.000000000 -0400
47438+++ linux-2.6.32.21/include/linux/screen_info.h 2010-09-13 08:10:10.000000000 -0400 47706+++ linux-2.6.32.21/include/linux/screen_info.h 2010-09-04 15:54:52.000000000 -0400
47439@@ -42,7 +42,8 @@ struct screen_info { 47707@@ -42,7 +42,8 @@ struct screen_info {
47440 __u16 pages; /* 0x32 */ 47708 __u16 pages; /* 0x32 */
47441 __u16 vesa_attributes; /* 0x34 */ 47709 __u16 vesa_attributes; /* 0x34 */
@@ -47447,8 +47715,8 @@ diff -urNp linux-2.6.32.21/include/linux/screen_info.h linux-2.6.32.21/include/l
47447 47715
47448 #define VIDEO_TYPE_MDA 0x10 /* Monochrome Text Display */ 47716 #define VIDEO_TYPE_MDA 0x10 /* Monochrome Text Display */
47449diff -urNp linux-2.6.32.21/include/linux/security.h linux-2.6.32.21/include/linux/security.h 47717diff -urNp linux-2.6.32.21/include/linux/security.h linux-2.6.32.21/include/linux/security.h
47450--- linux-2.6.32.21/include/linux/security.h 2010-08-26 19:42:20.000000000 -0400 47718--- linux-2.6.32.21/include/linux/security.h 2010-08-13 16:24:37.000000000 -0400
47451+++ linux-2.6.32.21/include/linux/security.h 2010-09-13 08:10:10.000000000 -0400 47719+++ linux-2.6.32.21/include/linux/security.h 2010-09-04 15:54:52.000000000 -0400
47452@@ -34,6 +34,7 @@ 47720@@ -34,6 +34,7 @@
47453 #include <linux/key.h> 47721 #include <linux/key.h>
47454 #include <linux/xfrm.h> 47722 #include <linux/xfrm.h>
@@ -47458,8 +47726,8 @@ diff -urNp linux-2.6.32.21/include/linux/security.h linux-2.6.32.21/include/linu
47458 47726
47459 /* Maximum number of letters for an LSM name string */ 47727 /* Maximum number of letters for an LSM name string */
47460diff -urNp linux-2.6.32.21/include/linux/shm.h linux-2.6.32.21/include/linux/shm.h 47728diff -urNp linux-2.6.32.21/include/linux/shm.h linux-2.6.32.21/include/linux/shm.h
47461--- linux-2.6.32.21/include/linux/shm.h 2010-08-26 19:42:20.000000000 -0400 47729--- linux-2.6.32.21/include/linux/shm.h 2010-08-13 16:24:37.000000000 -0400
47462+++ linux-2.6.32.21/include/linux/shm.h 2010-09-13 08:10:10.000000000 -0400 47730+++ linux-2.6.32.21/include/linux/shm.h 2010-09-04 15:54:52.000000000 -0400
47463@@ -95,6 +95,10 @@ struct shmid_kernel /* private to the ke 47731@@ -95,6 +95,10 @@ struct shmid_kernel /* private to the ke
47464 pid_t shm_cprid; 47732 pid_t shm_cprid;
47465 pid_t shm_lprid; 47733 pid_t shm_lprid;
@@ -47472,8 +47740,8 @@ diff -urNp linux-2.6.32.21/include/linux/shm.h linux-2.6.32.21/include/linux/shm
47472 47740
47473 /* shm_mode upper byte flags */ 47741 /* shm_mode upper byte flags */
47474diff -urNp linux-2.6.32.21/include/linux/slab.h linux-2.6.32.21/include/linux/slab.h 47742diff -urNp linux-2.6.32.21/include/linux/slab.h linux-2.6.32.21/include/linux/slab.h
47475--- linux-2.6.32.21/include/linux/slab.h 2010-08-26 19:42:20.000000000 -0400 47743--- linux-2.6.32.21/include/linux/slab.h 2010-08-13 16:24:37.000000000 -0400
47476+++ linux-2.6.32.21/include/linux/slab.h 2010-09-13 08:10:10.000000000 -0400 47744+++ linux-2.6.32.21/include/linux/slab.h 2010-09-04 15:54:52.000000000 -0400
47477@@ -11,6 +11,7 @@ 47745@@ -11,6 +11,7 @@
47478 47746
47479 #include <linux/gfp.h> 47747 #include <linux/gfp.h>
@@ -47546,8 +47814,8 @@ diff -urNp linux-2.6.32.21/include/linux/slab.h linux-2.6.32.21/include/linux/sl
47546+ 47814+
47547 #endif /* _LINUX_SLAB_H */ 47815 #endif /* _LINUX_SLAB_H */
47548diff -urNp linux-2.6.32.21/include/linux/slub_def.h linux-2.6.32.21/include/linux/slub_def.h 47816diff -urNp linux-2.6.32.21/include/linux/slub_def.h linux-2.6.32.21/include/linux/slub_def.h
47549--- linux-2.6.32.21/include/linux/slub_def.h 2010-08-26 19:42:20.000000000 -0400 47817--- linux-2.6.32.21/include/linux/slub_def.h 2010-08-13 16:24:37.000000000 -0400
47550+++ linux-2.6.32.21/include/linux/slub_def.h 2010-09-13 08:10:10.000000000 -0400 47818+++ linux-2.6.32.21/include/linux/slub_def.h 2010-09-04 15:54:52.000000000 -0400
47551@@ -86,7 +86,7 @@ struct kmem_cache { 47819@@ -86,7 +86,7 @@ struct kmem_cache {
47552 struct kmem_cache_order_objects max; 47820 struct kmem_cache_order_objects max;
47553 struct kmem_cache_order_objects min; 47821 struct kmem_cache_order_objects min;
@@ -47558,8 +47826,8 @@ diff -urNp linux-2.6.32.21/include/linux/slub_def.h linux-2.6.32.21/include/linu
47558 int inuse; /* Offset to metadata */ 47826 int inuse; /* Offset to metadata */
47559 int align; /* Alignment */ 47827 int align; /* Alignment */
47560diff -urNp linux-2.6.32.21/include/linux/sonet.h linux-2.6.32.21/include/linux/sonet.h 47828diff -urNp linux-2.6.32.21/include/linux/sonet.h linux-2.6.32.21/include/linux/sonet.h
47561--- linux-2.6.32.21/include/linux/sonet.h 2010-08-26 19:42:20.000000000 -0400 47829--- linux-2.6.32.21/include/linux/sonet.h 2010-08-13 16:24:37.000000000 -0400
47562+++ linux-2.6.32.21/include/linux/sonet.h 2010-09-13 08:10:10.000000000 -0400 47830+++ linux-2.6.32.21/include/linux/sonet.h 2010-09-04 15:54:52.000000000 -0400
47563@@ -61,7 +61,7 @@ struct sonet_stats { 47831@@ -61,7 +61,7 @@ struct sonet_stats {
47564 #include <asm/atomic.h> 47832 #include <asm/atomic.h>
47565 47833
@@ -47570,8 +47838,8 @@ diff -urNp linux-2.6.32.21/include/linux/sonet.h linux-2.6.32.21/include/linux/s
47570 #undef __HANDLE_ITEM 47838 #undef __HANDLE_ITEM
47571 }; 47839 };
47572diff -urNp linux-2.6.32.21/include/linux/suspend.h linux-2.6.32.21/include/linux/suspend.h 47840diff -urNp linux-2.6.32.21/include/linux/suspend.h linux-2.6.32.21/include/linux/suspend.h
47573--- linux-2.6.32.21/include/linux/suspend.h 2010-08-26 19:42:20.000000000 -0400 47841--- linux-2.6.32.21/include/linux/suspend.h 2010-08-13 16:24:37.000000000 -0400
47574+++ linux-2.6.32.21/include/linux/suspend.h 2010-09-13 08:10:10.000000000 -0400 47842+++ linux-2.6.32.21/include/linux/suspend.h 2010-09-04 15:54:52.000000000 -0400
47575@@ -104,15 +104,15 @@ typedef int __bitwise suspend_state_t; 47843@@ -104,15 +104,15 @@ typedef int __bitwise suspend_state_t;
47576 * which require special recovery actions in that situation. 47844 * which require special recovery actions in that situation.
47577 */ 47845 */
@@ -47661,8 +47929,8 @@ diff -urNp linux-2.6.32.21/include/linux/suspend.h linux-2.6.32.21/include/linux
47661 static inline bool system_entering_hibernation(void) { return false; } 47929 static inline bool system_entering_hibernation(void) { return false; }
47662 #endif /* CONFIG_HIBERNATION */ 47930 #endif /* CONFIG_HIBERNATION */
47663diff -urNp linux-2.6.32.21/include/linux/sysctl.h linux-2.6.32.21/include/linux/sysctl.h 47931diff -urNp linux-2.6.32.21/include/linux/sysctl.h linux-2.6.32.21/include/linux/sysctl.h
47664--- linux-2.6.32.21/include/linux/sysctl.h 2010-08-26 19:42:20.000000000 -0400 47932--- linux-2.6.32.21/include/linux/sysctl.h 2010-08-13 16:24:37.000000000 -0400
47665+++ linux-2.6.32.21/include/linux/sysctl.h 2010-09-13 08:10:10.000000000 -0400 47933+++ linux-2.6.32.21/include/linux/sysctl.h 2010-09-04 15:54:52.000000000 -0400
47666@@ -164,7 +164,11 @@ enum 47934@@ -164,7 +164,11 @@ enum
47667 KERN_PANIC_ON_NMI=76, /* int: whether we will panic on an unrecovered */ 47935 KERN_PANIC_ON_NMI=76, /* int: whether we will panic on an unrecovered */
47668 }; 47936 };
@@ -47677,8 +47945,8 @@ diff -urNp linux-2.6.32.21/include/linux/sysctl.h linux-2.6.32.21/include/linux/
47677 /* CTL_VM names: */ 47945 /* CTL_VM names: */
47678 enum 47946 enum
47679diff -urNp linux-2.6.32.21/include/linux/sysfs.h linux-2.6.32.21/include/linux/sysfs.h 47947diff -urNp linux-2.6.32.21/include/linux/sysfs.h linux-2.6.32.21/include/linux/sysfs.h
47680--- linux-2.6.32.21/include/linux/sysfs.h 2010-08-26 19:42:20.000000000 -0400 47948--- linux-2.6.32.21/include/linux/sysfs.h 2010-08-13 16:24:37.000000000 -0400
47681+++ linux-2.6.32.21/include/linux/sysfs.h 2010-09-13 08:10:10.000000000 -0400 47949+++ linux-2.6.32.21/include/linux/sysfs.h 2010-09-04 15:54:52.000000000 -0400
47682@@ -75,8 +75,8 @@ struct bin_attribute { 47950@@ -75,8 +75,8 @@ struct bin_attribute {
47683 }; 47951 };
47684 47952
@@ -47691,8 +47959,8 @@ diff -urNp linux-2.6.32.21/include/linux/sysfs.h linux-2.6.32.21/include/linux/s
47691 47959
47692 struct sysfs_dirent; 47960 struct sysfs_dirent;
47693diff -urNp linux-2.6.32.21/include/linux/thread_info.h linux-2.6.32.21/include/linux/thread_info.h 47961diff -urNp linux-2.6.32.21/include/linux/thread_info.h linux-2.6.32.21/include/linux/thread_info.h
47694--- linux-2.6.32.21/include/linux/thread_info.h 2010-08-26 19:42:20.000000000 -0400 47962--- linux-2.6.32.21/include/linux/thread_info.h 2010-08-13 16:24:37.000000000 -0400
47695+++ linux-2.6.32.21/include/linux/thread_info.h 2010-09-13 08:10:10.000000000 -0400 47963+++ linux-2.6.32.21/include/linux/thread_info.h 2010-09-04 15:54:52.000000000 -0400
47696@@ -23,7 +23,7 @@ struct restart_block { 47964@@ -23,7 +23,7 @@ struct restart_block {
47697 }; 47965 };
47698 /* For futex_wait and futex_wait_requeue_pi */ 47966 /* For futex_wait and futex_wait_requeue_pi */
@@ -47703,8 +47971,8 @@ diff -urNp linux-2.6.32.21/include/linux/thread_info.h linux-2.6.32.21/include/l
47703 u32 flags; 47971 u32 flags;
47704 u32 bitset; 47972 u32 bitset;
47705diff -urNp linux-2.6.32.21/include/linux/tty.h linux-2.6.32.21/include/linux/tty.h 47973diff -urNp linux-2.6.32.21/include/linux/tty.h linux-2.6.32.21/include/linux/tty.h
47706--- linux-2.6.32.21/include/linux/tty.h 2010-08-26 19:42:20.000000000 -0400 47974--- linux-2.6.32.21/include/linux/tty.h 2010-08-13 16:24:37.000000000 -0400
47707+++ linux-2.6.32.21/include/linux/tty.h 2010-09-13 08:10:10.000000000 -0400 47975+++ linux-2.6.32.21/include/linux/tty.h 2010-09-04 15:54:52.000000000 -0400
47708@@ -13,6 +13,7 @@ 47976@@ -13,6 +13,7 @@
47709 #include <linux/tty_driver.h> 47977 #include <linux/tty_driver.h>
47710 #include <linux/tty_ldisc.h> 47978 #include <linux/tty_ldisc.h>
@@ -47741,8 +48009,8 @@ diff -urNp linux-2.6.32.21/include/linux/tty.h linux-2.6.32.21/include/linux/tty
47741 /* n_tty.c */ 48009 /* n_tty.c */
47742 extern struct tty_ldisc_ops tty_ldisc_N_TTY; 48010 extern struct tty_ldisc_ops tty_ldisc_N_TTY;
47743diff -urNp linux-2.6.32.21/include/linux/tty_ldisc.h linux-2.6.32.21/include/linux/tty_ldisc.h 48011diff -urNp linux-2.6.32.21/include/linux/tty_ldisc.h linux-2.6.32.21/include/linux/tty_ldisc.h
47744--- linux-2.6.32.21/include/linux/tty_ldisc.h 2010-08-26 19:42:20.000000000 -0400 48012--- linux-2.6.32.21/include/linux/tty_ldisc.h 2010-08-13 16:24:37.000000000 -0400
47745+++ linux-2.6.32.21/include/linux/tty_ldisc.h 2010-09-13 08:10:10.000000000 -0400 48013+++ linux-2.6.32.21/include/linux/tty_ldisc.h 2010-09-04 15:54:52.000000000 -0400
47746@@ -139,7 +139,7 @@ struct tty_ldisc_ops { 48014@@ -139,7 +139,7 @@ struct tty_ldisc_ops {
47747 48015
47748 struct module *owner; 48016 struct module *owner;
@@ -47753,8 +48021,8 @@ diff -urNp linux-2.6.32.21/include/linux/tty_ldisc.h linux-2.6.32.21/include/lin
47753 48021
47754 struct tty_ldisc { 48022 struct tty_ldisc {
47755diff -urNp linux-2.6.32.21/include/linux/types.h linux-2.6.32.21/include/linux/types.h 48023diff -urNp linux-2.6.32.21/include/linux/types.h linux-2.6.32.21/include/linux/types.h
47756--- linux-2.6.32.21/include/linux/types.h 2010-08-26 19:42:20.000000000 -0400 48024--- linux-2.6.32.21/include/linux/types.h 2010-08-13 16:24:37.000000000 -0400
47757+++ linux-2.6.32.21/include/linux/types.h 2010-09-13 08:10:10.000000000 -0400 48025+++ linux-2.6.32.21/include/linux/types.h 2010-09-04 15:54:52.000000000 -0400
47758@@ -191,10 +191,26 @@ typedef struct { 48026@@ -191,10 +191,26 @@ typedef struct {
47759 volatile int counter; 48027 volatile int counter;
47760 } atomic_t; 48028 } atomic_t;
@@ -47783,8 +48051,8 @@ diff -urNp linux-2.6.32.21/include/linux/types.h linux-2.6.32.21/include/linux/t
47783 48051
47784 struct ustat { 48052 struct ustat {
47785diff -urNp linux-2.6.32.21/include/linux/uaccess.h linux-2.6.32.21/include/linux/uaccess.h 48053diff -urNp linux-2.6.32.21/include/linux/uaccess.h linux-2.6.32.21/include/linux/uaccess.h
47786--- linux-2.6.32.21/include/linux/uaccess.h 2010-08-26 19:42:20.000000000 -0400 48054--- linux-2.6.32.21/include/linux/uaccess.h 2010-08-13 16:24:37.000000000 -0400
47787+++ linux-2.6.32.21/include/linux/uaccess.h 2010-09-13 08:10:10.000000000 -0400 48055+++ linux-2.6.32.21/include/linux/uaccess.h 2010-09-04 15:54:52.000000000 -0400
47788@@ -76,11 +76,11 @@ static inline unsigned long __copy_from_ 48056@@ -76,11 +76,11 @@ static inline unsigned long __copy_from_
47789 long ret; \ 48057 long ret; \
47790 mm_segment_t old_fs = get_fs(); \ 48058 mm_segment_t old_fs = get_fs(); \
@@ -47817,8 +48085,8 @@ diff -urNp linux-2.6.32.21/include/linux/uaccess.h linux-2.6.32.21/include/linux
47817 48085
47818 #endif /* __LINUX_UACCESS_H__ */ 48086 #endif /* __LINUX_UACCESS_H__ */
47819diff -urNp linux-2.6.32.21/include/linux/vmalloc.h linux-2.6.32.21/include/linux/vmalloc.h 48087diff -urNp linux-2.6.32.21/include/linux/vmalloc.h linux-2.6.32.21/include/linux/vmalloc.h
47820--- linux-2.6.32.21/include/linux/vmalloc.h 2010-08-26 19:42:20.000000000 -0400 48088--- linux-2.6.32.21/include/linux/vmalloc.h 2010-08-13 16:24:37.000000000 -0400
47821+++ linux-2.6.32.21/include/linux/vmalloc.h 2010-09-13 08:10:10.000000000 -0400 48089+++ linux-2.6.32.21/include/linux/vmalloc.h 2010-09-04 15:54:52.000000000 -0400
47822@@ -13,6 +13,11 @@ struct vm_area_struct; /* vma defining 48090@@ -13,6 +13,11 @@ struct vm_area_struct; /* vma defining
47823 #define VM_MAP 0x00000004 /* vmap()ed pages */ 48091 #define VM_MAP 0x00000004 /* vmap()ed pages */
47824 #define VM_USERMAP 0x00000008 /* suitable for remap_vmalloc_range */ 48092 #define VM_USERMAP 0x00000008 /* suitable for remap_vmalloc_range */
@@ -47914,8 +48182,8 @@ diff -urNp linux-2.6.32.21/include/linux/vmalloc.h linux-2.6.32.21/include/linux
47914+ 48182+
47915 #endif /* _LINUX_VMALLOC_H */ 48183 #endif /* _LINUX_VMALLOC_H */
47916diff -urNp linux-2.6.32.21/include/linux/vmstat.h linux-2.6.32.21/include/linux/vmstat.h 48184diff -urNp linux-2.6.32.21/include/linux/vmstat.h linux-2.6.32.21/include/linux/vmstat.h
47917--- linux-2.6.32.21/include/linux/vmstat.h 2010-08-26 19:42:20.000000000 -0400 48185--- linux-2.6.32.21/include/linux/vmstat.h 2010-08-13 16:24:37.000000000 -0400
47918+++ linux-2.6.32.21/include/linux/vmstat.h 2010-09-13 08:10:10.000000000 -0400 48186+++ linux-2.6.32.21/include/linux/vmstat.h 2010-09-04 15:54:52.000000000 -0400
47919@@ -136,18 +136,18 @@ static inline void vm_events_fold_cpu(in 48187@@ -136,18 +136,18 @@ static inline void vm_events_fold_cpu(in
47920 /* 48188 /*
47921 * Zone based page accounting with per cpu differentials. 48189 * Zone based page accounting with per cpu differentials.
@@ -47971,8 +48239,8 @@ diff -urNp linux-2.6.32.21/include/linux/vmstat.h linux-2.6.32.21/include/linux/
47971 48239
47972 static inline void __dec_zone_page_state(struct page *page, 48240 static inline void __dec_zone_page_state(struct page *page,
47973diff -urNp linux-2.6.32.21/include/net/irda/ircomm_tty.h linux-2.6.32.21/include/net/irda/ircomm_tty.h 48241diff -urNp linux-2.6.32.21/include/net/irda/ircomm_tty.h linux-2.6.32.21/include/net/irda/ircomm_tty.h
47974--- linux-2.6.32.21/include/net/irda/ircomm_tty.h 2010-08-26 19:42:20.000000000 -0400 48242--- linux-2.6.32.21/include/net/irda/ircomm_tty.h 2010-08-13 16:24:37.000000000 -0400
47975+++ linux-2.6.32.21/include/net/irda/ircomm_tty.h 2010-09-13 08:10:10.000000000 -0400 48243+++ linux-2.6.32.21/include/net/irda/ircomm_tty.h 2010-09-04 15:54:52.000000000 -0400
47976@@ -105,8 +105,8 @@ struct ircomm_tty_cb { 48244@@ -105,8 +105,8 @@ struct ircomm_tty_cb {
47977 unsigned short close_delay; 48245 unsigned short close_delay;
47978 unsigned short closing_wait; /* time to wait before closing */ 48246 unsigned short closing_wait; /* time to wait before closing */
@@ -47985,8 +48253,8 @@ diff -urNp linux-2.6.32.21/include/net/irda/ircomm_tty.h linux-2.6.32.21/include
47985 /* Protect concurent access to : 48253 /* Protect concurent access to :
47986 * o self->open_count 48254 * o self->open_count
47987diff -urNp linux-2.6.32.21/include/net/neighbour.h linux-2.6.32.21/include/net/neighbour.h 48255diff -urNp linux-2.6.32.21/include/net/neighbour.h linux-2.6.32.21/include/net/neighbour.h
47988--- linux-2.6.32.21/include/net/neighbour.h 2010-08-26 19:42:20.000000000 -0400 48256--- linux-2.6.32.21/include/net/neighbour.h 2010-08-13 16:24:37.000000000 -0400
47989+++ linux-2.6.32.21/include/net/neighbour.h 2010-09-13 08:10:10.000000000 -0400 48257+++ linux-2.6.32.21/include/net/neighbour.h 2010-09-04 15:54:52.000000000 -0400
47990@@ -125,12 +125,12 @@ struct neighbour 48258@@ -125,12 +125,12 @@ struct neighbour
47991 struct neigh_ops 48259 struct neigh_ops
47992 { 48260 {
@@ -48007,8 +48275,8 @@ diff -urNp linux-2.6.32.21/include/net/neighbour.h linux-2.6.32.21/include/net/n
48007 48275
48008 struct pneigh_entry 48276 struct pneigh_entry
48009diff -urNp linux-2.6.32.21/include/net/sctp/sctp.h linux-2.6.32.21/include/net/sctp/sctp.h 48277diff -urNp linux-2.6.32.21/include/net/sctp/sctp.h linux-2.6.32.21/include/net/sctp/sctp.h
48010--- linux-2.6.32.21/include/net/sctp/sctp.h 2010-08-26 19:42:20.000000000 -0400 48278--- linux-2.6.32.21/include/net/sctp/sctp.h 2010-08-13 16:24:37.000000000 -0400
48011+++ linux-2.6.32.21/include/net/sctp/sctp.h 2010-09-13 08:10:10.000000000 -0400 48279+++ linux-2.6.32.21/include/net/sctp/sctp.h 2010-09-04 15:54:52.000000000 -0400
48012@@ -305,8 +305,8 @@ extern int sctp_debug_flag; 48280@@ -305,8 +305,8 @@ extern int sctp_debug_flag;
48013 48281
48014 #else /* SCTP_DEBUG */ 48282 #else /* SCTP_DEBUG */
@@ -48021,8 +48289,8 @@ diff -urNp linux-2.6.32.21/include/net/sctp/sctp.h linux-2.6.32.21/include/net/s
48021 #define SCTP_DISABLE_DEBUG 48289 #define SCTP_DISABLE_DEBUG
48022 #define SCTP_ASSERT(expr, str, func) 48290 #define SCTP_ASSERT(expr, str, func)
48023diff -urNp linux-2.6.32.21/include/net/tcp.h linux-2.6.32.21/include/net/tcp.h 48291diff -urNp linux-2.6.32.21/include/net/tcp.h linux-2.6.32.21/include/net/tcp.h
48024--- linux-2.6.32.21/include/net/tcp.h 2010-08-26 19:42:20.000000000 -0400 48292--- linux-2.6.32.21/include/net/tcp.h 2010-08-13 16:24:37.000000000 -0400
48025+++ linux-2.6.32.21/include/net/tcp.h 2010-09-13 08:10:10.000000000 -0400 48293+++ linux-2.6.32.21/include/net/tcp.h 2010-09-04 15:54:52.000000000 -0400
48026@@ -1420,6 +1420,7 @@ enum tcp_seq_states { 48294@@ -1420,6 +1420,7 @@ enum tcp_seq_states {
48027 struct tcp_seq_afinfo { 48295 struct tcp_seq_afinfo {
48028 char *name; 48296 char *name;
@@ -48032,8 +48300,8 @@ diff -urNp linux-2.6.32.21/include/net/tcp.h linux-2.6.32.21/include/net/tcp.h
48032 struct seq_operations seq_ops; 48300 struct seq_operations seq_ops;
48033 }; 48301 };
48034diff -urNp linux-2.6.32.21/include/net/udp.h linux-2.6.32.21/include/net/udp.h 48302diff -urNp linux-2.6.32.21/include/net/udp.h linux-2.6.32.21/include/net/udp.h
48035--- linux-2.6.32.21/include/net/udp.h 2010-08-26 19:42:20.000000000 -0400 48303--- linux-2.6.32.21/include/net/udp.h 2010-08-13 16:24:37.000000000 -0400
48036+++ linux-2.6.32.21/include/net/udp.h 2010-09-13 08:10:10.000000000 -0400 48304+++ linux-2.6.32.21/include/net/udp.h 2010-09-04 15:54:52.000000000 -0400
48037@@ -187,6 +187,7 @@ struct udp_seq_afinfo { 48305@@ -187,6 +187,7 @@ struct udp_seq_afinfo {
48038 char *name; 48306 char *name;
48039 sa_family_t family; 48307 sa_family_t family;
@@ -48043,8 +48311,8 @@ diff -urNp linux-2.6.32.21/include/net/udp.h linux-2.6.32.21/include/net/udp.h
48043 struct seq_operations seq_ops; 48311 struct seq_operations seq_ops;
48044 }; 48312 };
48045diff -urNp linux-2.6.32.21/include/sound/ac97_codec.h linux-2.6.32.21/include/sound/ac97_codec.h 48313diff -urNp linux-2.6.32.21/include/sound/ac97_codec.h linux-2.6.32.21/include/sound/ac97_codec.h
48046--- linux-2.6.32.21/include/sound/ac97_codec.h 2010-08-26 19:42:20.000000000 -0400 48314--- linux-2.6.32.21/include/sound/ac97_codec.h 2010-08-13 16:24:37.000000000 -0400
48047+++ linux-2.6.32.21/include/sound/ac97_codec.h 2010-09-13 08:10:10.000000000 -0400 48315+++ linux-2.6.32.21/include/sound/ac97_codec.h 2010-09-04 15:54:52.000000000 -0400
48048@@ -419,15 +419,15 @@ 48316@@ -419,15 +419,15 @@
48049 struct snd_ac97; 48317 struct snd_ac97;
48050 48318
@@ -48078,8 +48346,8 @@ diff -urNp linux-2.6.32.21/include/sound/ac97_codec.h linux-2.6.32.21/include/so
48078 void (*private_free) (struct snd_ac97 *ac97); 48346 void (*private_free) (struct snd_ac97 *ac97);
48079 /* --- */ 48347 /* --- */
48080diff -urNp linux-2.6.32.21/include/trace/events/irq.h linux-2.6.32.21/include/trace/events/irq.h 48348diff -urNp linux-2.6.32.21/include/trace/events/irq.h linux-2.6.32.21/include/trace/events/irq.h
48081--- linux-2.6.32.21/include/trace/events/irq.h 2010-08-26 19:42:20.000000000 -0400 48349--- linux-2.6.32.21/include/trace/events/irq.h 2010-08-13 16:24:37.000000000 -0400
48082+++ linux-2.6.32.21/include/trace/events/irq.h 2010-09-13 08:10:10.000000000 -0400 48350+++ linux-2.6.32.21/include/trace/events/irq.h 2010-09-04 15:54:52.000000000 -0400
48083@@ -34,7 +34,7 @@ 48351@@ -34,7 +34,7 @@
48084 */ 48352 */
48085 TRACE_EVENT(irq_handler_entry, 48353 TRACE_EVENT(irq_handler_entry,
@@ -48117,8 +48385,8 @@ diff -urNp linux-2.6.32.21/include/trace/events/irq.h linux-2.6.32.21/include/tr
48117 TP_ARGS(h, vec), 48385 TP_ARGS(h, vec),
48118 48386
48119diff -urNp linux-2.6.32.21/include/video/uvesafb.h linux-2.6.32.21/include/video/uvesafb.h 48387diff -urNp linux-2.6.32.21/include/video/uvesafb.h linux-2.6.32.21/include/video/uvesafb.h
48120--- linux-2.6.32.21/include/video/uvesafb.h 2010-08-26 19:42:20.000000000 -0400 48388--- linux-2.6.32.21/include/video/uvesafb.h 2010-08-13 16:24:37.000000000 -0400
48121+++ linux-2.6.32.21/include/video/uvesafb.h 2010-09-13 08:10:10.000000000 -0400 48389+++ linux-2.6.32.21/include/video/uvesafb.h 2010-09-04 15:54:52.000000000 -0400
48122@@ -177,6 +177,7 @@ struct uvesafb_par { 48390@@ -177,6 +177,7 @@ struct uvesafb_par {
48123 u8 ypan; /* 0 - nothing, 1 - ypan, 2 - ywrap */ 48391 u8 ypan; /* 0 - nothing, 1 - ypan, 2 - ywrap */
48124 u8 pmi_setpal; /* PMI for palette changes */ 48392 u8 pmi_setpal; /* PMI for palette changes */
@@ -48127,21 +48395,9 @@ diff -urNp linux-2.6.32.21/include/video/uvesafb.h linux-2.6.32.21/include/video
48127 void *pmi_start; 48395 void *pmi_start;
48128 void *pmi_pal; 48396 void *pmi_pal;
48129 u8 *vbe_state_orig; /* 48397 u8 *vbe_state_orig; /*
48130diff -urNp linux-2.6.32.21/init/Kconfig linux-2.6.32.21/init/Kconfig
48131--- linux-2.6.32.21/init/Kconfig 2010-08-26 19:42:20.000000000 -0400
48132+++ linux-2.6.32.21/init/Kconfig 2010-09-13 08:10:10.000000000 -0400
48133@@ -1026,7 +1026,7 @@ config SLUB_DEBUG
48134
48135 config COMPAT_BRK
48136 bool "Disable heap randomization"
48137- default y
48138+ default n
48139 help
48140 Randomizing heap placement makes heap exploits harder, but it
48141 also breaks ancient binaries (including anything libc5 based).
48142diff -urNp linux-2.6.32.21/init/do_mounts.c linux-2.6.32.21/init/do_mounts.c 48398diff -urNp linux-2.6.32.21/init/do_mounts.c linux-2.6.32.21/init/do_mounts.c
48143--- linux-2.6.32.21/init/do_mounts.c 2010-08-26 19:42:20.000000000 -0400 48399--- linux-2.6.32.21/init/do_mounts.c 2010-08-13 16:24:37.000000000 -0400
48144+++ linux-2.6.32.21/init/do_mounts.c 2010-09-13 08:10:10.000000000 -0400 48400+++ linux-2.6.32.21/init/do_mounts.c 2010-09-04 15:54:52.000000000 -0400
48145@@ -216,11 +216,11 @@ static void __init get_fs_names(char *pa 48401@@ -216,11 +216,11 @@ static void __init get_fs_names(char *pa
48146 48402
48147 static int __init do_mount_root(char *name, char *fs, int flags, void *data) 48403 static int __init do_mount_root(char *name, char *fs, int flags, void *data)
@@ -48188,8 +48444,8 @@ diff -urNp linux-2.6.32.21/init/do_mounts.c linux-2.6.32.21/init/do_mounts.c
48188+ sys_chroot((__force char __user *)"."); 48444+ sys_chroot((__force char __user *)".");
48189 } 48445 }
48190diff -urNp linux-2.6.32.21/init/do_mounts.h linux-2.6.32.21/init/do_mounts.h 48446diff -urNp linux-2.6.32.21/init/do_mounts.h linux-2.6.32.21/init/do_mounts.h
48191--- linux-2.6.32.21/init/do_mounts.h 2010-08-26 19:42:20.000000000 -0400 48447--- linux-2.6.32.21/init/do_mounts.h 2010-08-13 16:24:37.000000000 -0400
48192+++ linux-2.6.32.21/init/do_mounts.h 2010-09-13 08:10:10.000000000 -0400 48448+++ linux-2.6.32.21/init/do_mounts.h 2010-09-04 15:54:52.000000000 -0400
48193@@ -15,15 +15,15 @@ extern int root_mountflags; 48449@@ -15,15 +15,15 @@ extern int root_mountflags;
48194 48450
48195 static inline int create_dev(char *name, dev_t dev) 48451 static inline int create_dev(char *name, dev_t dev)
@@ -48210,8 +48466,8 @@ diff -urNp linux-2.6.32.21/init/do_mounts.h linux-2.6.32.21/init/do_mounts.h
48210 if (!S_ISBLK(stat.st_mode)) 48466 if (!S_ISBLK(stat.st_mode))
48211 return 0; 48467 return 0;
48212diff -urNp linux-2.6.32.21/init/do_mounts_initrd.c linux-2.6.32.21/init/do_mounts_initrd.c 48468diff -urNp linux-2.6.32.21/init/do_mounts_initrd.c linux-2.6.32.21/init/do_mounts_initrd.c
48213--- linux-2.6.32.21/init/do_mounts_initrd.c 2010-08-26 19:42:20.000000000 -0400 48469--- linux-2.6.32.21/init/do_mounts_initrd.c 2010-08-13 16:24:37.000000000 -0400
48214+++ linux-2.6.32.21/init/do_mounts_initrd.c 2010-09-13 08:10:10.000000000 -0400 48470+++ linux-2.6.32.21/init/do_mounts_initrd.c 2010-09-04 15:54:52.000000000 -0400
48215@@ -32,7 +32,7 @@ static int __init do_linuxrc(void * shel 48471@@ -32,7 +32,7 @@ static int __init do_linuxrc(void * shel
48216 sys_close(old_fd);sys_close(root_fd); 48472 sys_close(old_fd);sys_close(root_fd);
48217 sys_close(0);sys_close(1);sys_close(2); 48473 sys_close(0);sys_close(1);sys_close(2);
@@ -48296,8 +48552,8 @@ diff -urNp linux-2.6.32.21/init/do_mounts_initrd.c linux-2.6.32.21/init/do_mount
48296 return 0; 48552 return 0;
48297 } 48553 }
48298diff -urNp linux-2.6.32.21/init/do_mounts_md.c linux-2.6.32.21/init/do_mounts_md.c 48554diff -urNp linux-2.6.32.21/init/do_mounts_md.c linux-2.6.32.21/init/do_mounts_md.c
48299--- linux-2.6.32.21/init/do_mounts_md.c 2010-08-26 19:42:20.000000000 -0400 48555--- linux-2.6.32.21/init/do_mounts_md.c 2010-08-13 16:24:37.000000000 -0400
48300+++ linux-2.6.32.21/init/do_mounts_md.c 2010-09-13 08:10:10.000000000 -0400 48556+++ linux-2.6.32.21/init/do_mounts_md.c 2010-09-04 15:54:52.000000000 -0400
48301@@ -170,7 +170,7 @@ static void __init md_setup_drive(void) 48557@@ -170,7 +170,7 @@ static void __init md_setup_drive(void)
48302 partitioned ? "_d" : "", minor, 48558 partitioned ? "_d" : "", minor,
48303 md_setup_args[ent].device_names); 48559 md_setup_args[ent].device_names);
@@ -48326,8 +48582,8 @@ diff -urNp linux-2.6.32.21/init/do_mounts_md.c linux-2.6.32.21/init/do_mounts_md
48326 sys_ioctl(fd, RAID_AUTORUN, raid_autopart); 48582 sys_ioctl(fd, RAID_AUTORUN, raid_autopart);
48327 sys_close(fd); 48583 sys_close(fd);
48328diff -urNp linux-2.6.32.21/init/initramfs.c linux-2.6.32.21/init/initramfs.c 48584diff -urNp linux-2.6.32.21/init/initramfs.c linux-2.6.32.21/init/initramfs.c
48329--- linux-2.6.32.21/init/initramfs.c 2010-08-26 19:42:20.000000000 -0400 48585--- linux-2.6.32.21/init/initramfs.c 2010-08-13 16:24:37.000000000 -0400
48330+++ linux-2.6.32.21/init/initramfs.c 2010-09-13 08:10:10.000000000 -0400 48586+++ linux-2.6.32.21/init/initramfs.c 2010-09-04 15:54:52.000000000 -0400
48331@@ -74,7 +74,7 @@ static void __init free_hash(void) 48587@@ -74,7 +74,7 @@ static void __init free_hash(void)
48332 } 48588 }
48333 } 48589 }
@@ -48436,9 +48692,21 @@ diff -urNp linux-2.6.32.21/init/initramfs.c linux-2.6.32.21/init/initramfs.c
48436 state = SkipIt; 48692 state = SkipIt;
48437 next_state = Reset; 48693 next_state = Reset;
48438 return 0; 48694 return 0;
48695diff -urNp linux-2.6.32.21/init/Kconfig linux-2.6.32.21/init/Kconfig
48696--- linux-2.6.32.21/init/Kconfig 2010-08-13 16:24:37.000000000 -0400
48697+++ linux-2.6.32.21/init/Kconfig 2010-09-04 15:54:52.000000000 -0400
48698@@ -1026,7 +1026,7 @@ config SLUB_DEBUG
48699
48700 config COMPAT_BRK
48701 bool "Disable heap randomization"
48702- default y
48703+ default n
48704 help
48705 Randomizing heap placement makes heap exploits harder, but it
48706 also breaks ancient binaries (including anything libc5 based).
48439diff -urNp linux-2.6.32.21/init/main.c linux-2.6.32.21/init/main.c 48707diff -urNp linux-2.6.32.21/init/main.c linux-2.6.32.21/init/main.c
48440--- linux-2.6.32.21/init/main.c 2010-08-26 19:42:20.000000000 -0400 48708--- linux-2.6.32.21/init/main.c 2010-08-13 16:24:37.000000000 -0400
48441+++ linux-2.6.32.21/init/main.c 2010-09-13 08:10:10.000000000 -0400 48709+++ linux-2.6.32.21/init/main.c 2010-09-04 15:54:52.000000000 -0400
48442@@ -97,6 +97,7 @@ static inline void mark_rodata_ro(void) 48710@@ -97,6 +97,7 @@ static inline void mark_rodata_ro(void)
48443 #ifdef CONFIG_TC 48711 #ifdef CONFIG_TC
48444 extern void tc_init(void); 48712 extern void tc_init(void);
@@ -48584,8 +48852,8 @@ diff -urNp linux-2.6.32.21/init/main.c linux-2.6.32.21/init/main.c
48584 * Ok, we have completed the initial bootup, and 48852 * Ok, we have completed the initial bootup, and
48585 * we're essentially up and running. Get rid of the 48853 * we're essentially up and running. Get rid of the
48586diff -urNp linux-2.6.32.21/init/noinitramfs.c linux-2.6.32.21/init/noinitramfs.c 48854diff -urNp linux-2.6.32.21/init/noinitramfs.c linux-2.6.32.21/init/noinitramfs.c
48587--- linux-2.6.32.21/init/noinitramfs.c 2010-08-26 19:42:20.000000000 -0400 48855--- linux-2.6.32.21/init/noinitramfs.c 2010-08-13 16:24:37.000000000 -0400
48588+++ linux-2.6.32.21/init/noinitramfs.c 2010-09-13 08:10:10.000000000 -0400 48856+++ linux-2.6.32.21/init/noinitramfs.c 2010-09-04 15:54:52.000000000 -0400
48589@@ -29,7 +29,7 @@ static int __init default_rootfs(void) 48857@@ -29,7 +29,7 @@ static int __init default_rootfs(void)
48590 { 48858 {
48591 int err; 48859 int err;
@@ -48605,8 +48873,8 @@ diff -urNp linux-2.6.32.21/init/noinitramfs.c linux-2.6.32.21/init/noinitramfs.c
48605 goto out; 48873 goto out;
48606 48874
48607diff -urNp linux-2.6.32.21/ipc/ipc_sysctl.c linux-2.6.32.21/ipc/ipc_sysctl.c 48875diff -urNp linux-2.6.32.21/ipc/ipc_sysctl.c linux-2.6.32.21/ipc/ipc_sysctl.c
48608--- linux-2.6.32.21/ipc/ipc_sysctl.c 2010-08-26 19:42:20.000000000 -0400 48876--- linux-2.6.32.21/ipc/ipc_sysctl.c 2010-08-13 16:24:37.000000000 -0400
48609+++ linux-2.6.32.21/ipc/ipc_sysctl.c 2010-09-13 08:10:10.000000000 -0400 48877+++ linux-2.6.32.21/ipc/ipc_sysctl.c 2010-09-04 15:54:52.000000000 -0400
48610@@ -267,7 +267,7 @@ static struct ctl_table ipc_kern_table[] 48878@@ -267,7 +267,7 @@ static struct ctl_table ipc_kern_table[]
48611 .extra1 = &zero, 48879 .extra1 = &zero,
48612 .extra2 = &one, 48880 .extra2 = &one,
@@ -48626,8 +48894,8 @@ diff -urNp linux-2.6.32.21/ipc/ipc_sysctl.c linux-2.6.32.21/ipc/ipc_sysctl.c
48626 48894
48627 static int __init ipc_sysctl_init(void) 48895 static int __init ipc_sysctl_init(void)
48628diff -urNp linux-2.6.32.21/ipc/mqueue.c linux-2.6.32.21/ipc/mqueue.c 48896diff -urNp linux-2.6.32.21/ipc/mqueue.c linux-2.6.32.21/ipc/mqueue.c
48629--- linux-2.6.32.21/ipc/mqueue.c 2010-08-26 19:42:20.000000000 -0400 48897--- linux-2.6.32.21/ipc/mqueue.c 2010-08-13 16:24:37.000000000 -0400
48630+++ linux-2.6.32.21/ipc/mqueue.c 2010-09-13 08:10:10.000000000 -0400 48898+++ linux-2.6.32.21/ipc/mqueue.c 2010-09-04 15:54:52.000000000 -0400
48631@@ -150,6 +150,7 @@ static struct inode *mqueue_get_inode(st 48899@@ -150,6 +150,7 @@ static struct inode *mqueue_get_inode(st
48632 mq_bytes = (mq_msg_tblsz + 48900 mq_bytes = (mq_msg_tblsz +
48633 (info->attr.mq_maxmsg * info->attr.mq_msgsize)); 48901 (info->attr.mq_maxmsg * info->attr.mq_msgsize));
@@ -48637,8 +48905,8 @@ diff -urNp linux-2.6.32.21/ipc/mqueue.c linux-2.6.32.21/ipc/mqueue.c
48637 if (u->mq_bytes + mq_bytes < u->mq_bytes || 48905 if (u->mq_bytes + mq_bytes < u->mq_bytes ||
48638 u->mq_bytes + mq_bytes > 48906 u->mq_bytes + mq_bytes >
48639diff -urNp linux-2.6.32.21/ipc/shm.c linux-2.6.32.21/ipc/shm.c 48907diff -urNp linux-2.6.32.21/ipc/shm.c linux-2.6.32.21/ipc/shm.c
48640--- linux-2.6.32.21/ipc/shm.c 2010-08-26 19:42:20.000000000 -0400 48908--- linux-2.6.32.21/ipc/shm.c 2010-08-13 16:24:37.000000000 -0400
48641+++ linux-2.6.32.21/ipc/shm.c 2010-09-13 08:10:10.000000000 -0400 48909+++ linux-2.6.32.21/ipc/shm.c 2010-09-04 15:54:52.000000000 -0400
48642@@ -70,6 +70,14 @@ static void shm_destroy (struct ipc_name 48910@@ -70,6 +70,14 @@ static void shm_destroy (struct ipc_name
48643 static int sysvipc_shm_proc_show(struct seq_file *s, void *it); 48911 static int sysvipc_shm_proc_show(struct seq_file *s, void *it);
48644 #endif 48912 #endif
@@ -48692,8 +48960,8 @@ diff -urNp linux-2.6.32.21/ipc/shm.c linux-2.6.32.21/ipc/shm.c
48692 shm_unlock(shp); 48960 shm_unlock(shp);
48693 48961
48694diff -urNp linux-2.6.32.21/kernel/acct.c linux-2.6.32.21/kernel/acct.c 48962diff -urNp linux-2.6.32.21/kernel/acct.c linux-2.6.32.21/kernel/acct.c
48695--- linux-2.6.32.21/kernel/acct.c 2010-08-26 19:42:20.000000000 -0400 48963--- linux-2.6.32.21/kernel/acct.c 2010-08-13 16:24:37.000000000 -0400
48696+++ linux-2.6.32.21/kernel/acct.c 2010-09-13 08:10:10.000000000 -0400 48964+++ linux-2.6.32.21/kernel/acct.c 2010-09-04 15:54:52.000000000 -0400
48697@@ -579,7 +579,7 @@ static void do_acct_process(struct bsd_a 48965@@ -579,7 +579,7 @@ static void do_acct_process(struct bsd_a
48698 */ 48966 */
48699 flim = current->signal->rlim[RLIMIT_FSIZE].rlim_cur; 48967 flim = current->signal->rlim[RLIMIT_FSIZE].rlim_cur;
@@ -48704,8 +48972,8 @@ diff -urNp linux-2.6.32.21/kernel/acct.c linux-2.6.32.21/kernel/acct.c
48704 current->signal->rlim[RLIMIT_FSIZE].rlim_cur = flim; 48972 current->signal->rlim[RLIMIT_FSIZE].rlim_cur = flim;
48705 set_fs(fs); 48973 set_fs(fs);
48706diff -urNp linux-2.6.32.21/kernel/capability.c linux-2.6.32.21/kernel/capability.c 48974diff -urNp linux-2.6.32.21/kernel/capability.c linux-2.6.32.21/kernel/capability.c
48707--- linux-2.6.32.21/kernel/capability.c 2010-08-26 19:42:20.000000000 -0400 48975--- linux-2.6.32.21/kernel/capability.c 2010-08-13 16:24:37.000000000 -0400
48708+++ linux-2.6.32.21/kernel/capability.c 2010-09-13 08:10:10.000000000 -0400 48976+++ linux-2.6.32.21/kernel/capability.c 2010-09-04 15:54:52.000000000 -0400
48709@@ -306,10 +306,21 @@ int capable(int cap) 48977@@ -306,10 +306,21 @@ int capable(int cap)
48710 BUG(); 48978 BUG();
48711 } 48979 }
@@ -48729,9 +48997,45 @@ diff -urNp linux-2.6.32.21/kernel/capability.c linux-2.6.32.21/kernel/capability
48729+ 48997+
48730 EXPORT_SYMBOL(capable); 48998 EXPORT_SYMBOL(capable);
48731+EXPORT_SYMBOL(capable_nolog); 48999+EXPORT_SYMBOL(capable_nolog);
49000diff -urNp linux-2.6.32.21/kernel/compat.c linux-2.6.32.21/kernel/compat.c
49001--- linux-2.6.32.21/kernel/compat.c 2010-08-13 16:24:37.000000000 -0400
49002+++ linux-2.6.32.21/kernel/compat.c 2010-09-16 18:06:50.000000000 -0400
49003@@ -13,6 +13,7 @@
49004
49005 #include <linux/linkage.h>
49006 #include <linux/compat.h>
49007+#include <linux/module.h>
49008 #include <linux/errno.h>
49009 #include <linux/time.h>
49010 #include <linux/signal.h>
49011@@ -1136,3 +1137,24 @@ compat_sys_sysinfo(struct compat_sysinfo
49012
49013 return 0;
49014 }
49015+
49016+/*
49017+ * Allocate user-space memory for the duration of a single system call,
49018+ * in order to marshall parameters inside a compat thunk.
49019+ */
49020+void __user *compat_alloc_user_space(unsigned long len)
49021+{
49022+ void __user *ptr;
49023+
49024+ /* If len would occupy more than half of the entire compat space... */
49025+ if (unlikely(len > (((compat_uptr_t)~0) >> 1)))
49026+ return NULL;
49027+
49028+ ptr = arch_compat_alloc_user_space(len);
49029+
49030+ if (unlikely(!access_ok(VERIFY_WRITE, ptr, len)))
49031+ return NULL;
49032+
49033+ return ptr;
49034+}
49035+EXPORT_SYMBOL_GPL(compat_alloc_user_space);
48732diff -urNp linux-2.6.32.21/kernel/configs.c linux-2.6.32.21/kernel/configs.c 49036diff -urNp linux-2.6.32.21/kernel/configs.c linux-2.6.32.21/kernel/configs.c
48733--- linux-2.6.32.21/kernel/configs.c 2010-08-26 19:42:20.000000000 -0400 49037--- linux-2.6.32.21/kernel/configs.c 2010-08-13 16:24:37.000000000 -0400
48734+++ linux-2.6.32.21/kernel/configs.c 2010-09-13 08:10:10.000000000 -0400 49038+++ linux-2.6.32.21/kernel/configs.c 2010-09-04 15:54:52.000000000 -0400
48735@@ -73,8 +73,19 @@ static int __init ikconfig_init(void) 49039@@ -73,8 +73,19 @@ static int __init ikconfig_init(void)
48736 struct proc_dir_entry *entry; 49040 struct proc_dir_entry *entry;
48737 49041
@@ -48753,8 +49057,8 @@ diff -urNp linux-2.6.32.21/kernel/configs.c linux-2.6.32.21/kernel/configs.c
48753 return -ENOMEM; 49057 return -ENOMEM;
48754 49058
48755diff -urNp linux-2.6.32.21/kernel/cpu.c linux-2.6.32.21/kernel/cpu.c 49059diff -urNp linux-2.6.32.21/kernel/cpu.c linux-2.6.32.21/kernel/cpu.c
48756--- linux-2.6.32.21/kernel/cpu.c 2010-08-26 19:42:20.000000000 -0400 49060--- linux-2.6.32.21/kernel/cpu.c 2010-08-13 16:24:37.000000000 -0400
48757+++ linux-2.6.32.21/kernel/cpu.c 2010-09-13 08:10:10.000000000 -0400 49061+++ linux-2.6.32.21/kernel/cpu.c 2010-09-04 15:54:52.000000000 -0400
48758@@ -19,7 +19,7 @@ 49062@@ -19,7 +19,7 @@
48759 /* Serializes the updates to cpu_online_mask, cpu_present_mask */ 49063 /* Serializes the updates to cpu_online_mask, cpu_present_mask */
48760 static DEFINE_MUTEX(cpu_add_remove_lock); 49064 static DEFINE_MUTEX(cpu_add_remove_lock);
@@ -48765,8 +49069,8 @@ diff -urNp linux-2.6.32.21/kernel/cpu.c linux-2.6.32.21/kernel/cpu.c
48765 /* If set, cpu_up and cpu_down will return -EBUSY and do nothing. 49069 /* If set, cpu_up and cpu_down will return -EBUSY and do nothing.
48766 * Should always be manipulated under cpu_add_remove_lock 49070 * Should always be manipulated under cpu_add_remove_lock
48767diff -urNp linux-2.6.32.21/kernel/cred.c linux-2.6.32.21/kernel/cred.c 49071diff -urNp linux-2.6.32.21/kernel/cred.c linux-2.6.32.21/kernel/cred.c
48768--- linux-2.6.32.21/kernel/cred.c 2010-08-26 19:42:20.000000000 -0400 49072--- linux-2.6.32.21/kernel/cred.c 2010-08-13 16:24:37.000000000 -0400
48769+++ linux-2.6.32.21/kernel/cred.c 2010-09-13 08:10:10.000000000 -0400 49073+++ linux-2.6.32.21/kernel/cred.c 2010-09-04 15:54:52.000000000 -0400
48770@@ -520,6 +520,8 @@ int commit_creds(struct cred *new) 49074@@ -520,6 +520,8 @@ int commit_creds(struct cred *new)
48771 49075
48772 get_cred(new); /* we will require a ref for the subj creds too */ 49076 get_cred(new); /* we will require a ref for the subj creds too */
@@ -48777,8 +49081,8 @@ diff -urNp linux-2.6.32.21/kernel/cred.c linux-2.6.32.21/kernel/cred.c
48777 if (old->euid != new->euid || 49081 if (old->euid != new->euid ||
48778 old->egid != new->egid || 49082 old->egid != new->egid ||
48779diff -urNp linux-2.6.32.21/kernel/exit.c linux-2.6.32.21/kernel/exit.c 49083diff -urNp linux-2.6.32.21/kernel/exit.c linux-2.6.32.21/kernel/exit.c
48780--- linux-2.6.32.21/kernel/exit.c 2010-08-26 19:42:20.000000000 -0400 49084--- linux-2.6.32.21/kernel/exit.c 2010-08-13 16:24:37.000000000 -0400
48781+++ linux-2.6.32.21/kernel/exit.c 2010-09-13 08:10:10.000000000 -0400 49085+++ linux-2.6.32.21/kernel/exit.c 2010-09-04 15:54:52.000000000 -0400
48782@@ -56,6 +56,10 @@ 49086@@ -56,6 +56,10 @@
48783 #include <asm/mmu_context.h> 49087 #include <asm/mmu_context.h>
48784 #include "cred-internals.h" 49088 #include "cred-internals.h"
@@ -48869,8 +49173,8 @@ diff -urNp linux-2.6.32.21/kernel/exit.c linux-2.6.32.21/kernel/exit.c
48869 get_task_struct(p); 49173 get_task_struct(p);
48870 read_unlock(&tasklist_lock); 49174 read_unlock(&tasklist_lock);
48871diff -urNp linux-2.6.32.21/kernel/fork.c linux-2.6.32.21/kernel/fork.c 49175diff -urNp linux-2.6.32.21/kernel/fork.c linux-2.6.32.21/kernel/fork.c
48872--- linux-2.6.32.21/kernel/fork.c 2010-08-26 19:42:20.000000000 -0400 49176--- linux-2.6.32.21/kernel/fork.c 2010-08-29 21:08:20.000000000 -0400
48873+++ linux-2.6.32.21/kernel/fork.c 2010-09-13 08:10:10.000000000 -0400 49177+++ linux-2.6.32.21/kernel/fork.c 2010-09-04 15:54:52.000000000 -0400
48874@@ -253,7 +253,7 @@ static struct task_struct *dup_task_stru 49178@@ -253,7 +253,7 @@ static struct task_struct *dup_task_stru
48875 *stackend = STACK_END_MAGIC; /* for overflow detection */ 49179 *stackend = STACK_END_MAGIC; /* for overflow detection */
48876 49180
@@ -49010,8 +49314,8 @@ diff -urNp linux-2.6.32.21/kernel/fork.c linux-2.6.32.21/kernel/fork.c
49010 else 49314 else
49011 new_fs = fs; 49315 new_fs = fs;
49012diff -urNp linux-2.6.32.21/kernel/futex.c linux-2.6.32.21/kernel/futex.c 49316diff -urNp linux-2.6.32.21/kernel/futex.c linux-2.6.32.21/kernel/futex.c
49013--- linux-2.6.32.21/kernel/futex.c 2010-08-26 19:42:20.000000000 -0400 49317--- linux-2.6.32.21/kernel/futex.c 2010-08-13 16:24:37.000000000 -0400
49014+++ linux-2.6.32.21/kernel/futex.c 2010-09-13 08:10:10.000000000 -0400 49318+++ linux-2.6.32.21/kernel/futex.c 2010-09-04 15:54:52.000000000 -0400
49015@@ -54,6 +54,7 @@ 49319@@ -54,6 +54,7 @@
49016 #include <linux/mount.h> 49320 #include <linux/mount.h>
49017 #include <linux/pagemap.h> 49321 #include <linux/pagemap.h>
@@ -49080,8 +49384,8 @@ diff -urNp linux-2.6.32.21/kernel/futex.c linux-2.6.32.21/kernel/futex.c
49080 unsigned long uentry; 49384 unsigned long uentry;
49081 49385
49082diff -urNp linux-2.6.32.21/kernel/futex_compat.c linux-2.6.32.21/kernel/futex_compat.c 49386diff -urNp linux-2.6.32.21/kernel/futex_compat.c linux-2.6.32.21/kernel/futex_compat.c
49083--- linux-2.6.32.21/kernel/futex_compat.c 2010-08-26 19:42:20.000000000 -0400 49387--- linux-2.6.32.21/kernel/futex_compat.c 2010-08-13 16:24:37.000000000 -0400
49084+++ linux-2.6.32.21/kernel/futex_compat.c 2010-09-13 08:10:10.000000000 -0400 49388+++ linux-2.6.32.21/kernel/futex_compat.c 2010-09-04 15:54:52.000000000 -0400
49085@@ -10,6 +10,7 @@ 49389@@ -10,6 +10,7 @@
49086 #include <linux/compat.h> 49390 #include <linux/compat.h>
49087 #include <linux/nsproxy.h> 49391 #include <linux/nsproxy.h>
@@ -49120,8 +49424,8 @@ diff -urNp linux-2.6.32.21/kernel/futex_compat.c linux-2.6.32.21/kernel/futex_co
49120 read_unlock(&tasklist_lock); 49424 read_unlock(&tasklist_lock);
49121 } 49425 }
49122diff -urNp linux-2.6.32.21/kernel/gcov/base.c linux-2.6.32.21/kernel/gcov/base.c 49426diff -urNp linux-2.6.32.21/kernel/gcov/base.c linux-2.6.32.21/kernel/gcov/base.c
49123--- linux-2.6.32.21/kernel/gcov/base.c 2010-08-26 19:42:20.000000000 -0400 49427--- linux-2.6.32.21/kernel/gcov/base.c 2010-08-13 16:24:37.000000000 -0400
49124+++ linux-2.6.32.21/kernel/gcov/base.c 2010-09-13 08:10:10.000000000 -0400 49428+++ linux-2.6.32.21/kernel/gcov/base.c 2010-09-04 15:54:52.000000000 -0400
49125@@ -102,11 +102,6 @@ void gcov_enable_events(void) 49429@@ -102,11 +102,6 @@ void gcov_enable_events(void)
49126 } 49430 }
49127 49431
@@ -49144,8 +49448,8 @@ diff -urNp linux-2.6.32.21/kernel/gcov/base.c linux-2.6.32.21/kernel/gcov/base.c
49144 prev->next = info->next; 49448 prev->next = info->next;
49145 else 49449 else
49146diff -urNp linux-2.6.32.21/kernel/hrtimer.c linux-2.6.32.21/kernel/hrtimer.c 49450diff -urNp linux-2.6.32.21/kernel/hrtimer.c linux-2.6.32.21/kernel/hrtimer.c
49147--- linux-2.6.32.21/kernel/hrtimer.c 2010-08-26 19:42:20.000000000 -0400 49451--- linux-2.6.32.21/kernel/hrtimer.c 2010-08-13 16:24:37.000000000 -0400
49148+++ linux-2.6.32.21/kernel/hrtimer.c 2010-09-13 08:10:10.000000000 -0400 49452+++ linux-2.6.32.21/kernel/hrtimer.c 2010-09-04 15:54:52.000000000 -0400
49149@@ -1382,7 +1382,7 @@ void hrtimer_peek_ahead_timers(void) 49453@@ -1382,7 +1382,7 @@ void hrtimer_peek_ahead_timers(void)
49150 local_irq_restore(flags); 49454 local_irq_restore(flags);
49151 } 49455 }
@@ -49156,8 +49460,8 @@ diff -urNp linux-2.6.32.21/kernel/hrtimer.c linux-2.6.32.21/kernel/hrtimer.c
49156 hrtimer_peek_ahead_timers(); 49460 hrtimer_peek_ahead_timers();
49157 } 49461 }
49158diff -urNp linux-2.6.32.21/kernel/kallsyms.c linux-2.6.32.21/kernel/kallsyms.c 49462diff -urNp linux-2.6.32.21/kernel/kallsyms.c linux-2.6.32.21/kernel/kallsyms.c
49159--- linux-2.6.32.21/kernel/kallsyms.c 2010-08-26 19:42:20.000000000 -0400 49463--- linux-2.6.32.21/kernel/kallsyms.c 2010-08-13 16:24:37.000000000 -0400
49160+++ linux-2.6.32.21/kernel/kallsyms.c 2010-09-13 08:10:10.000000000 -0400 49464+++ linux-2.6.32.21/kernel/kallsyms.c 2010-09-04 15:54:52.000000000 -0400
49161@@ -11,6 +11,9 @@ 49465@@ -11,6 +11,9 @@
49162 * Changed the compression method from stem compression to "table lookup" 49466 * Changed the compression method from stem compression to "table lookup"
49163 * compression (see scripts/kallsyms.c for a more complete description) 49467 * compression (see scripts/kallsyms.c for a more complete description)
@@ -49261,8 +49565,8 @@ diff -urNp linux-2.6.32.21/kernel/kallsyms.c linux-2.6.32.21/kernel/kallsyms.c
49261 return -ENOMEM; 49565 return -ENOMEM;
49262 reset_iter(iter, 0); 49566 reset_iter(iter, 0);
49263diff -urNp linux-2.6.32.21/kernel/kgdb.c linux-2.6.32.21/kernel/kgdb.c 49567diff -urNp linux-2.6.32.21/kernel/kgdb.c linux-2.6.32.21/kernel/kgdb.c
49264--- linux-2.6.32.21/kernel/kgdb.c 2010-08-26 19:42:20.000000000 -0400 49568--- linux-2.6.32.21/kernel/kgdb.c 2010-08-13 16:24:37.000000000 -0400
49265+++ linux-2.6.32.21/kernel/kgdb.c 2010-09-13 08:10:10.000000000 -0400 49569+++ linux-2.6.32.21/kernel/kgdb.c 2010-09-04 15:54:52.000000000 -0400
49266@@ -86,7 +86,7 @@ static int kgdb_io_module_registered; 49570@@ -86,7 +86,7 @@ static int kgdb_io_module_registered;
49267 /* Guard for recursive entry */ 49571 /* Guard for recursive entry */
49268 static int exception_level; 49572 static int exception_level;
@@ -49291,8 +49595,8 @@ diff -urNp linux-2.6.32.21/kernel/kgdb.c linux-2.6.32.21/kernel/kgdb.c
49291 BUG_ON(kgdb_connected); 49595 BUG_ON(kgdb_connected);
49292 49596
49293diff -urNp linux-2.6.32.21/kernel/kmod.c linux-2.6.32.21/kernel/kmod.c 49597diff -urNp linux-2.6.32.21/kernel/kmod.c linux-2.6.32.21/kernel/kmod.c
49294--- linux-2.6.32.21/kernel/kmod.c 2010-08-26 19:42:20.000000000 -0400 49598--- linux-2.6.32.21/kernel/kmod.c 2010-08-13 16:24:37.000000000 -0400
49295+++ linux-2.6.32.21/kernel/kmod.c 2010-09-13 08:10:10.000000000 -0400 49599+++ linux-2.6.32.21/kernel/kmod.c 2010-09-04 15:54:52.000000000 -0400
49296@@ -90,6 +90,18 @@ int __request_module(bool wait, const ch 49600@@ -90,6 +90,18 @@ int __request_module(bool wait, const ch
49297 if (ret >= MODULE_NAME_LEN) 49601 if (ret >= MODULE_NAME_LEN)
49298 return -ENAMETOOLONG; 49602 return -ENAMETOOLONG;
@@ -49313,8 +49617,8 @@ diff -urNp linux-2.6.32.21/kernel/kmod.c linux-2.6.32.21/kernel/kmod.c
49313 * loop. Limit the number of running kmod threads to max_threads/2 or 49617 * loop. Limit the number of running kmod threads to max_threads/2 or
49314 * MAX_KMOD_CONCURRENT, whichever is the smaller. A cleaner method 49618 * MAX_KMOD_CONCURRENT, whichever is the smaller. A cleaner method
49315diff -urNp linux-2.6.32.21/kernel/kprobes.c linux-2.6.32.21/kernel/kprobes.c 49619diff -urNp linux-2.6.32.21/kernel/kprobes.c linux-2.6.32.21/kernel/kprobes.c
49316--- linux-2.6.32.21/kernel/kprobes.c 2010-08-26 19:42:20.000000000 -0400 49620--- linux-2.6.32.21/kernel/kprobes.c 2010-08-13 16:24:37.000000000 -0400
49317+++ linux-2.6.32.21/kernel/kprobes.c 2010-09-13 08:10:10.000000000 -0400 49621+++ linux-2.6.32.21/kernel/kprobes.c 2010-09-04 15:54:52.000000000 -0400
49318@@ -183,7 +183,7 @@ static kprobe_opcode_t __kprobes *__get_ 49622@@ -183,7 +183,7 @@ static kprobe_opcode_t __kprobes *__get_
49319 * kernel image and loaded module images reside. This is required 49623 * kernel image and loaded module images reside. This is required
49320 * so x86_64 can correctly handle the %rip-relative fixups. 49624 * so x86_64 can correctly handle the %rip-relative fixups.
@@ -49352,8 +49656,8 @@ diff -urNp linux-2.6.32.21/kernel/kprobes.c linux-2.6.32.21/kernel/kprobes.c
49352 head = &kprobe_table[i]; 49656 head = &kprobe_table[i];
49353 preempt_disable(); 49657 preempt_disable();
49354diff -urNp linux-2.6.32.21/kernel/lockdep.c linux-2.6.32.21/kernel/lockdep.c 49658diff -urNp linux-2.6.32.21/kernel/lockdep.c linux-2.6.32.21/kernel/lockdep.c
49355--- linux-2.6.32.21/kernel/lockdep.c 2010-08-26 19:42:20.000000000 -0400 49659--- linux-2.6.32.21/kernel/lockdep.c 2010-08-13 16:24:37.000000000 -0400
49356+++ linux-2.6.32.21/kernel/lockdep.c 2010-09-13 08:10:10.000000000 -0400 49660+++ linux-2.6.32.21/kernel/lockdep.c 2010-09-04 15:54:52.000000000 -0400
49357@@ -577,6 +577,10 @@ static int static_obj(void *obj) 49661@@ -577,6 +577,10 @@ static int static_obj(void *obj)
49358 int i; 49662 int i;
49359 #endif 49663 #endif
@@ -49384,8 +49688,8 @@ diff -urNp linux-2.6.32.21/kernel/lockdep.c linux-2.6.32.21/kernel/lockdep.c
49384 printk("turning off the locking correctness validator.\n"); 49688 printk("turning off the locking correctness validator.\n");
49385 dump_stack(); 49689 dump_stack();
49386diff -urNp linux-2.6.32.21/kernel/lockdep_proc.c linux-2.6.32.21/kernel/lockdep_proc.c 49690diff -urNp linux-2.6.32.21/kernel/lockdep_proc.c linux-2.6.32.21/kernel/lockdep_proc.c
49387--- linux-2.6.32.21/kernel/lockdep_proc.c 2010-08-26 19:42:20.000000000 -0400 49691--- linux-2.6.32.21/kernel/lockdep_proc.c 2010-08-13 16:24:37.000000000 -0400
49388+++ linux-2.6.32.21/kernel/lockdep_proc.c 2010-09-13 08:10:10.000000000 -0400 49692+++ linux-2.6.32.21/kernel/lockdep_proc.c 2010-09-04 15:54:52.000000000 -0400
49389@@ -39,7 +39,7 @@ static void l_stop(struct seq_file *m, v 49693@@ -39,7 +39,7 @@ static void l_stop(struct seq_file *m, v
49390 49694
49391 static void print_name(struct seq_file *m, struct lock_class *class) 49695 static void print_name(struct seq_file *m, struct lock_class *class)
@@ -49396,8 +49700,8 @@ diff -urNp linux-2.6.32.21/kernel/lockdep_proc.c linux-2.6.32.21/kernel/lockdep_
49396 49700
49397 if (!name) { 49701 if (!name) {
49398diff -urNp linux-2.6.32.21/kernel/module.c linux-2.6.32.21/kernel/module.c 49702diff -urNp linux-2.6.32.21/kernel/module.c linux-2.6.32.21/kernel/module.c
49399--- linux-2.6.32.21/kernel/module.c 2010-08-26 19:42:20.000000000 -0400 49703--- linux-2.6.32.21/kernel/module.c 2010-08-13 16:24:37.000000000 -0400
49400+++ linux-2.6.32.21/kernel/module.c 2010-09-13 08:10:10.000000000 -0400 49704+++ linux-2.6.32.21/kernel/module.c 2010-09-04 15:54:52.000000000 -0400
49401@@ -89,7 +89,8 @@ static DECLARE_WAIT_QUEUE_HEAD(module_wq 49705@@ -89,7 +89,8 @@ static DECLARE_WAIT_QUEUE_HEAD(module_wq
49402 static BLOCKING_NOTIFIER_HEAD(module_notify_list); 49706 static BLOCKING_NOTIFIER_HEAD(module_notify_list);
49403 49707
@@ -49938,8 +50242,8 @@ diff -urNp linux-2.6.32.21/kernel/module.c linux-2.6.32.21/kernel/module.c
49938 } 50242 }
49939 return mod; 50243 return mod;
49940diff -urNp linux-2.6.32.21/kernel/panic.c linux-2.6.32.21/kernel/panic.c 50244diff -urNp linux-2.6.32.21/kernel/panic.c linux-2.6.32.21/kernel/panic.c
49941--- linux-2.6.32.21/kernel/panic.c 2010-08-26 19:42:20.000000000 -0400 50245--- linux-2.6.32.21/kernel/panic.c 2010-08-13 16:24:37.000000000 -0400
49942+++ linux-2.6.32.21/kernel/panic.c 2010-09-13 08:10:10.000000000 -0400 50246+++ linux-2.6.32.21/kernel/panic.c 2010-09-04 15:54:52.000000000 -0400
49943@@ -392,7 +392,8 @@ EXPORT_SYMBOL(warn_slowpath_null); 50247@@ -392,7 +392,8 @@ EXPORT_SYMBOL(warn_slowpath_null);
49944 */ 50248 */
49945 void __stack_chk_fail(void) 50249 void __stack_chk_fail(void)
@@ -49951,8 +50255,8 @@ diff -urNp linux-2.6.32.21/kernel/panic.c linux-2.6.32.21/kernel/panic.c
49951 } 50255 }
49952 EXPORT_SYMBOL(__stack_chk_fail); 50256 EXPORT_SYMBOL(__stack_chk_fail);
49953diff -urNp linux-2.6.32.21/kernel/params.c linux-2.6.32.21/kernel/params.c 50257diff -urNp linux-2.6.32.21/kernel/params.c linux-2.6.32.21/kernel/params.c
49954--- linux-2.6.32.21/kernel/params.c 2010-08-26 19:42:20.000000000 -0400 50258--- linux-2.6.32.21/kernel/params.c 2010-08-13 16:24:37.000000000 -0400
49955+++ linux-2.6.32.21/kernel/params.c 2010-09-13 08:10:10.000000000 -0400 50259+++ linux-2.6.32.21/kernel/params.c 2010-09-04 15:54:52.000000000 -0400
49956@@ -725,7 +725,7 @@ static ssize_t module_attr_store(struct 50260@@ -725,7 +725,7 @@ static ssize_t module_attr_store(struct
49957 return ret; 50261 return ret;
49958 } 50262 }
@@ -49972,8 +50276,8 @@ diff -urNp linux-2.6.32.21/kernel/params.c linux-2.6.32.21/kernel/params.c
49972 }; 50276 };
49973 50277
49974diff -urNp linux-2.6.32.21/kernel/pid.c linux-2.6.32.21/kernel/pid.c 50278diff -urNp linux-2.6.32.21/kernel/pid.c linux-2.6.32.21/kernel/pid.c
49975--- linux-2.6.32.21/kernel/pid.c 2010-08-26 19:42:20.000000000 -0400 50279--- linux-2.6.32.21/kernel/pid.c 2010-08-13 16:24:37.000000000 -0400
49976+++ linux-2.6.32.21/kernel/pid.c 2010-09-13 08:10:10.000000000 -0400 50280+++ linux-2.6.32.21/kernel/pid.c 2010-09-04 15:54:52.000000000 -0400
49977@@ -33,6 +33,7 @@ 50281@@ -33,6 +33,7 @@
49978 #include <linux/rculist.h> 50282 #include <linux/rculist.h>
49979 #include <linux/bootmem.h> 50283 #include <linux/bootmem.h>
@@ -50008,8 +50312,8 @@ diff -urNp linux-2.6.32.21/kernel/pid.c linux-2.6.32.21/kernel/pid.c
50008 50312
50009 struct task_struct *find_task_by_vpid(pid_t vnr) 50313 struct task_struct *find_task_by_vpid(pid_t vnr)
50010diff -urNp linux-2.6.32.21/kernel/posix-cpu-timers.c linux-2.6.32.21/kernel/posix-cpu-timers.c 50314diff -urNp linux-2.6.32.21/kernel/posix-cpu-timers.c linux-2.6.32.21/kernel/posix-cpu-timers.c
50011--- linux-2.6.32.21/kernel/posix-cpu-timers.c 2010-08-26 19:42:20.000000000 -0400 50315--- linux-2.6.32.21/kernel/posix-cpu-timers.c 2010-08-13 16:24:37.000000000 -0400
50012+++ linux-2.6.32.21/kernel/posix-cpu-timers.c 2010-09-13 08:10:10.000000000 -0400 50316+++ linux-2.6.32.21/kernel/posix-cpu-timers.c 2010-09-04 15:54:52.000000000 -0400
50013@@ -6,6 +6,7 @@ 50317@@ -6,6 +6,7 @@
50014 #include <linux/posix-timers.h> 50318 #include <linux/posix-timers.h>
50015 #include <linux/errno.h> 50319 #include <linux/errno.h>
@@ -50035,8 +50339,8 @@ diff -urNp linux-2.6.32.21/kernel/posix-cpu-timers.c linux-2.6.32.21/kernel/posi
50035 /* 50339 /*
50036 * At the hard limit, we just die. 50340 * At the hard limit, we just die.
50037diff -urNp linux-2.6.32.21/kernel/power/hibernate.c linux-2.6.32.21/kernel/power/hibernate.c 50341diff -urNp linux-2.6.32.21/kernel/power/hibernate.c linux-2.6.32.21/kernel/power/hibernate.c
50038--- linux-2.6.32.21/kernel/power/hibernate.c 2010-08-26 19:42:20.000000000 -0400 50342--- linux-2.6.32.21/kernel/power/hibernate.c 2010-08-13 16:24:37.000000000 -0400
50039+++ linux-2.6.32.21/kernel/power/hibernate.c 2010-09-13 08:10:10.000000000 -0400 50343+++ linux-2.6.32.21/kernel/power/hibernate.c 2010-09-04 15:54:52.000000000 -0400
50040@@ -48,14 +48,14 @@ enum { 50344@@ -48,14 +48,14 @@ enum {
50041 50345
50042 static int hibernation_mode = HIBERNATION_SHUTDOWN; 50346 static int hibernation_mode = HIBERNATION_SHUTDOWN;
@@ -50055,8 +50359,8 @@ diff -urNp linux-2.6.32.21/kernel/power/hibernate.c linux-2.6.32.21/kernel/power
50055 if (ops && !(ops->begin && ops->end && ops->pre_snapshot 50359 if (ops && !(ops->begin && ops->end && ops->pre_snapshot
50056 && ops->prepare && ops->finish && ops->enter && ops->pre_restore 50360 && ops->prepare && ops->finish && ops->enter && ops->pre_restore
50057diff -urNp linux-2.6.32.21/kernel/power/poweroff.c linux-2.6.32.21/kernel/power/poweroff.c 50361diff -urNp linux-2.6.32.21/kernel/power/poweroff.c linux-2.6.32.21/kernel/power/poweroff.c
50058--- linux-2.6.32.21/kernel/power/poweroff.c 2010-08-26 19:42:20.000000000 -0400 50362--- linux-2.6.32.21/kernel/power/poweroff.c 2010-08-13 16:24:37.000000000 -0400
50059+++ linux-2.6.32.21/kernel/power/poweroff.c 2010-09-13 08:10:10.000000000 -0400 50363+++ linux-2.6.32.21/kernel/power/poweroff.c 2010-09-04 15:54:52.000000000 -0400
50060@@ -37,7 +37,7 @@ static struct sysrq_key_op sysrq_powerof 50364@@ -37,7 +37,7 @@ static struct sysrq_key_op sysrq_powerof
50061 .enable_mask = SYSRQ_ENABLE_BOOT, 50365 .enable_mask = SYSRQ_ENABLE_BOOT,
50062 }; 50366 };
@@ -50067,8 +50371,8 @@ diff -urNp linux-2.6.32.21/kernel/power/poweroff.c linux-2.6.32.21/kernel/power/
50067 register_sysrq_key('o', &sysrq_poweroff_op); 50371 register_sysrq_key('o', &sysrq_poweroff_op);
50068 return 0; 50372 return 0;
50069diff -urNp linux-2.6.32.21/kernel/power/process.c linux-2.6.32.21/kernel/power/process.c 50373diff -urNp linux-2.6.32.21/kernel/power/process.c linux-2.6.32.21/kernel/power/process.c
50070--- linux-2.6.32.21/kernel/power/process.c 2010-08-26 19:42:20.000000000 -0400 50374--- linux-2.6.32.21/kernel/power/process.c 2010-08-13 16:24:37.000000000 -0400
50071+++ linux-2.6.32.21/kernel/power/process.c 2010-09-13 08:10:10.000000000 -0400 50375+++ linux-2.6.32.21/kernel/power/process.c 2010-09-04 15:54:52.000000000 -0400
50072@@ -37,12 +37,15 @@ static int try_to_freeze_tasks(bool sig_ 50376@@ -37,12 +37,15 @@ static int try_to_freeze_tasks(bool sig_
50073 struct timeval start, end; 50377 struct timeval start, end;
50074 u64 elapsed_csecs64; 50378 u64 elapsed_csecs64;
@@ -50109,8 +50413,8 @@ diff -urNp linux-2.6.32.21/kernel/power/process.c linux-2.6.32.21/kernel/power/p
50109 do_gettimeofday(&end); 50413 do_gettimeofday(&end);
50110 elapsed_csecs64 = timeval_to_ns(&end) - timeval_to_ns(&start); 50414 elapsed_csecs64 = timeval_to_ns(&end) - timeval_to_ns(&start);
50111diff -urNp linux-2.6.32.21/kernel/power/suspend.c linux-2.6.32.21/kernel/power/suspend.c 50415diff -urNp linux-2.6.32.21/kernel/power/suspend.c linux-2.6.32.21/kernel/power/suspend.c
50112--- linux-2.6.32.21/kernel/power/suspend.c 2010-08-26 19:42:20.000000000 -0400 50416--- linux-2.6.32.21/kernel/power/suspend.c 2010-08-13 16:24:37.000000000 -0400
50113+++ linux-2.6.32.21/kernel/power/suspend.c 2010-09-13 08:10:10.000000000 -0400 50417+++ linux-2.6.32.21/kernel/power/suspend.c 2010-09-04 15:54:52.000000000 -0400
50114@@ -23,13 +23,13 @@ const char *const pm_states[PM_SUSPEND_M 50418@@ -23,13 +23,13 @@ const char *const pm_states[PM_SUSPEND_M
50115 [PM_SUSPEND_MEM] = "mem", 50419 [PM_SUSPEND_MEM] = "mem",
50116 }; 50420 };
@@ -50128,8 +50432,8 @@ diff -urNp linux-2.6.32.21/kernel/power/suspend.c linux-2.6.32.21/kernel/power/s
50128 mutex_lock(&pm_mutex); 50432 mutex_lock(&pm_mutex);
50129 suspend_ops = ops; 50433 suspend_ops = ops;
50130diff -urNp linux-2.6.32.21/kernel/printk.c linux-2.6.32.21/kernel/printk.c 50434diff -urNp linux-2.6.32.21/kernel/printk.c linux-2.6.32.21/kernel/printk.c
50131--- linux-2.6.32.21/kernel/printk.c 2010-08-26 19:42:20.000000000 -0400 50435--- linux-2.6.32.21/kernel/printk.c 2010-08-13 16:24:37.000000000 -0400
50132+++ linux-2.6.32.21/kernel/printk.c 2010-09-13 08:10:10.000000000 -0400 50436+++ linux-2.6.32.21/kernel/printk.c 2010-09-04 15:54:52.000000000 -0400
50133@@ -278,6 +278,11 @@ int do_syslog(int type, char __user *buf 50437@@ -278,6 +278,11 @@ int do_syslog(int type, char __user *buf
50134 char c; 50438 char c;
50135 int error = 0; 50439 int error = 0;
@@ -50143,8 +50447,8 @@ diff -urNp linux-2.6.32.21/kernel/printk.c linux-2.6.32.21/kernel/printk.c
50143 if (error) 50447 if (error)
50144 return error; 50448 return error;
50145diff -urNp linux-2.6.32.21/kernel/ptrace.c linux-2.6.32.21/kernel/ptrace.c 50449diff -urNp linux-2.6.32.21/kernel/ptrace.c linux-2.6.32.21/kernel/ptrace.c
50146--- linux-2.6.32.21/kernel/ptrace.c 2010-08-26 19:42:20.000000000 -0400 50450--- linux-2.6.32.21/kernel/ptrace.c 2010-08-13 16:24:37.000000000 -0400
50147+++ linux-2.6.32.21/kernel/ptrace.c 2010-09-13 08:10:10.000000000 -0400 50451+++ linux-2.6.32.21/kernel/ptrace.c 2010-09-04 15:54:52.000000000 -0400
50148@@ -141,7 +141,7 @@ int __ptrace_may_access(struct task_stru 50452@@ -141,7 +141,7 @@ int __ptrace_may_access(struct task_stru
50149 cred->gid != tcred->egid || 50453 cred->gid != tcred->egid ||
50150 cred->gid != tcred->sgid || 50454 cred->gid != tcred->sgid ||
@@ -50227,8 +50531,8 @@ diff -urNp linux-2.6.32.21/kernel/ptrace.c linux-2.6.32.21/kernel/ptrace.c
50227 50531
50228 int generic_ptrace_pokedata(struct task_struct *tsk, long addr, long data) 50532 int generic_ptrace_pokedata(struct task_struct *tsk, long addr, long data)
50229diff -urNp linux-2.6.32.21/kernel/rcutree.c linux-2.6.32.21/kernel/rcutree.c 50533diff -urNp linux-2.6.32.21/kernel/rcutree.c linux-2.6.32.21/kernel/rcutree.c
50230--- linux-2.6.32.21/kernel/rcutree.c 2010-08-26 19:42:20.000000000 -0400 50534--- linux-2.6.32.21/kernel/rcutree.c 2010-08-13 16:24:37.000000000 -0400
50231+++ linux-2.6.32.21/kernel/rcutree.c 2010-09-13 08:10:10.000000000 -0400 50535+++ linux-2.6.32.21/kernel/rcutree.c 2010-09-04 15:54:52.000000000 -0400
50232@@ -1303,7 +1303,7 @@ __rcu_process_callbacks(struct rcu_state 50536@@ -1303,7 +1303,7 @@ __rcu_process_callbacks(struct rcu_state
50233 /* 50537 /*
50234 * Do softirq processing for the current CPU. 50538 * Do softirq processing for the current CPU.
@@ -50239,8 +50543,8 @@ diff -urNp linux-2.6.32.21/kernel/rcutree.c linux-2.6.32.21/kernel/rcutree.c
50239 /* 50543 /*
50240 * Memory references from any prior RCU read-side critical sections 50544 * Memory references from any prior RCU read-side critical sections
50241diff -urNp linux-2.6.32.21/kernel/relay.c linux-2.6.32.21/kernel/relay.c 50545diff -urNp linux-2.6.32.21/kernel/relay.c linux-2.6.32.21/kernel/relay.c
50242--- linux-2.6.32.21/kernel/relay.c 2010-08-26 19:42:20.000000000 -0400 50546--- linux-2.6.32.21/kernel/relay.c 2010-08-13 16:24:37.000000000 -0400
50243+++ linux-2.6.32.21/kernel/relay.c 2010-09-13 08:10:10.000000000 -0400 50547+++ linux-2.6.32.21/kernel/relay.c 2010-09-04 15:54:52.000000000 -0400
50244@@ -1222,7 +1222,7 @@ static int subbuf_splice_actor(struct fi 50548@@ -1222,7 +1222,7 @@ static int subbuf_splice_actor(struct fi
50245 unsigned int flags, 50549 unsigned int flags,
50246 int *nonpad_ret) 50550 int *nonpad_ret)
@@ -50259,8 +50563,8 @@ diff -urNp linux-2.6.32.21/kernel/relay.c linux-2.6.32.21/kernel/relay.c
50259 if (rbuf->subbufs_produced == rbuf->subbufs_consumed) 50563 if (rbuf->subbufs_produced == rbuf->subbufs_consumed)
50260 return 0; 50564 return 0;
50261diff -urNp linux-2.6.32.21/kernel/resource.c linux-2.6.32.21/kernel/resource.c 50565diff -urNp linux-2.6.32.21/kernel/resource.c linux-2.6.32.21/kernel/resource.c
50262--- linux-2.6.32.21/kernel/resource.c 2010-08-26 19:42:20.000000000 -0400 50566--- linux-2.6.32.21/kernel/resource.c 2010-08-13 16:24:37.000000000 -0400
50263+++ linux-2.6.32.21/kernel/resource.c 2010-09-13 08:10:10.000000000 -0400 50567+++ linux-2.6.32.21/kernel/resource.c 2010-09-04 15:54:52.000000000 -0400
50264@@ -132,8 +132,18 @@ static const struct file_operations proc 50568@@ -132,8 +132,18 @@ static const struct file_operations proc
50265 50569
50266 static int __init ioresources_init(void) 50570 static int __init ioresources_init(void)
@@ -50281,8 +50585,8 @@ diff -urNp linux-2.6.32.21/kernel/resource.c linux-2.6.32.21/kernel/resource.c
50281 } 50585 }
50282 __initcall(ioresources_init); 50586 __initcall(ioresources_init);
50283diff -urNp linux-2.6.32.21/kernel/sched.c linux-2.6.32.21/kernel/sched.c 50587diff -urNp linux-2.6.32.21/kernel/sched.c linux-2.6.32.21/kernel/sched.c
50284--- linux-2.6.32.21/kernel/sched.c 2010-08-26 19:42:20.000000000 -0400 50588--- linux-2.6.32.21/kernel/sched.c 2010-08-13 16:24:37.000000000 -0400
50285+++ linux-2.6.32.21/kernel/sched.c 2010-09-13 08:10:10.000000000 -0400 50589+++ linux-2.6.32.21/kernel/sched.c 2010-09-04 15:54:52.000000000 -0400
50286@@ -4848,7 +4848,7 @@ out: 50590@@ -4848,7 +4848,7 @@ out:
50287 * In CONFIG_NO_HZ case, the idle load balance owner will do the 50591 * In CONFIG_NO_HZ case, the idle load balance owner will do the
50288 * rebalancing for all the cpus for whom scheduler ticks are stopped. 50592 * rebalancing for all the cpus for whom scheduler ticks are stopped.
@@ -50330,8 +50634,8 @@ diff -urNp linux-2.6.32.21/kernel/sched.c linux-2.6.32.21/kernel/sched.c
50330 50634
50331 static struct ctl_table *sd_alloc_ctl_entry(int n) 50635 static struct ctl_table *sd_alloc_ctl_entry(int n)
50332diff -urNp linux-2.6.32.21/kernel/signal.c linux-2.6.32.21/kernel/signal.c 50636diff -urNp linux-2.6.32.21/kernel/signal.c linux-2.6.32.21/kernel/signal.c
50333--- linux-2.6.32.21/kernel/signal.c 2010-08-26 19:42:20.000000000 -0400 50637--- linux-2.6.32.21/kernel/signal.c 2010-08-13 16:24:37.000000000 -0400
50334+++ linux-2.6.32.21/kernel/signal.c 2010-09-13 08:10:10.000000000 -0400 50638+++ linux-2.6.32.21/kernel/signal.c 2010-09-04 15:54:52.000000000 -0400
50335@@ -41,12 +41,12 @@ 50639@@ -41,12 +41,12 @@
50336 50640
50337 static struct kmem_cache *sigqueue_cachep; 50641 static struct kmem_cache *sigqueue_cachep;
@@ -50418,8 +50722,8 @@ diff -urNp linux-2.6.32.21/kernel/signal.c linux-2.6.32.21/kernel/signal.c
50418 return ret; 50722 return ret;
50419 } 50723 }
50420diff -urNp linux-2.6.32.21/kernel/smp.c linux-2.6.32.21/kernel/smp.c 50724diff -urNp linux-2.6.32.21/kernel/smp.c linux-2.6.32.21/kernel/smp.c
50421--- linux-2.6.32.21/kernel/smp.c 2010-08-26 19:42:20.000000000 -0400 50725--- linux-2.6.32.21/kernel/smp.c 2010-08-13 16:24:37.000000000 -0400
50422+++ linux-2.6.32.21/kernel/smp.c 2010-09-13 08:10:10.000000000 -0400 50726+++ linux-2.6.32.21/kernel/smp.c 2010-09-04 15:54:52.000000000 -0400
50423@@ -459,22 +459,22 @@ int smp_call_function(void (*func)(void 50727@@ -459,22 +459,22 @@ int smp_call_function(void (*func)(void
50424 } 50728 }
50425 EXPORT_SYMBOL(smp_call_function); 50729 EXPORT_SYMBOL(smp_call_function);
@@ -50448,8 +50752,8 @@ diff -urNp linux-2.6.32.21/kernel/smp.c linux-2.6.32.21/kernel/smp.c
50448 spin_unlock_irq(&call_function.lock); 50752 spin_unlock_irq(&call_function.lock);
50449 } 50753 }
50450diff -urNp linux-2.6.32.21/kernel/softirq.c linux-2.6.32.21/kernel/softirq.c 50754diff -urNp linux-2.6.32.21/kernel/softirq.c linux-2.6.32.21/kernel/softirq.c
50451--- linux-2.6.32.21/kernel/softirq.c 2010-08-26 19:42:20.000000000 -0400 50755--- linux-2.6.32.21/kernel/softirq.c 2010-08-13 16:24:37.000000000 -0400
50452+++ linux-2.6.32.21/kernel/softirq.c 2010-09-13 08:10:10.000000000 -0400 50756+++ linux-2.6.32.21/kernel/softirq.c 2010-09-04 15:54:52.000000000 -0400
50453@@ -56,7 +56,7 @@ static struct softirq_action softirq_vec 50757@@ -56,7 +56,7 @@ static struct softirq_action softirq_vec
50454 50758
50455 static DEFINE_PER_CPU(struct task_struct *, ksoftirqd); 50759 static DEFINE_PER_CPU(struct task_struct *, ksoftirqd);
@@ -50505,8 +50809,8 @@ diff -urNp linux-2.6.32.21/kernel/softirq.c linux-2.6.32.21/kernel/softirq.c
50505 struct tasklet_struct *list; 50809 struct tasklet_struct *list;
50506 50810
50507diff -urNp linux-2.6.32.21/kernel/sys.c linux-2.6.32.21/kernel/sys.c 50811diff -urNp linux-2.6.32.21/kernel/sys.c linux-2.6.32.21/kernel/sys.c
50508--- linux-2.6.32.21/kernel/sys.c 2010-08-26 19:42:20.000000000 -0400 50812--- linux-2.6.32.21/kernel/sys.c 2010-08-13 16:24:37.000000000 -0400
50509+++ linux-2.6.32.21/kernel/sys.c 2010-09-13 08:10:10.000000000 -0400 50813+++ linux-2.6.32.21/kernel/sys.c 2010-09-14 20:43:23.000000000 -0400
50510@@ -133,6 +133,12 @@ static int set_one_prio(struct task_stru 50814@@ -133,6 +133,12 @@ static int set_one_prio(struct task_stru
50511 error = -EACCES; 50815 error = -EACCES;
50512 goto out; 50816 goto out;
@@ -50643,8 +50947,8 @@ diff -urNp linux-2.6.32.21/kernel/sys.c linux-2.6.32.21/kernel/sys.c
50643 break; 50947 break;
50644 } 50948 }
50645diff -urNp linux-2.6.32.21/kernel/sysctl.c linux-2.6.32.21/kernel/sysctl.c 50949diff -urNp linux-2.6.32.21/kernel/sysctl.c linux-2.6.32.21/kernel/sysctl.c
50646--- linux-2.6.32.21/kernel/sysctl.c 2010-08-26 19:42:20.000000000 -0400 50950--- linux-2.6.32.21/kernel/sysctl.c 2010-08-13 16:24:37.000000000 -0400
50647+++ linux-2.6.32.21/kernel/sysctl.c 2010-09-13 08:10:10.000000000 -0400 50951+++ linux-2.6.32.21/kernel/sysctl.c 2010-09-04 15:54:52.000000000 -0400
50648@@ -63,6 +63,13 @@ 50952@@ -63,6 +63,13 @@
50649 static int deprecated_sysctl_warning(struct __sysctl_args *args); 50953 static int deprecated_sysctl_warning(struct __sysctl_args *args);
50650 50954
@@ -50767,8 +51071,8 @@ diff -urNp linux-2.6.32.21/kernel/sysctl.c linux-2.6.32.21/kernel/sysctl.c
50767 if (error) 51071 if (error)
50768 return error; 51072 return error;
50769diff -urNp linux-2.6.32.21/kernel/taskstats.c linux-2.6.32.21/kernel/taskstats.c 51073diff -urNp linux-2.6.32.21/kernel/taskstats.c linux-2.6.32.21/kernel/taskstats.c
50770--- linux-2.6.32.21/kernel/taskstats.c 2010-08-26 19:42:20.000000000 -0400 51074--- linux-2.6.32.21/kernel/taskstats.c 2010-08-13 16:24:37.000000000 -0400
50771+++ linux-2.6.32.21/kernel/taskstats.c 2010-09-13 08:10:10.000000000 -0400 51075+++ linux-2.6.32.21/kernel/taskstats.c 2010-09-04 15:54:52.000000000 -0400
50772@@ -26,9 +26,12 @@ 51076@@ -26,9 +26,12 @@
50773 #include <linux/cgroup.h> 51077 #include <linux/cgroup.h>
50774 #include <linux/fs.h> 51078 #include <linux/fs.h>
@@ -50793,8 +51097,8 @@ diff -urNp linux-2.6.32.21/kernel/taskstats.c linux-2.6.32.21/kernel/taskstats.c
50793 return -ENOMEM; 51097 return -ENOMEM;
50794 51098
50795diff -urNp linux-2.6.32.21/kernel/time/tick-broadcast.c linux-2.6.32.21/kernel/time/tick-broadcast.c 51099diff -urNp linux-2.6.32.21/kernel/time/tick-broadcast.c linux-2.6.32.21/kernel/time/tick-broadcast.c
50796--- linux-2.6.32.21/kernel/time/tick-broadcast.c 2010-08-26 19:42:20.000000000 -0400 51100--- linux-2.6.32.21/kernel/time/tick-broadcast.c 2010-08-13 16:24:37.000000000 -0400
50797+++ linux-2.6.32.21/kernel/time/tick-broadcast.c 2010-09-13 08:10:10.000000000 -0400 51101+++ linux-2.6.32.21/kernel/time/tick-broadcast.c 2010-09-04 15:54:52.000000000 -0400
50798@@ -116,7 +116,7 @@ int tick_device_uses_broadcast(struct cl 51102@@ -116,7 +116,7 @@ int tick_device_uses_broadcast(struct cl
50799 * then clear the broadcast bit. 51103 * then clear the broadcast bit.
50800 */ 51104 */
@@ -50804,9 +51108,85 @@ diff -urNp linux-2.6.32.21/kernel/time/tick-broadcast.c linux-2.6.32.21/kernel/t
50804 51108
50805 cpumask_clear_cpu(cpu, tick_get_broadcast_mask()); 51109 cpumask_clear_cpu(cpu, tick_get_broadcast_mask());
50806 tick_broadcast_clear_oneshot(cpu); 51110 tick_broadcast_clear_oneshot(cpu);
51111diff -urNp linux-2.6.32.21/kernel/time/timer_list.c linux-2.6.32.21/kernel/time/timer_list.c
51112--- linux-2.6.32.21/kernel/time/timer_list.c 2010-08-13 16:24:37.000000000 -0400
51113+++ linux-2.6.32.21/kernel/time/timer_list.c 2010-09-14 22:29:01.000000000 -0400
51114@@ -38,12 +38,16 @@ DECLARE_PER_CPU(struct hrtimer_cpu_base,
51115
51116 static void print_name_offset(struct seq_file *m, void *sym)
51117 {
51118+#ifdef CONFIG_GRKERNSEC_HIDESYM
51119+ SEQ_printf(m, "<%p>", NULL);
51120+#else
51121 char symname[KSYM_NAME_LEN];
51122
51123 if (lookup_symbol_name((unsigned long)sym, symname) < 0)
51124 SEQ_printf(m, "<%p>", sym);
51125 else
51126 SEQ_printf(m, "%s", symname);
51127+#endif
51128 }
51129
51130 static void
51131@@ -112,7 +116,11 @@ next_one:
51132 static void
51133 print_base(struct seq_file *m, struct hrtimer_clock_base *base, u64 now)
51134 {
51135+#ifdef CONFIG_GRKERNSEC_HIDESYM
51136+ SEQ_printf(m, " .base: %p\n", NULL);
51137+#else
51138 SEQ_printf(m, " .base: %p\n", base);
51139+#endif
51140 SEQ_printf(m, " .index: %d\n",
51141 base->index);
51142 SEQ_printf(m, " .resolution: %Lu nsecs\n",
51143@@ -289,7 +297,11 @@ static int __init init_timer_list_procfs
51144 {
51145 struct proc_dir_entry *pe;
51146
51147+#ifdef CONFIG_GRKERNSEC_PROC_ADD
51148+ pe = proc_create("timer_list", 0400, NULL, &timer_list_fops);
51149+#else
51150 pe = proc_create("timer_list", 0444, NULL, &timer_list_fops);
51151+#endif
51152 if (!pe)
51153 return -ENOMEM;
51154 return 0;
51155diff -urNp linux-2.6.32.21/kernel/time/timer_stats.c linux-2.6.32.21/kernel/time/timer_stats.c
51156--- linux-2.6.32.21/kernel/time/timer_stats.c 2010-08-13 16:24:37.000000000 -0400
51157+++ linux-2.6.32.21/kernel/time/timer_stats.c 2010-09-14 22:28:35.000000000 -0400
51158@@ -269,12 +269,16 @@ void timer_stats_update_stats(void *time
51159
51160 static void print_name_offset(struct seq_file *m, unsigned long addr)
51161 {
51162+#ifdef CONFIG_GRKERNSEC_HIDESYM
51163+ seq_printf(m, "<%p>", NULL);
51164+#else
51165 char symname[KSYM_NAME_LEN];
51166
51167 if (lookup_symbol_name(addr, symname) < 0)
51168 seq_printf(m, "<%p>", (void *)addr);
51169 else
51170 seq_printf(m, "%s", symname);
51171+#endif
51172 }
51173
51174 static int tstats_show(struct seq_file *m, void *v)
51175@@ -415,7 +419,11 @@ static int __init init_tstats_procfs(voi
51176 {
51177 struct proc_dir_entry *pe;
51178
51179+#ifdef CONFIG_GRKERNSEC_PROC_ADD
51180+ pe = proc_create("timer_stats", 0600, NULL, &tstats_fops);
51181+#else
51182 pe = proc_create("timer_stats", 0644, NULL, &tstats_fops);
51183+#endif
51184 if (!pe)
51185 return -ENOMEM;
51186 return 0;
50807diff -urNp linux-2.6.32.21/kernel/time.c linux-2.6.32.21/kernel/time.c 51187diff -urNp linux-2.6.32.21/kernel/time.c linux-2.6.32.21/kernel/time.c
50808--- linux-2.6.32.21/kernel/time.c 2010-08-26 19:42:20.000000000 -0400 51188--- linux-2.6.32.21/kernel/time.c 2010-08-13 16:24:37.000000000 -0400
50809+++ linux-2.6.32.21/kernel/time.c 2010-09-13 08:10:10.000000000 -0400 51189+++ linux-2.6.32.21/kernel/time.c 2010-09-04 15:54:52.000000000 -0400
50810@@ -94,6 +94,9 @@ SYSCALL_DEFINE1(stime, time_t __user *, 51190@@ -94,6 +94,9 @@ SYSCALL_DEFINE1(stime, time_t __user *,
50811 return err; 51191 return err;
50812 51192
@@ -50845,8 +51225,8 @@ diff -urNp linux-2.6.32.21/kernel/time.c linux-2.6.32.21/kernel/time.c
50845 #if HZ <= USEC_PER_SEC && !(USEC_PER_SEC % HZ) 51225 #if HZ <= USEC_PER_SEC && !(USEC_PER_SEC % HZ)
50846 return (USEC_PER_SEC / HZ) * j; 51226 return (USEC_PER_SEC / HZ) * j;
50847diff -urNp linux-2.6.32.21/kernel/timer.c linux-2.6.32.21/kernel/timer.c 51227diff -urNp linux-2.6.32.21/kernel/timer.c linux-2.6.32.21/kernel/timer.c
50848--- linux-2.6.32.21/kernel/timer.c 2010-08-26 19:42:20.000000000 -0400 51228--- linux-2.6.32.21/kernel/timer.c 2010-08-13 16:24:37.000000000 -0400
50849+++ linux-2.6.32.21/kernel/timer.c 2010-09-13 08:10:10.000000000 -0400 51229+++ linux-2.6.32.21/kernel/timer.c 2010-09-04 15:54:52.000000000 -0400
50850@@ -1207,7 +1207,7 @@ void update_process_times(int user_tick) 51230@@ -1207,7 +1207,7 @@ void update_process_times(int user_tick)
50851 /* 51231 /*
50852 * This function runs timers and the timer-tq in bottom half context. 51232 * This function runs timers and the timer-tq in bottom half context.
@@ -50856,28 +51236,9 @@ diff -urNp linux-2.6.32.21/kernel/timer.c linux-2.6.32.21/kernel/timer.c
50856 { 51236 {
50857 struct tvec_base *base = __get_cpu_var(tvec_bases); 51237 struct tvec_base *base = __get_cpu_var(tvec_bases);
50858 51238
50859diff -urNp linux-2.6.32.21/kernel/trace/Kconfig linux-2.6.32.21/kernel/trace/Kconfig
50860--- linux-2.6.32.21/kernel/trace/Kconfig 2010-08-26 19:42:20.000000000 -0400
50861+++ linux-2.6.32.21/kernel/trace/Kconfig 2010-09-13 08:10:11.000000000 -0400
50862@@ -126,6 +126,7 @@ if FTRACE
50863 config FUNCTION_TRACER
50864 bool "Kernel Function Tracer"
50865 depends on HAVE_FUNCTION_TRACER
50866+ depends on !PAX_KERNEXEC
50867 select FRAME_POINTER
50868 select KALLSYMS
50869 select GENERIC_TRACER
50870@@ -343,6 +344,7 @@ config POWER_TRACER
50871 config STACK_TRACER
50872 bool "Trace max stack"
50873 depends on HAVE_FUNCTION_TRACER
50874+ depends on !PAX_KERNEXEC
50875 select FUNCTION_TRACER
50876 select STACKTRACE
50877 select KALLSYMS
50878diff -urNp linux-2.6.32.21/kernel/trace/ftrace.c linux-2.6.32.21/kernel/trace/ftrace.c 51239diff -urNp linux-2.6.32.21/kernel/trace/ftrace.c linux-2.6.32.21/kernel/trace/ftrace.c
50879--- linux-2.6.32.21/kernel/trace/ftrace.c 2010-08-26 19:42:20.000000000 -0400 51240--- linux-2.6.32.21/kernel/trace/ftrace.c 2010-08-13 16:24:37.000000000 -0400
50880+++ linux-2.6.32.21/kernel/trace/ftrace.c 2010-09-13 08:10:10.000000000 -0400 51241+++ linux-2.6.32.21/kernel/trace/ftrace.c 2010-09-04 15:54:52.000000000 -0400
50881@@ -1093,13 +1093,18 @@ ftrace_code_disable(struct module *mod, 51242@@ -1093,13 +1093,18 @@ ftrace_code_disable(struct module *mod,
50882 51243
50883 ip = rec->ip; 51244 ip = rec->ip;
@@ -50899,9 +51260,28 @@ diff -urNp linux-2.6.32.21/kernel/trace/ftrace.c linux-2.6.32.21/kernel/trace/ft
50899 } 51260 }
50900 51261
50901 /* 51262 /*
51263diff -urNp linux-2.6.32.21/kernel/trace/Kconfig linux-2.6.32.21/kernel/trace/Kconfig
51264--- linux-2.6.32.21/kernel/trace/Kconfig 2010-08-13 16:24:37.000000000 -0400
51265+++ linux-2.6.32.21/kernel/trace/Kconfig 2010-09-04 15:54:52.000000000 -0400
51266@@ -126,6 +126,7 @@ if FTRACE
51267 config FUNCTION_TRACER
51268 bool "Kernel Function Tracer"
51269 depends on HAVE_FUNCTION_TRACER
51270+ depends on !PAX_KERNEXEC
51271 select FRAME_POINTER
51272 select KALLSYMS
51273 select GENERIC_TRACER
51274@@ -343,6 +344,7 @@ config POWER_TRACER
51275 config STACK_TRACER
51276 bool "Trace max stack"
51277 depends on HAVE_FUNCTION_TRACER
51278+ depends on !PAX_KERNEXEC
51279 select FUNCTION_TRACER
51280 select STACKTRACE
51281 select KALLSYMS
50902diff -urNp linux-2.6.32.21/kernel/trace/ring_buffer.c linux-2.6.32.21/kernel/trace/ring_buffer.c 51282diff -urNp linux-2.6.32.21/kernel/trace/ring_buffer.c linux-2.6.32.21/kernel/trace/ring_buffer.c
50903--- linux-2.6.32.21/kernel/trace/ring_buffer.c 2010-08-26 19:42:20.000000000 -0400 51283--- linux-2.6.32.21/kernel/trace/ring_buffer.c 2010-08-13 16:24:37.000000000 -0400
50904+++ linux-2.6.32.21/kernel/trace/ring_buffer.c 2010-09-13 08:10:11.000000000 -0400 51284+++ linux-2.6.32.21/kernel/trace/ring_buffer.c 2010-09-04 15:54:52.000000000 -0400
50905@@ -606,7 +606,7 @@ static struct list_head *rb_list_head(st 51285@@ -606,7 +606,7 @@ static struct list_head *rb_list_head(st
50906 * the reader page). But if the next page is a header page, 51286 * the reader page). But if the next page is a header page,
50907 * its flags will be non zero. 51287 * its flags will be non zero.
@@ -50912,8 +51292,8 @@ diff -urNp linux-2.6.32.21/kernel/trace/ring_buffer.c linux-2.6.32.21/kernel/tra
50912 struct buffer_page *page, struct list_head *list) 51292 struct buffer_page *page, struct list_head *list)
50913 { 51293 {
50914diff -urNp linux-2.6.32.21/kernel/trace/trace.c linux-2.6.32.21/kernel/trace/trace.c 51294diff -urNp linux-2.6.32.21/kernel/trace/trace.c linux-2.6.32.21/kernel/trace/trace.c
50915--- linux-2.6.32.21/kernel/trace/trace.c 2010-08-26 19:42:20.000000000 -0400 51295--- linux-2.6.32.21/kernel/trace/trace.c 2010-08-13 16:24:37.000000000 -0400
50916+++ linux-2.6.32.21/kernel/trace/trace.c 2010-09-13 08:10:11.000000000 -0400 51296+++ linux-2.6.32.21/kernel/trace/trace.c 2010-09-04 15:54:52.000000000 -0400
50917@@ -3808,10 +3808,9 @@ static const struct file_operations trac 51297@@ -3808,10 +3808,9 @@ static const struct file_operations trac
50918 }; 51298 };
50919 #endif 51299 #endif
@@ -50939,8 +51319,8 @@ diff -urNp linux-2.6.32.21/kernel/trace/trace.c linux-2.6.32.21/kernel/trace/tra
50939 struct dentry *d_tracer; 51319 struct dentry *d_tracer;
50940 51320
50941diff -urNp linux-2.6.32.21/kernel/trace/trace_events.c linux-2.6.32.21/kernel/trace/trace_events.c 51321diff -urNp linux-2.6.32.21/kernel/trace/trace_events.c linux-2.6.32.21/kernel/trace/trace_events.c
50942--- linux-2.6.32.21/kernel/trace/trace_events.c 2010-08-26 19:42:20.000000000 -0400 51322--- linux-2.6.32.21/kernel/trace/trace_events.c 2010-08-13 16:24:37.000000000 -0400
50943+++ linux-2.6.32.21/kernel/trace/trace_events.c 2010-09-13 08:10:11.000000000 -0400 51323+++ linux-2.6.32.21/kernel/trace/trace_events.c 2010-09-04 15:54:52.000000000 -0400
50944@@ -951,6 +951,8 @@ static LIST_HEAD(ftrace_module_file_list 51324@@ -951,6 +951,8 @@ static LIST_HEAD(ftrace_module_file_list
50945 * Modules must own their file_operations to keep up with 51325 * Modules must own their file_operations to keep up with
50946 * reference counting. 51326 * reference counting.
@@ -50951,8 +51331,8 @@ diff -urNp linux-2.6.32.21/kernel/trace/trace_events.c linux-2.6.32.21/kernel/tr
50951 struct list_head list; 51331 struct list_head list;
50952 struct module *mod; 51332 struct module *mod;
50953diff -urNp linux-2.6.32.21/kernel/trace/trace_output.c linux-2.6.32.21/kernel/trace/trace_output.c 51333diff -urNp linux-2.6.32.21/kernel/trace/trace_output.c linux-2.6.32.21/kernel/trace/trace_output.c
50954--- linux-2.6.32.21/kernel/trace/trace_output.c 2010-08-26 19:42:20.000000000 -0400 51334--- linux-2.6.32.21/kernel/trace/trace_output.c 2010-08-13 16:24:37.000000000 -0400
50955+++ linux-2.6.32.21/kernel/trace/trace_output.c 2010-09-13 08:10:11.000000000 -0400 51335+++ linux-2.6.32.21/kernel/trace/trace_output.c 2010-09-04 15:54:52.000000000 -0400
50956@@ -237,7 +237,7 @@ int trace_seq_path(struct trace_seq *s, 51336@@ -237,7 +237,7 @@ int trace_seq_path(struct trace_seq *s,
50957 return 0; 51337 return 0;
50958 p = d_path(path, s->buffer + s->len, PAGE_SIZE - s->len); 51338 p = d_path(path, s->buffer + s->len, PAGE_SIZE - s->len);
@@ -50963,8 +51343,8 @@ diff -urNp linux-2.6.32.21/kernel/trace/trace_output.c linux-2.6.32.21/kernel/tr
50963 s->len = p - s->buffer; 51343 s->len = p - s->buffer;
50964 return 1; 51344 return 1;
50965diff -urNp linux-2.6.32.21/kernel/trace/trace_stack.c linux-2.6.32.21/kernel/trace/trace_stack.c 51345diff -urNp linux-2.6.32.21/kernel/trace/trace_stack.c linux-2.6.32.21/kernel/trace/trace_stack.c
50966--- linux-2.6.32.21/kernel/trace/trace_stack.c 2010-08-26 19:42:20.000000000 -0400 51346--- linux-2.6.32.21/kernel/trace/trace_stack.c 2010-08-13 16:24:37.000000000 -0400
50967+++ linux-2.6.32.21/kernel/trace/trace_stack.c 2010-09-13 08:10:11.000000000 -0400 51347+++ linux-2.6.32.21/kernel/trace/trace_stack.c 2010-09-04 15:54:52.000000000 -0400
50968@@ -50,7 +50,7 @@ static inline void check_stack(void) 51348@@ -50,7 +50,7 @@ static inline void check_stack(void)
50969 return; 51349 return;
50970 51350
@@ -50975,8 +51355,8 @@ diff -urNp linux-2.6.32.21/kernel/trace/trace_stack.c linux-2.6.32.21/kernel/tra
50975 51355
50976 local_irq_save(flags); 51356 local_irq_save(flags);
50977diff -urNp linux-2.6.32.21/kernel/utsname_sysctl.c linux-2.6.32.21/kernel/utsname_sysctl.c 51357diff -urNp linux-2.6.32.21/kernel/utsname_sysctl.c linux-2.6.32.21/kernel/utsname_sysctl.c
50978--- linux-2.6.32.21/kernel/utsname_sysctl.c 2010-08-26 19:42:20.000000000 -0400 51358--- linux-2.6.32.21/kernel/utsname_sysctl.c 2010-08-13 16:24:37.000000000 -0400
50979+++ linux-2.6.32.21/kernel/utsname_sysctl.c 2010-09-13 08:10:11.000000000 -0400 51359+++ linux-2.6.32.21/kernel/utsname_sysctl.c 2010-09-04 15:54:52.000000000 -0400
50980@@ -123,7 +123,7 @@ static struct ctl_table uts_kern_table[] 51360@@ -123,7 +123,7 @@ static struct ctl_table uts_kern_table[]
50981 .proc_handler = proc_do_uts_string, 51361 .proc_handler = proc_do_uts_string,
50982 .strategy = sysctl_uts_string, 51362 .strategy = sysctl_uts_string,
@@ -50995,21 +51375,9 @@ diff -urNp linux-2.6.32.21/kernel/utsname_sysctl.c linux-2.6.32.21/kernel/utsnam
50995 }; 51375 };
50996 51376
50997 static int __init utsname_sysctl_init(void) 51377 static int __init utsname_sysctl_init(void)
50998diff -urNp linux-2.6.32.21/lib/Kconfig.debug linux-2.6.32.21/lib/Kconfig.debug
50999--- linux-2.6.32.21/lib/Kconfig.debug 2010-08-26 19:42:20.000000000 -0400
51000+++ linux-2.6.32.21/lib/Kconfig.debug 2010-09-13 08:10:11.000000000 -0400
51001@@ -905,7 +905,7 @@ config LATENCYTOP
51002 select STACKTRACE
51003 select SCHEDSTATS
51004 select SCHED_DEBUG
51005- depends on HAVE_LATENCYTOP_SUPPORT
51006+ depends on HAVE_LATENCYTOP_SUPPORT && !GRKERNSEC_HIDESYM
51007 help
51008 Enable this option if you want to use the LatencyTOP tool
51009 to find out which userspace is blocking on what kernel operations.
51010diff -urNp linux-2.6.32.21/lib/bug.c linux-2.6.32.21/lib/bug.c 51378diff -urNp linux-2.6.32.21/lib/bug.c linux-2.6.32.21/lib/bug.c
51011--- linux-2.6.32.21/lib/bug.c 2010-08-26 19:42:20.000000000 -0400 51379--- linux-2.6.32.21/lib/bug.c 2010-08-13 16:24:37.000000000 -0400
51012+++ linux-2.6.32.21/lib/bug.c 2010-09-13 08:10:11.000000000 -0400 51380+++ linux-2.6.32.21/lib/bug.c 2010-09-04 15:54:52.000000000 -0400
51013@@ -135,6 +135,8 @@ enum bug_trap_type report_bug(unsigned l 51381@@ -135,6 +135,8 @@ enum bug_trap_type report_bug(unsigned l
51014 return BUG_TRAP_TYPE_NONE; 51382 return BUG_TRAP_TYPE_NONE;
51015 51383
@@ -51020,8 +51388,8 @@ diff -urNp linux-2.6.32.21/lib/bug.c linux-2.6.32.21/lib/bug.c
51020 printk(KERN_EMERG "------------[ cut here ]------------\n"); 51388 printk(KERN_EMERG "------------[ cut here ]------------\n");
51021 51389
51022diff -urNp linux-2.6.32.21/lib/debugobjects.c linux-2.6.32.21/lib/debugobjects.c 51390diff -urNp linux-2.6.32.21/lib/debugobjects.c linux-2.6.32.21/lib/debugobjects.c
51023--- linux-2.6.32.21/lib/debugobjects.c 2010-08-26 19:42:20.000000000 -0400 51391--- linux-2.6.32.21/lib/debugobjects.c 2010-08-13 16:24:37.000000000 -0400
51024+++ linux-2.6.32.21/lib/debugobjects.c 2010-09-13 08:10:11.000000000 -0400 51392+++ linux-2.6.32.21/lib/debugobjects.c 2010-09-04 15:54:52.000000000 -0400
51025@@ -277,7 +277,7 @@ static void debug_object_is_on_stack(voi 51393@@ -277,7 +277,7 @@ static void debug_object_is_on_stack(voi
51026 if (limit > 4) 51394 if (limit > 4)
51027 return; 51395 return;
@@ -51032,8 +51400,8 @@ diff -urNp linux-2.6.32.21/lib/debugobjects.c linux-2.6.32.21/lib/debugobjects.c
51032 return; 51400 return;
51033 51401
51034diff -urNp linux-2.6.32.21/lib/dma-debug.c linux-2.6.32.21/lib/dma-debug.c 51402diff -urNp linux-2.6.32.21/lib/dma-debug.c linux-2.6.32.21/lib/dma-debug.c
51035--- linux-2.6.32.21/lib/dma-debug.c 2010-08-26 19:42:20.000000000 -0400 51403--- linux-2.6.32.21/lib/dma-debug.c 2010-08-13 16:24:37.000000000 -0400
51036+++ linux-2.6.32.21/lib/dma-debug.c 2010-09-13 08:10:11.000000000 -0400 51404+++ linux-2.6.32.21/lib/dma-debug.c 2010-09-04 15:54:52.000000000 -0400
51037@@ -861,7 +861,7 @@ out: 51405@@ -861,7 +861,7 @@ out:
51038 51406
51039 static void check_for_stack(struct device *dev, void *addr) 51407 static void check_for_stack(struct device *dev, void *addr)
@@ -51044,8 +51412,8 @@ diff -urNp linux-2.6.32.21/lib/dma-debug.c linux-2.6.32.21/lib/dma-debug.c
51044 "stack [addr=%p]\n", addr); 51412 "stack [addr=%p]\n", addr);
51045 } 51413 }
51046diff -urNp linux-2.6.32.21/lib/idr.c linux-2.6.32.21/lib/idr.c 51414diff -urNp linux-2.6.32.21/lib/idr.c linux-2.6.32.21/lib/idr.c
51047--- linux-2.6.32.21/lib/idr.c 2010-08-26 19:42:20.000000000 -0400 51415--- linux-2.6.32.21/lib/idr.c 2010-08-13 16:24:37.000000000 -0400
51048+++ linux-2.6.32.21/lib/idr.c 2010-09-13 08:10:11.000000000 -0400 51416+++ linux-2.6.32.21/lib/idr.c 2010-09-04 15:54:52.000000000 -0400
51049@@ -156,7 +156,7 @@ static int sub_alloc(struct idr *idp, in 51417@@ -156,7 +156,7 @@ static int sub_alloc(struct idr *idp, in
51050 id = (id | ((1 << (IDR_BITS * l)) - 1)) + 1; 51418 id = (id | ((1 << (IDR_BITS * l)) - 1)) + 1;
51051 51419
@@ -51056,8 +51424,8 @@ diff -urNp linux-2.6.32.21/lib/idr.c linux-2.6.32.21/lib/idr.c
51056 return IDR_NEED_TO_GROW; 51424 return IDR_NEED_TO_GROW;
51057 } 51425 }
51058diff -urNp linux-2.6.32.21/lib/inflate.c linux-2.6.32.21/lib/inflate.c 51426diff -urNp linux-2.6.32.21/lib/inflate.c linux-2.6.32.21/lib/inflate.c
51059--- linux-2.6.32.21/lib/inflate.c 2010-08-26 19:42:20.000000000 -0400 51427--- linux-2.6.32.21/lib/inflate.c 2010-08-13 16:24:37.000000000 -0400
51060+++ linux-2.6.32.21/lib/inflate.c 2010-09-13 08:10:11.000000000 -0400 51428+++ linux-2.6.32.21/lib/inflate.c 2010-09-04 15:54:52.000000000 -0400
51061@@ -266,7 +266,7 @@ static void free(void *where) 51429@@ -266,7 +266,7 @@ static void free(void *where)
51062 malloc_ptr = free_mem_ptr; 51430 malloc_ptr = free_mem_ptr;
51063 } 51431 }
@@ -51067,9 +51435,21 @@ diff -urNp linux-2.6.32.21/lib/inflate.c linux-2.6.32.21/lib/inflate.c
51067 #define free(a) kfree(a) 51435 #define free(a) kfree(a)
51068 #endif 51436 #endif
51069 51437
51438diff -urNp linux-2.6.32.21/lib/Kconfig.debug linux-2.6.32.21/lib/Kconfig.debug
51439--- linux-2.6.32.21/lib/Kconfig.debug 2010-08-13 16:24:37.000000000 -0400
51440+++ linux-2.6.32.21/lib/Kconfig.debug 2010-09-04 15:54:52.000000000 -0400
51441@@ -905,7 +905,7 @@ config LATENCYTOP
51442 select STACKTRACE
51443 select SCHEDSTATS
51444 select SCHED_DEBUG
51445- depends on HAVE_LATENCYTOP_SUPPORT
51446+ depends on HAVE_LATENCYTOP_SUPPORT && !GRKERNSEC_HIDESYM
51447 help
51448 Enable this option if you want to use the LatencyTOP tool
51449 to find out which userspace is blocking on what kernel operations.
51070diff -urNp linux-2.6.32.21/lib/kobject.c linux-2.6.32.21/lib/kobject.c 51450diff -urNp linux-2.6.32.21/lib/kobject.c linux-2.6.32.21/lib/kobject.c
51071--- linux-2.6.32.21/lib/kobject.c 2010-08-26 19:42:20.000000000 -0400 51451--- linux-2.6.32.21/lib/kobject.c 2010-08-13 16:24:37.000000000 -0400
51072+++ linux-2.6.32.21/lib/kobject.c 2010-09-13 08:10:11.000000000 -0400 51452+++ linux-2.6.32.21/lib/kobject.c 2010-09-04 15:54:52.000000000 -0400
51073@@ -700,7 +700,7 @@ static ssize_t kobj_attr_store(struct ko 51453@@ -700,7 +700,7 @@ static ssize_t kobj_attr_store(struct ko
51074 return ret; 51454 return ret;
51075 } 51455 }
@@ -51098,8 +51478,8 @@ diff -urNp linux-2.6.32.21/lib/kobject.c linux-2.6.32.21/lib/kobject.c
51098 { 51478 {
51099 struct kset *kset; 51479 struct kset *kset;
51100diff -urNp linux-2.6.32.21/lib/kobject_uevent.c linux-2.6.32.21/lib/kobject_uevent.c 51480diff -urNp linux-2.6.32.21/lib/kobject_uevent.c linux-2.6.32.21/lib/kobject_uevent.c
51101--- linux-2.6.32.21/lib/kobject_uevent.c 2010-08-26 19:42:20.000000000 -0400 51481--- linux-2.6.32.21/lib/kobject_uevent.c 2010-08-13 16:24:37.000000000 -0400
51102+++ linux-2.6.32.21/lib/kobject_uevent.c 2010-09-13 08:10:11.000000000 -0400 51482+++ linux-2.6.32.21/lib/kobject_uevent.c 2010-09-04 15:54:52.000000000 -0400
51103@@ -95,7 +95,7 @@ int kobject_uevent_env(struct kobject *k 51483@@ -95,7 +95,7 @@ int kobject_uevent_env(struct kobject *k
51104 const char *subsystem; 51484 const char *subsystem;
51105 struct kobject *top_kobj; 51485 struct kobject *top_kobj;
@@ -51110,8 +51490,8 @@ diff -urNp linux-2.6.32.21/lib/kobject_uevent.c linux-2.6.32.21/lib/kobject_ueve
51110 int i = 0; 51490 int i = 0;
51111 int retval = 0; 51491 int retval = 0;
51112diff -urNp linux-2.6.32.21/lib/parser.c linux-2.6.32.21/lib/parser.c 51492diff -urNp linux-2.6.32.21/lib/parser.c linux-2.6.32.21/lib/parser.c
51113--- linux-2.6.32.21/lib/parser.c 2010-08-26 19:42:20.000000000 -0400 51493--- linux-2.6.32.21/lib/parser.c 2010-08-13 16:24:37.000000000 -0400
51114+++ linux-2.6.32.21/lib/parser.c 2010-09-13 08:10:11.000000000 -0400 51494+++ linux-2.6.32.21/lib/parser.c 2010-09-04 15:54:52.000000000 -0400
51115@@ -126,7 +126,7 @@ static int match_number(substring_t *s, 51495@@ -126,7 +126,7 @@ static int match_number(substring_t *s,
51116 char *buf; 51496 char *buf;
51117 int ret; 51497 int ret;
@@ -51122,8 +51502,8 @@ diff -urNp linux-2.6.32.21/lib/parser.c linux-2.6.32.21/lib/parser.c
51122 return -ENOMEM; 51502 return -ENOMEM;
51123 memcpy(buf, s->from, s->to - s->from); 51503 memcpy(buf, s->from, s->to - s->from);
51124diff -urNp linux-2.6.32.21/lib/radix-tree.c linux-2.6.32.21/lib/radix-tree.c 51504diff -urNp linux-2.6.32.21/lib/radix-tree.c linux-2.6.32.21/lib/radix-tree.c
51125--- linux-2.6.32.21/lib/radix-tree.c 2010-08-26 19:42:20.000000000 -0400 51505--- linux-2.6.32.21/lib/radix-tree.c 2010-08-13 16:24:37.000000000 -0400
51126+++ linux-2.6.32.21/lib/radix-tree.c 2010-09-13 08:10:11.000000000 -0400 51506+++ linux-2.6.32.21/lib/radix-tree.c 2010-09-04 15:54:52.000000000 -0400
51127@@ -81,7 +81,7 @@ struct radix_tree_preload { 51507@@ -81,7 +81,7 @@ struct radix_tree_preload {
51128 int nr; 51508 int nr;
51129 struct radix_tree_node *nodes[RADIX_TREE_MAX_PATH]; 51509 struct radix_tree_node *nodes[RADIX_TREE_MAX_PATH];
@@ -51134,8 +51514,8 @@ diff -urNp linux-2.6.32.21/lib/radix-tree.c linux-2.6.32.21/lib/radix-tree.c
51134 static inline gfp_t root_gfp_mask(struct radix_tree_root *root) 51514 static inline gfp_t root_gfp_mask(struct radix_tree_root *root)
51135 { 51515 {
51136diff -urNp linux-2.6.32.21/lib/random32.c linux-2.6.32.21/lib/random32.c 51516diff -urNp linux-2.6.32.21/lib/random32.c linux-2.6.32.21/lib/random32.c
51137--- linux-2.6.32.21/lib/random32.c 2010-08-26 19:42:20.000000000 -0400 51517--- linux-2.6.32.21/lib/random32.c 2010-08-13 16:24:37.000000000 -0400
51138+++ linux-2.6.32.21/lib/random32.c 2010-09-13 08:10:11.000000000 -0400 51518+++ linux-2.6.32.21/lib/random32.c 2010-09-04 15:54:52.000000000 -0400
51139@@ -61,7 +61,7 @@ static u32 __random32(struct rnd_state * 51519@@ -61,7 +61,7 @@ static u32 __random32(struct rnd_state *
51140 */ 51520 */
51141 static inline u32 __seed(u32 x, u32 m) 51521 static inline u32 __seed(u32 x, u32 m)
@@ -51147,24 +51527,35 @@ diff -urNp linux-2.6.32.21/lib/random32.c linux-2.6.32.21/lib/random32.c
51147 /** 51527 /**
51148diff -urNp linux-2.6.32.21/localversion-grsec linux-2.6.32.21/localversion-grsec 51528diff -urNp linux-2.6.32.21/localversion-grsec linux-2.6.32.21/localversion-grsec
51149--- linux-2.6.32.21/localversion-grsec 1969-12-31 19:00:00.000000000 -0500 51529--- linux-2.6.32.21/localversion-grsec 1969-12-31 19:00:00.000000000 -0500
51150+++ linux-2.6.32.21/localversion-grsec 2010-09-13 08:10:11.000000000 -0400 51530+++ linux-2.6.32.21/localversion-grsec 2010-09-04 15:54:52.000000000 -0400
51151@@ -0,0 +1 @@ 51531@@ -0,0 +1 @@
51152+-grsec 51532+-grsec
51153diff -urNp linux-2.6.32.21/mm/Kconfig linux-2.6.32.21/mm/Kconfig 51533diff -urNp linux-2.6.32.21/Makefile linux-2.6.32.21/Makefile
51154--- linux-2.6.32.21/mm/Kconfig 2010-08-26 19:42:20.000000000 -0400 51534--- linux-2.6.32.21/Makefile 2010-08-29 21:08:20.000000000 -0400
51155+++ linux-2.6.32.21/mm/Kconfig 2010-09-13 08:10:11.000000000 -0400 51535+++ linux-2.6.32.21/Makefile 2010-09-04 15:54:52.000000000 -0400
51156@@ -228,7 +228,7 @@ config KSM 51536@@ -221,8 +221,8 @@ CONFIG_SHELL := $(shell if [ -x "$$BASH"
51157 config DEFAULT_MMAP_MIN_ADDR 51537
51158 int "Low address space to protect from user allocation" 51538 HOSTCC = gcc
51159 depends on MMU 51539 HOSTCXX = g++
51160- default 4096 51540-HOSTCFLAGS = -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer
51161+ default 65536 51541-HOSTCXXFLAGS = -O2
51162 help 51542+HOSTCFLAGS = -Wall -W -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -fno-delete-null-pointer-checks
51163 This is the portion of low virtual memory which should be protected 51543+HOSTCXXFLAGS = -O2 -fno-delete-null-pointer-checks
51164 from userspace allocation. Keeping a user from writing to low pages 51544
51545 # Decide whether to build built-in, modular, or both.
51546 # Normally, just do built-in.
51547@@ -644,7 +644,7 @@ export mod_strip_cmd
51548
51549
51550 ifeq ($(KBUILD_EXTMOD),)
51551-core-y += kernel/ mm/ fs/ ipc/ security/ crypto/ block/
51552+core-y += kernel/ mm/ fs/ ipc/ security/ crypto/ block/ grsecurity/
51553
51554 vmlinux-dirs := $(patsubst %/,%,$(filter %/, $(init-y) $(init-m) \
51555 $(core-y) $(core-m) $(drivers-y) $(drivers-m) \
51165diff -urNp linux-2.6.32.21/mm/filemap.c linux-2.6.32.21/mm/filemap.c 51556diff -urNp linux-2.6.32.21/mm/filemap.c linux-2.6.32.21/mm/filemap.c
51166--- linux-2.6.32.21/mm/filemap.c 2010-08-26 19:42:20.000000000 -0400 51557--- linux-2.6.32.21/mm/filemap.c 2010-08-13 16:24:37.000000000 -0400
51167+++ linux-2.6.32.21/mm/filemap.c 2010-09-13 08:10:11.000000000 -0400 51558+++ linux-2.6.32.21/mm/filemap.c 2010-09-04 15:54:52.000000000 -0400
51168@@ -1628,7 +1628,7 @@ int generic_file_mmap(struct file * file 51559@@ -1628,7 +1628,7 @@ int generic_file_mmap(struct file * file
51169 struct address_space *mapping = file->f_mapping; 51560 struct address_space *mapping = file->f_mapping;
51170 51561
@@ -51183,8 +51574,8 @@ diff -urNp linux-2.6.32.21/mm/filemap.c linux-2.6.32.21/mm/filemap.c
51183 send_sig(SIGXFSZ, current, 0); 51574 send_sig(SIGXFSZ, current, 0);
51184 return -EFBIG; 51575 return -EFBIG;
51185diff -urNp linux-2.6.32.21/mm/fremap.c linux-2.6.32.21/mm/fremap.c 51576diff -urNp linux-2.6.32.21/mm/fremap.c linux-2.6.32.21/mm/fremap.c
51186--- linux-2.6.32.21/mm/fremap.c 2010-08-26 19:42:20.000000000 -0400 51577--- linux-2.6.32.21/mm/fremap.c 2010-08-13 16:24:37.000000000 -0400
51187+++ linux-2.6.32.21/mm/fremap.c 2010-09-13 08:10:11.000000000 -0400 51578+++ linux-2.6.32.21/mm/fremap.c 2010-09-04 15:54:56.000000000 -0400
51188@@ -153,6 +153,11 @@ SYSCALL_DEFINE5(remap_file_pages, unsign 51579@@ -153,6 +153,11 @@ SYSCALL_DEFINE5(remap_file_pages, unsign
51189 retry: 51580 retry:
51190 vma = find_vma(mm, start); 51581 vma = find_vma(mm, start);
@@ -51207,8 +51598,8 @@ diff -urNp linux-2.6.32.21/mm/fremap.c linux-2.6.32.21/mm/fremap.c
51207 vma->vm_flags = saved_flags; 51598 vma->vm_flags = saved_flags;
51208 } 51599 }
51209diff -urNp linux-2.6.32.21/mm/highmem.c linux-2.6.32.21/mm/highmem.c 51600diff -urNp linux-2.6.32.21/mm/highmem.c linux-2.6.32.21/mm/highmem.c
51210--- linux-2.6.32.21/mm/highmem.c 2010-08-26 19:42:20.000000000 -0400 51601--- linux-2.6.32.21/mm/highmem.c 2010-08-13 16:24:37.000000000 -0400
51211+++ linux-2.6.32.21/mm/highmem.c 2010-09-13 08:10:11.000000000 -0400 51602+++ linux-2.6.32.21/mm/highmem.c 2010-09-04 15:54:52.000000000 -0400
51212@@ -116,9 +116,10 @@ static void flush_all_zero_pkmaps(void) 51603@@ -116,9 +116,10 @@ static void flush_all_zero_pkmaps(void)
51213 * So no dangers, even with speculative execution. 51604 * So no dangers, even with speculative execution.
51214 */ 51605 */
@@ -51235,8 +51626,8 @@ diff -urNp linux-2.6.32.21/mm/highmem.c linux-2.6.32.21/mm/highmem.c
51235 set_page_address(page, (void *)vaddr); 51626 set_page_address(page, (void *)vaddr);
51236 51627
51237diff -urNp linux-2.6.32.21/mm/hugetlb.c linux-2.6.32.21/mm/hugetlb.c 51628diff -urNp linux-2.6.32.21/mm/hugetlb.c linux-2.6.32.21/mm/hugetlb.c
51238--- linux-2.6.32.21/mm/hugetlb.c 2010-08-26 19:42:20.000000000 -0400 51629--- linux-2.6.32.21/mm/hugetlb.c 2010-08-13 16:24:37.000000000 -0400
51239+++ linux-2.6.32.21/mm/hugetlb.c 2010-09-13 08:10:11.000000000 -0400 51630+++ linux-2.6.32.21/mm/hugetlb.c 2010-09-04 15:54:52.000000000 -0400
51240@@ -1925,6 +1925,26 @@ static int unmap_ref_private(struct mm_s 51631@@ -1925,6 +1925,26 @@ static int unmap_ref_private(struct mm_s
51241 return 1; 51632 return 1;
51242 } 51633 }
@@ -51316,9 +51707,21 @@ diff -urNp linux-2.6.32.21/mm/hugetlb.c linux-2.6.32.21/mm/hugetlb.c
51316 ptep = huge_pte_alloc(mm, address, huge_page_size(h)); 51707 ptep = huge_pte_alloc(mm, address, huge_page_size(h));
51317 if (!ptep) 51708 if (!ptep)
51318 return VM_FAULT_OOM; 51709 return VM_FAULT_OOM;
51710diff -urNp linux-2.6.32.21/mm/Kconfig linux-2.6.32.21/mm/Kconfig
51711--- linux-2.6.32.21/mm/Kconfig 2010-08-13 16:24:37.000000000 -0400
51712+++ linux-2.6.32.21/mm/Kconfig 2010-09-04 15:54:52.000000000 -0400
51713@@ -228,7 +228,7 @@ config KSM
51714 config DEFAULT_MMAP_MIN_ADDR
51715 int "Low address space to protect from user allocation"
51716 depends on MMU
51717- default 4096
51718+ default 65536
51719 help
51720 This is the portion of low virtual memory which should be protected
51721 from userspace allocation. Keeping a user from writing to low pages
51319diff -urNp linux-2.6.32.21/mm/maccess.c linux-2.6.32.21/mm/maccess.c 51722diff -urNp linux-2.6.32.21/mm/maccess.c linux-2.6.32.21/mm/maccess.c
51320--- linux-2.6.32.21/mm/maccess.c 2010-08-26 19:42:20.000000000 -0400 51723--- linux-2.6.32.21/mm/maccess.c 2010-08-13 16:24:37.000000000 -0400
51321+++ linux-2.6.32.21/mm/maccess.c 2010-09-13 08:10:11.000000000 -0400 51724+++ linux-2.6.32.21/mm/maccess.c 2010-09-04 15:54:52.000000000 -0400
51322@@ -14,7 +14,7 @@ 51725@@ -14,7 +14,7 @@
51323 * Safely read from address @src to the buffer at @dst. If a kernel fault 51726 * Safely read from address @src to the buffer at @dst. If a kernel fault
51324 * happens, handle that and return -EFAULT. 51727 * happens, handle that and return -EFAULT.
@@ -51338,8 +51741,8 @@ diff -urNp linux-2.6.32.21/mm/maccess.c linux-2.6.32.21/mm/maccess.c
51338 long ret; 51741 long ret;
51339 mm_segment_t old_fs = get_fs(); 51742 mm_segment_t old_fs = get_fs();
51340diff -urNp linux-2.6.32.21/mm/madvise.c linux-2.6.32.21/mm/madvise.c 51743diff -urNp linux-2.6.32.21/mm/madvise.c linux-2.6.32.21/mm/madvise.c
51341--- linux-2.6.32.21/mm/madvise.c 2010-08-26 19:42:20.000000000 -0400 51744--- linux-2.6.32.21/mm/madvise.c 2010-08-13 16:24:37.000000000 -0400
51342+++ linux-2.6.32.21/mm/madvise.c 2010-09-13 08:10:11.000000000 -0400 51745+++ linux-2.6.32.21/mm/madvise.c 2010-09-04 15:54:52.000000000 -0400
51343@@ -44,6 +44,10 @@ static long madvise_behavior(struct vm_a 51746@@ -44,6 +44,10 @@ static long madvise_behavior(struct vm_a
51344 pgoff_t pgoff; 51747 pgoff_t pgoff;
51345 unsigned long new_flags = vma->vm_flags; 51748 unsigned long new_flags = vma->vm_flags;
@@ -51416,30 +51819,9 @@ diff -urNp linux-2.6.32.21/mm/madvise.c linux-2.6.32.21/mm/madvise.c
51416 error = 0; 51819 error = 0;
51417 if (end == start) 51820 if (end == start)
51418 goto out; 51821 goto out;
51419diff -urNp linux-2.6.32.21/mm/memory-failure.c linux-2.6.32.21/mm/memory-failure.c
51420--- linux-2.6.32.21/mm/memory-failure.c 2010-08-26 19:42:20.000000000 -0400
51421+++ linux-2.6.32.21/mm/memory-failure.c 2010-09-13 08:10:11.000000000 -0400
51422@@ -46,7 +46,7 @@ int sysctl_memory_failure_early_kill __r
51423
51424 int sysctl_memory_failure_recovery __read_mostly = 1;
51425
51426-atomic_long_t mce_bad_pages __read_mostly = ATOMIC_LONG_INIT(0);
51427+atomic_long_unchecked_t mce_bad_pages __read_mostly = ATOMIC_LONG_INIT(0);
51428
51429 /*
51430 * Send all the processes who have the page mapped an ``action optional''
51431@@ -745,7 +745,7 @@ int __memory_failure(unsigned long pfn,
51432 return 0;
51433 }
51434
51435- atomic_long_add(1, &mce_bad_pages);
51436+ atomic_long_add_unchecked(1, &mce_bad_pages);
51437
51438 /*
51439 * We need/can do nothing about count=0 pages.
51440diff -urNp linux-2.6.32.21/mm/memory.c linux-2.6.32.21/mm/memory.c 51822diff -urNp linux-2.6.32.21/mm/memory.c linux-2.6.32.21/mm/memory.c
51441--- linux-2.6.32.21/mm/memory.c 2010-08-26 19:42:20.000000000 -0400 51823--- linux-2.6.32.21/mm/memory.c 2010-08-29 21:08:20.000000000 -0400
51442+++ linux-2.6.32.21/mm/memory.c 2010-09-13 08:10:11.000000000 -0400 51824+++ linux-2.6.32.21/mm/memory.c 2010-09-04 15:54:52.000000000 -0400
51443@@ -48,6 +48,7 @@ 51825@@ -48,6 +48,7 @@
51444 #include <linux/ksm.h> 51826 #include <linux/ksm.h>
51445 #include <linux/rmap.h> 51827 #include <linux/rmap.h>
@@ -51870,9 +52252,30 @@ diff -urNp linux-2.6.32.21/mm/memory.c linux-2.6.32.21/mm/memory.c
51870 /* 52252 /*
51871 * Make sure the vDSO gets into every core dump. 52253 * Make sure the vDSO gets into every core dump.
51872 * Dumping its contents makes post-mortem fully interpretable later 52254 * Dumping its contents makes post-mortem fully interpretable later
52255diff -urNp linux-2.6.32.21/mm/memory-failure.c linux-2.6.32.21/mm/memory-failure.c
52256--- linux-2.6.32.21/mm/memory-failure.c 2010-08-13 16:24:37.000000000 -0400
52257+++ linux-2.6.32.21/mm/memory-failure.c 2010-09-04 15:54:52.000000000 -0400
52258@@ -46,7 +46,7 @@ int sysctl_memory_failure_early_kill __r
52259
52260 int sysctl_memory_failure_recovery __read_mostly = 1;
52261
52262-atomic_long_t mce_bad_pages __read_mostly = ATOMIC_LONG_INIT(0);
52263+atomic_long_unchecked_t mce_bad_pages __read_mostly = ATOMIC_LONG_INIT(0);
52264
52265 /*
52266 * Send all the processes who have the page mapped an ``action optional''
52267@@ -745,7 +745,7 @@ int __memory_failure(unsigned long pfn,
52268 return 0;
52269 }
52270
52271- atomic_long_add(1, &mce_bad_pages);
52272+ atomic_long_add_unchecked(1, &mce_bad_pages);
52273
52274 /*
52275 * We need/can do nothing about count=0 pages.
51873diff -urNp linux-2.6.32.21/mm/mempolicy.c linux-2.6.32.21/mm/mempolicy.c 52276diff -urNp linux-2.6.32.21/mm/mempolicy.c linux-2.6.32.21/mm/mempolicy.c
51874--- linux-2.6.32.21/mm/mempolicy.c 2010-08-26 19:42:20.000000000 -0400 52277--- linux-2.6.32.21/mm/mempolicy.c 2010-08-13 16:24:37.000000000 -0400
51875+++ linux-2.6.32.21/mm/mempolicy.c 2010-09-13 08:10:11.000000000 -0400 52278+++ linux-2.6.32.21/mm/mempolicy.c 2010-09-04 15:54:52.000000000 -0400
51876@@ -573,6 +573,10 @@ static int mbind_range(struct vm_area_st 52279@@ -573,6 +573,10 @@ static int mbind_range(struct vm_area_st
51877 struct vm_area_struct *next; 52280 struct vm_area_struct *next;
51878 int err; 52281 int err;
@@ -51954,8 +52357,8 @@ diff -urNp linux-2.6.32.21/mm/mempolicy.c linux-2.6.32.21/mm/mempolicy.c
51954 seq_printf(m, " heap"); 52357 seq_printf(m, " heap");
51955 } else if (vma->vm_start <= mm->start_stack && 52358 } else if (vma->vm_start <= mm->start_stack &&
51956diff -urNp linux-2.6.32.21/mm/migrate.c linux-2.6.32.21/mm/migrate.c 52359diff -urNp linux-2.6.32.21/mm/migrate.c linux-2.6.32.21/mm/migrate.c
51957--- linux-2.6.32.21/mm/migrate.c 2010-08-26 19:42:20.000000000 -0400 52360--- linux-2.6.32.21/mm/migrate.c 2010-08-13 16:24:37.000000000 -0400
51958+++ linux-2.6.32.21/mm/migrate.c 2010-09-13 08:10:11.000000000 -0400 52361+++ linux-2.6.32.21/mm/migrate.c 2010-09-04 15:54:52.000000000 -0400
51959@@ -1106,6 +1106,14 @@ SYSCALL_DEFINE6(move_pages, pid_t, pid, 52362@@ -1106,6 +1106,14 @@ SYSCALL_DEFINE6(move_pages, pid_t, pid,
51960 if (!mm) 52363 if (!mm)
51961 return -EINVAL; 52364 return -EINVAL;
@@ -51982,8 +52385,8 @@ diff -urNp linux-2.6.32.21/mm/migrate.c linux-2.6.32.21/mm/migrate.c
51982 err = -EPERM; 52385 err = -EPERM;
51983 goto out; 52386 goto out;
51984diff -urNp linux-2.6.32.21/mm/mlock.c linux-2.6.32.21/mm/mlock.c 52387diff -urNp linux-2.6.32.21/mm/mlock.c linux-2.6.32.21/mm/mlock.c
51985--- linux-2.6.32.21/mm/mlock.c 2010-08-26 19:42:20.000000000 -0400 52388--- linux-2.6.32.21/mm/mlock.c 2010-08-29 21:08:20.000000000 -0400
51986+++ linux-2.6.32.21/mm/mlock.c 2010-09-13 08:10:11.000000000 -0400 52389+++ linux-2.6.32.21/mm/mlock.c 2010-09-04 15:54:56.000000000 -0400
51987@@ -13,6 +13,7 @@ 52390@@ -13,6 +13,7 @@
51988 #include <linux/pagemap.h> 52391 #include <linux/pagemap.h>
51989 #include <linux/mempolicy.h> 52392 #include <linux/mempolicy.h>
@@ -52059,8 +52462,8 @@ diff -urNp linux-2.6.32.21/mm/mlock.c linux-2.6.32.21/mm/mlock.c
52059 capable(CAP_IPC_LOCK)) 52462 capable(CAP_IPC_LOCK))
52060 ret = do_mlockall(flags); 52463 ret = do_mlockall(flags);
52061diff -urNp linux-2.6.32.21/mm/mmap.c linux-2.6.32.21/mm/mmap.c 52464diff -urNp linux-2.6.32.21/mm/mmap.c linux-2.6.32.21/mm/mmap.c
52062--- linux-2.6.32.21/mm/mmap.c 2010-08-26 19:42:20.000000000 -0400 52465--- linux-2.6.32.21/mm/mmap.c 2010-08-29 21:08:20.000000000 -0400
52063+++ linux-2.6.32.21/mm/mmap.c 2010-09-13 08:10:11.000000000 -0400 52466+++ linux-2.6.32.21/mm/mmap.c 2010-09-04 15:54:52.000000000 -0400
52064@@ -45,6 +45,16 @@ 52467@@ -45,6 +45,16 @@
52065 #define arch_rebalance_pgtables(addr, len) (addr) 52468 #define arch_rebalance_pgtables(addr, len) (addr)
52066 #endif 52469 #endif
@@ -53136,8 +53539,8 @@ diff -urNp linux-2.6.32.21/mm/mmap.c linux-2.6.32.21/mm/mmap.c
53136 vma->vm_page_prot = vm_get_page_prot(vma->vm_flags); 53539 vma->vm_page_prot = vm_get_page_prot(vma->vm_flags);
53137 53540
53138diff -urNp linux-2.6.32.21/mm/mprotect.c linux-2.6.32.21/mm/mprotect.c 53541diff -urNp linux-2.6.32.21/mm/mprotect.c linux-2.6.32.21/mm/mprotect.c
53139--- linux-2.6.32.21/mm/mprotect.c 2010-08-26 19:42:20.000000000 -0400 53542--- linux-2.6.32.21/mm/mprotect.c 2010-08-13 16:24:37.000000000 -0400
53140+++ linux-2.6.32.21/mm/mprotect.c 2010-09-13 08:10:12.000000000 -0400 53543+++ linux-2.6.32.21/mm/mprotect.c 2010-09-04 15:54:52.000000000 -0400
53141@@ -24,10 +24,16 @@ 53544@@ -24,10 +24,16 @@
53142 #include <linux/mmu_notifier.h> 53545 #include <linux/mmu_notifier.h>
53143 #include <linux/migrate.h> 53546 #include <linux/migrate.h>
@@ -53336,8 +53739,8 @@ diff -urNp linux-2.6.32.21/mm/mprotect.c linux-2.6.32.21/mm/mprotect.c
53336 53739
53337 if (nstart < prev->vm_end) 53740 if (nstart < prev->vm_end)
53338diff -urNp linux-2.6.32.21/mm/mremap.c linux-2.6.32.21/mm/mremap.c 53741diff -urNp linux-2.6.32.21/mm/mremap.c linux-2.6.32.21/mm/mremap.c
53339--- linux-2.6.32.21/mm/mremap.c 2010-08-26 19:42:20.000000000 -0400 53742--- linux-2.6.32.21/mm/mremap.c 2010-08-13 16:24:37.000000000 -0400
53340+++ linux-2.6.32.21/mm/mremap.c 2010-09-13 08:10:12.000000000 -0400 53743+++ linux-2.6.32.21/mm/mremap.c 2010-09-04 15:54:52.000000000 -0400
53341@@ -114,6 +114,12 @@ static void move_ptes(struct vm_area_str 53744@@ -114,6 +114,12 @@ static void move_ptes(struct vm_area_str
53342 continue; 53745 continue;
53343 pte = ptep_clear_flush(vma, old_addr, old_pte); 53746 pte = ptep_clear_flush(vma, old_addr, old_pte);
@@ -53439,8 +53842,8 @@ diff -urNp linux-2.6.32.21/mm/mremap.c linux-2.6.32.21/mm/mremap.c
53439 out: 53842 out:
53440 if (ret & ~PAGE_MASK) 53843 if (ret & ~PAGE_MASK)
53441diff -urNp linux-2.6.32.21/mm/nommu.c linux-2.6.32.21/mm/nommu.c 53844diff -urNp linux-2.6.32.21/mm/nommu.c linux-2.6.32.21/mm/nommu.c
53442--- linux-2.6.32.21/mm/nommu.c 2010-08-26 19:42:20.000000000 -0400 53845--- linux-2.6.32.21/mm/nommu.c 2010-08-29 21:08:20.000000000 -0400
53443+++ linux-2.6.32.21/mm/nommu.c 2010-09-13 08:10:12.000000000 -0400 53846+++ linux-2.6.32.21/mm/nommu.c 2010-09-04 15:54:52.000000000 -0400
53444@@ -761,15 +761,6 @@ struct vm_area_struct *find_vma(struct m 53847@@ -761,15 +761,6 @@ struct vm_area_struct *find_vma(struct m
53445 EXPORT_SYMBOL(find_vma); 53848 EXPORT_SYMBOL(find_vma);
53446 53849
@@ -53458,8 +53861,8 @@ diff -urNp linux-2.6.32.21/mm/nommu.c linux-2.6.32.21/mm/nommu.c
53458 * - not supported under NOMMU conditions 53861 * - not supported under NOMMU conditions
53459 */ 53862 */
53460diff -urNp linux-2.6.32.21/mm/page_alloc.c linux-2.6.32.21/mm/page_alloc.c 53863diff -urNp linux-2.6.32.21/mm/page_alloc.c linux-2.6.32.21/mm/page_alloc.c
53461--- linux-2.6.32.21/mm/page_alloc.c 2010-08-26 19:42:20.000000000 -0400 53864--- linux-2.6.32.21/mm/page_alloc.c 2010-08-13 16:24:37.000000000 -0400
53462+++ linux-2.6.32.21/mm/page_alloc.c 2010-09-13 08:10:12.000000000 -0400 53865+++ linux-2.6.32.21/mm/page_alloc.c 2010-09-04 15:54:52.000000000 -0400
53463@@ -586,6 +586,10 @@ static void __free_pages_ok(struct page 53866@@ -586,6 +586,10 @@ static void __free_pages_ok(struct page
53464 int bad = 0; 53867 int bad = 0;
53465 int wasMlocked = __TestClearPageMlocked(page); 53868 int wasMlocked = __TestClearPageMlocked(page);
@@ -53517,8 +53920,8 @@ diff -urNp linux-2.6.32.21/mm/page_alloc.c linux-2.6.32.21/mm/page_alloc.c
53517 #endif /* CONFIG_SPARSEMEM */ 53920 #endif /* CONFIG_SPARSEMEM */
53518 53921
53519diff -urNp linux-2.6.32.21/mm/percpu.c linux-2.6.32.21/mm/percpu.c 53922diff -urNp linux-2.6.32.21/mm/percpu.c linux-2.6.32.21/mm/percpu.c
53520--- linux-2.6.32.21/mm/percpu.c 2010-08-26 19:42:20.000000000 -0400 53923--- linux-2.6.32.21/mm/percpu.c 2010-08-13 16:24:37.000000000 -0400
53521+++ linux-2.6.32.21/mm/percpu.c 2010-09-13 08:10:12.000000000 -0400 53924+++ linux-2.6.32.21/mm/percpu.c 2010-09-04 15:54:52.000000000 -0400
53522@@ -115,7 +115,7 @@ static unsigned int pcpu_first_unit_cpu 53925@@ -115,7 +115,7 @@ static unsigned int pcpu_first_unit_cpu
53523 static unsigned int pcpu_last_unit_cpu __read_mostly; 53926 static unsigned int pcpu_last_unit_cpu __read_mostly;
53524 53927
@@ -53529,8 +53932,8 @@ diff -urNp linux-2.6.32.21/mm/percpu.c linux-2.6.32.21/mm/percpu.c
53529 53932
53530 static const int *pcpu_unit_map __read_mostly; /* cpu -> unit */ 53933 static const int *pcpu_unit_map __read_mostly; /* cpu -> unit */
53531diff -urNp linux-2.6.32.21/mm/rmap.c linux-2.6.32.21/mm/rmap.c 53934diff -urNp linux-2.6.32.21/mm/rmap.c linux-2.6.32.21/mm/rmap.c
53532--- linux-2.6.32.21/mm/rmap.c 2010-08-26 19:42:20.000000000 -0400 53935--- linux-2.6.32.21/mm/rmap.c 2010-08-13 16:24:37.000000000 -0400
53533+++ linux-2.6.32.21/mm/rmap.c 2010-09-13 08:10:12.000000000 -0400 53936+++ linux-2.6.32.21/mm/rmap.c 2010-09-04 15:54:52.000000000 -0400
53534@@ -121,6 +121,17 @@ int anon_vma_prepare(struct vm_area_stru 53937@@ -121,6 +121,17 @@ int anon_vma_prepare(struct vm_area_stru
53535 /* page_table_lock to protect against threads */ 53938 /* page_table_lock to protect against threads */
53536 spin_lock(&mm->page_table_lock); 53939 spin_lock(&mm->page_table_lock);
@@ -53550,8 +53953,8 @@ diff -urNp linux-2.6.32.21/mm/rmap.c linux-2.6.32.21/mm/rmap.c
53550 list_add_tail(&vma->anon_vma_node, &anon_vma->head); 53953 list_add_tail(&vma->anon_vma_node, &anon_vma->head);
53551 allocated = NULL; 53954 allocated = NULL;
53552diff -urNp linux-2.6.32.21/mm/shmem.c linux-2.6.32.21/mm/shmem.c 53955diff -urNp linux-2.6.32.21/mm/shmem.c linux-2.6.32.21/mm/shmem.c
53553--- linux-2.6.32.21/mm/shmem.c 2010-08-26 19:42:20.000000000 -0400 53956--- linux-2.6.32.21/mm/shmem.c 2010-08-13 16:24:37.000000000 -0400
53554+++ linux-2.6.32.21/mm/shmem.c 2010-09-13 08:10:12.000000000 -0400 53957+++ linux-2.6.32.21/mm/shmem.c 2010-09-04 15:54:52.000000000 -0400
53555@@ -31,7 +31,7 @@ 53958@@ -31,7 +31,7 @@
53556 #include <linux/swap.h> 53959 #include <linux/swap.h>
53557 #include <linux/ima.h> 53960 #include <linux/ima.h>
@@ -53562,8 +53965,8 @@ diff -urNp linux-2.6.32.21/mm/shmem.c linux-2.6.32.21/mm/shmem.c
53562 #ifdef CONFIG_SHMEM 53965 #ifdef CONFIG_SHMEM
53563 /* 53966 /*
53564diff -urNp linux-2.6.32.21/mm/slab.c linux-2.6.32.21/mm/slab.c 53967diff -urNp linux-2.6.32.21/mm/slab.c linux-2.6.32.21/mm/slab.c
53565--- linux-2.6.32.21/mm/slab.c 2010-08-26 19:42:20.000000000 -0400 53968--- linux-2.6.32.21/mm/slab.c 2010-08-29 21:08:20.000000000 -0400
53566+++ linux-2.6.32.21/mm/slab.c 2010-09-13 08:10:12.000000000 -0400 53969+++ linux-2.6.32.21/mm/slab.c 2010-09-04 15:54:52.000000000 -0400
53567@@ -308,7 +308,7 @@ struct kmem_list3 { 53970@@ -308,7 +308,7 @@ struct kmem_list3 {
53568 * Need this for bootstrapping a per node allocator. 53971 * Need this for bootstrapping a per node allocator.
53569 */ 53972 */
@@ -53670,8 +54073,8 @@ diff -urNp linux-2.6.32.21/mm/slab.c linux-2.6.32.21/mm/slab.c
53670 * ksize - get the actual amount of memory allocated for a given object 54073 * ksize - get the actual amount of memory allocated for a given object
53671 * @objp: Pointer to the object 54074 * @objp: Pointer to the object
53672diff -urNp linux-2.6.32.21/mm/slob.c linux-2.6.32.21/mm/slob.c 54075diff -urNp linux-2.6.32.21/mm/slob.c linux-2.6.32.21/mm/slob.c
53673--- linux-2.6.32.21/mm/slob.c 2010-08-26 19:42:20.000000000 -0400 54076--- linux-2.6.32.21/mm/slob.c 2010-08-13 16:24:37.000000000 -0400
53674+++ linux-2.6.32.21/mm/slob.c 2010-09-13 08:10:12.000000000 -0400 54077+++ linux-2.6.32.21/mm/slob.c 2010-09-04 15:54:52.000000000 -0400
53675@@ -29,7 +29,7 @@ 54078@@ -29,7 +29,7 @@
53676 * If kmalloc is asked for objects of PAGE_SIZE or larger, it calls 54079 * If kmalloc is asked for objects of PAGE_SIZE or larger, it calls
53677 * alloc_pages() directly, allocating compound pages so the page order 54080 * alloc_pages() directly, allocating compound pages so the page order
@@ -53993,8 +54396,8 @@ diff -urNp linux-2.6.32.21/mm/slob.c linux-2.6.32.21/mm/slob.c
53993 54396
53994 trace_kmem_cache_free(_RET_IP_, b); 54397 trace_kmem_cache_free(_RET_IP_, b);
53995diff -urNp linux-2.6.32.21/mm/slub.c linux-2.6.32.21/mm/slub.c 54398diff -urNp linux-2.6.32.21/mm/slub.c linux-2.6.32.21/mm/slub.c
53996--- linux-2.6.32.21/mm/slub.c 2010-08-26 19:42:20.000000000 -0400 54399--- linux-2.6.32.21/mm/slub.c 2010-08-13 16:24:37.000000000 -0400
53997+++ linux-2.6.32.21/mm/slub.c 2010-09-13 08:10:12.000000000 -0400 54400+++ linux-2.6.32.21/mm/slub.c 2010-09-04 15:54:52.000000000 -0400
53998@@ -1893,6 +1893,8 @@ void kmem_cache_free(struct kmem_cache * 54401@@ -1893,6 +1893,8 @@ void kmem_cache_free(struct kmem_cache *
53999 54402
54000 page = virt_to_head_page(x); 54403 page = virt_to_head_page(x);
@@ -54158,8 +54561,8 @@ diff -urNp linux-2.6.32.21/mm/slub.c linux-2.6.32.21/mm/slub.c
54158 } 54561 }
54159 module_init(slab_proc_init); 54562 module_init(slab_proc_init);
54160diff -urNp linux-2.6.32.21/mm/util.c linux-2.6.32.21/mm/util.c 54563diff -urNp linux-2.6.32.21/mm/util.c linux-2.6.32.21/mm/util.c
54161--- linux-2.6.32.21/mm/util.c 2010-08-26 19:42:20.000000000 -0400 54564--- linux-2.6.32.21/mm/util.c 2010-08-13 16:24:37.000000000 -0400
54162+++ linux-2.6.32.21/mm/util.c 2010-09-13 08:10:12.000000000 -0400 54565+++ linux-2.6.32.21/mm/util.c 2010-09-04 15:54:52.000000000 -0400
54163@@ -228,6 +228,12 @@ EXPORT_SYMBOL(strndup_user); 54566@@ -228,6 +228,12 @@ EXPORT_SYMBOL(strndup_user);
54164 void arch_pick_mmap_layout(struct mm_struct *mm) 54567 void arch_pick_mmap_layout(struct mm_struct *mm)
54165 { 54568 {
@@ -54174,8 +54577,8 @@ diff -urNp linux-2.6.32.21/mm/util.c linux-2.6.32.21/mm/util.c
54174 mm->unmap_area = arch_unmap_area; 54577 mm->unmap_area = arch_unmap_area;
54175 } 54578 }
54176diff -urNp linux-2.6.32.21/mm/vmalloc.c linux-2.6.32.21/mm/vmalloc.c 54579diff -urNp linux-2.6.32.21/mm/vmalloc.c linux-2.6.32.21/mm/vmalloc.c
54177--- linux-2.6.32.21/mm/vmalloc.c 2010-08-26 19:42:20.000000000 -0400 54580--- linux-2.6.32.21/mm/vmalloc.c 2010-08-13 16:24:37.000000000 -0400
54178+++ linux-2.6.32.21/mm/vmalloc.c 2010-09-13 08:10:12.000000000 -0400 54581+++ linux-2.6.32.21/mm/vmalloc.c 2010-09-04 15:54:52.000000000 -0400
54179@@ -40,8 +40,19 @@ static void vunmap_pte_range(pmd_t *pmd, 54582@@ -40,8 +40,19 @@ static void vunmap_pte_range(pmd_t *pmd,
54180 54583
54181 pte = pte_offset_kernel(pmd, addr); 54584 pte = pte_offset_kernel(pmd, addr);
@@ -54404,8 +54807,8 @@ diff -urNp linux-2.6.32.21/mm/vmalloc.c linux-2.6.32.21/mm/vmalloc.c
54404 { 54807 {
54405 struct vm_struct *area; 54808 struct vm_struct *area;
54406diff -urNp linux-2.6.32.21/mm/vmstat.c linux-2.6.32.21/mm/vmstat.c 54809diff -urNp linux-2.6.32.21/mm/vmstat.c linux-2.6.32.21/mm/vmstat.c
54407--- linux-2.6.32.21/mm/vmstat.c 2010-08-26 19:42:20.000000000 -0400 54810--- linux-2.6.32.21/mm/vmstat.c 2010-08-13 16:24:37.000000000 -0400
54408+++ linux-2.6.32.21/mm/vmstat.c 2010-09-13 08:10:12.000000000 -0400 54811+++ linux-2.6.32.21/mm/vmstat.c 2010-09-04 15:54:52.000000000 -0400
54409@@ -74,7 +74,7 @@ void vm_events_fold_cpu(int cpu) 54812@@ -74,7 +74,7 @@ void vm_events_fold_cpu(int cpu)
54410 * 54813 *
54411 * vm_stat contains the global counters 54814 * vm_stat contains the global counters
@@ -54455,8 +54858,8 @@ diff -urNp linux-2.6.32.21/mm/vmstat.c linux-2.6.32.21/mm/vmstat.c
54455 return 0; 54858 return 0;
54456 } 54859 }
54457diff -urNp linux-2.6.32.21/net/8021q/vlan.c linux-2.6.32.21/net/8021q/vlan.c 54860diff -urNp linux-2.6.32.21/net/8021q/vlan.c linux-2.6.32.21/net/8021q/vlan.c
54458--- linux-2.6.32.21/net/8021q/vlan.c 2010-08-26 19:42:20.000000000 -0400 54861--- linux-2.6.32.21/net/8021q/vlan.c 2010-08-13 16:24:37.000000000 -0400
54459+++ linux-2.6.32.21/net/8021q/vlan.c 2010-09-13 08:10:12.000000000 -0400 54862+++ linux-2.6.32.21/net/8021q/vlan.c 2010-09-04 15:54:52.000000000 -0400
54460@@ -622,8 +622,7 @@ static int vlan_ioctl_handler(struct net 54863@@ -622,8 +622,7 @@ static int vlan_ioctl_handler(struct net
54461 err = -EPERM; 54864 err = -EPERM;
54462 if (!capable(CAP_NET_ADMIN)) 54865 if (!capable(CAP_NET_ADMIN))
@@ -54468,8 +54871,8 @@ diff -urNp linux-2.6.32.21/net/8021q/vlan.c linux-2.6.32.21/net/8021q/vlan.c
54468 54871
54469 vn = net_generic(net, vlan_net_id); 54872 vn = net_generic(net, vlan_net_id);
54470diff -urNp linux-2.6.32.21/net/atm/atm_misc.c linux-2.6.32.21/net/atm/atm_misc.c 54873diff -urNp linux-2.6.32.21/net/atm/atm_misc.c linux-2.6.32.21/net/atm/atm_misc.c
54471--- linux-2.6.32.21/net/atm/atm_misc.c 2010-08-26 19:42:20.000000000 -0400 54874--- linux-2.6.32.21/net/atm/atm_misc.c 2010-08-13 16:24:37.000000000 -0400
54472+++ linux-2.6.32.21/net/atm/atm_misc.c 2010-09-13 08:10:13.000000000 -0400 54875+++ linux-2.6.32.21/net/atm/atm_misc.c 2010-09-04 15:54:52.000000000 -0400
54473@@ -19,7 +19,7 @@ int atm_charge(struct atm_vcc *vcc,int t 54876@@ -19,7 +19,7 @@ int atm_charge(struct atm_vcc *vcc,int t
54474 if (atomic_read(&sk_atm(vcc)->sk_rmem_alloc) <= sk_atm(vcc)->sk_rcvbuf) 54877 if (atomic_read(&sk_atm(vcc)->sk_rmem_alloc) <= sk_atm(vcc)->sk_rcvbuf)
54475 return 1; 54878 return 1;
@@ -54507,8 +54910,8 @@ diff -urNp linux-2.6.32.21/net/atm/atm_misc.c linux-2.6.32.21/net/atm/atm_misc.c
54507 #undef __HANDLE_ITEM 54910 #undef __HANDLE_ITEM
54508 } 54911 }
54509diff -urNp linux-2.6.32.21/net/atm/proc.c linux-2.6.32.21/net/atm/proc.c 54912diff -urNp linux-2.6.32.21/net/atm/proc.c linux-2.6.32.21/net/atm/proc.c
54510--- linux-2.6.32.21/net/atm/proc.c 2010-08-26 19:42:20.000000000 -0400 54913--- linux-2.6.32.21/net/atm/proc.c 2010-08-13 16:24:37.000000000 -0400
54511+++ linux-2.6.32.21/net/atm/proc.c 2010-09-13 08:10:13.000000000 -0400 54914+++ linux-2.6.32.21/net/atm/proc.c 2010-09-14 21:47:17.000000000 -0400
54512@@ -43,9 +43,9 @@ static void add_stats(struct seq_file *s 54915@@ -43,9 +43,9 @@ static void add_stats(struct seq_file *s
54513 const struct k_atm_aal_stats *stats) 54916 const struct k_atm_aal_stats *stats)
54514 { 54917 {
@@ -54522,9 +54925,22 @@ diff -urNp linux-2.6.32.21/net/atm/proc.c linux-2.6.32.21/net/atm/proc.c
54522 } 54925 }
54523 54926
54524 static void atm_dev_info(struct seq_file *seq, const struct atm_dev *dev) 54927 static void atm_dev_info(struct seq_file *seq, const struct atm_dev *dev)
54928@@ -188,7 +188,12 @@ static void vcc_info(struct seq_file *se
54929 {
54930 struct sock *sk = sk_atm(vcc);
54931
54932+#ifdef CONFIG_GRKERNSEC_HIDESYM
54933+ seq_printf(seq, "%p ", NULL);
54934+#else
54935 seq_printf(seq, "%p ", vcc);
54936+#endif
54937+
54938 if (!vcc->dev)
54939 seq_printf(seq, "Unassigned ");
54940 else
54525diff -urNp linux-2.6.32.21/net/atm/resources.c linux-2.6.32.21/net/atm/resources.c 54941diff -urNp linux-2.6.32.21/net/atm/resources.c linux-2.6.32.21/net/atm/resources.c
54526--- linux-2.6.32.21/net/atm/resources.c 2010-08-26 19:42:20.000000000 -0400 54942--- linux-2.6.32.21/net/atm/resources.c 2010-08-13 16:24:37.000000000 -0400
54527+++ linux-2.6.32.21/net/atm/resources.c 2010-09-13 08:10:13.000000000 -0400 54943+++ linux-2.6.32.21/net/atm/resources.c 2010-09-04 15:54:52.000000000 -0400
54528@@ -161,7 +161,7 @@ void atm_dev_deregister(struct atm_dev * 54944@@ -161,7 +161,7 @@ void atm_dev_deregister(struct atm_dev *
54529 static void copy_aal_stats(struct k_atm_aal_stats *from, 54945 static void copy_aal_stats(struct k_atm_aal_stats *from,
54530 struct atm_aal_stats *to) 54946 struct atm_aal_stats *to)
@@ -54544,8 +54960,8 @@ diff -urNp linux-2.6.32.21/net/atm/resources.c linux-2.6.32.21/net/atm/resources
54544 #undef __HANDLE_ITEM 54960 #undef __HANDLE_ITEM
54545 } 54961 }
54546diff -urNp linux-2.6.32.21/net/bridge/br_private.h linux-2.6.32.21/net/bridge/br_private.h 54962diff -urNp linux-2.6.32.21/net/bridge/br_private.h linux-2.6.32.21/net/bridge/br_private.h
54547--- linux-2.6.32.21/net/bridge/br_private.h 2010-08-26 19:42:20.000000000 -0400 54963--- linux-2.6.32.21/net/bridge/br_private.h 2010-08-13 16:24:37.000000000 -0400
54548+++ linux-2.6.32.21/net/bridge/br_private.h 2010-09-13 08:10:13.000000000 -0400 54964+++ linux-2.6.32.21/net/bridge/br_private.h 2010-09-04 15:54:52.000000000 -0400
54549@@ -254,7 +254,7 @@ extern void br_ifinfo_notify(int event, 54965@@ -254,7 +254,7 @@ extern void br_ifinfo_notify(int event,
54550 54966
54551 #ifdef CONFIG_SYSFS 54967 #ifdef CONFIG_SYSFS
@@ -54556,8 +54972,8 @@ diff -urNp linux-2.6.32.21/net/bridge/br_private.h linux-2.6.32.21/net/bridge/br
54556 54972
54557 /* br_sysfs_br.c */ 54973 /* br_sysfs_br.c */
54558diff -urNp linux-2.6.32.21/net/bridge/br_stp_if.c linux-2.6.32.21/net/bridge/br_stp_if.c 54974diff -urNp linux-2.6.32.21/net/bridge/br_stp_if.c linux-2.6.32.21/net/bridge/br_stp_if.c
54559--- linux-2.6.32.21/net/bridge/br_stp_if.c 2010-08-26 19:42:20.000000000 -0400 54975--- linux-2.6.32.21/net/bridge/br_stp_if.c 2010-08-13 16:24:37.000000000 -0400
54560+++ linux-2.6.32.21/net/bridge/br_stp_if.c 2010-09-13 08:10:13.000000000 -0400 54976+++ linux-2.6.32.21/net/bridge/br_stp_if.c 2010-09-04 15:54:52.000000000 -0400
54561@@ -146,7 +146,7 @@ static void br_stp_stop(struct net_bridg 54977@@ -146,7 +146,7 @@ static void br_stp_stop(struct net_bridg
54562 char *envp[] = { NULL }; 54978 char *envp[] = { NULL };
54563 54979
@@ -54568,8 +54984,8 @@ diff -urNp linux-2.6.32.21/net/bridge/br_stp_if.c linux-2.6.32.21/net/bridge/br_
54568 br->dev->name, r); 54984 br->dev->name, r);
54569 54985
54570diff -urNp linux-2.6.32.21/net/bridge/br_sysfs_if.c linux-2.6.32.21/net/bridge/br_sysfs_if.c 54986diff -urNp linux-2.6.32.21/net/bridge/br_sysfs_if.c linux-2.6.32.21/net/bridge/br_sysfs_if.c
54571--- linux-2.6.32.21/net/bridge/br_sysfs_if.c 2010-08-26 19:42:20.000000000 -0400 54987--- linux-2.6.32.21/net/bridge/br_sysfs_if.c 2010-08-13 16:24:37.000000000 -0400
54572+++ linux-2.6.32.21/net/bridge/br_sysfs_if.c 2010-09-13 08:10:13.000000000 -0400 54988+++ linux-2.6.32.21/net/bridge/br_sysfs_if.c 2010-09-04 15:54:52.000000000 -0400
54573@@ -220,7 +220,7 @@ static ssize_t brport_store(struct kobje 54989@@ -220,7 +220,7 @@ static ssize_t brport_store(struct kobje
54574 return ret; 54990 return ret;
54575 } 54991 }
@@ -54580,8 +54996,8 @@ diff -urNp linux-2.6.32.21/net/bridge/br_sysfs_if.c linux-2.6.32.21/net/bridge/b
54580 .store = brport_store, 54996 .store = brport_store,
54581 }; 54997 };
54582diff -urNp linux-2.6.32.21/net/core/dev.c linux-2.6.32.21/net/core/dev.c 54998diff -urNp linux-2.6.32.21/net/core/dev.c linux-2.6.32.21/net/core/dev.c
54583--- linux-2.6.32.21/net/core/dev.c 2010-08-26 19:42:20.000000000 -0400 54999--- linux-2.6.32.21/net/core/dev.c 2010-08-29 21:08:20.000000000 -0400
54584+++ linux-2.6.32.21/net/core/dev.c 2010-09-13 08:10:13.000000000 -0400 55000+++ linux-2.6.32.21/net/core/dev.c 2010-09-04 15:54:52.000000000 -0400
54585@@ -2047,7 +2047,7 @@ int netif_rx_ni(struct sk_buff *skb) 55001@@ -2047,7 +2047,7 @@ int netif_rx_ni(struct sk_buff *skb)
54586 } 55002 }
54587 EXPORT_SYMBOL(netif_rx_ni); 55003 EXPORT_SYMBOL(netif_rx_ni);
@@ -54601,8 +55017,8 @@ diff -urNp linux-2.6.32.21/net/core/dev.c linux-2.6.32.21/net/core/dev.c
54601 struct list_head *list = &__get_cpu_var(softnet_data).poll_list; 55017 struct list_head *list = &__get_cpu_var(softnet_data).poll_list;
54602 unsigned long time_limit = jiffies + 2; 55018 unsigned long time_limit = jiffies + 2;
54603diff -urNp linux-2.6.32.21/net/core/flow.c linux-2.6.32.21/net/core/flow.c 55019diff -urNp linux-2.6.32.21/net/core/flow.c linux-2.6.32.21/net/core/flow.c
54604--- linux-2.6.32.21/net/core/flow.c 2010-08-26 19:42:20.000000000 -0400 55020--- linux-2.6.32.21/net/core/flow.c 2010-08-13 16:24:37.000000000 -0400
54605+++ linux-2.6.32.21/net/core/flow.c 2010-09-13 08:10:13.000000000 -0400 55021+++ linux-2.6.32.21/net/core/flow.c 2010-09-04 15:54:52.000000000 -0400
54606@@ -39,7 +39,7 @@ atomic_t flow_cache_genid = ATOMIC_INIT( 55022@@ -39,7 +39,7 @@ atomic_t flow_cache_genid = ATOMIC_INIT(
54607 55023
54608 static u32 flow_hash_shift; 55024 static u32 flow_hash_shift;
@@ -54631,8 +55047,8 @@ diff -urNp linux-2.6.32.21/net/core/flow.c linux-2.6.32.21/net/core/flow.c
54631 #define flow_flush_tasklet(cpu) (&per_cpu(flow_flush_tasklets, cpu)) 55047 #define flow_flush_tasklet(cpu) (&per_cpu(flow_flush_tasklets, cpu))
54632 55048
54633diff -urNp linux-2.6.32.21/net/dccp/ccids/ccid3.c linux-2.6.32.21/net/dccp/ccids/ccid3.c 55049diff -urNp linux-2.6.32.21/net/dccp/ccids/ccid3.c linux-2.6.32.21/net/dccp/ccids/ccid3.c
54634--- linux-2.6.32.21/net/dccp/ccids/ccid3.c 2010-08-26 19:42:20.000000000 -0400 55050--- linux-2.6.32.21/net/dccp/ccids/ccid3.c 2010-08-13 16:24:37.000000000 -0400
54635+++ linux-2.6.32.21/net/dccp/ccids/ccid3.c 2010-09-13 08:10:13.000000000 -0400 55051+++ linux-2.6.32.21/net/dccp/ccids/ccid3.c 2010-09-04 15:54:52.000000000 -0400
54636@@ -41,7 +41,7 @@ 55052@@ -41,7 +41,7 @@
54637 static int ccid3_debug; 55053 static int ccid3_debug;
54638 #define ccid3_pr_debug(format, a...) DCCP_PR_DEBUG(ccid3_debug, format, ##a) 55054 #define ccid3_pr_debug(format, a...) DCCP_PR_DEBUG(ccid3_debug, format, ##a)
@@ -54643,8 +55059,8 @@ diff -urNp linux-2.6.32.21/net/dccp/ccids/ccid3.c linux-2.6.32.21/net/dccp/ccids
54643 55059
54644 /* 55060 /*
54645diff -urNp linux-2.6.32.21/net/dccp/dccp.h linux-2.6.32.21/net/dccp/dccp.h 55061diff -urNp linux-2.6.32.21/net/dccp/dccp.h linux-2.6.32.21/net/dccp/dccp.h
54646--- linux-2.6.32.21/net/dccp/dccp.h 2010-08-26 19:42:20.000000000 -0400 55062--- linux-2.6.32.21/net/dccp/dccp.h 2010-08-13 16:24:37.000000000 -0400
54647+++ linux-2.6.32.21/net/dccp/dccp.h 2010-09-13 08:10:13.000000000 -0400 55063+++ linux-2.6.32.21/net/dccp/dccp.h 2010-09-04 15:54:52.000000000 -0400
54648@@ -44,9 +44,9 @@ extern int dccp_debug; 55064@@ -44,9 +44,9 @@ extern int dccp_debug;
54649 #define dccp_pr_debug_cat(format, a...) DCCP_PRINTK(dccp_debug, format, ##a) 55065 #define dccp_pr_debug_cat(format, a...) DCCP_PRINTK(dccp_debug, format, ##a)
54650 #define dccp_debug(fmt, a...) dccp_pr_debug_cat(KERN_DEBUG fmt, ##a) 55066 #define dccp_debug(fmt, a...) dccp_pr_debug_cat(KERN_DEBUG fmt, ##a)
@@ -54659,8 +55075,8 @@ diff -urNp linux-2.6.32.21/net/dccp/dccp.h linux-2.6.32.21/net/dccp/dccp.h
54659 55075
54660 extern struct inet_hashinfo dccp_hashinfo; 55076 extern struct inet_hashinfo dccp_hashinfo;
54661diff -urNp linux-2.6.32.21/net/decnet/sysctl_net_decnet.c linux-2.6.32.21/net/decnet/sysctl_net_decnet.c 55077diff -urNp linux-2.6.32.21/net/decnet/sysctl_net_decnet.c linux-2.6.32.21/net/decnet/sysctl_net_decnet.c
54662--- linux-2.6.32.21/net/decnet/sysctl_net_decnet.c 2010-08-26 19:42:20.000000000 -0400 55078--- linux-2.6.32.21/net/decnet/sysctl_net_decnet.c 2010-08-13 16:24:37.000000000 -0400
54663+++ linux-2.6.32.21/net/decnet/sysctl_net_decnet.c 2010-09-13 08:10:13.000000000 -0400 55079+++ linux-2.6.32.21/net/decnet/sysctl_net_decnet.c 2010-09-04 15:54:52.000000000 -0400
54664@@ -206,7 +206,7 @@ static int dn_node_address_handler(ctl_t 55080@@ -206,7 +206,7 @@ static int dn_node_address_handler(ctl_t
54665 55081
54666 if (len > *lenp) len = *lenp; 55082 if (len > *lenp) len = *lenp;
@@ -54680,8 +55096,8 @@ diff -urNp linux-2.6.32.21/net/decnet/sysctl_net_decnet.c linux-2.6.32.21/net/de
54680 55096
54681 *lenp = len; 55097 *lenp = len;
54682diff -urNp linux-2.6.32.21/net/ipv4/inet_hashtables.c linux-2.6.32.21/net/ipv4/inet_hashtables.c 55098diff -urNp linux-2.6.32.21/net/ipv4/inet_hashtables.c linux-2.6.32.21/net/ipv4/inet_hashtables.c
54683--- linux-2.6.32.21/net/ipv4/inet_hashtables.c 2010-08-26 19:42:20.000000000 -0400 55099--- linux-2.6.32.21/net/ipv4/inet_hashtables.c 2010-08-13 16:24:37.000000000 -0400
54684+++ linux-2.6.32.21/net/ipv4/inet_hashtables.c 2010-09-13 08:10:14.000000000 -0400 55100+++ linux-2.6.32.21/net/ipv4/inet_hashtables.c 2010-09-04 15:54:52.000000000 -0400
54685@@ -18,11 +18,14 @@ 55101@@ -18,11 +18,14 @@
54686 #include <linux/sched.h> 55102 #include <linux/sched.h>
54687 #include <linux/slab.h> 55103 #include <linux/slab.h>
@@ -54707,8 +55123,8 @@ diff -urNp linux-2.6.32.21/net/ipv4/inet_hashtables.c linux-2.6.32.21/net/ipv4/i
54707 inet_twsk_deschedule(tw, death_row); 55123 inet_twsk_deschedule(tw, death_row);
54708 inet_twsk_put(tw); 55124 inet_twsk_put(tw);
54709diff -urNp linux-2.6.32.21/net/ipv4/netfilter/nf_nat_snmp_basic.c linux-2.6.32.21/net/ipv4/netfilter/nf_nat_snmp_basic.c 55125diff -urNp linux-2.6.32.21/net/ipv4/netfilter/nf_nat_snmp_basic.c linux-2.6.32.21/net/ipv4/netfilter/nf_nat_snmp_basic.c
54710--- linux-2.6.32.21/net/ipv4/netfilter/nf_nat_snmp_basic.c 2010-08-26 19:42:20.000000000 -0400 55126--- linux-2.6.32.21/net/ipv4/netfilter/nf_nat_snmp_basic.c 2010-08-13 16:24:37.000000000 -0400
54711+++ linux-2.6.32.21/net/ipv4/netfilter/nf_nat_snmp_basic.c 2010-09-13 08:10:14.000000000 -0400 55127+++ linux-2.6.32.21/net/ipv4/netfilter/nf_nat_snmp_basic.c 2010-09-04 15:54:52.000000000 -0400
54712@@ -397,7 +397,7 @@ static unsigned char asn1_octets_decode( 55128@@ -397,7 +397,7 @@ static unsigned char asn1_octets_decode(
54713 55129
54714 *len = 0; 55130 *len = 0;
@@ -54719,8 +55135,8 @@ diff -urNp linux-2.6.32.21/net/ipv4/netfilter/nf_nat_snmp_basic.c linux-2.6.32.2
54719 if (net_ratelimit()) 55135 if (net_ratelimit())
54720 printk("OOM in bsalg (%d)\n", __LINE__); 55136 printk("OOM in bsalg (%d)\n", __LINE__);
54721diff -urNp linux-2.6.32.21/net/ipv4/tcp_ipv4.c linux-2.6.32.21/net/ipv4/tcp_ipv4.c 55137diff -urNp linux-2.6.32.21/net/ipv4/tcp_ipv4.c linux-2.6.32.21/net/ipv4/tcp_ipv4.c
54722--- linux-2.6.32.21/net/ipv4/tcp_ipv4.c 2010-08-26 19:42:20.000000000 -0400 55138--- linux-2.6.32.21/net/ipv4/tcp_ipv4.c 2010-08-13 16:24:37.000000000 -0400
54723+++ linux-2.6.32.21/net/ipv4/tcp_ipv4.c 2010-09-13 08:10:14.000000000 -0400 55139+++ linux-2.6.32.21/net/ipv4/tcp_ipv4.c 2010-09-14 21:42:19.000000000 -0400
54724@@ -84,6 +84,9 @@ 55140@@ -84,6 +84,9 @@
54725 int sysctl_tcp_tw_reuse __read_mostly; 55141 int sysctl_tcp_tw_reuse __read_mostly;
54726 int sysctl_tcp_low_latency __read_mostly; 55142 int sysctl_tcp_low_latency __read_mostly;
@@ -54775,9 +55191,50 @@ diff -urNp linux-2.6.32.21/net/ipv4/tcp_ipv4.c linux-2.6.32.21/net/ipv4/tcp_ipv4
54775 tcp_v4_send_reset(NULL, skb); 55191 tcp_v4_send_reset(NULL, skb);
54776 } 55192 }
54777 55193
55194@@ -2237,7 +2255,11 @@ static void get_openreq4(struct sock *sk
55195 0, /* non standard timer */
55196 0, /* open_requests have no inode */
55197 atomic_read(&sk->sk_refcnt),
55198+#ifdef CONFIG_GRKERNSEC_HIDESYM
55199+ NULL,
55200+#else
55201 req,
55202+#endif
55203 len);
55204 }
55205
55206@@ -2279,7 +2301,12 @@ static void get_tcp4_sock(struct sock *s
55207 sock_i_uid(sk),
55208 icsk->icsk_probes_out,
55209 sock_i_ino(sk),
55210- atomic_read(&sk->sk_refcnt), sk,
55211+ atomic_read(&sk->sk_refcnt),
55212+#ifdef CONFIG_GRKERNSEC_HIDESYM
55213+ NULL,
55214+#else
55215+ sk,
55216+#endif
55217 jiffies_to_clock_t(icsk->icsk_rto),
55218 jiffies_to_clock_t(icsk->icsk_ack.ato),
55219 (icsk->icsk_ack.quick << 1) | icsk->icsk_ack.pingpong,
55220@@ -2307,7 +2334,13 @@ static void get_timewait4_sock(struct in
55221 " %02X %08X:%08X %02X:%08lX %08X %5d %8d %d %d %p%n",
55222 i, src, srcp, dest, destp, tw->tw_substate, 0, 0,
55223 3, jiffies_to_clock_t(ttd), 0, 0, 0, 0,
55224- atomic_read(&tw->tw_refcnt), tw, len);
55225+ atomic_read(&tw->tw_refcnt),
55226+#ifdef CONFIG_GRKERNSEC_HIDESYM
55227+ NULL,
55228+#else
55229+ tw,
55230+#endif
55231+ len);
55232 }
55233
55234 #define TMPSZ 150
54778diff -urNp linux-2.6.32.21/net/ipv4/tcp_minisocks.c linux-2.6.32.21/net/ipv4/tcp_minisocks.c 55235diff -urNp linux-2.6.32.21/net/ipv4/tcp_minisocks.c linux-2.6.32.21/net/ipv4/tcp_minisocks.c
54779--- linux-2.6.32.21/net/ipv4/tcp_minisocks.c 2010-08-26 19:42:20.000000000 -0400 55236--- linux-2.6.32.21/net/ipv4/tcp_minisocks.c 2010-08-13 16:24:37.000000000 -0400
54780+++ linux-2.6.32.21/net/ipv4/tcp_minisocks.c 2010-09-13 08:10:14.000000000 -0400 55237+++ linux-2.6.32.21/net/ipv4/tcp_minisocks.c 2010-09-04 15:54:52.000000000 -0400
54781@@ -26,6 +26,10 @@ 55238@@ -26,6 +26,10 @@
54782 #include <net/inet_common.h> 55239 #include <net/inet_common.h>
54783 #include <net/xfrm.h> 55240 #include <net/xfrm.h>
@@ -54801,8 +55258,8 @@ diff -urNp linux-2.6.32.21/net/ipv4/tcp_minisocks.c linux-2.6.32.21/net/ipv4/tcp
54801 req->rsk_ops->send_reset(sk, skb); 55258 req->rsk_ops->send_reset(sk, skb);
54802 55259
54803diff -urNp linux-2.6.32.21/net/ipv4/tcp_probe.c linux-2.6.32.21/net/ipv4/tcp_probe.c 55260diff -urNp linux-2.6.32.21/net/ipv4/tcp_probe.c linux-2.6.32.21/net/ipv4/tcp_probe.c
54804--- linux-2.6.32.21/net/ipv4/tcp_probe.c 2010-08-26 19:42:20.000000000 -0400 55261--- linux-2.6.32.21/net/ipv4/tcp_probe.c 2010-08-13 16:24:37.000000000 -0400
54805+++ linux-2.6.32.21/net/ipv4/tcp_probe.c 2010-09-13 08:10:14.000000000 -0400 55262+++ linux-2.6.32.21/net/ipv4/tcp_probe.c 2010-09-04 15:54:52.000000000 -0400
54806@@ -200,7 +200,7 @@ static ssize_t tcpprobe_read(struct file 55263@@ -200,7 +200,7 @@ static ssize_t tcpprobe_read(struct file
54807 if (cnt + width >= len) 55264 if (cnt + width >= len)
54808 break; 55265 break;
@@ -54813,8 +55270,8 @@ diff -urNp linux-2.6.32.21/net/ipv4/tcp_probe.c linux-2.6.32.21/net/ipv4/tcp_pro
54813 cnt += width; 55270 cnt += width;
54814 } 55271 }
54815diff -urNp linux-2.6.32.21/net/ipv4/tcp_timer.c linux-2.6.32.21/net/ipv4/tcp_timer.c 55272diff -urNp linux-2.6.32.21/net/ipv4/tcp_timer.c linux-2.6.32.21/net/ipv4/tcp_timer.c
54816--- linux-2.6.32.21/net/ipv4/tcp_timer.c 2010-08-26 19:42:20.000000000 -0400 55273--- linux-2.6.32.21/net/ipv4/tcp_timer.c 2010-08-13 16:24:37.000000000 -0400
54817+++ linux-2.6.32.21/net/ipv4/tcp_timer.c 2010-09-13 08:10:14.000000000 -0400 55274+++ linux-2.6.32.21/net/ipv4/tcp_timer.c 2010-09-04 15:54:52.000000000 -0400
54818@@ -21,6 +21,10 @@ 55275@@ -21,6 +21,10 @@
54819 #include <linux/module.h> 55276 #include <linux/module.h>
54820 #include <net/tcp.h> 55277 #include <net/tcp.h>
@@ -54841,8 +55298,8 @@ diff -urNp linux-2.6.32.21/net/ipv4/tcp_timer.c linux-2.6.32.21/net/ipv4/tcp_tim
54841 /* Has it gone just too far? */ 55298 /* Has it gone just too far? */
54842 tcp_write_err(sk); 55299 tcp_write_err(sk);
54843diff -urNp linux-2.6.32.21/net/ipv4/udp.c linux-2.6.32.21/net/ipv4/udp.c 55300diff -urNp linux-2.6.32.21/net/ipv4/udp.c linux-2.6.32.21/net/ipv4/udp.c
54844--- linux-2.6.32.21/net/ipv4/udp.c 2010-08-26 19:42:20.000000000 -0400 55301--- linux-2.6.32.21/net/ipv4/udp.c 2010-08-13 16:24:37.000000000 -0400
54845+++ linux-2.6.32.21/net/ipv4/udp.c 2010-09-13 08:10:14.000000000 -0400 55302+++ linux-2.6.32.21/net/ipv4/udp.c 2010-09-14 21:43:22.000000000 -0400
54846@@ -86,6 +86,7 @@ 55303@@ -86,6 +86,7 @@
54847 #include <linux/types.h> 55304 #include <linux/types.h>
54848 #include <linux/fcntl.h> 55305 #include <linux/fcntl.h>
@@ -54912,9 +55369,23 @@ diff -urNp linux-2.6.32.21/net/ipv4/udp.c linux-2.6.32.21/net/ipv4/udp.c
54912 icmp_send(skb, ICMP_DEST_UNREACH, ICMP_PORT_UNREACH, 0); 55369 icmp_send(skb, ICMP_DEST_UNREACH, ICMP_PORT_UNREACH, 0);
54913 55370
54914 /* 55371 /*
55372@@ -1755,7 +1779,12 @@ static void udp4_format_sock(struct sock
55373 sk_wmem_alloc_get(sp),
55374 sk_rmem_alloc_get(sp),
55375 0, 0L, 0, sock_i_uid(sp), 0, sock_i_ino(sp),
55376- atomic_read(&sp->sk_refcnt), sp,
55377+ atomic_read(&sp->sk_refcnt),
55378+#ifdef CONFIG_GRKERNSEC_HIDESYM
55379+ NULL,
55380+#else
55381+ sp,
55382+#endif
55383 atomic_read(&sp->sk_drops), len);
55384 }
55385
54915diff -urNp linux-2.6.32.21/net/ipv6/exthdrs.c linux-2.6.32.21/net/ipv6/exthdrs.c 55386diff -urNp linux-2.6.32.21/net/ipv6/exthdrs.c linux-2.6.32.21/net/ipv6/exthdrs.c
54916--- linux-2.6.32.21/net/ipv6/exthdrs.c 2010-08-26 19:42:20.000000000 -0400 55387--- linux-2.6.32.21/net/ipv6/exthdrs.c 2010-08-13 16:24:37.000000000 -0400
54917+++ linux-2.6.32.21/net/ipv6/exthdrs.c 2010-09-13 08:10:14.000000000 -0400 55388+++ linux-2.6.32.21/net/ipv6/exthdrs.c 2010-09-04 15:54:52.000000000 -0400
54918@@ -635,7 +635,7 @@ static struct tlvtype_proc tlvprochopopt 55389@@ -635,7 +635,7 @@ static struct tlvtype_proc tlvprochopopt
54919 .type = IPV6_TLV_JUMBO, 55390 .type = IPV6_TLV_JUMBO,
54920 .func = ipv6_hop_jumbo, 55391 .func = ipv6_hop_jumbo,
@@ -54925,8 +55396,8 @@ diff -urNp linux-2.6.32.21/net/ipv6/exthdrs.c linux-2.6.32.21/net/ipv6/exthdrs.c
54925 55396
54926 int ipv6_parse_hopopts(struct sk_buff *skb) 55397 int ipv6_parse_hopopts(struct sk_buff *skb)
54927diff -urNp linux-2.6.32.21/net/ipv6/raw.c linux-2.6.32.21/net/ipv6/raw.c 55398diff -urNp linux-2.6.32.21/net/ipv6/raw.c linux-2.6.32.21/net/ipv6/raw.c
54928--- linux-2.6.32.21/net/ipv6/raw.c 2010-08-26 19:42:20.000000000 -0400 55399--- linux-2.6.32.21/net/ipv6/raw.c 2010-08-13 16:24:37.000000000 -0400
54929+++ linux-2.6.32.21/net/ipv6/raw.c 2010-09-13 08:10:14.000000000 -0400 55400+++ linux-2.6.32.21/net/ipv6/raw.c 2010-09-04 15:54:52.000000000 -0400
54930@@ -600,7 +600,7 @@ out: 55401@@ -600,7 +600,7 @@ out:
54931 return err; 55402 return err;
54932 } 55403 }
@@ -54937,8 +55408,8 @@ diff -urNp linux-2.6.32.21/net/ipv6/raw.c linux-2.6.32.21/net/ipv6/raw.c
54937 unsigned int flags) 55408 unsigned int flags)
54938 { 55409 {
54939diff -urNp linux-2.6.32.21/net/ipv6/tcp_ipv6.c linux-2.6.32.21/net/ipv6/tcp_ipv6.c 55410diff -urNp linux-2.6.32.21/net/ipv6/tcp_ipv6.c linux-2.6.32.21/net/ipv6/tcp_ipv6.c
54940--- linux-2.6.32.21/net/ipv6/tcp_ipv6.c 2010-08-26 19:42:20.000000000 -0400 55411--- linux-2.6.32.21/net/ipv6/tcp_ipv6.c 2010-08-13 16:24:37.000000000 -0400
54941+++ linux-2.6.32.21/net/ipv6/tcp_ipv6.c 2010-09-13 08:10:14.000000000 -0400 55412+++ linux-2.6.32.21/net/ipv6/tcp_ipv6.c 2010-09-04 15:54:52.000000000 -0400
54942@@ -88,6 +88,10 @@ static struct tcp_md5sig_key *tcp_v6_md5 55413@@ -88,6 +88,10 @@ static struct tcp_md5sig_key *tcp_v6_md5
54943 } 55414 }
54944 #endif 55415 #endif
@@ -54995,8 +55466,8 @@ diff -urNp linux-2.6.32.21/net/ipv6/tcp_ipv6.c linux-2.6.32.21/net/ipv6/tcp_ipv6
54995 } 55466 }
54996 55467
54997diff -urNp linux-2.6.32.21/net/ipv6/udp.c linux-2.6.32.21/net/ipv6/udp.c 55468diff -urNp linux-2.6.32.21/net/ipv6/udp.c linux-2.6.32.21/net/ipv6/udp.c
54998--- linux-2.6.32.21/net/ipv6/udp.c 2010-08-26 19:42:20.000000000 -0400 55469--- linux-2.6.32.21/net/ipv6/udp.c 2010-08-13 16:24:37.000000000 -0400
54999+++ linux-2.6.32.21/net/ipv6/udp.c 2010-09-13 08:10:14.000000000 -0400 55470+++ linux-2.6.32.21/net/ipv6/udp.c 2010-09-04 15:54:52.000000000 -0400
55000@@ -49,6 +49,10 @@ 55471@@ -49,6 +49,10 @@
55001 #include <linux/seq_file.h> 55472 #include <linux/seq_file.h>
55002 #include "udp_impl.h" 55473 #include "udp_impl.h"
@@ -55019,8 +55490,8 @@ diff -urNp linux-2.6.32.21/net/ipv6/udp.c linux-2.6.32.21/net/ipv6/udp.c
55019 55490
55020 kfree_skb(skb); 55491 kfree_skb(skb);
55021diff -urNp linux-2.6.32.21/net/irda/ircomm/ircomm_tty.c linux-2.6.32.21/net/irda/ircomm/ircomm_tty.c 55492diff -urNp linux-2.6.32.21/net/irda/ircomm/ircomm_tty.c linux-2.6.32.21/net/irda/ircomm/ircomm_tty.c
55022--- linux-2.6.32.21/net/irda/ircomm/ircomm_tty.c 2010-08-26 19:42:20.000000000 -0400 55493--- linux-2.6.32.21/net/irda/ircomm/ircomm_tty.c 2010-08-13 16:24:37.000000000 -0400
55023+++ linux-2.6.32.21/net/irda/ircomm/ircomm_tty.c 2010-09-13 08:10:14.000000000 -0400 55494+++ linux-2.6.32.21/net/irda/ircomm/ircomm_tty.c 2010-09-04 15:54:52.000000000 -0400
55024@@ -280,16 +280,16 @@ static int ircomm_tty_block_til_ready(st 55495@@ -280,16 +280,16 @@ static int ircomm_tty_block_til_ready(st
55025 add_wait_queue(&self->open_wait, &wait); 55496 add_wait_queue(&self->open_wait, &wait);
55026 55497
@@ -55143,9 +55614,24 @@ diff -urNp linux-2.6.32.21/net/irda/ircomm/ircomm_tty.c linux-2.6.32.21/net/irda
55143 seq_printf(m, "Max data size: %d\n", self->max_data_size); 55614 seq_printf(m, "Max data size: %d\n", self->max_data_size);
55144 seq_printf(m, "Max header size: %d\n", self->max_header_size); 55615 seq_printf(m, "Max header size: %d\n", self->max_header_size);
55145 55616
55617diff -urNp linux-2.6.32.21/net/key/af_key.c linux-2.6.32.21/net/key/af_key.c
55618--- linux-2.6.32.21/net/key/af_key.c 2010-08-13 16:24:37.000000000 -0400
55619+++ linux-2.6.32.21/net/key/af_key.c 2010-09-14 21:25:29.000000000 -0400
55620@@ -3660,7 +3660,11 @@ static int pfkey_seq_show(struct seq_fil
55621 seq_printf(f ,"sk RefCnt Rmem Wmem User Inode\n");
55622 else
55623 seq_printf(f ,"%p %-6d %-6u %-6u %-6u %-6lu\n",
55624+#ifdef CONFIG_GRKERNSEC_HIDESYM
55625+ NULL,
55626+#else
55627 s,
55628+#endif
55629 atomic_read(&s->sk_refcnt),
55630 sk_rmem_alloc_get(s),
55631 sk_wmem_alloc_get(s),
55146diff -urNp linux-2.6.32.21/net/mac80211/ieee80211_i.h linux-2.6.32.21/net/mac80211/ieee80211_i.h 55632diff -urNp linux-2.6.32.21/net/mac80211/ieee80211_i.h linux-2.6.32.21/net/mac80211/ieee80211_i.h
55147--- linux-2.6.32.21/net/mac80211/ieee80211_i.h 2010-08-26 19:42:20.000000000 -0400 55633--- linux-2.6.32.21/net/mac80211/ieee80211_i.h 2010-08-13 16:24:37.000000000 -0400
55148+++ linux-2.6.32.21/net/mac80211/ieee80211_i.h 2010-09-13 08:10:14.000000000 -0400 55634+++ linux-2.6.32.21/net/mac80211/ieee80211_i.h 2010-09-04 15:54:52.000000000 -0400
55149@@ -635,7 +635,7 @@ struct ieee80211_local { 55635@@ -635,7 +635,7 @@ struct ieee80211_local {
55150 /* also used to protect ampdu_ac_queue and amdpu_ac_stop_refcnt */ 55636 /* also used to protect ampdu_ac_queue and amdpu_ac_stop_refcnt */
55151 spinlock_t queue_stop_reason_lock; 55637 spinlock_t queue_stop_reason_lock;
@@ -55156,8 +55642,8 @@ diff -urNp linux-2.6.32.21/net/mac80211/ieee80211_i.h linux-2.6.32.21/net/mac802
55156 /* number of interfaces with corresponding FIF_ flags */ 55642 /* number of interfaces with corresponding FIF_ flags */
55157 int fif_fcsfail, fif_plcpfail, fif_control, fif_other_bss, fif_pspoll; 55643 int fif_fcsfail, fif_plcpfail, fif_control, fif_other_bss, fif_pspoll;
55158diff -urNp linux-2.6.32.21/net/mac80211/iface.c linux-2.6.32.21/net/mac80211/iface.c 55644diff -urNp linux-2.6.32.21/net/mac80211/iface.c linux-2.6.32.21/net/mac80211/iface.c
55159--- linux-2.6.32.21/net/mac80211/iface.c 2010-08-26 19:42:20.000000000 -0400 55645--- linux-2.6.32.21/net/mac80211/iface.c 2010-08-13 16:24:37.000000000 -0400
55160+++ linux-2.6.32.21/net/mac80211/iface.c 2010-09-13 08:10:14.000000000 -0400 55646+++ linux-2.6.32.21/net/mac80211/iface.c 2010-09-04 15:54:52.000000000 -0400
55161@@ -166,7 +166,7 @@ static int ieee80211_open(struct net_dev 55647@@ -166,7 +166,7 @@ static int ieee80211_open(struct net_dev
55162 break; 55648 break;
55163 } 55649 }
@@ -55213,8 +55699,8 @@ diff -urNp linux-2.6.32.21/net/mac80211/iface.c linux-2.6.32.21/net/mac80211/ifa
55213 ieee80211_stop_device(local); 55699 ieee80211_stop_device(local);
55214 55700
55215diff -urNp linux-2.6.32.21/net/mac80211/main.c linux-2.6.32.21/net/mac80211/main.c 55701diff -urNp linux-2.6.32.21/net/mac80211/main.c linux-2.6.32.21/net/mac80211/main.c
55216--- linux-2.6.32.21/net/mac80211/main.c 2010-08-26 19:42:20.000000000 -0400 55702--- linux-2.6.32.21/net/mac80211/main.c 2010-08-13 16:24:37.000000000 -0400
55217+++ linux-2.6.32.21/net/mac80211/main.c 2010-09-13 08:10:14.000000000 -0400 55703+++ linux-2.6.32.21/net/mac80211/main.c 2010-09-04 15:54:52.000000000 -0400
55218@@ -145,7 +145,7 @@ int ieee80211_hw_config(struct ieee80211 55704@@ -145,7 +145,7 @@ int ieee80211_hw_config(struct ieee80211
55219 local->hw.conf.power_level = power; 55705 local->hw.conf.power_level = power;
55220 } 55706 }
@@ -55225,8 +55711,8 @@ diff -urNp linux-2.6.32.21/net/mac80211/main.c linux-2.6.32.21/net/mac80211/main
55225 /* 55711 /*
55226 * Goal: 55712 * Goal:
55227diff -urNp linux-2.6.32.21/net/mac80211/pm.c linux-2.6.32.21/net/mac80211/pm.c 55713diff -urNp linux-2.6.32.21/net/mac80211/pm.c linux-2.6.32.21/net/mac80211/pm.c
55228--- linux-2.6.32.21/net/mac80211/pm.c 2010-08-26 19:42:20.000000000 -0400 55714--- linux-2.6.32.21/net/mac80211/pm.c 2010-08-13 16:24:37.000000000 -0400
55229+++ linux-2.6.32.21/net/mac80211/pm.c 2010-09-13 08:10:14.000000000 -0400 55715+++ linux-2.6.32.21/net/mac80211/pm.c 2010-09-04 15:54:52.000000000 -0400
55230@@ -107,7 +107,7 @@ int __ieee80211_suspend(struct ieee80211 55716@@ -107,7 +107,7 @@ int __ieee80211_suspend(struct ieee80211
55231 } 55717 }
55232 55718
@@ -55237,8 +55723,8 @@ diff -urNp linux-2.6.32.21/net/mac80211/pm.c linux-2.6.32.21/net/mac80211/pm.c
55237 55723
55238 local->suspended = true; 55724 local->suspended = true;
55239diff -urNp linux-2.6.32.21/net/mac80211/rate.c linux-2.6.32.21/net/mac80211/rate.c 55725diff -urNp linux-2.6.32.21/net/mac80211/rate.c linux-2.6.32.21/net/mac80211/rate.c
55240--- linux-2.6.32.21/net/mac80211/rate.c 2010-08-26 19:42:20.000000000 -0400 55726--- linux-2.6.32.21/net/mac80211/rate.c 2010-08-13 16:24:37.000000000 -0400
55241+++ linux-2.6.32.21/net/mac80211/rate.c 2010-09-13 08:10:14.000000000 -0400 55727+++ linux-2.6.32.21/net/mac80211/rate.c 2010-09-04 15:54:52.000000000 -0400
55242@@ -287,7 +287,7 @@ int ieee80211_init_rate_ctrl_alg(struct 55728@@ -287,7 +287,7 @@ int ieee80211_init_rate_ctrl_alg(struct
55243 struct rate_control_ref *ref, *old; 55729 struct rate_control_ref *ref, *old;
55244 55730
@@ -55249,8 +55735,8 @@ diff -urNp linux-2.6.32.21/net/mac80211/rate.c linux-2.6.32.21/net/mac80211/rate
55249 55735
55250 ref = rate_control_alloc(name, local); 55736 ref = rate_control_alloc(name, local);
55251diff -urNp linux-2.6.32.21/net/mac80211/tx.c linux-2.6.32.21/net/mac80211/tx.c 55737diff -urNp linux-2.6.32.21/net/mac80211/tx.c linux-2.6.32.21/net/mac80211/tx.c
55252--- linux-2.6.32.21/net/mac80211/tx.c 2010-08-26 19:42:20.000000000 -0400 55738--- linux-2.6.32.21/net/mac80211/tx.c 2010-08-13 16:24:37.000000000 -0400
55253+++ linux-2.6.32.21/net/mac80211/tx.c 2010-09-13 08:10:14.000000000 -0400 55739+++ linux-2.6.32.21/net/mac80211/tx.c 2010-09-04 15:54:52.000000000 -0400
55254@@ -173,7 +173,7 @@ static __le16 ieee80211_duration(struct 55740@@ -173,7 +173,7 @@ static __le16 ieee80211_duration(struct
55255 return cpu_to_le16(dur); 55741 return cpu_to_le16(dur);
55256 } 55742 }
@@ -55261,8 +55747,8 @@ diff -urNp linux-2.6.32.21/net/mac80211/tx.c linux-2.6.32.21/net/mac80211/tx.c
55261 { 55747 {
55262 return local == wdev_priv(dev->ieee80211_ptr); 55748 return local == wdev_priv(dev->ieee80211_ptr);
55263diff -urNp linux-2.6.32.21/net/mac80211/util.c linux-2.6.32.21/net/mac80211/util.c 55749diff -urNp linux-2.6.32.21/net/mac80211/util.c linux-2.6.32.21/net/mac80211/util.c
55264--- linux-2.6.32.21/net/mac80211/util.c 2010-08-26 19:42:20.000000000 -0400 55750--- linux-2.6.32.21/net/mac80211/util.c 2010-08-13 16:24:37.000000000 -0400
55265+++ linux-2.6.32.21/net/mac80211/util.c 2010-09-13 08:10:14.000000000 -0400 55751+++ linux-2.6.32.21/net/mac80211/util.c 2010-09-04 15:54:52.000000000 -0400
55266@@ -1042,14 +1042,14 @@ int ieee80211_reconfig(struct ieee80211_ 55752@@ -1042,14 +1042,14 @@ int ieee80211_reconfig(struct ieee80211_
55267 local->resuming = true; 55753 local->resuming = true;
55268 55754
@@ -55280,9 +55766,49 @@ diff -urNp linux-2.6.32.21/net/mac80211/util.c linux-2.6.32.21/net/mac80211/util
55280 if (res) { 55766 if (res) {
55281 WARN(local->suspended, "Harware became unavailable " 55767 WARN(local->suspended, "Harware became unavailable "
55282 "upon resume. This is could be a software issue" 55768 "upon resume. This is could be a software issue"
55769diff -urNp linux-2.6.32.21/net/netlink/af_netlink.c linux-2.6.32.21/net/netlink/af_netlink.c
55770--- linux-2.6.32.21/net/netlink/af_netlink.c 2010-08-29 21:08:20.000000000 -0400
55771+++ linux-2.6.32.21/net/netlink/af_netlink.c 2010-09-15 02:14:48.000000000 -0400
55772@@ -1964,13 +1964,21 @@ static int netlink_seq_show(struct seq_f
55773 struct netlink_sock *nlk = nlk_sk(s);
55774
55775 seq_printf(seq, "%p %-3d %-6d %08x %-8d %-8d %p %-8d %-8d\n",
55776+#ifdef CONFIG_GRKERNSEC_HIDESYM
55777+ NULL,
55778+#else
55779 s,
55780+#endif
55781 s->sk_protocol,
55782 nlk->pid,
55783 nlk->groups ? (u32)nlk->groups[0] : 0,
55784 sk_rmem_alloc_get(s),
55785 sk_wmem_alloc_get(s),
55786+#ifdef CONFIG_GRKERNSEC_HIDESYM
55787+ NULL,
55788+#else
55789 nlk->cb,
55790+#endif
55791 atomic_read(&s->sk_refcnt),
55792 atomic_read(&s->sk_drops)
55793 );
55794diff -urNp linux-2.6.32.21/net/packet/af_packet.c linux-2.6.32.21/net/packet/af_packet.c
55795--- linux-2.6.32.21/net/packet/af_packet.c 2010-08-13 16:24:37.000000000 -0400
55796+++ linux-2.6.32.21/net/packet/af_packet.c 2010-09-14 21:26:39.000000000 -0400
55797@@ -2426,7 +2426,11 @@ static int packet_seq_show(struct seq_fi
55798
55799 seq_printf(seq,
55800 "%p %-6d %-4d %04x %-5d %1d %-6u %-6u %-6lu\n",
55801+#ifdef CONFIG_GRKERNSEC_HIDESYM
55802+ NULL,
55803+#else
55804 s,
55805+#endif
55806 atomic_read(&s->sk_refcnt),
55807 s->sk_type,
55808 ntohs(po->num),
55283diff -urNp linux-2.6.32.21/net/sctp/socket.c linux-2.6.32.21/net/sctp/socket.c 55809diff -urNp linux-2.6.32.21/net/sctp/socket.c linux-2.6.32.21/net/sctp/socket.c
55284--- linux-2.6.32.21/net/sctp/socket.c 2010-08-26 19:42:20.000000000 -0400 55810--- linux-2.6.32.21/net/sctp/socket.c 2010-08-13 16:24:37.000000000 -0400
55285+++ linux-2.6.32.21/net/sctp/socket.c 2010-09-13 08:10:14.000000000 -0400 55811+++ linux-2.6.32.21/net/sctp/socket.c 2010-09-04 15:54:52.000000000 -0400
55286@@ -1482,7 +1482,7 @@ SCTP_STATIC int sctp_sendmsg(struct kioc 55812@@ -1482,7 +1482,7 @@ SCTP_STATIC int sctp_sendmsg(struct kioc
55287 struct sctp_sndrcvinfo *sinfo; 55813 struct sctp_sndrcvinfo *sinfo;
55288 struct sctp_initmsg *sinit; 55814 struct sctp_initmsg *sinit;
@@ -55301,8 +55827,8 @@ diff -urNp linux-2.6.32.21/net/sctp/socket.c linux-2.6.32.21/net/sctp/socket.c
55301 SCTP_DEBUG_PRINTK("sctp_get_port() found a possible match\n"); 55827 SCTP_DEBUG_PRINTK("sctp_get_port() found a possible match\n");
55302 if (pp->fastreuse && sk->sk_reuse && 55828 if (pp->fastreuse && sk->sk_reuse &&
55303diff -urNp linux-2.6.32.21/net/socket.c linux-2.6.32.21/net/socket.c 55829diff -urNp linux-2.6.32.21/net/socket.c linux-2.6.32.21/net/socket.c
55304--- linux-2.6.32.21/net/socket.c 2010-08-26 19:42:20.000000000 -0400 55830--- linux-2.6.32.21/net/socket.c 2010-08-13 16:24:37.000000000 -0400
55305+++ linux-2.6.32.21/net/socket.c 2010-09-13 08:10:14.000000000 -0400 55831+++ linux-2.6.32.21/net/socket.c 2010-09-04 15:54:52.000000000 -0400
55306@@ -87,6 +87,7 @@ 55832@@ -87,6 +87,7 @@
55307 #include <linux/wireless.h> 55833 #include <linux/wireless.h>
55308 #include <linux/nsproxy.h> 55834 #include <linux/nsproxy.h>
@@ -55458,8 +55984,8 @@ diff -urNp linux-2.6.32.21/net/socket.c linux-2.6.32.21/net/socket.c
55458 security_socket_connect(sock, (struct sockaddr *)&address, addrlen); 55984 security_socket_connect(sock, (struct sockaddr *)&address, addrlen);
55459 if (err) 55985 if (err)
55460diff -urNp linux-2.6.32.21/net/sunrpc/sched.c linux-2.6.32.21/net/sunrpc/sched.c 55986diff -urNp linux-2.6.32.21/net/sunrpc/sched.c linux-2.6.32.21/net/sunrpc/sched.c
55461--- linux-2.6.32.21/net/sunrpc/sched.c 2010-08-26 19:42:20.000000000 -0400 55987--- linux-2.6.32.21/net/sunrpc/sched.c 2010-08-13 16:24:37.000000000 -0400
55462+++ linux-2.6.32.21/net/sunrpc/sched.c 2010-09-13 08:10:14.000000000 -0400 55988+++ linux-2.6.32.21/net/sunrpc/sched.c 2010-09-04 15:54:52.000000000 -0400
55463@@ -234,10 +234,10 @@ static int rpc_wait_bit_killable(void *w 55989@@ -234,10 +234,10 @@ static int rpc_wait_bit_killable(void *w
55464 #ifdef RPC_DEBUG 55990 #ifdef RPC_DEBUG
55465 static void rpc_task_set_debuginfo(struct rpc_task *task) 55991 static void rpc_task_set_debuginfo(struct rpc_task *task)
@@ -55474,8 +56000,8 @@ diff -urNp linux-2.6.32.21/net/sunrpc/sched.c linux-2.6.32.21/net/sunrpc/sched.c
55474 #else 56000 #else
55475 static inline void rpc_task_set_debuginfo(struct rpc_task *task) 56001 static inline void rpc_task_set_debuginfo(struct rpc_task *task)
55476diff -urNp linux-2.6.32.21/net/sunrpc/xprtrdma/svc_rdma.c linux-2.6.32.21/net/sunrpc/xprtrdma/svc_rdma.c 56002diff -urNp linux-2.6.32.21/net/sunrpc/xprtrdma/svc_rdma.c linux-2.6.32.21/net/sunrpc/xprtrdma/svc_rdma.c
55477--- linux-2.6.32.21/net/sunrpc/xprtrdma/svc_rdma.c 2010-08-26 19:42:20.000000000 -0400 56003--- linux-2.6.32.21/net/sunrpc/xprtrdma/svc_rdma.c 2010-08-13 16:24:37.000000000 -0400
55478+++ linux-2.6.32.21/net/sunrpc/xprtrdma/svc_rdma.c 2010-09-13 08:10:14.000000000 -0400 56004+++ linux-2.6.32.21/net/sunrpc/xprtrdma/svc_rdma.c 2010-09-04 15:54:52.000000000 -0400
55479@@ -105,7 +105,7 @@ static int read_reset_stat(ctl_table *ta 56005@@ -105,7 +105,7 @@ static int read_reset_stat(ctl_table *ta
55480 len -= *ppos; 56006 len -= *ppos;
55481 if (len > *lenp) 56007 if (len > *lenp)
@@ -55486,8 +56012,8 @@ diff -urNp linux-2.6.32.21/net/sunrpc/xprtrdma/svc_rdma.c linux-2.6.32.21/net/su
55486 *lenp = len; 56012 *lenp = len;
55487 *ppos += len; 56013 *ppos += len;
55488diff -urNp linux-2.6.32.21/net/sysctl_net.c linux-2.6.32.21/net/sysctl_net.c 56014diff -urNp linux-2.6.32.21/net/sysctl_net.c linux-2.6.32.21/net/sysctl_net.c
55489--- linux-2.6.32.21/net/sysctl_net.c 2010-08-26 19:42:20.000000000 -0400 56015--- linux-2.6.32.21/net/sysctl_net.c 2010-08-13 16:24:37.000000000 -0400
55490+++ linux-2.6.32.21/net/sysctl_net.c 2010-09-13 08:10:14.000000000 -0400 56016+++ linux-2.6.32.21/net/sysctl_net.c 2010-09-04 15:54:52.000000000 -0400
55491@@ -46,7 +46,7 @@ static int net_ctl_permissions(struct ct 56017@@ -46,7 +46,7 @@ static int net_ctl_permissions(struct ct
55492 struct ctl_table *table) 56018 struct ctl_table *table)
55493 { 56019 {
@@ -55498,8 +56024,8 @@ diff -urNp linux-2.6.32.21/net/sysctl_net.c linux-2.6.32.21/net/sysctl_net.c
55498 return (mode << 6) | (mode << 3) | mode; 56024 return (mode << 6) | (mode << 3) | mode;
55499 } 56025 }
55500diff -urNp linux-2.6.32.21/net/tipc/socket.c linux-2.6.32.21/net/tipc/socket.c 56026diff -urNp linux-2.6.32.21/net/tipc/socket.c linux-2.6.32.21/net/tipc/socket.c
55501--- linux-2.6.32.21/net/tipc/socket.c 2010-08-26 19:42:20.000000000 -0400 56027--- linux-2.6.32.21/net/tipc/socket.c 2010-08-13 16:24:37.000000000 -0400
55502+++ linux-2.6.32.21/net/tipc/socket.c 2010-09-13 08:10:14.000000000 -0400 56028+++ linux-2.6.32.21/net/tipc/socket.c 2010-09-04 15:54:52.000000000 -0400
55503@@ -1449,8 +1449,9 @@ static int connect(struct socket *sock, 56029@@ -1449,8 +1449,9 @@ static int connect(struct socket *sock,
55504 } else { 56030 } else {
55505 if (res == 0) 56031 if (res == 0)
@@ -55513,8 +56039,8 @@ diff -urNp linux-2.6.32.21/net/tipc/socket.c linux-2.6.32.21/net/tipc/socket.c
55513 } 56039 }
55514 56040
55515diff -urNp linux-2.6.32.21/net/unix/af_unix.c linux-2.6.32.21/net/unix/af_unix.c 56041diff -urNp linux-2.6.32.21/net/unix/af_unix.c linux-2.6.32.21/net/unix/af_unix.c
55516--- linux-2.6.32.21/net/unix/af_unix.c 2010-08-26 19:42:20.000000000 -0400 56042--- linux-2.6.32.21/net/unix/af_unix.c 2010-08-13 16:24:37.000000000 -0400
55517+++ linux-2.6.32.21/net/unix/af_unix.c 2010-09-13 08:10:14.000000000 -0400 56043+++ linux-2.6.32.21/net/unix/af_unix.c 2010-09-14 21:38:28.000000000 -0400
55518@@ -734,6 +734,12 @@ static struct sock *unix_find_other(stru 56044@@ -734,6 +734,12 @@ static struct sock *unix_find_other(stru
55519 err = -ECONNREFUSED; 56045 err = -ECONNREFUSED;
55520 if (!S_ISSOCK(inode->i_mode)) 56046 if (!S_ISSOCK(inode->i_mode))
@@ -55572,9 +56098,21 @@ diff -urNp linux-2.6.32.21/net/unix/af_unix.c linux-2.6.32.21/net/unix/af_unix.c
55572 list = &unix_socket_table[addr->hash]; 56098 list = &unix_socket_table[addr->hash];
55573 } else { 56099 } else {
55574 list = &unix_socket_table[dentry->d_inode->i_ino & (UNIX_HASH_SIZE-1)]; 56100 list = &unix_socket_table[dentry->d_inode->i_ino & (UNIX_HASH_SIZE-1)];
56101@@ -2161,7 +2185,11 @@ static int unix_seq_show(struct seq_file
56102 unix_state_lock(s);
56103
56104 seq_printf(seq, "%p: %08X %08X %08X %04X %02X %5lu",
56105+#ifdef CONFIG_GRKERNSEC_HIDESYM
56106+ NULL,
56107+#else
56108 s,
56109+#endif
56110 atomic_read(&s->sk_refcnt),
56111 0,
56112 s->sk_state == TCP_LISTEN ? __SO_ACCEPTCON : 0,
55575diff -urNp linux-2.6.32.21/net/wireless/wext.c linux-2.6.32.21/net/wireless/wext.c 56113diff -urNp linux-2.6.32.21/net/wireless/wext.c linux-2.6.32.21/net/wireless/wext.c
55576--- linux-2.6.32.21/net/wireless/wext.c 2010-08-26 19:42:20.000000000 -0400 56114--- linux-2.6.32.21/net/wireless/wext.c 2010-08-13 16:24:37.000000000 -0400
55577+++ linux-2.6.32.21/net/wireless/wext.c 2010-09-13 08:10:14.000000000 -0400 56115+++ linux-2.6.32.21/net/wireless/wext.c 2010-09-04 15:54:52.000000000 -0400
55578@@ -816,8 +816,7 @@ static int ioctl_standard_iw_point(struc 56116@@ -816,8 +816,7 @@ static int ioctl_standard_iw_point(struc
55579 */ 56117 */
55580 56118
@@ -55586,8 +56124,8 @@ diff -urNp linux-2.6.32.21/net/wireless/wext.c linux-2.6.32.21/net/wireless/wext
55586 * we can support any size GET requests. 56124 * we can support any size GET requests.
55587 * There is still a limit : -ENOMEM. 56125 * There is still a limit : -ENOMEM.
55588diff -urNp linux-2.6.32.21/net/xfrm/xfrm_policy.c linux-2.6.32.21/net/xfrm/xfrm_policy.c 56126diff -urNp linux-2.6.32.21/net/xfrm/xfrm_policy.c linux-2.6.32.21/net/xfrm/xfrm_policy.c
55589--- linux-2.6.32.21/net/xfrm/xfrm_policy.c 2010-08-26 19:42:20.000000000 -0400 56127--- linux-2.6.32.21/net/xfrm/xfrm_policy.c 2010-08-13 16:24:37.000000000 -0400
55590+++ linux-2.6.32.21/net/xfrm/xfrm_policy.c 2010-09-13 08:10:14.000000000 -0400 56128+++ linux-2.6.32.21/net/xfrm/xfrm_policy.c 2010-09-04 15:54:52.000000000 -0400
55591@@ -1477,7 +1477,7 @@ free_dst: 56129@@ -1477,7 +1477,7 @@ free_dst:
55592 goto out; 56130 goto out;
55593 } 56131 }
@@ -55616,8 +56154,8 @@ diff -urNp linux-2.6.32.21/net/xfrm/xfrm_policy.c linux-2.6.32.21/net/xfrm/xfrm_
55616 { 56154 {
55617 #ifdef CONFIG_XFRM_SUB_POLICY 56155 #ifdef CONFIG_XFRM_SUB_POLICY
55618diff -urNp linux-2.6.32.21/samples/kobject/kset-example.c linux-2.6.32.21/samples/kobject/kset-example.c 56156diff -urNp linux-2.6.32.21/samples/kobject/kset-example.c linux-2.6.32.21/samples/kobject/kset-example.c
55619--- linux-2.6.32.21/samples/kobject/kset-example.c 2010-08-26 19:42:20.000000000 -0400 56157--- linux-2.6.32.21/samples/kobject/kset-example.c 2010-08-13 16:24:37.000000000 -0400
55620+++ linux-2.6.32.21/samples/kobject/kset-example.c 2010-09-13 08:10:14.000000000 -0400 56158+++ linux-2.6.32.21/samples/kobject/kset-example.c 2010-09-04 15:54:52.000000000 -0400
55621@@ -87,7 +87,7 @@ static ssize_t foo_attr_store(struct kob 56159@@ -87,7 +87,7 @@ static ssize_t foo_attr_store(struct kob
55622 } 56160 }
55623 56161
@@ -55628,8 +56166,8 @@ diff -urNp linux-2.6.32.21/samples/kobject/kset-example.c linux-2.6.32.21/sample
55628 .store = foo_attr_store, 56166 .store = foo_attr_store,
55629 }; 56167 };
55630diff -urNp linux-2.6.32.21/scripts/basic/fixdep.c linux-2.6.32.21/scripts/basic/fixdep.c 56168diff -urNp linux-2.6.32.21/scripts/basic/fixdep.c linux-2.6.32.21/scripts/basic/fixdep.c
55631--- linux-2.6.32.21/scripts/basic/fixdep.c 2010-08-26 19:42:20.000000000 -0400 56169--- linux-2.6.32.21/scripts/basic/fixdep.c 2010-08-13 16:24:37.000000000 -0400
55632+++ linux-2.6.32.21/scripts/basic/fixdep.c 2010-09-13 08:10:14.000000000 -0400 56170+++ linux-2.6.32.21/scripts/basic/fixdep.c 2010-09-04 15:54:52.000000000 -0400
55633@@ -222,9 +222,9 @@ static void use_config(char *m, int slen 56171@@ -222,9 +222,9 @@ static void use_config(char *m, int slen
55634 56172
55635 static void parse_config_file(char *map, size_t len) 56173 static void parse_config_file(char *map, size_t len)
@@ -55652,8 +56190,8 @@ diff -urNp linux-2.6.32.21/scripts/basic/fixdep.c linux-2.6.32.21/scripts/basic/
55652 if (*p != INT_CONF) { 56190 if (*p != INT_CONF) {
55653 fprintf(stderr, "fixdep: sizeof(int) != 4 or wrong endianess? %#x\n", 56191 fprintf(stderr, "fixdep: sizeof(int) != 4 or wrong endianess? %#x\n",
55654diff -urNp linux-2.6.32.21/scripts/kallsyms.c linux-2.6.32.21/scripts/kallsyms.c 56192diff -urNp linux-2.6.32.21/scripts/kallsyms.c linux-2.6.32.21/scripts/kallsyms.c
55655--- linux-2.6.32.21/scripts/kallsyms.c 2010-08-26 19:42:20.000000000 -0400 56193--- linux-2.6.32.21/scripts/kallsyms.c 2010-08-13 16:24:37.000000000 -0400
55656+++ linux-2.6.32.21/scripts/kallsyms.c 2010-09-13 08:10:14.000000000 -0400 56194+++ linux-2.6.32.21/scripts/kallsyms.c 2010-09-04 15:54:52.000000000 -0400
55657@@ -43,10 +43,10 @@ struct text_range { 56195@@ -43,10 +43,10 @@ struct text_range {
55658 56196
55659 static unsigned long long _text; 56197 static unsigned long long _text;
@@ -55670,8 +56208,8 @@ diff -urNp linux-2.6.32.21/scripts/kallsyms.c linux-2.6.32.21/scripts/kallsyms.c
55670 #define text_range_text (&text_ranges[0]) 56208 #define text_range_text (&text_ranges[0])
55671 #define text_range_inittext (&text_ranges[1]) 56209 #define text_range_inittext (&text_ranges[1])
55672diff -urNp linux-2.6.32.21/scripts/mod/file2alias.c linux-2.6.32.21/scripts/mod/file2alias.c 56210diff -urNp linux-2.6.32.21/scripts/mod/file2alias.c linux-2.6.32.21/scripts/mod/file2alias.c
55673--- linux-2.6.32.21/scripts/mod/file2alias.c 2010-08-26 19:42:20.000000000 -0400 56211--- linux-2.6.32.21/scripts/mod/file2alias.c 2010-08-13 16:24:37.000000000 -0400
55674+++ linux-2.6.32.21/scripts/mod/file2alias.c 2010-09-13 08:10:14.000000000 -0400 56212+++ linux-2.6.32.21/scripts/mod/file2alias.c 2010-09-04 15:54:52.000000000 -0400
55675@@ -72,7 +72,7 @@ static void device_id_check(const char * 56213@@ -72,7 +72,7 @@ static void device_id_check(const char *
55676 unsigned long size, unsigned long id_size, 56214 unsigned long size, unsigned long id_size,
55677 void *symval) 56215 void *symval)
@@ -55727,8 +56265,8 @@ diff -urNp linux-2.6.32.21/scripts/mod/file2alias.c linux-2.6.32.21/scripts/mod/
55727 sprintf(alias, "dmi*"); 56265 sprintf(alias, "dmi*");
55728 56266
55729diff -urNp linux-2.6.32.21/scripts/mod/modpost.c linux-2.6.32.21/scripts/mod/modpost.c 56267diff -urNp linux-2.6.32.21/scripts/mod/modpost.c linux-2.6.32.21/scripts/mod/modpost.c
55730--- linux-2.6.32.21/scripts/mod/modpost.c 2010-08-26 19:42:20.000000000 -0400 56268--- linux-2.6.32.21/scripts/mod/modpost.c 2010-08-13 16:24:37.000000000 -0400
55731+++ linux-2.6.32.21/scripts/mod/modpost.c 2010-09-13 08:10:14.000000000 -0400 56269+++ linux-2.6.32.21/scripts/mod/modpost.c 2010-09-04 15:54:52.000000000 -0400
55732@@ -835,6 +835,7 @@ enum mismatch { 56270@@ -835,6 +835,7 @@ enum mismatch {
55733 INIT_TO_EXIT, 56271 INIT_TO_EXIT,
55734 EXIT_TO_INIT, 56272 EXIT_TO_INIT,
@@ -55797,8 +56335,8 @@ diff -urNp linux-2.6.32.21/scripts/mod/modpost.c linux-2.6.32.21/scripts/mod/mod
55797 56335
55798 tmp = NOFAIL(malloc(b->pos)); 56336 tmp = NOFAIL(malloc(b->pos));
55799diff -urNp linux-2.6.32.21/scripts/mod/modpost.h linux-2.6.32.21/scripts/mod/modpost.h 56337diff -urNp linux-2.6.32.21/scripts/mod/modpost.h linux-2.6.32.21/scripts/mod/modpost.h
55800--- linux-2.6.32.21/scripts/mod/modpost.h 2010-08-26 19:42:20.000000000 -0400 56338--- linux-2.6.32.21/scripts/mod/modpost.h 2010-08-13 16:24:37.000000000 -0400
55801+++ linux-2.6.32.21/scripts/mod/modpost.h 2010-09-13 08:10:14.000000000 -0400 56339+++ linux-2.6.32.21/scripts/mod/modpost.h 2010-09-04 15:54:52.000000000 -0400
55802@@ -92,15 +92,15 @@ void *do_nofail(void *ptr, const char *e 56340@@ -92,15 +92,15 @@ void *do_nofail(void *ptr, const char *e
55803 56341
55804 struct buffer { 56342 struct buffer {
@@ -55819,8 +56357,8 @@ diff -urNp linux-2.6.32.21/scripts/mod/modpost.h linux-2.6.32.21/scripts/mod/mod
55819 struct module { 56357 struct module {
55820 struct module *next; 56358 struct module *next;
55821diff -urNp linux-2.6.32.21/scripts/mod/sumversion.c linux-2.6.32.21/scripts/mod/sumversion.c 56359diff -urNp linux-2.6.32.21/scripts/mod/sumversion.c linux-2.6.32.21/scripts/mod/sumversion.c
55822--- linux-2.6.32.21/scripts/mod/sumversion.c 2010-08-26 19:42:20.000000000 -0400 56360--- linux-2.6.32.21/scripts/mod/sumversion.c 2010-08-13 16:24:37.000000000 -0400
55823+++ linux-2.6.32.21/scripts/mod/sumversion.c 2010-09-13 08:10:14.000000000 -0400 56361+++ linux-2.6.32.21/scripts/mod/sumversion.c 2010-09-04 15:54:52.000000000 -0400
55824@@ -455,7 +455,7 @@ static void write_version(const char *fi 56362@@ -455,7 +455,7 @@ static void write_version(const char *fi
55825 goto out; 56363 goto out;
55826 } 56364 }
@@ -55831,8 +56369,8 @@ diff -urNp linux-2.6.32.21/scripts/mod/sumversion.c linux-2.6.32.21/scripts/mod/
55831 filename, strerror(errno)); 56369 filename, strerror(errno));
55832 goto out; 56370 goto out;
55833diff -urNp linux-2.6.32.21/scripts/pnmtologo.c linux-2.6.32.21/scripts/pnmtologo.c 56371diff -urNp linux-2.6.32.21/scripts/pnmtologo.c linux-2.6.32.21/scripts/pnmtologo.c
55834--- linux-2.6.32.21/scripts/pnmtologo.c 2010-08-26 19:42:20.000000000 -0400 56372--- linux-2.6.32.21/scripts/pnmtologo.c 2010-08-13 16:24:37.000000000 -0400
55835+++ linux-2.6.32.21/scripts/pnmtologo.c 2010-09-13 08:10:14.000000000 -0400 56373+++ linux-2.6.32.21/scripts/pnmtologo.c 2010-09-04 15:54:52.000000000 -0400
55836@@ -237,14 +237,14 @@ static void write_header(void) 56374@@ -237,14 +237,14 @@ static void write_header(void)
55837 fprintf(out, " * Linux logo %s\n", logoname); 56375 fprintf(out, " * Linux logo %s\n", logoname);
55838 fputs(" */\n\n", out); 56376 fputs(" */\n\n", out);
@@ -55859,10 +56397,103 @@ diff -urNp linux-2.6.32.21/scripts/pnmtologo.c linux-2.6.32.21/scripts/pnmtologo
55859 logoname); 56397 logoname);
55860 write_hex_cnt = 0; 56398 write_hex_cnt = 0;
55861 for (i = 0; i < logo_clutsize; i++) { 56399 for (i = 0; i < logo_clutsize; i++) {
56400diff -urNp linux-2.6.32.21/security/capability.c linux-2.6.32.21/security/capability.c
56401--- linux-2.6.32.21/security/capability.c 2010-08-13 16:24:37.000000000 -0400
56402+++ linux-2.6.32.21/security/capability.c 2010-09-14 23:49:20.000000000 -0400
56403@@ -890,7 +890,7 @@ static void cap_audit_rule_free(void *ls
56404 }
56405 #endif /* CONFIG_AUDIT */
56406
56407-struct security_operations default_security_ops = {
56408+struct security_operations default_security_ops __read_only = {
56409 .name = "default",
56410 };
56411
56412diff -urNp linux-2.6.32.21/security/commoncap.c linux-2.6.32.21/security/commoncap.c
56413--- linux-2.6.32.21/security/commoncap.c 2010-08-13 16:24:37.000000000 -0400
56414+++ linux-2.6.32.21/security/commoncap.c 2010-09-04 15:54:52.000000000 -0400
56415@@ -27,7 +27,7 @@
56416 #include <linux/sched.h>
56417 #include <linux/prctl.h>
56418 #include <linux/securebits.h>
56419-
56420+#include <net/sock.h>
56421 /*
56422 * If a non-root user executes a setuid-root binary in
56423 * !secure(SECURE_NOROOT) mode, then we raise capabilities.
56424@@ -50,9 +50,11 @@ static void warn_setuid_and_fcaps_mixed(
56425 }
56426 }
56427
56428+extern kernel_cap_t gr_cap_rtnetlink(struct sock *sk);
56429+
56430 int cap_netlink_send(struct sock *sk, struct sk_buff *skb)
56431 {
56432- NETLINK_CB(skb).eff_cap = current_cap();
56433+ NETLINK_CB(skb).eff_cap = gr_cap_rtnetlink(sk);
56434 return 0;
56435 }
56436
56437diff -urNp linux-2.6.32.21/security/integrity/ima/ima_api.c linux-2.6.32.21/security/integrity/ima/ima_api.c
56438--- linux-2.6.32.21/security/integrity/ima/ima_api.c 2010-08-13 16:24:37.000000000 -0400
56439+++ linux-2.6.32.21/security/integrity/ima/ima_api.c 2010-09-04 15:54:52.000000000 -0400
56440@@ -74,7 +74,7 @@ void ima_add_violation(struct inode *ino
56441 int result;
56442
56443 /* can overflow, only indicator */
56444- atomic_long_inc(&ima_htable.violations);
56445+ atomic_long_inc_unchecked(&ima_htable.violations);
56446
56447 entry = kmalloc(sizeof(*entry), GFP_KERNEL);
56448 if (!entry) {
56449diff -urNp linux-2.6.32.21/security/integrity/ima/ima_fs.c linux-2.6.32.21/security/integrity/ima/ima_fs.c
56450--- linux-2.6.32.21/security/integrity/ima/ima_fs.c 2010-08-13 16:24:37.000000000 -0400
56451+++ linux-2.6.32.21/security/integrity/ima/ima_fs.c 2010-09-04 15:54:52.000000000 -0400
56452@@ -27,12 +27,12 @@
56453 static int valid_policy = 1;
56454 #define TMPBUFLEN 12
56455 static ssize_t ima_show_htable_value(char __user *buf, size_t count,
56456- loff_t *ppos, atomic_long_t *val)
56457+ loff_t *ppos, atomic_long_unchecked_t *val)
56458 {
56459 char tmpbuf[TMPBUFLEN];
56460 ssize_t len;
56461
56462- len = scnprintf(tmpbuf, TMPBUFLEN, "%li\n", atomic_long_read(val));
56463+ len = scnprintf(tmpbuf, TMPBUFLEN, "%li\n", atomic_long_read_unchecked(val));
56464 return simple_read_from_buffer(buf, count, ppos, tmpbuf, len);
56465 }
56466
56467diff -urNp linux-2.6.32.21/security/integrity/ima/ima.h linux-2.6.32.21/security/integrity/ima/ima.h
56468--- linux-2.6.32.21/security/integrity/ima/ima.h 2010-08-13 16:24:37.000000000 -0400
56469+++ linux-2.6.32.21/security/integrity/ima/ima.h 2010-09-04 15:54:52.000000000 -0400
56470@@ -84,8 +84,8 @@ void ima_add_violation(struct inode *ino
56471 extern spinlock_t ima_queue_lock;
56472
56473 struct ima_h_table {
56474- atomic_long_t len; /* number of stored measurements in the list */
56475- atomic_long_t violations;
56476+ atomic_long_unchecked_t len; /* number of stored measurements in the list */
56477+ atomic_long_unchecked_t violations;
56478 struct hlist_head queue[IMA_MEASURE_HTABLE_SIZE];
56479 };
56480 extern struct ima_h_table ima_htable;
56481diff -urNp linux-2.6.32.21/security/integrity/ima/ima_queue.c linux-2.6.32.21/security/integrity/ima/ima_queue.c
56482--- linux-2.6.32.21/security/integrity/ima/ima_queue.c 2010-08-13 16:24:37.000000000 -0400
56483+++ linux-2.6.32.21/security/integrity/ima/ima_queue.c 2010-09-04 15:54:52.000000000 -0400
56484@@ -78,7 +78,7 @@ static int ima_add_digest_entry(struct i
56485 INIT_LIST_HEAD(&qe->later);
56486 list_add_tail_rcu(&qe->later, &ima_measurements);
56487
56488- atomic_long_inc(&ima_htable.len);
56489+ atomic_long_inc_unchecked(&ima_htable.len);
56490 key = ima_hash_key(entry->digest);
56491 hlist_add_head_rcu(&qe->hnext, &ima_htable.queue[key]);
56492 return 0;
55862diff -urNp linux-2.6.32.21/security/Kconfig linux-2.6.32.21/security/Kconfig 56493diff -urNp linux-2.6.32.21/security/Kconfig linux-2.6.32.21/security/Kconfig
55863--- linux-2.6.32.21/security/Kconfig 2010-08-26 19:42:20.000000000 -0400 56494--- linux-2.6.32.21/security/Kconfig 2010-08-13 16:24:37.000000000 -0400
55864+++ linux-2.6.32.21/security/Kconfig 2010-09-13 08:10:14.000000000 -0400 56495+++ linux-2.6.32.21/security/Kconfig 2010-09-14 20:52:17.000000000 -0400
55865@@ -4,6 +4,501 @@ 56496@@ -4,6 +4,505 @@
55866 56497
55867 menu "Security options" 56498 menu "Security options"
55868 56499
@@ -56354,6 +56985,10 @@ diff -urNp linux-2.6.32.21/security/Kconfig linux-2.6.32.21/security/Kconfig
56354+ Note that the current implementation provides the strictest checks 56985+ Note that the current implementation provides the strictest checks
56355+ for the SLUB allocator. 56986+ for the SLUB allocator.
56356+ 56987+
56988+ If frame pointers are enabled on x86, this option will also
56989+ restrict copies into and out of the kernel stack to local variables
56990+ within a single frame.
56991+
56357+ Since this has a negligible performance impact, you should enable 56992+ Since this has a negligible performance impact, you should enable
56358+ this feature. 56993+ this feature.
56359+ 56994+
@@ -56364,7 +56999,7 @@ diff -urNp linux-2.6.32.21/security/Kconfig linux-2.6.32.21/security/Kconfig
56364 config KEYS 56999 config KEYS
56365 bool "Enable access key retention support" 57000 bool "Enable access key retention support"
56366 help 57001 help
56367@@ -146,7 +641,7 @@ config INTEL_TXT 57002@@ -146,7 +645,7 @@ config INTEL_TXT
56368 config LSM_MMAP_MIN_ADDR 57003 config LSM_MMAP_MIN_ADDR
56369 int "Low address space for LSM to protect from user allocation" 57004 int "Low address space for LSM to protect from user allocation"
56370 depends on SECURITY && SECURITY_SELINUX 57005 depends on SECURITY && SECURITY_SELINUX
@@ -56373,90 +57008,9 @@ diff -urNp linux-2.6.32.21/security/Kconfig linux-2.6.32.21/security/Kconfig
56373 help 57008 help
56374 This is the portion of low virtual memory which should be protected 57009 This is the portion of low virtual memory which should be protected
56375 from userspace allocation. Keeping a user from writing to low pages 57010 from userspace allocation. Keeping a user from writing to low pages
56376diff -urNp linux-2.6.32.21/security/commoncap.c linux-2.6.32.21/security/commoncap.c
56377--- linux-2.6.32.21/security/commoncap.c 2010-08-26 19:42:20.000000000 -0400
56378+++ linux-2.6.32.21/security/commoncap.c 2010-09-13 08:10:14.000000000 -0400
56379@@ -27,7 +27,7 @@
56380 #include <linux/sched.h>
56381 #include <linux/prctl.h>
56382 #include <linux/securebits.h>
56383-
56384+#include <net/sock.h>
56385 /*
56386 * If a non-root user executes a setuid-root binary in
56387 * !secure(SECURE_NOROOT) mode, then we raise capabilities.
56388@@ -50,9 +50,11 @@ static void warn_setuid_and_fcaps_mixed(
56389 }
56390 }
56391
56392+extern kernel_cap_t gr_cap_rtnetlink(struct sock *sk);
56393+
56394 int cap_netlink_send(struct sock *sk, struct sk_buff *skb)
56395 {
56396- NETLINK_CB(skb).eff_cap = current_cap();
56397+ NETLINK_CB(skb).eff_cap = gr_cap_rtnetlink(sk);
56398 return 0;
56399 }
56400
56401diff -urNp linux-2.6.32.21/security/integrity/ima/ima.h linux-2.6.32.21/security/integrity/ima/ima.h
56402--- linux-2.6.32.21/security/integrity/ima/ima.h 2010-08-26 19:42:20.000000000 -0400
56403+++ linux-2.6.32.21/security/integrity/ima/ima.h 2010-09-13 08:10:14.000000000 -0400
56404@@ -84,8 +84,8 @@ void ima_add_violation(struct inode *ino
56405 extern spinlock_t ima_queue_lock;
56406
56407 struct ima_h_table {
56408- atomic_long_t len; /* number of stored measurements in the list */
56409- atomic_long_t violations;
56410+ atomic_long_unchecked_t len; /* number of stored measurements in the list */
56411+ atomic_long_unchecked_t violations;
56412 struct hlist_head queue[IMA_MEASURE_HTABLE_SIZE];
56413 };
56414 extern struct ima_h_table ima_htable;
56415diff -urNp linux-2.6.32.21/security/integrity/ima/ima_api.c linux-2.6.32.21/security/integrity/ima/ima_api.c
56416--- linux-2.6.32.21/security/integrity/ima/ima_api.c 2010-08-26 19:42:20.000000000 -0400
56417+++ linux-2.6.32.21/security/integrity/ima/ima_api.c 2010-09-13 08:10:14.000000000 -0400
56418@@ -74,7 +74,7 @@ void ima_add_violation(struct inode *ino
56419 int result;
56420
56421 /* can overflow, only indicator */
56422- atomic_long_inc(&ima_htable.violations);
56423+ atomic_long_inc_unchecked(&ima_htable.violations);
56424
56425 entry = kmalloc(sizeof(*entry), GFP_KERNEL);
56426 if (!entry) {
56427diff -urNp linux-2.6.32.21/security/integrity/ima/ima_fs.c linux-2.6.32.21/security/integrity/ima/ima_fs.c
56428--- linux-2.6.32.21/security/integrity/ima/ima_fs.c 2010-08-26 19:42:20.000000000 -0400
56429+++ linux-2.6.32.21/security/integrity/ima/ima_fs.c 2010-09-13 08:10:14.000000000 -0400
56430@@ -27,12 +27,12 @@
56431 static int valid_policy = 1;
56432 #define TMPBUFLEN 12
56433 static ssize_t ima_show_htable_value(char __user *buf, size_t count,
56434- loff_t *ppos, atomic_long_t *val)
56435+ loff_t *ppos, atomic_long_unchecked_t *val)
56436 {
56437 char tmpbuf[TMPBUFLEN];
56438 ssize_t len;
56439
56440- len = scnprintf(tmpbuf, TMPBUFLEN, "%li\n", atomic_long_read(val));
56441+ len = scnprintf(tmpbuf, TMPBUFLEN, "%li\n", atomic_long_read_unchecked(val));
56442 return simple_read_from_buffer(buf, count, ppos, tmpbuf, len);
56443 }
56444
56445diff -urNp linux-2.6.32.21/security/integrity/ima/ima_queue.c linux-2.6.32.21/security/integrity/ima/ima_queue.c
56446--- linux-2.6.32.21/security/integrity/ima/ima_queue.c 2010-08-26 19:42:20.000000000 -0400
56447+++ linux-2.6.32.21/security/integrity/ima/ima_queue.c 2010-09-13 08:10:14.000000000 -0400
56448@@ -78,7 +78,7 @@ static int ima_add_digest_entry(struct i
56449 INIT_LIST_HEAD(&qe->later);
56450 list_add_tail_rcu(&qe->later, &ima_measurements);
56451
56452- atomic_long_inc(&ima_htable.len);
56453+ atomic_long_inc_unchecked(&ima_htable.len);
56454 key = ima_hash_key(entry->digest);
56455 hlist_add_head_rcu(&qe->hnext, &ima_htable.queue[key]);
56456 return 0;
56457diff -urNp linux-2.6.32.21/security/min_addr.c linux-2.6.32.21/security/min_addr.c 57011diff -urNp linux-2.6.32.21/security/min_addr.c linux-2.6.32.21/security/min_addr.c
56458--- linux-2.6.32.21/security/min_addr.c 2010-08-26 19:42:20.000000000 -0400 57012--- linux-2.6.32.21/security/min_addr.c 2010-08-13 16:24:37.000000000 -0400
56459+++ linux-2.6.32.21/security/min_addr.c 2010-09-13 08:10:14.000000000 -0400 57013+++ linux-2.6.32.21/security/min_addr.c 2010-09-04 15:54:52.000000000 -0400
56460@@ -14,6 +14,7 @@ unsigned long dac_mmap_min_addr = CONFIG 57014@@ -14,6 +14,7 @@ unsigned long dac_mmap_min_addr = CONFIG
56461 */ 57015 */
56462 static void update_mmap_min_addr(void) 57016 static void update_mmap_min_addr(void)
@@ -56473,9 +57027,88 @@ diff -urNp linux-2.6.32.21/security/min_addr.c linux-2.6.32.21/security/min_addr
56473 } 57027 }
56474 57028
56475 /* 57029 /*
57030diff -urNp linux-2.6.32.21/security/root_plug.c linux-2.6.32.21/security/root_plug.c
57031--- linux-2.6.32.21/security/root_plug.c 2010-08-13 16:24:37.000000000 -0400
57032+++ linux-2.6.32.21/security/root_plug.c 2010-09-14 23:33:54.000000000 -0400
57033@@ -70,7 +70,7 @@ static int rootplug_bprm_check_security
57034 return 0;
57035 }
57036
57037-static struct security_operations rootplug_security_ops = {
57038+static struct security_operations rootplug_security_ops __read_only = {
57039 .bprm_check_security = rootplug_bprm_check_security,
57040 };
57041
57042diff -urNp linux-2.6.32.21/security/security.c linux-2.6.32.21/security/security.c
57043--- linux-2.6.32.21/security/security.c 2010-08-13 16:24:37.000000000 -0400
57044+++ linux-2.6.32.21/security/security.c 2010-09-14 23:42:43.000000000 -0400
57045@@ -24,7 +24,7 @@ static __initdata char chosen_lsm[SECURI
57046 extern struct security_operations default_security_ops;
57047 extern void security_fixup_ops(struct security_operations *ops);
57048
57049-struct security_operations *security_ops; /* Initialized to NULL */
57050+struct security_operations *security_ops __read_only; /* Initialized to NULL */
57051
57052 static inline int verify(struct security_operations *ops)
57053 {
57054diff -urNp linux-2.6.32.21/security/selinux/hooks.c linux-2.6.32.21/security/selinux/hooks.c
57055--- linux-2.6.32.21/security/selinux/hooks.c 2010-08-13 16:24:37.000000000 -0400
57056+++ linux-2.6.32.21/security/selinux/hooks.c 2010-09-14 23:36:11.000000000 -0400
57057@@ -131,7 +131,7 @@ int selinux_enabled = 1;
57058 * Minimal support for a secondary security module,
57059 * just to allow the use of the capability module.
57060 */
57061-static struct security_operations *secondary_ops;
57062+static struct security_operations *secondary_ops __read_only;
57063
57064 /* Lists of inode and superblock security structures initialized
57065 before the policy was loaded. */
57066@@ -5450,7 +5450,7 @@ static int selinux_key_getsecurity(struc
57067
57068 #endif
57069
57070-static struct security_operations selinux_ops = {
57071+static struct security_operations selinux_ops __read_only = {
57072 .name = "selinux",
57073
57074 .ptrace_access_check = selinux_ptrace_access_check,
57075@@ -5834,7 +5834,9 @@ int selinux_disable(void)
57076 avc_disable();
57077
57078 /* Reset security_ops to the secondary module, dummy or capability. */
57079+ pax_open_kernel();
57080 security_ops = secondary_ops;
57081+ pax_close_kernel();
57082
57083 /* Unregister netfilter hooks. */
57084 selinux_nf_ip_exit();
57085diff -urNp linux-2.6.32.21/security/smack/smack_lsm.c linux-2.6.32.21/security/smack/smack_lsm.c
57086--- linux-2.6.32.21/security/smack/smack_lsm.c 2010-08-13 16:24:37.000000000 -0400
57087+++ linux-2.6.32.21/security/smack/smack_lsm.c 2010-09-14 23:37:03.000000000 -0400
57088@@ -3073,7 +3073,7 @@ static int smack_inode_getsecctx(struct
57089 return 0;
57090 }
57091
57092-struct security_operations smack_ops = {
57093+struct security_operations smack_ops __read_only = {
57094 .name = "smack",
57095
57096 .ptrace_access_check = smack_ptrace_access_check,
57097diff -urNp linux-2.6.32.21/security/tomoyo/tomoyo.c linux-2.6.32.21/security/tomoyo/tomoyo.c
57098--- linux-2.6.32.21/security/tomoyo/tomoyo.c 2010-08-13 16:24:37.000000000 -0400
57099+++ linux-2.6.32.21/security/tomoyo/tomoyo.c 2010-09-14 23:32:36.000000000 -0400
57100@@ -275,7 +275,7 @@ static int tomoyo_dentry_open(struct fil
57101 * tomoyo_security_ops is a "struct security_operations" which is used for
57102 * registering TOMOYO.
57103 */
57104-static struct security_operations tomoyo_security_ops = {
57105+static struct security_operations tomoyo_security_ops __read_only = {
57106 .name = "tomoyo",
57107 .cred_alloc_blank = tomoyo_cred_alloc_blank,
57108 .cred_prepare = tomoyo_cred_prepare,
56476diff -urNp linux-2.6.32.21/sound/aoa/codecs/onyx.c linux-2.6.32.21/sound/aoa/codecs/onyx.c 57109diff -urNp linux-2.6.32.21/sound/aoa/codecs/onyx.c linux-2.6.32.21/sound/aoa/codecs/onyx.c
56477--- linux-2.6.32.21/sound/aoa/codecs/onyx.c 2010-08-26 19:42:20.000000000 -0400 57110--- linux-2.6.32.21/sound/aoa/codecs/onyx.c 2010-08-13 16:24:37.000000000 -0400
56478+++ linux-2.6.32.21/sound/aoa/codecs/onyx.c 2010-09-13 08:10:14.000000000 -0400 57111+++ linux-2.6.32.21/sound/aoa/codecs/onyx.c 2010-09-04 15:54:52.000000000 -0400
56479@@ -53,7 +53,7 @@ struct onyx { 57112@@ -53,7 +53,7 @@ struct onyx {
56480 spdif_locked:1, 57113 spdif_locked:1,
56481 analog_locked:1, 57114 analog_locked:1,
@@ -56505,8 +57138,8 @@ diff -urNp linux-2.6.32.21/sound/aoa/codecs/onyx.c linux-2.6.32.21/sound/aoa/cod
56505 mutex_unlock(&onyx->mutex); 57138 mutex_unlock(&onyx->mutex);
56506 57139
56507diff -urNp linux-2.6.32.21/sound/core/oss/pcm_oss.c linux-2.6.32.21/sound/core/oss/pcm_oss.c 57140diff -urNp linux-2.6.32.21/sound/core/oss/pcm_oss.c linux-2.6.32.21/sound/core/oss/pcm_oss.c
56508--- linux-2.6.32.21/sound/core/oss/pcm_oss.c 2010-08-26 19:42:20.000000000 -0400 57141--- linux-2.6.32.21/sound/core/oss/pcm_oss.c 2010-08-13 16:24:37.000000000 -0400
56509+++ linux-2.6.32.21/sound/core/oss/pcm_oss.c 2010-09-13 08:10:14.000000000 -0400 57142+++ linux-2.6.32.21/sound/core/oss/pcm_oss.c 2010-09-04 15:54:52.000000000 -0400
56510@@ -2949,8 +2949,8 @@ static void snd_pcm_oss_proc_done(struct 57143@@ -2949,8 +2949,8 @@ static void snd_pcm_oss_proc_done(struct
56511 } 57144 }
56512 } 57145 }
@@ -56519,8 +57152,8 @@ diff -urNp linux-2.6.32.21/sound/core/oss/pcm_oss.c linux-2.6.32.21/sound/core/o
56519 57152
56520 /* 57153 /*
56521diff -urNp linux-2.6.32.21/sound/core/seq/seq_lock.h linux-2.6.32.21/sound/core/seq/seq_lock.h 57154diff -urNp linux-2.6.32.21/sound/core/seq/seq_lock.h linux-2.6.32.21/sound/core/seq/seq_lock.h
56522--- linux-2.6.32.21/sound/core/seq/seq_lock.h 2010-08-26 19:42:20.000000000 -0400 57155--- linux-2.6.32.21/sound/core/seq/seq_lock.h 2010-08-13 16:24:37.000000000 -0400
56523+++ linux-2.6.32.21/sound/core/seq/seq_lock.h 2010-09-13 08:10:14.000000000 -0400 57156+++ linux-2.6.32.21/sound/core/seq/seq_lock.h 2010-09-04 15:54:52.000000000 -0400
56524@@ -23,10 +23,10 @@ void snd_use_lock_sync_helper(snd_use_lo 57157@@ -23,10 +23,10 @@ void snd_use_lock_sync_helper(snd_use_lo
56525 #else /* SMP || CONFIG_SND_DEBUG */ 57158 #else /* SMP || CONFIG_SND_DEBUG */
56526 57159
@@ -56537,8 +57170,8 @@ diff -urNp linux-2.6.32.21/sound/core/seq/seq_lock.h linux-2.6.32.21/sound/core/
56537 #endif /* SMP || CONFIG_SND_DEBUG */ 57170 #endif /* SMP || CONFIG_SND_DEBUG */
56538 57171
56539diff -urNp linux-2.6.32.21/sound/drivers/mts64.c linux-2.6.32.21/sound/drivers/mts64.c 57172diff -urNp linux-2.6.32.21/sound/drivers/mts64.c linux-2.6.32.21/sound/drivers/mts64.c
56540--- linux-2.6.32.21/sound/drivers/mts64.c 2010-08-26 19:42:20.000000000 -0400 57173--- linux-2.6.32.21/sound/drivers/mts64.c 2010-08-13 16:24:37.000000000 -0400
56541+++ linux-2.6.32.21/sound/drivers/mts64.c 2010-09-13 08:10:14.000000000 -0400 57174+++ linux-2.6.32.21/sound/drivers/mts64.c 2010-09-04 15:54:52.000000000 -0400
56542@@ -65,7 +65,7 @@ struct mts64 { 57175@@ -65,7 +65,7 @@ struct mts64 {
56543 struct pardevice *pardev; 57176 struct pardevice *pardev;
56544 int pardev_claimed; 57177 int pardev_claimed;
@@ -56588,8 +57221,8 @@ diff -urNp linux-2.6.32.21/sound/drivers/mts64.c linux-2.6.32.21/sound/drivers/m
56588 return 0; 57221 return 0;
56589 } 57222 }
56590diff -urNp linux-2.6.32.21/sound/drivers/portman2x4.c linux-2.6.32.21/sound/drivers/portman2x4.c 57223diff -urNp linux-2.6.32.21/sound/drivers/portman2x4.c linux-2.6.32.21/sound/drivers/portman2x4.c
56591--- linux-2.6.32.21/sound/drivers/portman2x4.c 2010-08-26 19:42:20.000000000 -0400 57224--- linux-2.6.32.21/sound/drivers/portman2x4.c 2010-08-13 16:24:37.000000000 -0400
56592+++ linux-2.6.32.21/sound/drivers/portman2x4.c 2010-09-13 08:10:14.000000000 -0400 57225+++ linux-2.6.32.21/sound/drivers/portman2x4.c 2010-09-04 15:54:52.000000000 -0400
56593@@ -83,7 +83,7 @@ struct portman { 57226@@ -83,7 +83,7 @@ struct portman {
56594 struct pardevice *pardev; 57227 struct pardevice *pardev;
56595 int pardev_claimed; 57228 int pardev_claimed;
@@ -56600,8 +57233,8 @@ diff -urNp linux-2.6.32.21/sound/drivers/portman2x4.c linux-2.6.32.21/sound/driv
56600 struct snd_rawmidi_substream *midi_input[PORTMAN_NUM_INPUT_PORTS]; 57233 struct snd_rawmidi_substream *midi_input[PORTMAN_NUM_INPUT_PORTS];
56601 }; 57234 };
56602diff -urNp linux-2.6.32.21/sound/oss/sb_audio.c linux-2.6.32.21/sound/oss/sb_audio.c 57235diff -urNp linux-2.6.32.21/sound/oss/sb_audio.c linux-2.6.32.21/sound/oss/sb_audio.c
56603--- linux-2.6.32.21/sound/oss/sb_audio.c 2010-08-26 19:42:20.000000000 -0400 57236--- linux-2.6.32.21/sound/oss/sb_audio.c 2010-08-13 16:24:37.000000000 -0400
56604+++ linux-2.6.32.21/sound/oss/sb_audio.c 2010-09-13 08:10:14.000000000 -0400 57237+++ linux-2.6.32.21/sound/oss/sb_audio.c 2010-09-04 15:54:52.000000000 -0400
56605@@ -901,7 +901,7 @@ sb16_copy_from_user(int dev, 57238@@ -901,7 +901,7 @@ sb16_copy_from_user(int dev,
56606 buf16 = (signed short *)(localbuf + localoffs); 57239 buf16 = (signed short *)(localbuf + localoffs);
56607 while (c) 57240 while (c)
@@ -56612,8 +57245,8 @@ diff -urNp linux-2.6.32.21/sound/oss/sb_audio.c linux-2.6.32.21/sound/oss/sb_aud
56612 userbuf+useroffs + p, 57245 userbuf+useroffs + p,
56613 locallen)) 57246 locallen))
56614diff -urNp linux-2.6.32.21/sound/pci/ac97/ac97_codec.c linux-2.6.32.21/sound/pci/ac97/ac97_codec.c 57247diff -urNp linux-2.6.32.21/sound/pci/ac97/ac97_codec.c linux-2.6.32.21/sound/pci/ac97/ac97_codec.c
56615--- linux-2.6.32.21/sound/pci/ac97/ac97_codec.c 2010-08-26 19:42:20.000000000 -0400 57248--- linux-2.6.32.21/sound/pci/ac97/ac97_codec.c 2010-08-13 16:24:37.000000000 -0400
56616+++ linux-2.6.32.21/sound/pci/ac97/ac97_codec.c 2010-09-13 08:10:14.000000000 -0400 57249+++ linux-2.6.32.21/sound/pci/ac97/ac97_codec.c 2010-09-04 15:54:52.000000000 -0400
56617@@ -1952,7 +1952,7 @@ static int snd_ac97_dev_disconnect(struc 57250@@ -1952,7 +1952,7 @@ static int snd_ac97_dev_disconnect(struc
56618 } 57251 }
56619 57252
@@ -56624,8 +57257,8 @@ diff -urNp linux-2.6.32.21/sound/pci/ac97/ac97_codec.c linux-2.6.32.21/sound/pci
56624 #ifdef CONFIG_SND_AC97_POWER_SAVE 57257 #ifdef CONFIG_SND_AC97_POWER_SAVE
56625 static void do_update_power(struct work_struct *work) 57258 static void do_update_power(struct work_struct *work)
56626diff -urNp linux-2.6.32.21/sound/pci/ac97/ac97_patch.c linux-2.6.32.21/sound/pci/ac97/ac97_patch.c 57259diff -urNp linux-2.6.32.21/sound/pci/ac97/ac97_patch.c linux-2.6.32.21/sound/pci/ac97/ac97_patch.c
56627--- linux-2.6.32.21/sound/pci/ac97/ac97_patch.c 2010-08-26 19:42:20.000000000 -0400 57260--- linux-2.6.32.21/sound/pci/ac97/ac97_patch.c 2010-08-13 16:24:37.000000000 -0400
56628+++ linux-2.6.32.21/sound/pci/ac97/ac97_patch.c 2010-09-13 08:10:14.000000000 -0400 57261+++ linux-2.6.32.21/sound/pci/ac97/ac97_patch.c 2010-09-04 15:54:52.000000000 -0400
56629@@ -371,7 +371,7 @@ static int patch_yamaha_ymf743_build_spd 57262@@ -371,7 +371,7 @@ static int patch_yamaha_ymf743_build_spd
56630 return 0; 57263 return 0;
56631 } 57264 }
@@ -56933,8 +57566,8 @@ diff -urNp linux-2.6.32.21/sound/pci/ac97/ac97_patch.c linux-2.6.32.21/sound/pci
56933 }; 57566 };
56934 57567
56935diff -urNp linux-2.6.32.21/sound/pci/ens1370.c linux-2.6.32.21/sound/pci/ens1370.c 57568diff -urNp linux-2.6.32.21/sound/pci/ens1370.c linux-2.6.32.21/sound/pci/ens1370.c
56936--- linux-2.6.32.21/sound/pci/ens1370.c 2010-08-26 19:42:20.000000000 -0400 57569--- linux-2.6.32.21/sound/pci/ens1370.c 2010-08-13 16:24:37.000000000 -0400
56937+++ linux-2.6.32.21/sound/pci/ens1370.c 2010-09-13 08:10:14.000000000 -0400 57570+++ linux-2.6.32.21/sound/pci/ens1370.c 2010-09-04 15:54:52.000000000 -0400
56938@@ -452,7 +452,7 @@ static struct pci_device_id snd_audiopci 57571@@ -452,7 +452,7 @@ static struct pci_device_id snd_audiopci
56939 { PCI_VDEVICE(ENSONIQ, 0x5880), 0, }, /* ES1373 - CT5880 */ 57572 { PCI_VDEVICE(ENSONIQ, 0x5880), 0, }, /* ES1373 - CT5880 */
56940 { PCI_VDEVICE(ECTIVA, 0x8938), 0, }, /* Ectiva EV1938 */ 57573 { PCI_VDEVICE(ECTIVA, 0x8938), 0, }, /* Ectiva EV1938 */
@@ -56945,8 +57578,8 @@ diff -urNp linux-2.6.32.21/sound/pci/ens1370.c linux-2.6.32.21/sound/pci/ens1370
56945 57578
56946 MODULE_DEVICE_TABLE(pci, snd_audiopci_ids); 57579 MODULE_DEVICE_TABLE(pci, snd_audiopci_ids);
56947diff -urNp linux-2.6.32.21/sound/pci/hda/patch_intelhdmi.c linux-2.6.32.21/sound/pci/hda/patch_intelhdmi.c 57580diff -urNp linux-2.6.32.21/sound/pci/hda/patch_intelhdmi.c linux-2.6.32.21/sound/pci/hda/patch_intelhdmi.c
56948--- linux-2.6.32.21/sound/pci/hda/patch_intelhdmi.c 2010-08-26 19:42:20.000000000 -0400 57581--- linux-2.6.32.21/sound/pci/hda/patch_intelhdmi.c 2010-08-13 16:24:37.000000000 -0400
56949+++ linux-2.6.32.21/sound/pci/hda/patch_intelhdmi.c 2010-09-13 08:10:14.000000000 -0400 57582+++ linux-2.6.32.21/sound/pci/hda/patch_intelhdmi.c 2010-09-04 15:54:52.000000000 -0400
56950@@ -511,10 +511,10 @@ static void hdmi_non_intrinsic_event(str 57583@@ -511,10 +511,10 @@ static void hdmi_non_intrinsic_event(str
56951 cp_ready); 57584 cp_ready);
56952 57585
@@ -56963,8 +57596,8 @@ diff -urNp linux-2.6.32.21/sound/pci/hda/patch_intelhdmi.c linux-2.6.32.21/sound
56963 57596
56964 57597
56965diff -urNp linux-2.6.32.21/sound/pci/intel8x0.c linux-2.6.32.21/sound/pci/intel8x0.c 57598diff -urNp linux-2.6.32.21/sound/pci/intel8x0.c linux-2.6.32.21/sound/pci/intel8x0.c
56966--- linux-2.6.32.21/sound/pci/intel8x0.c 2010-08-26 19:42:20.000000000 -0400 57599--- linux-2.6.32.21/sound/pci/intel8x0.c 2010-08-29 21:08:20.000000000 -0400
56967+++ linux-2.6.32.21/sound/pci/intel8x0.c 2010-09-13 08:10:14.000000000 -0400 57600+++ linux-2.6.32.21/sound/pci/intel8x0.c 2010-09-04 15:54:52.000000000 -0400
56968@@ -444,7 +444,7 @@ static struct pci_device_id snd_intel8x0 57601@@ -444,7 +444,7 @@ static struct pci_device_id snd_intel8x0
56969 { PCI_VDEVICE(AMD, 0x746d), DEVICE_INTEL }, /* AMD8111 */ 57602 { PCI_VDEVICE(AMD, 0x746d), DEVICE_INTEL }, /* AMD8111 */
56970 { PCI_VDEVICE(AMD, 0x7445), DEVICE_INTEL }, /* AMD768 */ 57603 { PCI_VDEVICE(AMD, 0x7445), DEVICE_INTEL }, /* AMD768 */
@@ -56984,8 +57617,8 @@ diff -urNp linux-2.6.32.21/sound/pci/intel8x0.c linux-2.6.32.21/sound/pci/intel8
56984 57617
56985 static int __devinit snd_intel8x0_mixer(struct intel8x0 *chip, int ac97_clock, 57618 static int __devinit snd_intel8x0_mixer(struct intel8x0 *chip, int ac97_clock,
56986diff -urNp linux-2.6.32.21/sound/pci/intel8x0m.c linux-2.6.32.21/sound/pci/intel8x0m.c 57619diff -urNp linux-2.6.32.21/sound/pci/intel8x0m.c linux-2.6.32.21/sound/pci/intel8x0m.c
56987--- linux-2.6.32.21/sound/pci/intel8x0m.c 2010-08-26 19:42:20.000000000 -0400 57620--- linux-2.6.32.21/sound/pci/intel8x0m.c 2010-08-13 16:24:37.000000000 -0400
56988+++ linux-2.6.32.21/sound/pci/intel8x0m.c 2010-09-13 08:10:14.000000000 -0400 57621+++ linux-2.6.32.21/sound/pci/intel8x0m.c 2010-09-04 15:54:52.000000000 -0400
56989@@ -239,7 +239,7 @@ static struct pci_device_id snd_intel8x0 57622@@ -239,7 +239,7 @@ static struct pci_device_id snd_intel8x0
56990 { PCI_VDEVICE(AMD, 0x746d), DEVICE_INTEL }, /* AMD8111 */ 57623 { PCI_VDEVICE(AMD, 0x746d), DEVICE_INTEL }, /* AMD8111 */
56991 { PCI_VDEVICE(AL, 0x5455), DEVICE_ALI }, /* Ali5455 */ 57624 { PCI_VDEVICE(AL, 0x5455), DEVICE_ALI }, /* Ali5455 */
@@ -57005,8 +57638,8 @@ diff -urNp linux-2.6.32.21/sound/pci/intel8x0m.c linux-2.6.32.21/sound/pci/intel
57005 57638
57006 static int __devinit snd_intel8x0m_probe(struct pci_dev *pci, 57639 static int __devinit snd_intel8x0m_probe(struct pci_dev *pci,
57007diff -urNp linux-2.6.32.21/usr/gen_init_cpio.c linux-2.6.32.21/usr/gen_init_cpio.c 57640diff -urNp linux-2.6.32.21/usr/gen_init_cpio.c linux-2.6.32.21/usr/gen_init_cpio.c
57008--- linux-2.6.32.21/usr/gen_init_cpio.c 2010-08-26 19:42:20.000000000 -0400 57641--- linux-2.6.32.21/usr/gen_init_cpio.c 2010-08-13 16:24:37.000000000 -0400
57009+++ linux-2.6.32.21/usr/gen_init_cpio.c 2010-09-13 08:10:14.000000000 -0400 57642+++ linux-2.6.32.21/usr/gen_init_cpio.c 2010-09-04 15:54:52.000000000 -0400
57010@@ -299,7 +299,7 @@ static int cpio_mkfile(const char *name, 57643@@ -299,7 +299,7 @@ static int cpio_mkfile(const char *name,
57011 int retval; 57644 int retval;
57012 int rc = -1; 57645 int rc = -1;
@@ -57030,8 +57663,8 @@ diff -urNp linux-2.6.32.21/usr/gen_init_cpio.c linux-2.6.32.21/usr/gen_init_cpio
57030 break; 57663 break;
57031 } 57664 }
57032diff -urNp linux-2.6.32.21/virt/kvm/kvm_main.c linux-2.6.32.21/virt/kvm/kvm_main.c 57665diff -urNp linux-2.6.32.21/virt/kvm/kvm_main.c linux-2.6.32.21/virt/kvm/kvm_main.c
57033--- linux-2.6.32.21/virt/kvm/kvm_main.c 2010-08-26 19:42:20.000000000 -0400 57666--- linux-2.6.32.21/virt/kvm/kvm_main.c 2010-08-13 16:24:37.000000000 -0400
57034+++ linux-2.6.32.21/virt/kvm/kvm_main.c 2010-09-13 08:10:14.000000000 -0400 57667+++ linux-2.6.32.21/virt/kvm/kvm_main.c 2010-09-04 15:54:52.000000000 -0400
57035@@ -1748,6 +1748,7 @@ static int kvm_vcpu_release(struct inode 57668@@ -1748,6 +1748,7 @@ static int kvm_vcpu_release(struct inode
57036 return 0; 57669 return 0;
57037 } 57670 }