Gentoo Archives: gentoo-commits

From: "Anthony G. Basile" <blueness@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/hardened-patchset:master commit in: 2.6.37/, 2.6.32/
Date: Mon, 28 Feb 2011 13:10:31
Message-Id: ea252fb85a5dd67b1f530e61d70828409e7836e4.blueness@gentoo
1 commit: ea252fb85a5dd67b1f530e61d70828409e7836e4
2 Author: Anthony G. Basile <blueness <AT> gentoo <DOT> org>
3 AuthorDate: Mon Feb 28 13:08:36 2011 +0000
4 Commit: Anthony G. Basile <blueness <AT> gentoo <DOT> org>
5 CommitDate: Mon Feb 28 13:08:36 2011 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/hardened-patchset.git;a=commit;h=ea252fb8
7
8 Update Grsec/PaX
9 2.2.1-2.6.32.29-201102271552
10 2.2.1-2.6.37.2-201102271552
11
12 ---
13 2.6.32/0000_README | 10 +-
14 ..._grsecurity-2.2.1-2.6.32.29-201102271552.patch} | 567 ++-
15 2.6.37/0000_README | 14 +-
16 ...0_grsecurity-2.2.1-2.6.37.2-201102271552.patch} | 7993 ++++++++++----------
17 4 files changed, 4552 insertions(+), 4032 deletions(-)
18
19 diff --git a/2.6.32/0000_README b/2.6.32/0000_README
20 index c8824fb..8e2aed5 100644
21 --- a/2.6.32/0000_README
22 +++ b/2.6.32/0000_README
23 @@ -3,7 +3,7 @@ README
24
25 Individual Patch Descriptions:
26 -----------------------------------------------------------------------------
27 -Patch: 4420_grsecurity-2.2.1-2.6.32.29-201102221638.patch
28 +Patch: 4420_grsecurity-2.2.1-2.6.32.29-201102271552.patch
29 From: http://www.grsecurity.net
30 Desc: hardened-sources base patch from upstream grsecurity
31
32 @@ -18,7 +18,7 @@ Desc: Removes verbose compile warning settings from grsecurity, restores
33 mainline Linux kernel behavior
34
35 Patch: 4423_grsec-remove-protected-paths.patch
36 -From: Anthony G. Basile, Ph. D. <basile@××××××××××××××.edu>
37 +From: Anthony G. Basile <blueness@g.o>
38 Desc: Removes chmod statements from grsecurity/Makefile
39
40 Patch: 4425_grsec-pax-without-grsec.patch
41 @@ -33,11 +33,13 @@ Desc: Sets sane(r) default GIDs on various grsecurity group-dependent
42 Patch: 4435_grsec-kconfig-gentoo.patch
43 From: Gordon Malm <gengor@g.o>
44 Kerin Millar <kerframil@×××××.com>
45 -Desc: Adds Hardened Gentoo [server/workstation] security levels, sets
46 - Hardened Gentoo [workstation] as default
47 + Anthony G. Basile <blueness@g.o>
48 +Desc: Adds Hardened Gentoo [server/workstation/virtualization] security levels,
49 + sets Hardened Gentoo [workstation] as default
50
51 Patch: 4440_selinux-avc_audit-log-curr_ip.patch
52 From: Gordon Malm <gengor@g.o>
53 + Anthony G. Basile <blueness@g.o>
54 Desc: Configurable option to add src IP address to SELinux log messages
55
56 Patch: 4445_disable-compat_vdso.patch
57
58 diff --git a/2.6.32/4420_grsecurity-2.2.1-2.6.32.29-201102221638.patch b/2.6.32/4420_grsecurity-2.2.1-2.6.32.29-201102271552.patch
59 similarity index 99%
60 rename from 2.6.32/4420_grsecurity-2.2.1-2.6.32.29-201102221638.patch
61 rename to 2.6.32/4420_grsecurity-2.2.1-2.6.32.29-201102271552.patch
62 index b491451..a9fbc08 100644
63 --- a/2.6.32/4420_grsecurity-2.2.1-2.6.32.29-201102221638.patch
64 +++ b/2.6.32/4420_grsecurity-2.2.1-2.6.32.29-201102271552.patch
65 @@ -863,6 +863,18 @@ diff -urNp linux-2.6.32.29/arch/ia64/include/asm/pgtable.h linux-2.6.32.29/arch/
66 #define PAGE_GATE __pgprot(__ACCESS_BITS | _PAGE_PL_0 | _PAGE_AR_X_RX)
67 #define PAGE_KERNEL __pgprot(__DIRTY_BITS | _PAGE_PL_0 | _PAGE_AR_RWX)
68 #define PAGE_KERNELRX __pgprot(__ACCESS_BITS | _PAGE_PL_0 | _PAGE_AR_RX)
69 +diff -urNp linux-2.6.32.29/arch/ia64/include/asm/spinlock.h linux-2.6.32.29/arch/ia64/include/asm/spinlock.h
70 +--- linux-2.6.32.29/arch/ia64/include/asm/spinlock.h 2010-08-13 16:24:37.000000000 -0400
71 ++++ linux-2.6.32.29/arch/ia64/include/asm/spinlock.h 2011-02-27 14:53:10.000000000 -0500
72 +@@ -72,7 +72,7 @@ static __always_inline void __ticket_spi
73 + unsigned short *p = (unsigned short *)&lock->lock + 1, tmp;
74 +
75 + asm volatile ("ld2.bias %0=[%1]" : "=r"(tmp) : "r"(p));
76 +- ACCESS_ONCE(*p) = (tmp + 2) & ~1;
77 ++ ACCESS_ONCE_RW(*p) = (tmp + 2) & ~1;
78 + }
79 +
80 + static __always_inline void __ticket_spin_unlock_wait(raw_spinlock_t *lock)
81 diff -urNp linux-2.6.32.29/arch/ia64/include/asm/uaccess.h linux-2.6.32.29/arch/ia64/include/asm/uaccess.h
82 --- linux-2.6.32.29/arch/ia64/include/asm/uaccess.h 2010-08-13 16:24:37.000000000 -0400
83 +++ linux-2.6.32.29/arch/ia64/include/asm/uaccess.h 2010-12-31 14:46:53.000000000 -0500
84 @@ -1989,6 +2001,17 @@ diff -urNp linux-2.6.32.29/arch/powerpc/include/asm/pci.h linux-2.6.32.29/arch/p
85 #else /* CONFIG_PCI */
86 #define set_pci_dma_ops(d)
87 #define get_pci_dma_ops() NULL
88 +diff -urNp linux-2.6.32.29/arch/powerpc/include/asm/pgtable.h linux-2.6.32.29/arch/powerpc/include/asm/pgtable.h
89 +--- linux-2.6.32.29/arch/powerpc/include/asm/pgtable.h 2010-08-13 16:24:37.000000000 -0400
90 ++++ linux-2.6.32.29/arch/powerpc/include/asm/pgtable.h 2011-02-27 14:53:10.000000000 -0500
91 +@@ -2,6 +2,7 @@
92 + #define _ASM_POWERPC_PGTABLE_H
93 + #ifdef __KERNEL__
94 +
95 ++#include <linux/const.h>
96 + #ifndef __ASSEMBLY__
97 + #include <asm/processor.h> /* For TASK_SIZE */
98 + #include <asm/mmu.h>
99 diff -urNp linux-2.6.32.29/arch/powerpc/include/asm/pte-hash32.h linux-2.6.32.29/arch/powerpc/include/asm/pte-hash32.h
100 --- linux-2.6.32.29/arch/powerpc/include/asm/pte-hash32.h 2010-08-13 16:24:37.000000000 -0400
101 +++ linux-2.6.32.29/arch/powerpc/include/asm/pte-hash32.h 2010-12-31 14:46:53.000000000 -0500
102 @@ -6145,7 +6168,7 @@ diff -urNp linux-2.6.32.29/arch/x86/ia32/ia32_aout.c linux-2.6.32.29/arch/x86/ia
103 return has_dumped;
104 diff -urNp linux-2.6.32.29/arch/x86/ia32/ia32entry.S linux-2.6.32.29/arch/x86/ia32/ia32entry.S
105 --- linux-2.6.32.29/arch/x86/ia32/ia32entry.S 2010-09-20 17:26:42.000000000 -0400
106 -+++ linux-2.6.32.29/arch/x86/ia32/ia32entry.S 2010-12-31 14:46:53.000000000 -0500
107 ++++ linux-2.6.32.29/arch/x86/ia32/ia32entry.S 2011-02-27 14:53:10.000000000 -0500
108 @@ -13,6 +13,7 @@
109 #include <asm/thread_info.h>
110 #include <asm/segment.h>
111 @@ -6154,19 +6177,34 @@ diff -urNp linux-2.6.32.29/arch/x86/ia32/ia32entry.S linux-2.6.32.29/arch/x86/ia
112 #include <linux/linkage.h>
113
114 /* Avoid __ASSEMBLER__'ifying <linux/audit.h> just for this. */
115 -@@ -120,6 +121,11 @@ ENTRY(ia32_sysenter_target)
116 - SWAPGS_UNSAFE_STACK
117 - movq PER_CPU_VAR(kernel_stack), %rsp
118 - addq $(KERNEL_STACK_OFFSET),%rsp
119 -+
120 +@@ -93,6 +94,18 @@ ENTRY(native_irq_enable_sysexit)
121 + ENDPROC(native_irq_enable_sysexit)
122 + #endif
123 +
124 ++ .macro pax_enter_kernel_user
125 +#ifdef CONFIG_PAX_MEMORY_UDEREF
126 + call pax_enter_kernel_user
127 +#endif
128 ++ .endm
129 +
130 ++ .macro pax_exit_kernel_user
131 ++#ifdef CONFIG_PAX_MEMORY_UDEREF
132 ++ call pax_exit_kernel_user
133 ++#endif
134 ++ .endm
135 ++
136 + /*
137 + * 32bit SYSENTER instruction entry.
138 + *
139 +@@ -120,6 +133,7 @@ ENTRY(ia32_sysenter_target)
140 + SWAPGS_UNSAFE_STACK
141 + movq PER_CPU_VAR(kernel_stack), %rsp
142 + addq $(KERNEL_STACK_OFFSET),%rsp
143 ++ pax_enter_kernel_user
144 /*
145 * No need to follow this irqs on/off section: the syscall
146 * disabled irqs, here we enable it straight after entry:
147 -@@ -150,6 +156,12 @@ ENTRY(ia32_sysenter_target)
148 +@@ -150,6 +164,12 @@ ENTRY(ia32_sysenter_target)
149 SAVE_ARGS 0,0,1
150 /* no need to do an access_ok check here because rbp has been
151 32bit zero extended */
152 @@ -6179,31 +6217,27 @@ diff -urNp linux-2.6.32.29/arch/x86/ia32/ia32entry.S linux-2.6.32.29/arch/x86/ia
153 1: movl (%rbp),%ebp
154 .section __ex_table,"a"
155 .quad 1b,ia32_badarg
156 -@@ -172,6 +184,11 @@ sysenter_dispatch:
157 +@@ -172,6 +192,7 @@ sysenter_dispatch:
158 testl $_TIF_ALLWORK_MASK,TI_flags(%r10)
159 jnz sysexit_audit
160 sysexit_from_sys_call:
161 -+
162 -+#ifdef CONFIG_PAX_MEMORY_UDEREF
163 -+ call pax_exit_kernel_user
164 -+#endif
165 -+
166 ++ pax_exit_kernel_user
167 andl $~TS_COMPAT,TI_status(%r10)
168 /* clear IF, that popfq doesn't enable interrupts early */
169 andl $~0x200,EFLAGS-R11(%rsp)
170 -@@ -290,6 +307,11 @@ ENTRY(ia32_cstar_target)
171 +@@ -290,6 +311,11 @@ ENTRY(ia32_cstar_target)
172 movl %esp,%r8d
173 CFI_REGISTER rsp,r8
174 movq PER_CPU_VAR(kernel_stack),%rsp
175 +
176 +#ifdef CONFIG_PAX_MEMORY_UDEREF
177 -+ call pax_enter_kernel_user
178 ++ pax_enter_kernel_user
179 +#endif
180 +
181 /*
182 * No need to follow this irqs on/off section: the syscall
183 * disabled irqs and here we enable it straight after entry:
184 -@@ -311,6 +333,12 @@ ENTRY(ia32_cstar_target)
185 +@@ -311,6 +337,12 @@ ENTRY(ia32_cstar_target)
186 /* no need to do an access_ok check here because r8 has been
187 32bit zero extended */
188 /* hardware stack frame is complete now */
189 @@ -6216,27 +6250,19 @@ diff -urNp linux-2.6.32.29/arch/x86/ia32/ia32entry.S linux-2.6.32.29/arch/x86/ia
190 1: movl (%r8),%r9d
191 .section __ex_table,"a"
192 .quad 1b,ia32_badarg
193 -@@ -333,6 +361,11 @@ cstar_dispatch:
194 +@@ -333,6 +365,7 @@ cstar_dispatch:
195 testl $_TIF_ALLWORK_MASK,TI_flags(%r10)
196 jnz sysretl_audit
197 sysretl_from_sys_call:
198 -+
199 -+#ifdef CONFIG_PAX_MEMORY_UDEREF
200 -+ call pax_exit_kernel_user
201 -+#endif
202 -+
203 ++ pax_exit_kernel_user
204 andl $~TS_COMPAT,TI_status(%r10)
205 RESTORE_ARGS 1,-ARG_SKIP,1,1,1
206 movl RIP-ARGOFFSET(%rsp),%ecx
207 -@@ -415,6 +448,11 @@ ENTRY(ia32_syscall)
208 +@@ -415,6 +448,7 @@ ENTRY(ia32_syscall)
209 CFI_REL_OFFSET rip,RIP-RIP
210 PARAVIRT_ADJUST_EXCEPTION_FRAME
211 SWAPGS
212 -+
213 -+#ifdef CONFIG_PAX_MEMORY_UDEREF
214 -+ call pax_enter_kernel_user
215 -+#endif
216 -+
217 ++ pax_enter_kernel_user
218 /*
219 * No need to follow this irqs on/off section: the syscall
220 * disabled irqs and here we enable it straight after entry:
221 @@ -7369,9 +7395,25 @@ diff -urNp linux-2.6.32.29/arch/x86/include/asm/checksum_32.h linux-2.6.32.29/ar
222 len, sum, NULL, err_ptr);
223
224 if (len)
225 +diff -urNp linux-2.6.32.29/arch/x86/include/asm/desc_defs.h linux-2.6.32.29/arch/x86/include/asm/desc_defs.h
226 +--- linux-2.6.32.29/arch/x86/include/asm/desc_defs.h 2010-08-13 16:24:37.000000000 -0400
227 ++++ linux-2.6.32.29/arch/x86/include/asm/desc_defs.h 2011-02-27 14:53:10.000000000 -0500
228 +@@ -31,6 +31,12 @@ struct desc_struct {
229 + unsigned base1: 8, type: 4, s: 1, dpl: 2, p: 1;
230 + unsigned limit: 4, avl: 1, l: 1, d: 1, g: 1, base2: 8;
231 + };
232 ++ struct {
233 ++ u16 offset_low;
234 ++ u16 seg;
235 ++ unsigned reserved: 8, type: 4, s: 1, dpl: 2, p: 1;
236 ++ unsigned offset_high: 16;
237 ++ } gate;
238 + };
239 + } __attribute__((packed));
240 +
241 diff -urNp linux-2.6.32.29/arch/x86/include/asm/desc.h linux-2.6.32.29/arch/x86/include/asm/desc.h
242 --- linux-2.6.32.29/arch/x86/include/asm/desc.h 2010-08-13 16:24:37.000000000 -0400
243 -+++ linux-2.6.32.29/arch/x86/include/asm/desc.h 2010-12-31 14:46:53.000000000 -0500
244 ++++ linux-2.6.32.29/arch/x86/include/asm/desc.h 2011-02-27 14:53:10.000000000 -0500
245 @@ -4,6 +4,7 @@
246 #include <asm/desc_defs.h>
247 #include <asm/ldt.h>
248 @@ -7408,7 +7450,25 @@ diff -urNp linux-2.6.32.29/arch/x86/include/asm/desc.h linux-2.6.32.29/arch/x86/
249 }
250
251 #ifdef CONFIG_X86_64
252 -@@ -115,19 +113,24 @@ static inline void paravirt_free_ldt(str
253 +@@ -65,9 +63,14 @@ static inline void pack_gate(gate_desc *
254 + unsigned long base, unsigned dpl, unsigned flags,
255 + unsigned short seg)
256 + {
257 +- gate->a = (seg << 16) | (base & 0xffff);
258 +- gate->b = (base & 0xffff0000) |
259 +- (((0x80 | type | (dpl << 5)) & 0xff) << 8);
260 ++ gate->gate.offset_low = base;
261 ++ gate->gate.seg = seg;
262 ++ gate->gate.reserved = 0;
263 ++ gate->gate.type = type;
264 ++ gate->gate.s = 0;
265 ++ gate->gate.dpl = dpl;
266 ++ gate->gate.p = 1;
267 ++ gate->gate.offset_high = base >> 16;
268 + }
269 +
270 + #endif
271 +@@ -115,19 +118,24 @@ static inline void paravirt_free_ldt(str
272 static inline void native_write_idt_entry(gate_desc *idt, int entry,
273 const gate_desc *gate)
274 {
275 @@ -7433,7 +7493,7 @@ diff -urNp linux-2.6.32.29/arch/x86/include/asm/desc.h linux-2.6.32.29/arch/x86/
276 switch (type) {
277 case DESC_TSS:
278 size = sizeof(tss_desc);
279 -@@ -139,7 +142,10 @@ static inline void native_write_gdt_entr
280 +@@ -139,7 +147,10 @@ static inline void native_write_gdt_entr
281 size = sizeof(struct desc_struct);
282 break;
283 }
284 @@ -7444,7 +7504,7 @@ diff -urNp linux-2.6.32.29/arch/x86/include/asm/desc.h linux-2.6.32.29/arch/x86/
285 }
286
287 static inline void pack_descriptor(struct desc_struct *desc, unsigned long base,
288 -@@ -211,7 +217,9 @@ static inline void native_set_ldt(const
289 +@@ -211,7 +222,9 @@ static inline void native_set_ldt(const
290
291 static inline void native_load_tr_desc(void)
292 {
293 @@ -7454,7 +7514,7 @@ diff -urNp linux-2.6.32.29/arch/x86/include/asm/desc.h linux-2.6.32.29/arch/x86/
294 }
295
296 static inline void native_load_gdt(const struct desc_ptr *dtr)
297 -@@ -246,8 +254,10 @@ static inline void native_load_tls(struc
298 +@@ -246,8 +259,10 @@ static inline void native_load_tls(struc
299 unsigned int i;
300 struct desc_struct *gdt = get_cpu_gdt_table(cpu);
301
302 @@ -7465,7 +7525,7 @@ diff -urNp linux-2.6.32.29/arch/x86/include/asm/desc.h linux-2.6.32.29/arch/x86/
303 }
304
305 #define _LDT_empty(info) \
306 -@@ -309,7 +319,7 @@ static inline void set_desc_limit(struct
307 +@@ -309,7 +324,7 @@ static inline void set_desc_limit(struct
308 desc->limit = (limit >> 16) & 0xf;
309 }
310
311 @@ -7474,7 +7534,7 @@ diff -urNp linux-2.6.32.29/arch/x86/include/asm/desc.h linux-2.6.32.29/arch/x86/
312 unsigned dpl, unsigned ist, unsigned seg)
313 {
314 gate_desc s;
315 -@@ -327,7 +337,7 @@ static inline void _set_gate(int gate, u
316 +@@ -327,7 +342,7 @@ static inline void _set_gate(int gate, u
317 * Pentium F0 0F bugfix can have resulted in the mapped
318 * IDT being write-protected.
319 */
320 @@ -7483,7 +7543,7 @@ diff -urNp linux-2.6.32.29/arch/x86/include/asm/desc.h linux-2.6.32.29/arch/x86/
321 {
322 BUG_ON((unsigned)n > 0xFF);
323 _set_gate(n, GATE_INTERRUPT, addr, 0, 0, __KERNEL_CS);
324 -@@ -356,19 +366,19 @@ static inline void alloc_intr_gate(unsig
325 +@@ -356,19 +371,19 @@ static inline void alloc_intr_gate(unsig
326 /*
327 * This routine sets up an interrupt gate at directory privilege level 3.
328 */
329 @@ -7506,7 +7566,7 @@ diff -urNp linux-2.6.32.29/arch/x86/include/asm/desc.h linux-2.6.32.29/arch/x86/
330 {
331 BUG_ON((unsigned)n > 0xFF);
332 _set_gate(n, GATE_TRAP, addr, 0, 0, __KERNEL_CS);
333 -@@ -377,19 +387,31 @@ static inline void set_trap_gate(unsigne
334 +@@ -377,19 +392,31 @@ static inline void set_trap_gate(unsigne
335 static inline void set_task_gate(unsigned int n, unsigned int gdt_entry)
336 {
337 BUG_ON((unsigned)n > 0xFF);
338 @@ -10611,6 +10671,18 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/asm-offsets_64.c linux-2.6.32.29/arch
339 DEFINE(TSS_ist, offsetof(struct tss_struct, x86_tss.ist));
340 BLANK();
341 DEFINE(crypto_tfm_ctx_offset, offsetof(struct crypto_tfm, __crt_ctx));
342 +diff -urNp linux-2.6.32.29/arch/x86/kernel/cpu/amd.c linux-2.6.32.29/arch/x86/kernel/cpu/amd.c
343 +--- linux-2.6.32.29/arch/x86/kernel/cpu/amd.c 2011-01-11 23:55:35.000000000 -0500
344 ++++ linux-2.6.32.29/arch/x86/kernel/cpu/amd.c 2011-02-27 14:53:10.000000000 -0500
345 +@@ -573,7 +573,7 @@ static unsigned int __cpuinit amd_size_c
346 + unsigned int size)
347 + {
348 + /* AMD errata T13 (order #21922) */
349 +- if ((c->x86 == 6)) {
350 ++ if (c->x86 == 6) {
351 + /* Duron Rev A0 */
352 + if (c->x86_model == 3 && c->x86_mask == 0)
353 + size = 64;
354 diff -urNp linux-2.6.32.29/arch/x86/kernel/cpu/common.c linux-2.6.32.29/arch/x86/kernel/cpu/common.c
355 --- linux-2.6.32.29/arch/x86/kernel/cpu/common.c 2010-10-31 16:44:11.000000000 -0400
356 +++ linux-2.6.32.29/arch/x86/kernel/cpu/common.c 2010-12-31 14:47:01.000000000 -0500
357 @@ -11756,7 +11828,7 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/entry_32.S linux-2.6.32.29/arch/x86/k
358 CFI_ADJUST_CFA_OFFSET -24
359 diff -urNp linux-2.6.32.29/arch/x86/kernel/entry_64.S linux-2.6.32.29/arch/x86/kernel/entry_64.S
360 --- linux-2.6.32.29/arch/x86/kernel/entry_64.S 2010-08-13 16:24:37.000000000 -0400
361 -+++ linux-2.6.32.29/arch/x86/kernel/entry_64.S 2010-12-31 14:46:53.000000000 -0500
362 ++++ linux-2.6.32.29/arch/x86/kernel/entry_64.S 2011-02-27 14:53:10.000000000 -0500
363 @@ -53,6 +53,7 @@
364 #include <asm/paravirt.h>
365 #include <asm/ftrace.h>
366 @@ -11765,7 +11837,7 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/entry_64.S linux-2.6.32.29/arch/x86/k
367
368 /* Avoid __ASSEMBLER__'ifying <linux/audit.h> just for this. */
369 #include <linux/elf-em.h>
370 -@@ -174,6 +175,189 @@ ENTRY(native_usergs_sysret64)
371 +@@ -174,6 +175,201 @@ ENTRY(native_usergs_sysret64)
372 ENDPROC(native_usergs_sysret64)
373 #endif /* CONFIG_PARAVIRT */
374
375 @@ -11783,9 +11855,20 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/entry_64.S linux-2.6.32.29/arch/x86/k
376 +#endif
377 + .endm
378 +
379 -+ENTRY(pax_enter_kernel)
380 ++ .macro pax_enter_kernel
381 ++#ifdef CONFIG_PAX_KERNEXEC
382 ++ call pax_enter_kernel
383 ++#endif
384 ++ .endm
385 ++
386 ++ .macro pax_exit_kernel
387 ++#ifdef CONFIG_PAX_KERNEXEC
388 ++ call pax_exit_kernel
389 ++#endif
390 ++ .endm
391 +
392 +#ifdef CONFIG_PAX_KERNEXEC
393 ++ENTRY(pax_enter_kernel)
394 + push %rdi
395 +
396 +#ifdef CONFIG_PARAVIRT
397 @@ -11808,14 +11891,10 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/entry_64.S linux-2.6.32.29/arch/x86/k
398 +#endif
399 +
400 + pop %rdi
401 -+#endif
402 -+
403 + retq
404 +ENDPROC(pax_enter_kernel)
405 +
406 +ENTRY(pax_exit_kernel)
407 -+
408 -+#ifdef CONFIG_PAX_KERNEXEC
409 + push %rdi
410 +
411 +#ifdef CONFIG_PARAVIRT
412 @@ -11836,14 +11915,24 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/entry_64.S linux-2.6.32.29/arch/x86/k
413 +#endif
414 +
415 + pop %rdi
416 -+#endif
417 -+
418 + retq
419 +ENDPROC(pax_exit_kernel)
420 ++#endif
421 +
422 -+ENTRY(pax_enter_kernel_user)
423 ++ .macro pax_enter_kernel_user
424 ++#ifdef CONFIG_PAX_MEMORY_UDEREF
425 ++ call pax_enter_kernel_user
426 ++#endif
427 ++ .endm
428 +
429 ++ .macro pax_exit_kernel_user
430 +#ifdef CONFIG_PAX_MEMORY_UDEREF
431 ++ call pax_exit_kernel_user
432 ++#endif
433 ++ .endm
434 ++
435 ++#ifdef CONFIG_PAX_MEMORY_UDEREF
436 ++ENTRY(pax_enter_kernel_user)
437 + push %rdi
438 + push %rbx
439 +
440 @@ -11895,14 +11984,10 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/entry_64.S linux-2.6.32.29/arch/x86/k
441 +
442 + pop %rbx
443 + pop %rdi
444 -+#endif
445 -+
446 + retq
447 +ENDPROC(pax_enter_kernel_user)
448 +
449 +ENTRY(pax_exit_kernel_user)
450 -+
451 -+#ifdef CONFIG_PAX_MEMORY_UDEREF
452 + push %rdi
453 +
454 +#ifdef CONFIG_PARAVIRT
455 @@ -11948,14 +12033,13 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/entry_64.S linux-2.6.32.29/arch/x86/k
456 +#endif
457 +
458 + pop %rdi
459 -+#endif
460 -+
461 + retq
462 +ENDPROC(pax_exit_kernel_user)
463 ++#endif
464
465 .macro TRACE_IRQS_IRETQ offset=ARGOFFSET
466 #ifdef CONFIG_TRACE_IRQFLAGS
467 -@@ -317,7 +501,7 @@ ENTRY(save_args)
468 +@@ -317,7 +513,7 @@ ENTRY(save_args)
469 leaq -ARGOFFSET+16(%rsp),%rdi /* arg1 for handler */
470 movq_cfi rbp, 8 /* push %rbp */
471 leaq 8(%rsp), %rbp /* mov %rsp, %ebp */
472 @@ -11964,7 +12048,7 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/entry_64.S linux-2.6.32.29/arch/x86/k
473 je 1f
474 SWAPGS
475 /*
476 -@@ -409,7 +593,7 @@ ENTRY(ret_from_fork)
477 +@@ -409,7 +605,7 @@ ENTRY(ret_from_fork)
478
479 RESTORE_REST
480
481 @@ -11973,31 +12057,23 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/entry_64.S linux-2.6.32.29/arch/x86/k
482 je int_ret_from_sys_call
483
484 testl $_TIF_IA32, TI_flags(%rcx) # 32-bit compat task needs IRET
485 -@@ -468,6 +652,11 @@ ENTRY(system_call_after_swapgs)
486 +@@ -468,6 +664,7 @@ ENTRY(system_call_after_swapgs)
487
488 movq %rsp,PER_CPU_VAR(old_rsp)
489 movq PER_CPU_VAR(kernel_stack),%rsp
490 -+
491 -+#ifdef CONFIG_PAX_MEMORY_UDEREF
492 -+ call pax_enter_kernel_user
493 -+#endif
494 -+
495 ++ pax_enter_kernel_user
496 /*
497 * No need to follow this irqs off/on section - it's straight
498 * and short:
499 -@@ -502,6 +691,11 @@ sysret_check:
500 +@@ -502,6 +699,7 @@ sysret_check:
501 andl %edi,%edx
502 jnz sysret_careful
503 CFI_REMEMBER_STATE
504 -+
505 -+#ifdef CONFIG_PAX_MEMORY_UDEREF
506 -+ call pax_exit_kernel_user
507 -+#endif
508 -+
509 ++ pax_exit_kernel_user
510 /*
511 * sysretq will re-enable interrupts:
512 */
513 -@@ -613,7 +807,7 @@ tracesys:
514 +@@ -613,7 +811,7 @@ tracesys:
515 GLOBAL(int_ret_from_sys_call)
516 DISABLE_INTERRUPTS(CLBR_NONE)
517 TRACE_IRQS_OFF
518 @@ -12006,24 +12082,24 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/entry_64.S linux-2.6.32.29/arch/x86/k
519 je retint_restore_args
520 movl $_TIF_ALLWORK_MASK,%edi
521 /* edi: mask to check */
522 -@@ -800,6 +994,16 @@ END(interrupt)
523 +@@ -800,6 +998,16 @@ END(interrupt)
524 CFI_ADJUST_CFA_OFFSET 10*8
525 call save_args
526 PARTIAL_FRAME 0
527 +#ifdef CONFIG_PAX_MEMORY_UDEREF
528 + testb $3, CS(%rdi)
529 + jnz 1f
530 -+ call pax_enter_kernel
531 ++ pax_enter_kernel
532 + jmp 2f
533 -+1: call pax_enter_kernel_user
534 ++1: pax_enter_kernel_user
535 +2:
536 +#else
537 -+ call pax_enter_kernel
538 ++ pax_enter_kernel
539 +#endif
540 call \func
541 .endm
542
543 -@@ -822,7 +1026,7 @@ ret_from_intr:
544 +@@ -822,7 +1030,7 @@ ret_from_intr:
545 CFI_ADJUST_CFA_OFFSET -8
546 exit_intr:
547 GET_THREAD_INFO(%rcx)
548 @@ -12032,22 +12108,18 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/entry_64.S linux-2.6.32.29/arch/x86/k
549 je retint_kernel
550
551 /* Interrupt came from user space */
552 -@@ -844,12 +1048,18 @@ retint_swapgs: /* return to user-space
553 +@@ -844,12 +1052,14 @@ retint_swapgs: /* return to user-space
554 * The iretq could re-enable interrupts:
555 */
556 DISABLE_INTERRUPTS(CLBR_ANY)
557 -+
558 -+#ifdef CONFIG_PAX_MEMORY_UDEREF
559 -+ call pax_exit_kernel_user
560 -+#endif
561 -+
562 ++ pax_exit_kernel_user
563 TRACE_IRQS_IRETQ
564 SWAPGS
565 jmp restore_args
566
567 retint_restore_args: /* return to kernel space */
568 DISABLE_INTERRUPTS(CLBR_ANY)
569 -+ call pax_exit_kernel
570 ++ pax_exit_kernel
571 /*
572 * The iretq could re-enable interrupts:
573 */
574 @@ -12058,12 +12130,12 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/entry_64.S linux-2.6.32.29/arch/x86/k
575 +#ifdef CONFIG_PAX_MEMORY_UDEREF
576 + testb $3, CS(%rsp)
577 + jnz 1f
578 -+ call pax_enter_kernel
579 ++ pax_enter_kernel
580 + jmp 2f
581 -+1: call pax_enter_kernel_user
582 ++1: pax_enter_kernel_user
583 +2:
584 +#else
585 -+ call pax_enter_kernel
586 ++ pax_enter_kernel
587 +#endif
588 movq %rsp,%rdi /* pt_regs pointer */
589 xorl %esi,%esi /* no error code */
590 @@ -12075,12 +12147,12 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/entry_64.S linux-2.6.32.29/arch/x86/k
591 +#ifdef CONFIG_PAX_MEMORY_UDEREF
592 + testb $3, CS(%rsp)
593 + jnz 1f
594 -+ call pax_enter_kernel
595 ++ pax_enter_kernel
596 + jmp 2f
597 -+1: call pax_enter_kernel_user
598 ++1: pax_enter_kernel_user
599 +2:
600 +#else
601 -+ call pax_enter_kernel
602 ++ pax_enter_kernel
603 +#endif
604 movq %rsp,%rdi /* pt_regs pointer */
605 xorl %esi,%esi /* no error code */
606 @@ -12092,12 +12164,12 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/entry_64.S linux-2.6.32.29/arch/x86/k
607 +#ifdef CONFIG_PAX_MEMORY_UDEREF
608 + testb $3, CS(%rsp)
609 + jnz 1f
610 -+ call pax_enter_kernel
611 ++ pax_enter_kernel
612 + jmp 2f
613 -+1: call pax_enter_kernel_user
614 ++1: pax_enter_kernel_user
615 +2:
616 +#else
617 -+ call pax_enter_kernel
618 ++ pax_enter_kernel
619 +#endif
620 movq %rsp,%rdi /* pt_regs pointer */
621 xorl %esi,%esi /* no error code */
622 @@ -12118,12 +12190,12 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/entry_64.S linux-2.6.32.29/arch/x86/k
623 +#ifdef CONFIG_PAX_MEMORY_UDEREF
624 + testb $3, CS(%rsp)
625 + jnz 1f
626 -+ call pax_enter_kernel
627 ++ pax_enter_kernel
628 + jmp 2f
629 -+1: call pax_enter_kernel_user
630 ++1: pax_enter_kernel_user
631 +2:
632 +#else
633 -+ call pax_enter_kernel
634 ++ pax_enter_kernel
635 +#endif
636 movq %rsp,%rdi /* pt_regs pointer */
637 movq ORIG_RAX(%rsp),%rsi /* get error code */
638 @@ -12135,12 +12207,12 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/entry_64.S linux-2.6.32.29/arch/x86/k
639 +#ifdef CONFIG_PAX_MEMORY_UDEREF
640 + testb $3, CS(%rsp)
641 + jnz 1f
642 -+ call pax_enter_kernel
643 ++ pax_enter_kernel
644 + jmp 2f
645 -+1: call pax_enter_kernel_user
646 ++1: pax_enter_kernel_user
647 +2:
648 +#else
649 -+ call pax_enter_kernel
650 ++ pax_enter_kernel
651 +#endif
652 movq %rsp,%rdi /* pt_regs pointer */
653 movq ORIG_RAX(%rsp),%rsi /* get error code */
654 @@ -12153,7 +12225,7 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/entry_64.S linux-2.6.32.29/arch/x86/k
655 + testb $3,CS(%rsp)
656 jnz paranoid_userspace
657 +#ifdef CONFIG_PAX_MEMORY_UDEREF
658 -+ call pax_exit_kernel
659 ++ pax_exit_kernel
660 + TRACE_IRQS_IRETQ 0
661 + SWAPGS_UNSAFE_STACK
662 + RESTORE_ALL 8
663 @@ -12161,16 +12233,16 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/entry_64.S linux-2.6.32.29/arch/x86/k
664 +#endif
665 paranoid_swapgs:
666 +#ifdef CONFIG_PAX_MEMORY_UDEREF
667 -+ call pax_exit_kernel_user
668 ++ pax_exit_kernel_user
669 +#else
670 -+ call pax_exit_kernel
671 ++ pax_exit_kernel
672 +#endif
673 TRACE_IRQS_IRETQ 0
674 SWAPGS_UNSAFE_STACK
675 RESTORE_ALL 8
676 jmp irq_return
677 paranoid_restore:
678 -+ call pax_exit_kernel
679 ++ pax_exit_kernel
680 TRACE_IRQS_IRETQ 0
681 RESTORE_ALL 8
682 jmp irq_return
683 @@ -12190,27 +12262,40 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/entry_64.S linux-2.6.32.29/arch/x86/k
684 +#ifdef CONFIG_PAX_MEMORY_UDEREF
685 + testb $3, CS(%rsp)
686 + jnz 1f
687 -+ call pax_enter_kernel
688 ++ pax_enter_kernel
689 + jmp 2f
690 -+1: call pax_enter_kernel_user
691 ++1: pax_enter_kernel_user
692 +2:
693 +#else
694 -+ call pax_enter_kernel
695 ++ pax_enter_kernel
696 +#endif
697 /* paranoidentry do_nmi, 0; without TRACE_IRQS_OFF */
698 movq %rsp,%rdi
699 movq $-1,%rsi
700 -@@ -1539,11 +1827,12 @@ ENTRY(nmi)
701 +@@ -1539,11 +1827,25 @@ ENTRY(nmi)
702 DISABLE_INTERRUPTS(CLBR_NONE)
703 testl %ebx,%ebx /* swapgs needed? */
704 jnz nmi_restore
705 - testl $3,CS(%rsp)
706 + testb $3,CS(%rsp)
707 jnz nmi_userspace
708 ++#ifdef CONFIG_PAX_MEMORY_UDEREF
709 ++ pax_exit_kernel
710 ++ SWAPGS_UNSAFE_STACK
711 ++ RESTORE_ALL 8
712 ++ jmp irq_return
713 ++#endif
714 nmi_swapgs:
715 ++#ifdef CONFIG_PAX_MEMORY_UDEREF
716 ++ pax_exit_kernel_user
717 ++#else
718 ++ pax_exit_kernel
719 ++#endif
720 SWAPGS_UNSAFE_STACK
721 ++ RESTORE_ALL 8
722 ++ jmp irq_return
723 nmi_restore:
724 -+ call pax_exit_kernel
725 ++ pax_exit_kernel
726 RESTORE_ALL 8
727 jmp irq_return
728 nmi_userspace:
729 @@ -13983,7 +14068,7 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/process.c linux-2.6.32.29/arch/x86/ke
730 -
731 diff -urNp linux-2.6.32.29/arch/x86/kernel/ptrace.c linux-2.6.32.29/arch/x86/kernel/ptrace.c
732 --- linux-2.6.32.29/arch/x86/kernel/ptrace.c 2010-08-13 16:24:37.000000000 -0400
733 -+++ linux-2.6.32.29/arch/x86/kernel/ptrace.c 2010-12-31 14:46:53.000000000 -0500
734 ++++ linux-2.6.32.29/arch/x86/kernel/ptrace.c 2011-02-27 14:53:10.000000000 -0500
735 @@ -925,7 +925,7 @@ static const struct user_regset_view use
736 long arch_ptrace(struct task_struct *child, long request, long addr, long data)
737 {
738 @@ -14052,6 +14137,24 @@ diff -urNp linux-2.6.32.29/arch/x86/kernel/ptrace.c linux-2.6.32.29/arch/x86/ker
739
740 /* Send us the fake SIGTRAP */
741 force_sig_info(SIGTRAP, &info, tsk);
742 +@@ -1469,7 +1469,7 @@ void send_sigtrap(struct task_struct *ts
743 + * We must return the syscall number to actually look up in the table.
744 + * This can be -1L to skip running any syscall at all.
745 + */
746 +-asmregparm long syscall_trace_enter(struct pt_regs *regs)
747 ++long syscall_trace_enter(struct pt_regs *regs)
748 + {
749 + long ret = 0;
750 +
751 +@@ -1514,7 +1514,7 @@ asmregparm long syscall_trace_enter(stru
752 + return ret ?: regs->orig_ax;
753 + }
754 +
755 +-asmregparm void syscall_trace_leave(struct pt_regs *regs)
756 ++void syscall_trace_leave(struct pt_regs *regs)
757 + {
758 + if (unlikely(current->audit_context))
759 + audit_syscall_exit(AUDITSC_RESULT(regs->ax), regs->ax);
760 diff -urNp linux-2.6.32.29/arch/x86/kernel/reboot.c linux-2.6.32.29/arch/x86/kernel/reboot.c
761 --- linux-2.6.32.29/arch/x86/kernel/reboot.c 2010-11-26 18:22:29.000000000 -0500
762 +++ linux-2.6.32.29/arch/x86/kernel/reboot.c 2010-12-31 14:46:53.000000000 -0500
763 @@ -24783,6 +24886,18 @@ diff -urNp linux-2.6.32.29/drivers/char/tpm/tpm_bios.c linux-2.6.32.29/drivers/c
764
765 memcpy(log->bios_event_log, virt, len);
766
767 +diff -urNp linux-2.6.32.29/drivers/char/tpm/tpm.c linux-2.6.32.29/drivers/char/tpm/tpm.c
768 +--- linux-2.6.32.29/drivers/char/tpm/tpm.c 2011-02-22 15:56:54.000000000 -0500
769 ++++ linux-2.6.32.29/drivers/char/tpm/tpm.c 2011-02-27 14:53:10.000000000 -0500
770 +@@ -402,7 +402,7 @@ static ssize_t tpm_transmit(struct tpm_c
771 + chip->vendor.req_complete_val)
772 + goto out_recv;
773 +
774 +- if ((status == chip->vendor.req_canceled)) {
775 ++ if (status == chip->vendor.req_canceled) {
776 + dev_err(chip->dev, "Operation Canceled\n");
777 + rc = -ECANCELED;
778 + goto out;
779 diff -urNp linux-2.6.32.29/drivers/char/tty_io.c linux-2.6.32.29/drivers/char/tty_io.c
780 --- linux-2.6.32.29/drivers/char/tty_io.c 2010-08-13 16:24:37.000000000 -0400
781 +++ linux-2.6.32.29/drivers/char/tty_io.c 2010-12-31 14:46:53.000000000 -0500
782 @@ -24983,6 +25098,18 @@ diff -urNp linux-2.6.32.29/drivers/char/virtio_console.c linux-2.6.32.29/drivers
783 static struct hv_ops virtio_cons;
784
785 /* The hvc device */
786 +diff -urNp linux-2.6.32.29/drivers/char/vt.c linux-2.6.32.29/drivers/char/vt.c
787 +--- linux-2.6.32.29/drivers/char/vt.c 2010-08-13 16:24:37.000000000 -0400
788 ++++ linux-2.6.32.29/drivers/char/vt.c 2011-02-27 14:53:10.000000000 -0500
789 +@@ -243,7 +243,7 @@ EXPORT_SYMBOL_GPL(unregister_vt_notifier
790 +
791 + static void notify_write(struct vc_data *vc, unsigned int unicode)
792 + {
793 +- struct vt_notifier_param param = { .vc = vc, unicode = unicode };
794 ++ struct vt_notifier_param param = { .vc = vc, .c = unicode };
795 + atomic_notifier_call_chain(&vt_notifier_list, VT_WRITE, &param);
796 + }
797 +
798 diff -urNp linux-2.6.32.29/drivers/char/vt_ioctl.c linux-2.6.32.29/drivers/char/vt_ioctl.c
799 --- linux-2.6.32.29/drivers/char/vt_ioctl.c 2010-12-09 18:13:03.000000000 -0500
800 +++ linux-2.6.32.29/drivers/char/vt_ioctl.c 2010-12-31 14:46:53.000000000 -0500
801 @@ -26100,6 +26227,18 @@ diff -urNp linux-2.6.32.29/drivers/ieee1394/hosts.c linux-2.6.32.29/drivers/ieee
802 .transmit_packet = dummy_transmit_packet,
803 .devctl = dummy_devctl,
804 .isoctl = dummy_isoctl
805 +diff -urNp linux-2.6.32.29/drivers/ieee1394/init_ohci1394_dma.c linux-2.6.32.29/drivers/ieee1394/init_ohci1394_dma.c
806 +--- linux-2.6.32.29/drivers/ieee1394/init_ohci1394_dma.c 2010-08-13 16:24:37.000000000 -0400
807 ++++ linux-2.6.32.29/drivers/ieee1394/init_ohci1394_dma.c 2011-02-27 14:53:10.000000000 -0500
808 +@@ -257,7 +257,7 @@ void __init init_ohci1394_dma_on_all_con
809 + for (func = 0; func < 8; func++) {
810 + u32 class = read_pci_config(num,slot,func,
811 + PCI_CLASS_REVISION);
812 +- if ((class == 0xffffffff))
813 ++ if (class == 0xffffffff)
814 + continue; /* No device at this func */
815 +
816 + if (class>>8 != PCI_CLASS_SERIAL_FIREWIRE_OHCI)
817 diff -urNp linux-2.6.32.29/drivers/ieee1394/ohci1394.c linux-2.6.32.29/drivers/ieee1394/ohci1394.c
818 --- linux-2.6.32.29/drivers/ieee1394/ohci1394.c 2010-08-13 16:24:37.000000000 -0400
819 +++ linux-2.6.32.29/drivers/ieee1394/ohci1394.c 2010-12-31 14:46:53.000000000 -0500
820 @@ -26899,6 +27038,18 @@ diff -urNp linux-2.6.32.29/drivers/md/bitmap.c linux-2.6.32.29/drivers/md/bitmap
821 # endif
822 #endif
823
824 +diff -urNp linux-2.6.32.29/drivers/md/dm-ioctl.c linux-2.6.32.29/drivers/md/dm-ioctl.c
825 +--- linux-2.6.32.29/drivers/md/dm-ioctl.c 2010-08-29 21:08:20.000000000 -0400
826 ++++ linux-2.6.32.29/drivers/md/dm-ioctl.c 2011-02-27 14:53:10.000000000 -0500
827 +@@ -1437,7 +1437,7 @@ static int validate_params(uint cmd, str
828 + cmd == DM_LIST_VERSIONS_CMD)
829 + return 0;
830 +
831 +- if ((cmd == DM_DEV_CREATE_CMD)) {
832 ++ if (cmd == DM_DEV_CREATE_CMD) {
833 + if (!*param->name) {
834 + DMWARN("name not supplied when creating device");
835 + return -EINVAL;
836 diff -urNp linux-2.6.32.29/drivers/md/dm-sysfs.c linux-2.6.32.29/drivers/md/dm-sysfs.c
837 --- linux-2.6.32.29/drivers/md/dm-sysfs.c 2010-08-13 16:24:37.000000000 -0400
838 +++ linux-2.6.32.29/drivers/md/dm-sysfs.c 2010-12-31 14:46:53.000000000 -0500
839 @@ -27019,6 +27170,22 @@ diff -urNp linux-2.6.32.29/drivers/media/radio/radio-cadet.c linux-2.6.32.29/dri
840 return -EFAULT;
841 return i;
842 }
843 +diff -urNp linux-2.6.32.29/drivers/media/video/sn9c102/sn9c102_core.c linux-2.6.32.29/drivers/media/video/sn9c102/sn9c102_core.c
844 +--- linux-2.6.32.29/drivers/media/video/sn9c102/sn9c102_core.c 2010-08-13 16:24:37.000000000 -0400
845 ++++ linux-2.6.32.29/drivers/media/video/sn9c102/sn9c102_core.c 2011-02-27 15:19:00.000000000 -0500
846 +@@ -1430,9 +1430,9 @@ static DEVICE_ATTR(i2c_reg, S_IRUGO | S_
847 + sn9c102_show_i2c_reg, sn9c102_store_i2c_reg);
848 + static DEVICE_ATTR(i2c_val, S_IRUGO | S_IWUSR,
849 + sn9c102_show_i2c_val, sn9c102_store_i2c_val);
850 +-static DEVICE_ATTR(green, S_IWUGO, NULL, sn9c102_store_green);
851 +-static DEVICE_ATTR(blue, S_IWUGO, NULL, sn9c102_store_blue);
852 +-static DEVICE_ATTR(red, S_IWUGO, NULL, sn9c102_store_red);
853 ++static DEVICE_ATTR(green, S_IWUSR, NULL, sn9c102_store_green);
854 ++static DEVICE_ATTR(blue, S_IWUSR, NULL, sn9c102_store_blue);
855 ++static DEVICE_ATTR(red, S_IWUSR, NULL, sn9c102_store_red);
856 + static DEVICE_ATTR(frame_header, S_IRUGO, sn9c102_show_frame_header, NULL);
857 +
858 +
859 diff -urNp linux-2.6.32.29/drivers/media/video/usbvideo/konicawc.c linux-2.6.32.29/drivers/media/video/usbvideo/konicawc.c
860 --- linux-2.6.32.29/drivers/media/video/usbvideo/konicawc.c 2010-08-13 16:24:37.000000000 -0400
861 +++ linux-2.6.32.29/drivers/media/video/usbvideo/konicawc.c 2010-12-31 14:46:53.000000000 -0500
862 @@ -27241,6 +27408,45 @@ diff -urNp linux-2.6.32.29/drivers/message/i2o/i2o_proc.c linux-2.6.32.29/driver
863
864 return 0;
865 }
866 +diff -urNp linux-2.6.32.29/drivers/mfd/ab3100-core.c linux-2.6.32.29/drivers/mfd/ab3100-core.c
867 +--- linux-2.6.32.29/drivers/mfd/ab3100-core.c 2010-08-13 16:24:37.000000000 -0400
868 ++++ linux-2.6.32.29/drivers/mfd/ab3100-core.c 2011-02-27 15:32:18.000000000 -0500
869 +@@ -591,7 +591,7 @@ static void ab3100_setup_debugfs(struct
870 + ab3100_get_priv.ab3100 = ab3100;
871 + ab3100_get_priv.mode = false;
872 + ab3100_get_reg_file = debugfs_create_file("get_reg",
873 +- S_IWUGO, ab3100_dir, &ab3100_get_priv,
874 ++ S_IWUSR, ab3100_dir, &ab3100_get_priv,
875 + &ab3100_get_set_reg_fops);
876 + if (!ab3100_get_reg_file) {
877 + err = -ENOMEM;
878 +@@ -601,7 +601,7 @@ static void ab3100_setup_debugfs(struct
879 + ab3100_set_priv.ab3100 = ab3100;
880 + ab3100_set_priv.mode = true;
881 + ab3100_set_reg_file = debugfs_create_file("set_reg",
882 +- S_IWUGO, ab3100_dir, &ab3100_set_priv,
883 ++ S_IWUSR, ab3100_dir, &ab3100_set_priv,
884 + &ab3100_get_set_reg_fops);
885 + if (!ab3100_set_reg_file) {
886 + err = -ENOMEM;
887 +diff -urNp linux-2.6.32.29/drivers/misc/ep93xx_pwm.c linux-2.6.32.29/drivers/misc/ep93xx_pwm.c
888 +--- linux-2.6.32.29/drivers/misc/ep93xx_pwm.c 2010-08-13 16:24:37.000000000 -0400
889 ++++ linux-2.6.32.29/drivers/misc/ep93xx_pwm.c 2011-02-27 15:23:39.000000000 -0500
890 +@@ -248,11 +248,11 @@ static ssize_t ep93xx_pwm_set_invert(str
891 +
892 + static DEVICE_ATTR(min_freq, S_IRUGO, ep93xx_pwm_get_min_freq, NULL);
893 + static DEVICE_ATTR(max_freq, S_IRUGO, ep93xx_pwm_get_max_freq, NULL);
894 +-static DEVICE_ATTR(freq, S_IWUGO | S_IRUGO,
895 ++static DEVICE_ATTR(freq, S_IWUSR | S_IRUGO,
896 + ep93xx_pwm_get_freq, ep93xx_pwm_set_freq);
897 +-static DEVICE_ATTR(duty_percent, S_IWUGO | S_IRUGO,
898 ++static DEVICE_ATTR(duty_percent, S_IWUSR | S_IRUGO,
899 + ep93xx_pwm_get_duty_percent, ep93xx_pwm_set_duty_percent);
900 +-static DEVICE_ATTR(invert, S_IWUGO | S_IRUGO,
901 ++static DEVICE_ATTR(invert, S_IWUSR | S_IRUGO,
902 + ep93xx_pwm_get_invert, ep93xx_pwm_set_invert);
903 +
904 + static struct attribute *ep93xx_pwm_attrs[] = {
905 diff -urNp linux-2.6.32.29/drivers/misc/kgdbts.c linux-2.6.32.29/drivers/misc/kgdbts.c
906 --- linux-2.6.32.29/drivers/misc/kgdbts.c 2010-08-13 16:24:37.000000000 -0400
907 +++ linux-2.6.32.29/drivers/misc/kgdbts.c 2010-12-31 14:46:53.000000000 -0500
908 @@ -28447,6 +28653,22 @@ diff -urNp linux-2.6.32.29/drivers/pci/intel-iommu.c linux-2.6.32.29/drivers/pci
909 .alloc_coherent = intel_alloc_coherent,
910 .free_coherent = intel_free_coherent,
911 .map_sg = intel_map_sg,
912 +diff -urNp linux-2.6.32.29/drivers/pci/pcie/aspm.c linux-2.6.32.29/drivers/pci/pcie/aspm.c
913 +--- linux-2.6.32.29/drivers/pci/pcie/aspm.c 2010-08-13 16:24:37.000000000 -0400
914 ++++ linux-2.6.32.29/drivers/pci/pcie/aspm.c 2011-02-27 14:53:10.000000000 -0500
915 +@@ -27,9 +27,9 @@
916 + #define MODULE_PARAM_PREFIX "pcie_aspm."
917 +
918 + /* Note: those are not register definitions */
919 +-#define ASPM_STATE_L0S_UP (1) /* Upstream direction L0s state */
920 +-#define ASPM_STATE_L0S_DW (2) /* Downstream direction L0s state */
921 +-#define ASPM_STATE_L1 (4) /* L1 state */
922 ++#define ASPM_STATE_L0S_UP (1U) /* Upstream direction L0s state */
923 ++#define ASPM_STATE_L0S_DW (2U) /* Downstream direction L0s state */
924 ++#define ASPM_STATE_L1 (4U) /* L1 state */
925 + #define ASPM_STATE_L0S (ASPM_STATE_L0S_UP | ASPM_STATE_L0S_DW)
926 + #define ASPM_STATE_ALL (ASPM_STATE_L0S | ASPM_STATE_L1)
927 +
928 diff -urNp linux-2.6.32.29/drivers/pci/pcie/portdrv_pci.c linux-2.6.32.29/drivers/pci/pcie/portdrv_pci.c
929 --- linux-2.6.32.29/drivers/pci/pcie/portdrv_pci.c 2010-08-13 16:24:37.000000000 -0400
930 +++ linux-2.6.32.29/drivers/pci/pcie/portdrv_pci.c 2010-12-31 14:46:53.000000000 -0500
931 @@ -28549,7 +28771,7 @@ diff -urNp linux-2.6.32.29/drivers/pcmcia/yenta_socket.c linux-2.6.32.29/drivers
932
933 diff -urNp linux-2.6.32.29/drivers/platform/x86/acer-wmi.c linux-2.6.32.29/drivers/platform/x86/acer-wmi.c
934 --- linux-2.6.32.29/drivers/platform/x86/acer-wmi.c 2010-08-13 16:24:37.000000000 -0400
935 -+++ linux-2.6.32.29/drivers/platform/x86/acer-wmi.c 2010-12-31 14:46:53.000000000 -0500
936 ++++ linux-2.6.32.29/drivers/platform/x86/acer-wmi.c 2011-02-27 15:22:41.000000000 -0500
937 @@ -918,7 +918,7 @@ static int update_bl_status(struct backl
938 return 0;
939 }
940 @@ -28559,10 +28781,35 @@ diff -urNp linux-2.6.32.29/drivers/platform/x86/acer-wmi.c linux-2.6.32.29/drive
941 .get_brightness = read_brightness,
942 .update_status = update_bl_status,
943 };
944 +@@ -1065,7 +1065,7 @@ static ssize_t set_bool_threeg(struct de
945 + return -EINVAL;
946 + return count;
947 + }
948 +-static DEVICE_ATTR(threeg, S_IWUGO | S_IRUGO | S_IWUSR, show_bool_threeg,
949 ++static DEVICE_ATTR(threeg, S_IRUGO | S_IWUSR, show_bool_threeg,
950 + set_bool_threeg);
951 +
952 + static ssize_t show_interface(struct device *dev, struct device_attribute *attr,
953 diff -urNp linux-2.6.32.29/drivers/platform/x86/asus_acpi.c linux-2.6.32.29/drivers/platform/x86/asus_acpi.c
954 --- linux-2.6.32.29/drivers/platform/x86/asus_acpi.c 2010-08-13 16:24:37.000000000 -0400
955 -+++ linux-2.6.32.29/drivers/platform/x86/asus_acpi.c 2010-12-31 14:46:53.000000000 -0500
956 -@@ -1402,7 +1402,7 @@ static int asus_hotk_remove(struct acpi_
957 ++++ linux-2.6.32.29/drivers/platform/x86/asus_acpi.c 2011-02-27 15:16:00.000000000 -0500
958 +@@ -1001,14 +1001,8 @@ static int asus_hotk_add_fs(struct acpi_
959 + struct proc_dir_entry *proc;
960 + mode_t mode;
961 +
962 +- /*
963 +- * If parameter uid or gid is not changed, keep the default setting for
964 +- * our proc entries (-rw-rw-rw-) else, it means we care about security,
965 +- * and then set to -rw-rw----
966 +- */
967 +-
968 + if ((asus_uid == 0) && (asus_gid == 0)) {
969 +- mode = S_IFREG | S_IRUGO | S_IWUGO;
970 ++ mode = S_IFREG | S_IRUGO | S_IWUSR | S_IWGRP;
971 + } else {
972 + mode = S_IFREG | S_IRUSR | S_IRGRP | S_IWUSR | S_IWGRP;
973 + printk(KERN_WARNING " asus_uid and asus_gid parameters are "
974 +@@ -1402,7 +1396,7 @@ static int asus_hotk_remove(struct acpi_
975 return 0;
976 }
977
978 @@ -28803,6 +29050,18 @@ diff -urNp linux-2.6.32.29/drivers/rtc/rtc-dev.c linux-2.6.32.29/drivers/rtc/rtc
979 return rtc_set_time(rtc, &tm);
980
981 case RTC_PIE_ON:
982 +diff -urNp linux-2.6.32.29/drivers/rtc/rtc-ds1511.c linux-2.6.32.29/drivers/rtc/rtc-ds1511.c
983 +--- linux-2.6.32.29/drivers/rtc/rtc-ds1511.c 2010-08-13 16:24:37.000000000 -0400
984 ++++ linux-2.6.32.29/drivers/rtc/rtc-ds1511.c 2011-02-27 15:20:55.000000000 -0500
985 +@@ -480,7 +480,7 @@ ds1511_nvram_write(struct kobject *kobj,
986 + static struct bin_attribute ds1511_nvram_attr = {
987 + .attr = {
988 + .name = "nvram",
989 +- .mode = S_IRUGO | S_IWUGO,
990 ++ .mode = S_IRUGO | S_IWUSR,
991 + },
992 + .size = DS1511_RAM_MAX,
993 + .read = ds1511_nvram_read,
994 diff -urNp linux-2.6.32.29/drivers/s390/cio/qdio_perf.c linux-2.6.32.29/drivers/s390/cio/qdio_perf.c
995 --- linux-2.6.32.29/drivers/s390/cio/qdio_perf.c 2010-08-13 16:24:37.000000000 -0400
996 +++ linux-2.6.32.29/drivers/s390/cio/qdio_perf.c 2010-12-31 14:46:53.000000000 -0500
997 @@ -28956,6 +29215,18 @@ diff -urNp linux-2.6.32.29/drivers/s390/cio/qdio_perf.h linux-2.6.32.29/drivers/
998 }
999
1000 int qdio_setup_perf_stats(void);
1001 +diff -urNp linux-2.6.32.29/drivers/scsi/aic94xx/aic94xx_init.c linux-2.6.32.29/drivers/scsi/aic94xx/aic94xx_init.c
1002 +--- linux-2.6.32.29/drivers/scsi/aic94xx/aic94xx_init.c 2010-08-13 16:24:37.000000000 -0400
1003 ++++ linux-2.6.32.29/drivers/scsi/aic94xx/aic94xx_init.c 2011-02-27 15:21:24.000000000 -0500
1004 +@@ -485,7 +485,7 @@ static ssize_t asd_show_update_bios(stru
1005 + flash_error_table[i].reason);
1006 + }
1007 +
1008 +-static DEVICE_ATTR(update_bios, S_IRUGO|S_IWUGO,
1009 ++static DEVICE_ATTR(update_bios, S_IRUGO|S_IWUSR,
1010 + asd_show_update_bios, asd_store_update_bios);
1011 +
1012 + static int asd_create_dev_attrs(struct asd_ha_struct *asd_ha)
1013 diff -urNp linux-2.6.32.29/drivers/scsi/ipr.c linux-2.6.32.29/drivers/scsi/ipr.c
1014 --- linux-2.6.32.29/drivers/scsi/ipr.c 2010-08-13 16:24:37.000000000 -0400
1015 +++ linux-2.6.32.29/drivers/scsi/ipr.c 2010-12-31 14:46:53.000000000 -0500
1016 @@ -35023,6 +35294,30 @@ diff -urNp linux-2.6.32.29/fs/open.c linux-2.6.32.29/fs/open.c
1017 if (IS_ERR(f)) {
1018 put_unused_fd(fd);
1019 fd = PTR_ERR(f);
1020 +diff -urNp linux-2.6.32.29/fs/partitions/ldm.c linux-2.6.32.29/fs/partitions/ldm.c
1021 +--- linux-2.6.32.29/fs/partitions/ldm.c 2010-08-13 16:24:37.000000000 -0400
1022 ++++ linux-2.6.32.29/fs/partitions/ldm.c 2011-02-27 15:46:41.000000000 -0500
1023 +@@ -251,6 +251,11 @@ static bool ldm_parse_vmdb (const u8 *da
1024 + }
1025 +
1026 + vm->vblk_size = get_unaligned_be32(data + 0x08);
1027 ++ if (vm->vblk_size == 0) {
1028 ++ ldm_error ("Illegal VBLK size");
1029 ++ return false;
1030 ++ }
1031 ++
1032 + vm->vblk_offset = get_unaligned_be32(data + 0x0C);
1033 + vm->last_vblk_seq = get_unaligned_be32(data + 0x04);
1034 +
1035 +@@ -1308,7 +1313,7 @@ static bool ldm_frag_add (const u8 *data
1036 + goto found;
1037 + }
1038 +
1039 +- f = kmalloc (sizeof (*f) + size*num, GFP_KERNEL);
1040 ++ f = kmalloc (size*num + sizeof (*f), GFP_KERNEL);
1041 + if (!f) {
1042 + ldm_crit ("Out of memory.");
1043 + return false;
1044 diff -urNp linux-2.6.32.29/fs/partitions/mac.c linux-2.6.32.29/fs/partitions/mac.c
1045 --- linux-2.6.32.29/fs/partitions/mac.c 2010-08-13 16:24:37.000000000 -0400
1046 +++ linux-2.6.32.29/fs/partitions/mac.c 2011-02-22 16:30:44.000000000 -0500
1047 @@ -36546,6 +36841,32 @@ diff -urNp linux-2.6.32.29/fs/sysfs/symlink.c linux-2.6.32.29/fs/sysfs/symlink.c
1048 if (!IS_ERR(page))
1049 free_page((unsigned long)page);
1050 }
1051 +diff -urNp linux-2.6.32.29/fs/ubifs/debug.c linux-2.6.32.29/fs/ubifs/debug.c
1052 +--- linux-2.6.32.29/fs/ubifs/debug.c 2010-08-13 16:24:37.000000000 -0400
1053 ++++ linux-2.6.32.29/fs/ubifs/debug.c 2011-02-27 15:31:34.000000000 -0500
1054 +@@ -2660,19 +2660,19 @@ int dbg_debugfs_init_fs(struct ubifs_inf
1055 + }
1056 +
1057 + fname = "dump_lprops";
1058 +- dent = debugfs_create_file(fname, S_IWUGO, d->dfs_dir, c, &dfs_fops);
1059 ++ dent = debugfs_create_file(fname, S_IWUSR, d->dfs_dir, c, &dfs_fops);
1060 + if (IS_ERR(dent))
1061 + goto out_remove;
1062 + d->dfs_dump_lprops = dent;
1063 +
1064 + fname = "dump_budg";
1065 +- dent = debugfs_create_file(fname, S_IWUGO, d->dfs_dir, c, &dfs_fops);
1066 ++ dent = debugfs_create_file(fname, S_IWUSR, d->dfs_dir, c, &dfs_fops);
1067 + if (IS_ERR(dent))
1068 + goto out_remove;
1069 + d->dfs_dump_budg = dent;
1070 +
1071 + fname = "dump_tnc";
1072 +- dent = debugfs_create_file(fname, S_IWUGO, d->dfs_dir, c, &dfs_fops);
1073 ++ dent = debugfs_create_file(fname, S_IWUSR, d->dfs_dir, c, &dfs_fops);
1074 + if (IS_ERR(dent))
1075 + goto out_remove;
1076 + d->dfs_dump_tnc = dent;
1077 diff -urNp linux-2.6.32.29/fs/udf/balloc.c linux-2.6.32.29/fs/udf/balloc.c
1078 --- linux-2.6.32.29/fs/udf/balloc.c 2010-08-13 16:24:37.000000000 -0400
1079 +++ linux-2.6.32.29/fs/udf/balloc.c 2010-12-31 14:46:53.000000000 -0500
1080 @@ -59471,6 +59792,36 @@ diff -urNp linux-2.6.32.29/net/rds/Kconfig linux-2.6.32.29/net/rds/Kconfig
1081 ---help---
1082 The RDS (Reliable Datagram Sockets) protocol provides reliable,
1083 sequenced delivery of datagrams over Infiniband, iWARP,
1084 +diff -urNp linux-2.6.32.29/net/rxrpc/ar-key.c linux-2.6.32.29/net/rxrpc/ar-key.c
1085 +--- linux-2.6.32.29/net/rxrpc/ar-key.c 2010-08-13 16:24:37.000000000 -0400
1086 ++++ linux-2.6.32.29/net/rxrpc/ar-key.c 2011-02-27 15:01:43.000000000 -0500
1087 +@@ -88,11 +88,11 @@ static int rxrpc_instantiate_xdr_rxkad(s
1088 + return ret;
1089 +
1090 + plen -= sizeof(*token);
1091 +- token = kmalloc(sizeof(*token), GFP_KERNEL);
1092 ++ token = kzalloc(sizeof(*token), GFP_KERNEL);
1093 + if (!token)
1094 + return -ENOMEM;
1095 +
1096 +- token->kad = kmalloc(plen, GFP_KERNEL);
1097 ++ token->kad = kzalloc(plen, GFP_KERNEL);
1098 + if (!token->kad) {
1099 + kfree(token);
1100 + return -ENOMEM;
1101 +@@ -730,10 +730,10 @@ static int rxrpc_instantiate(struct key
1102 + goto error;
1103 +
1104 + ret = -ENOMEM;
1105 +- token = kmalloc(sizeof(*token), GFP_KERNEL);
1106 ++ token = kzalloc(sizeof(*token), GFP_KERNEL);
1107 + if (!token)
1108 + goto error;
1109 +- token->kad = kmalloc(plen, GFP_KERNEL);
1110 ++ token->kad = kzalloc(plen, GFP_KERNEL);
1111 + if (!token->kad)
1112 + goto error_free;
1113 +
1114 diff -urNp linux-2.6.32.29/net/sctp/auth.c linux-2.6.32.29/net/sctp/auth.c
1115 --- linux-2.6.32.29/net/sctp/auth.c 2010-08-13 16:24:37.000000000 -0400
1116 +++ linux-2.6.32.29/net/sctp/auth.c 2010-12-31 14:46:53.000000000 -0500
1117
1118 diff --git a/2.6.37/0000_README b/2.6.37/0000_README
1119 index 25c3e3f..f95ae70 100644
1120 --- a/2.6.37/0000_README
1121 +++ b/2.6.37/0000_README
1122 @@ -3,7 +3,7 @@ README
1123
1124 Individual Patch Descriptions:
1125 -----------------------------------------------------------------------------
1126 -Patch: 4420_grsecurity-2.2.1-2.6.37.1-201102221638.patch
1127 +Patch: 4420_grsecurity-2.2.1-2.6.37.2-201102271552.patch
1128 From: http://www.grsecurity.net
1129 Desc: hardened-sources base patch from upstream grsecurity
1130
1131 @@ -18,7 +18,7 @@ Desc: Removes verbose compile warning settings from grsecurity, restores
1132 mainline Linux kernel behavior
1133
1134 Patch: 4423_grsec-remove-protected-paths.patch
1135 -From: Anthony G. Basile, Ph. D. <basile@××××××××××××××.edu>
1136 +From: Anthony G. Basile <blueness@g.o>
1137 Desc: Removes chmod statements from grsecurity/Makefile
1138
1139 Patch: 4425_grsec-pax-without-grsec.patch
1140 @@ -33,18 +33,16 @@ Desc: Sets sane(r) default GIDs on various grsecurity group-dependent
1141 Patch: 4435_grsec-kconfig-gentoo.patch
1142 From: Gordon Malm <gengor@g.o>
1143 Kerin Millar <kerframil@×××××.com>
1144 -Desc: Adds Hardened Gentoo [server/workstation] security levels, sets
1145 - Hardened Gentoo [workstation] as default
1146 + Anthony G. Basile <blueness@g.o>
1147 +Desc: Adds Hardened Gentoo [server/workstation/virtualization] security levels,
1148 + sets Hardened Gentoo [workstation] as default
1149
1150 Patch: 4440_selinux-avc_audit-log-curr_ip.patch
1151 From: Gordon Malm <gengor@g.o>
1152 + Anthony G. Basile <blueness@g.o>
1153 Desc: Configurable option to add src IP address to SELinux log messages
1154
1155 Patch: 4445_disable-compat_vdso.patch
1156 From: Gordon Malm <gengor@g.o>
1157 Kerin Millar <kerframil@×××××.com>
1158 Desc: Disables VDSO_COMPAT operation completely
1159 -
1160 -Patch: 4450_check_ssp_fix.patch
1161 -From: Magnus Granberg <zorry@g.o>
1162 -Desc: Fixes kernel check script for ssp
1163
1164 diff --git a/2.6.37/4420_grsecurity-2.2.1-2.6.37.1-201102221638.patch b/2.6.37/4420_grsecurity-2.2.1-2.6.37.2-201102271552.patch
1165 similarity index 86%
1166 rename from 2.6.37/4420_grsecurity-2.2.1-2.6.37.1-201102221638.patch
1167 rename to 2.6.37/4420_grsecurity-2.2.1-2.6.37.2-201102271552.patch
1168 index ffd2e9f..dfef6b7 100644
1169 --- a/2.6.37/4420_grsecurity-2.2.1-2.6.37.1-201102221638.patch
1170 +++ b/2.6.37/4420_grsecurity-2.2.1-2.6.37.2-201102271552.patch
1171 @@ -1,6 +1,6 @@
1172 -diff -urNp linux-2.6.37.1/arch/alpha/include/asm/dma-mapping.h linux-2.6.37.1/arch/alpha/include/asm/dma-mapping.h
1173 ---- linux-2.6.37.1/arch/alpha/include/asm/dma-mapping.h 2011-01-04 19:50:19.000000000 -0500
1174 -+++ linux-2.6.37.1/arch/alpha/include/asm/dma-mapping.h 2011-01-17 02:41:00.000000000 -0500
1175 +diff -urNp linux-2.6.37.2/arch/alpha/include/asm/dma-mapping.h linux-2.6.37.2/arch/alpha/include/asm/dma-mapping.h
1176 +--- linux-2.6.37.2/arch/alpha/include/asm/dma-mapping.h 2011-01-04 19:50:19.000000000 -0500
1177 ++++ linux-2.6.37.2/arch/alpha/include/asm/dma-mapping.h 2011-01-17 02:41:00.000000000 -0500
1178 @@ -3,9 +3,9 @@
1179
1180 #include <linux/dma-attrs.h>
1181 @@ -13,9 +13,9 @@ diff -urNp linux-2.6.37.1/arch/alpha/include/asm/dma-mapping.h linux-2.6.37.1/ar
1182 {
1183 return dma_ops;
1184 }
1185 -diff -urNp linux-2.6.37.1/arch/alpha/include/asm/elf.h linux-2.6.37.1/arch/alpha/include/asm/elf.h
1186 ---- linux-2.6.37.1/arch/alpha/include/asm/elf.h 2011-01-04 19:50:19.000000000 -0500
1187 -+++ linux-2.6.37.1/arch/alpha/include/asm/elf.h 2011-01-17 02:41:00.000000000 -0500
1188 +diff -urNp linux-2.6.37.2/arch/alpha/include/asm/elf.h linux-2.6.37.2/arch/alpha/include/asm/elf.h
1189 +--- linux-2.6.37.2/arch/alpha/include/asm/elf.h 2011-01-04 19:50:19.000000000 -0500
1190 ++++ linux-2.6.37.2/arch/alpha/include/asm/elf.h 2011-01-17 02:41:00.000000000 -0500
1191 @@ -90,6 +90,13 @@ typedef elf_fpreg_t elf_fpregset_t[ELF_N
1192
1193 #define ELF_ET_DYN_BASE (TASK_UNMAPPED_BASE + 0x1000000)
1194 @@ -30,9 +30,9 @@ diff -urNp linux-2.6.37.1/arch/alpha/include/asm/elf.h linux-2.6.37.1/arch/alpha
1195 /* $0 is set by ld.so to a pointer to a function which might be
1196 registered using atexit. This provides a mean for the dynamic
1197 linker to call DT_FINI functions for shared libraries that have
1198 -diff -urNp linux-2.6.37.1/arch/alpha/include/asm/pgtable.h linux-2.6.37.1/arch/alpha/include/asm/pgtable.h
1199 ---- linux-2.6.37.1/arch/alpha/include/asm/pgtable.h 2011-01-04 19:50:19.000000000 -0500
1200 -+++ linux-2.6.37.1/arch/alpha/include/asm/pgtable.h 2011-01-17 02:41:00.000000000 -0500
1201 +diff -urNp linux-2.6.37.2/arch/alpha/include/asm/pgtable.h linux-2.6.37.2/arch/alpha/include/asm/pgtable.h
1202 +--- linux-2.6.37.2/arch/alpha/include/asm/pgtable.h 2011-01-04 19:50:19.000000000 -0500
1203 ++++ linux-2.6.37.2/arch/alpha/include/asm/pgtable.h 2011-01-17 02:41:00.000000000 -0500
1204 @@ -101,6 +101,17 @@ struct vm_area_struct;
1205 #define PAGE_SHARED __pgprot(_PAGE_VALID | __ACCESS_BITS)
1206 #define PAGE_COPY __pgprot(_PAGE_VALID | __ACCESS_BITS | _PAGE_FOW)
1207 @@ -51,9 +51,9 @@ diff -urNp linux-2.6.37.1/arch/alpha/include/asm/pgtable.h linux-2.6.37.1/arch/a
1208 #define PAGE_KERNEL __pgprot(_PAGE_VALID | _PAGE_ASM | _PAGE_KRE | _PAGE_KWE)
1209
1210 #define _PAGE_NORMAL(x) __pgprot(_PAGE_VALID | __ACCESS_BITS | (x))
1211 -diff -urNp linux-2.6.37.1/arch/alpha/kernel/module.c linux-2.6.37.1/arch/alpha/kernel/module.c
1212 ---- linux-2.6.37.1/arch/alpha/kernel/module.c 2011-01-04 19:50:19.000000000 -0500
1213 -+++ linux-2.6.37.1/arch/alpha/kernel/module.c 2011-01-17 02:41:00.000000000 -0500
1214 +diff -urNp linux-2.6.37.2/arch/alpha/kernel/module.c linux-2.6.37.2/arch/alpha/kernel/module.c
1215 +--- linux-2.6.37.2/arch/alpha/kernel/module.c 2011-01-04 19:50:19.000000000 -0500
1216 ++++ linux-2.6.37.2/arch/alpha/kernel/module.c 2011-01-17 02:41:00.000000000 -0500
1217 @@ -182,7 +182,7 @@ apply_relocate_add(Elf64_Shdr *sechdrs,
1218
1219 /* The small sections were sorted to the end of the segment.
1220 @@ -63,9 +63,9 @@ diff -urNp linux-2.6.37.1/arch/alpha/kernel/module.c linux-2.6.37.1/arch/alpha/k
1221 got = sechdrs[me->arch.gotsecindex].sh_addr;
1222
1223 for (i = 0; i < n; i++) {
1224 -diff -urNp linux-2.6.37.1/arch/alpha/kernel/osf_sys.c linux-2.6.37.1/arch/alpha/kernel/osf_sys.c
1225 ---- linux-2.6.37.1/arch/alpha/kernel/osf_sys.c 2011-01-04 19:50:19.000000000 -0500
1226 -+++ linux-2.6.37.1/arch/alpha/kernel/osf_sys.c 2011-01-17 02:41:00.000000000 -0500
1227 +diff -urNp linux-2.6.37.2/arch/alpha/kernel/osf_sys.c linux-2.6.37.2/arch/alpha/kernel/osf_sys.c
1228 +--- linux-2.6.37.2/arch/alpha/kernel/osf_sys.c 2011-01-04 19:50:19.000000000 -0500
1229 ++++ linux-2.6.37.2/arch/alpha/kernel/osf_sys.c 2011-01-17 02:41:00.000000000 -0500
1230 @@ -1165,7 +1165,7 @@ arch_get_unmapped_area_1(unsigned long a
1231 /* At this point: (!vma || addr < vma->vm_end). */
1232 if (limit - len < addr)
1233 @@ -97,9 +97,9 @@ diff -urNp linux-2.6.37.1/arch/alpha/kernel/osf_sys.c linux-2.6.37.1/arch/alpha/
1234 if (addr != (unsigned long) -ENOMEM)
1235 return addr;
1236
1237 -diff -urNp linux-2.6.37.1/arch/alpha/kernel/pci_iommu.c linux-2.6.37.1/arch/alpha/kernel/pci_iommu.c
1238 ---- linux-2.6.37.1/arch/alpha/kernel/pci_iommu.c 2011-01-04 19:50:19.000000000 -0500
1239 -+++ linux-2.6.37.1/arch/alpha/kernel/pci_iommu.c 2011-01-17 02:41:00.000000000 -0500
1240 +diff -urNp linux-2.6.37.2/arch/alpha/kernel/pci_iommu.c linux-2.6.37.2/arch/alpha/kernel/pci_iommu.c
1241 +--- linux-2.6.37.2/arch/alpha/kernel/pci_iommu.c 2011-01-04 19:50:19.000000000 -0500
1242 ++++ linux-2.6.37.2/arch/alpha/kernel/pci_iommu.c 2011-01-17 02:41:00.000000000 -0500
1243 @@ -950,7 +950,7 @@ static int alpha_pci_set_mask(struct dev
1244 return 0;
1245 }
1246 @@ -116,9 +116,9 @@ diff -urNp linux-2.6.37.1/arch/alpha/kernel/pci_iommu.c linux-2.6.37.1/arch/alph
1247 -struct dma_map_ops *dma_ops = &alpha_pci_ops;
1248 +const struct dma_map_ops *dma_ops = &alpha_pci_ops;
1249 EXPORT_SYMBOL(dma_ops);
1250 -diff -urNp linux-2.6.37.1/arch/alpha/kernel/pci-noop.c linux-2.6.37.1/arch/alpha/kernel/pci-noop.c
1251 ---- linux-2.6.37.1/arch/alpha/kernel/pci-noop.c 2011-01-04 19:50:19.000000000 -0500
1252 -+++ linux-2.6.37.1/arch/alpha/kernel/pci-noop.c 2011-01-17 02:41:00.000000000 -0500
1253 +diff -urNp linux-2.6.37.2/arch/alpha/kernel/pci-noop.c linux-2.6.37.2/arch/alpha/kernel/pci-noop.c
1254 +--- linux-2.6.37.2/arch/alpha/kernel/pci-noop.c 2011-01-04 19:50:19.000000000 -0500
1255 ++++ linux-2.6.37.2/arch/alpha/kernel/pci-noop.c 2011-01-17 02:41:00.000000000 -0500
1256 @@ -173,7 +173,7 @@ static int alpha_noop_set_mask(struct de
1257 return 0;
1258 }
1259 @@ -137,9 +137,9 @@ diff -urNp linux-2.6.37.1/arch/alpha/kernel/pci-noop.c linux-2.6.37.1/arch/alpha
1260 EXPORT_SYMBOL(dma_ops);
1261
1262 void __iomem *pci_iomap(struct pci_dev *dev, int bar, unsigned long maxlen)
1263 -diff -urNp linux-2.6.37.1/arch/alpha/mm/fault.c linux-2.6.37.1/arch/alpha/mm/fault.c
1264 ---- linux-2.6.37.1/arch/alpha/mm/fault.c 2011-01-04 19:50:19.000000000 -0500
1265 -+++ linux-2.6.37.1/arch/alpha/mm/fault.c 2011-01-17 02:41:00.000000000 -0500
1266 +diff -urNp linux-2.6.37.2/arch/alpha/mm/fault.c linux-2.6.37.2/arch/alpha/mm/fault.c
1267 +--- linux-2.6.37.2/arch/alpha/mm/fault.c 2011-01-04 19:50:19.000000000 -0500
1268 ++++ linux-2.6.37.2/arch/alpha/mm/fault.c 2011-01-17 02:41:00.000000000 -0500
1269 @@ -54,6 +54,124 @@ __load_new_mm_context(struct mm_struct *
1270 __reload_thread(pcb);
1271 }
1272 @@ -296,9 +296,9 @@ diff -urNp linux-2.6.37.1/arch/alpha/mm/fault.c linux-2.6.37.1/arch/alpha/mm/fau
1273 } else if (!cause) {
1274 /* Allow reads even for write-only mappings */
1275 if (!(vma->vm_flags & (VM_READ | VM_WRITE)))
1276 -diff -urNp linux-2.6.37.1/arch/arm/include/asm/elf.h linux-2.6.37.1/arch/arm/include/asm/elf.h
1277 ---- linux-2.6.37.1/arch/arm/include/asm/elf.h 2011-01-04 19:50:19.000000000 -0500
1278 -+++ linux-2.6.37.1/arch/arm/include/asm/elf.h 2011-01-17 02:41:00.000000000 -0500
1279 +diff -urNp linux-2.6.37.2/arch/arm/include/asm/elf.h linux-2.6.37.2/arch/arm/include/asm/elf.h
1280 +--- linux-2.6.37.2/arch/arm/include/asm/elf.h 2011-01-04 19:50:19.000000000 -0500
1281 ++++ linux-2.6.37.2/arch/arm/include/asm/elf.h 2011-01-17 02:41:00.000000000 -0500
1282 @@ -113,7 +113,14 @@ int dump_task_regs(struct task_struct *t
1283 the loader. We need to make sure that it is out of the way of the program
1284 that it will "exec", and that there is sufficient room for the brk. */
1285 @@ -326,9 +326,9 @@ diff -urNp linux-2.6.37.1/arch/arm/include/asm/elf.h linux-2.6.37.1/arch/arm/inc
1286 extern int vectors_user_mapping(void);
1287 #define arch_setup_additional_pages(bprm, uses_interp) vectors_user_mapping()
1288 #define ARCH_HAS_SETUP_ADDITIONAL_PAGES
1289 -diff -urNp linux-2.6.37.1/arch/arm/include/asm/kmap_types.h linux-2.6.37.1/arch/arm/include/asm/kmap_types.h
1290 ---- linux-2.6.37.1/arch/arm/include/asm/kmap_types.h 2011-01-04 19:50:19.000000000 -0500
1291 -+++ linux-2.6.37.1/arch/arm/include/asm/kmap_types.h 2011-01-17 02:41:00.000000000 -0500
1292 +diff -urNp linux-2.6.37.2/arch/arm/include/asm/kmap_types.h linux-2.6.37.2/arch/arm/include/asm/kmap_types.h
1293 +--- linux-2.6.37.2/arch/arm/include/asm/kmap_types.h 2011-01-04 19:50:19.000000000 -0500
1294 ++++ linux-2.6.37.2/arch/arm/include/asm/kmap_types.h 2011-01-17 02:41:00.000000000 -0500
1295 @@ -21,6 +21,7 @@ enum km_type {
1296 KM_L1_CACHE,
1297 KM_L2_CACHE,
1298 @@ -337,9 +337,9 @@ diff -urNp linux-2.6.37.1/arch/arm/include/asm/kmap_types.h linux-2.6.37.1/arch/
1299 KM_TYPE_NR
1300 };
1301
1302 -diff -urNp linux-2.6.37.1/arch/arm/include/asm/uaccess.h linux-2.6.37.1/arch/arm/include/asm/uaccess.h
1303 ---- linux-2.6.37.1/arch/arm/include/asm/uaccess.h 2011-01-04 19:50:19.000000000 -0500
1304 -+++ linux-2.6.37.1/arch/arm/include/asm/uaccess.h 2011-01-17 02:41:00.000000000 -0500
1305 +diff -urNp linux-2.6.37.2/arch/arm/include/asm/uaccess.h linux-2.6.37.2/arch/arm/include/asm/uaccess.h
1306 +--- linux-2.6.37.2/arch/arm/include/asm/uaccess.h 2011-01-04 19:50:19.000000000 -0500
1307 ++++ linux-2.6.37.2/arch/arm/include/asm/uaccess.h 2011-01-17 02:41:00.000000000 -0500
1308 @@ -403,6 +403,9 @@ extern unsigned long __must_check __strn
1309
1310 static inline unsigned long __must_check copy_from_user(void *to, const void __user *from, unsigned long n)
1311 @@ -360,9 +360,9 @@ diff -urNp linux-2.6.37.1/arch/arm/include/asm/uaccess.h linux-2.6.37.1/arch/arm
1312 if (access_ok(VERIFY_WRITE, to, n))
1313 n = __copy_to_user(to, from, n);
1314 return n;
1315 -diff -urNp linux-2.6.37.1/arch/arm/kernel/kgdb.c linux-2.6.37.1/arch/arm/kernel/kgdb.c
1316 ---- linux-2.6.37.1/arch/arm/kernel/kgdb.c 2011-01-04 19:50:19.000000000 -0500
1317 -+++ linux-2.6.37.1/arch/arm/kernel/kgdb.c 2011-01-17 02:41:00.000000000 -0500
1318 +diff -urNp linux-2.6.37.2/arch/arm/kernel/kgdb.c linux-2.6.37.2/arch/arm/kernel/kgdb.c
1319 +--- linux-2.6.37.2/arch/arm/kernel/kgdb.c 2011-01-04 19:50:19.000000000 -0500
1320 ++++ linux-2.6.37.2/arch/arm/kernel/kgdb.c 2011-01-17 02:41:00.000000000 -0500
1321 @@ -246,7 +246,7 @@ void kgdb_arch_exit(void)
1322 * and we handle the normal undef case within the do_undefinstr
1323 * handler.
1324 @@ -372,9 +372,9 @@ diff -urNp linux-2.6.37.1/arch/arm/kernel/kgdb.c linux-2.6.37.1/arch/arm/kernel/
1325 #ifndef __ARMEB__
1326 .gdb_bpt_instr = {0xfe, 0xde, 0xff, 0xe7}
1327 #else /* ! __ARMEB__ */
1328 -diff -urNp linux-2.6.37.1/arch/arm/kernel/process.c linux-2.6.37.1/arch/arm/kernel/process.c
1329 ---- linux-2.6.37.1/arch/arm/kernel/process.c 2011-01-04 19:50:19.000000000 -0500
1330 -+++ linux-2.6.37.1/arch/arm/kernel/process.c 2011-01-17 02:41:00.000000000 -0500
1331 +diff -urNp linux-2.6.37.2/arch/arm/kernel/process.c linux-2.6.37.2/arch/arm/kernel/process.c
1332 +--- linux-2.6.37.2/arch/arm/kernel/process.c 2011-01-04 19:50:19.000000000 -0500
1333 ++++ linux-2.6.37.2/arch/arm/kernel/process.c 2011-01-17 02:41:00.000000000 -0500
1334 @@ -28,7 +28,6 @@
1335 #include <linux/tick.h>
1336 #include <linux/utsname.h>
1337 @@ -396,9 +396,9 @@ diff -urNp linux-2.6.37.1/arch/arm/kernel/process.c linux-2.6.37.1/arch/arm/kern
1338 /*
1339 * The vectors page is always readable from user space for the
1340 * atomic helpers and the signal restart code. Let's declare a mapping
1341 -diff -urNp linux-2.6.37.1/arch/arm/mach-at91/pm.c linux-2.6.37.1/arch/arm/mach-at91/pm.c
1342 ---- linux-2.6.37.1/arch/arm/mach-at91/pm.c 2011-01-04 19:50:19.000000000 -0500
1343 -+++ linux-2.6.37.1/arch/arm/mach-at91/pm.c 2011-01-17 02:41:00.000000000 -0500
1344 +diff -urNp linux-2.6.37.2/arch/arm/mach-at91/pm.c linux-2.6.37.2/arch/arm/mach-at91/pm.c
1345 +--- linux-2.6.37.2/arch/arm/mach-at91/pm.c 2011-01-04 19:50:19.000000000 -0500
1346 ++++ linux-2.6.37.2/arch/arm/mach-at91/pm.c 2011-01-17 02:41:00.000000000 -0500
1347 @@ -301,7 +301,7 @@ static void at91_pm_end(void)
1348 }
1349
1350 @@ -408,9 +408,9 @@ diff -urNp linux-2.6.37.1/arch/arm/mach-at91/pm.c linux-2.6.37.1/arch/arm/mach-a
1351 .valid = at91_pm_valid_state,
1352 .begin = at91_pm_begin,
1353 .enter = at91_pm_enter,
1354 -diff -urNp linux-2.6.37.1/arch/arm/mach-davinci/pm.c linux-2.6.37.1/arch/arm/mach-davinci/pm.c
1355 ---- linux-2.6.37.1/arch/arm/mach-davinci/pm.c 2011-01-04 19:50:19.000000000 -0500
1356 -+++ linux-2.6.37.1/arch/arm/mach-davinci/pm.c 2011-01-17 02:41:00.000000000 -0500
1357 +diff -urNp linux-2.6.37.2/arch/arm/mach-davinci/pm.c linux-2.6.37.2/arch/arm/mach-davinci/pm.c
1358 +--- linux-2.6.37.2/arch/arm/mach-davinci/pm.c 2011-01-04 19:50:19.000000000 -0500
1359 ++++ linux-2.6.37.2/arch/arm/mach-davinci/pm.c 2011-01-17 02:41:00.000000000 -0500
1360 @@ -110,7 +110,7 @@ static int davinci_pm_enter(suspend_stat
1361 return ret;
1362 }
1363 @@ -420,9 +420,9 @@ diff -urNp linux-2.6.37.1/arch/arm/mach-davinci/pm.c linux-2.6.37.1/arch/arm/mac
1364 .enter = davinci_pm_enter,
1365 .valid = suspend_valid_only_mem,
1366 };
1367 -diff -urNp linux-2.6.37.1/arch/arm/mach-imx/pm-imx27.c linux-2.6.37.1/arch/arm/mach-imx/pm-imx27.c
1368 ---- linux-2.6.37.1/arch/arm/mach-imx/pm-imx27.c 2011-01-04 19:50:19.000000000 -0500
1369 -+++ linux-2.6.37.1/arch/arm/mach-imx/pm-imx27.c 2011-01-17 02:41:00.000000000 -0500
1370 +diff -urNp linux-2.6.37.2/arch/arm/mach-imx/pm-imx27.c linux-2.6.37.2/arch/arm/mach-imx/pm-imx27.c
1371 +--- linux-2.6.37.2/arch/arm/mach-imx/pm-imx27.c 2011-01-04 19:50:19.000000000 -0500
1372 ++++ linux-2.6.37.2/arch/arm/mach-imx/pm-imx27.c 2011-01-17 02:41:00.000000000 -0500
1373 @@ -32,7 +32,7 @@ static int mx27_suspend_enter(suspend_st
1374 return 0;
1375 }
1376 @@ -432,9 +432,9 @@ diff -urNp linux-2.6.37.1/arch/arm/mach-imx/pm-imx27.c linux-2.6.37.1/arch/arm/m
1377 .enter = mx27_suspend_enter,
1378 .valid = suspend_valid_only_mem,
1379 };
1380 -diff -urNp linux-2.6.37.1/arch/arm/mach-lpc32xx/pm.c linux-2.6.37.1/arch/arm/mach-lpc32xx/pm.c
1381 ---- linux-2.6.37.1/arch/arm/mach-lpc32xx/pm.c 2011-01-04 19:50:19.000000000 -0500
1382 -+++ linux-2.6.37.1/arch/arm/mach-lpc32xx/pm.c 2011-01-17 02:41:00.000000000 -0500
1383 +diff -urNp linux-2.6.37.2/arch/arm/mach-lpc32xx/pm.c linux-2.6.37.2/arch/arm/mach-lpc32xx/pm.c
1384 +--- linux-2.6.37.2/arch/arm/mach-lpc32xx/pm.c 2011-01-04 19:50:19.000000000 -0500
1385 ++++ linux-2.6.37.2/arch/arm/mach-lpc32xx/pm.c 2011-01-17 02:41:00.000000000 -0500
1386 @@ -123,7 +123,7 @@ static int lpc32xx_pm_enter(suspend_stat
1387 return 0;
1388 }
1389 @@ -444,9 +444,9 @@ diff -urNp linux-2.6.37.1/arch/arm/mach-lpc32xx/pm.c linux-2.6.37.1/arch/arm/mac
1390 .valid = suspend_valid_only_mem,
1391 .enter = lpc32xx_pm_enter,
1392 };
1393 -diff -urNp linux-2.6.37.1/arch/arm/mach-msm/last_radio_log.c linux-2.6.37.1/arch/arm/mach-msm/last_radio_log.c
1394 ---- linux-2.6.37.1/arch/arm/mach-msm/last_radio_log.c 2011-01-04 19:50:19.000000000 -0500
1395 -+++ linux-2.6.37.1/arch/arm/mach-msm/last_radio_log.c 2011-01-17 02:41:00.000000000 -0500
1396 +diff -urNp linux-2.6.37.2/arch/arm/mach-msm/last_radio_log.c linux-2.6.37.2/arch/arm/mach-msm/last_radio_log.c
1397 +--- linux-2.6.37.2/arch/arm/mach-msm/last_radio_log.c 2011-01-04 19:50:19.000000000 -0500
1398 ++++ linux-2.6.37.2/arch/arm/mach-msm/last_radio_log.c 2011-01-17 02:41:00.000000000 -0500
1399 @@ -47,6 +47,7 @@ static ssize_t last_radio_log_read(struc
1400 return count;
1401 }
1402 @@ -455,9 +455,9 @@ diff -urNp linux-2.6.37.1/arch/arm/mach-msm/last_radio_log.c linux-2.6.37.1/arch
1403 static struct file_operations last_radio_log_fops = {
1404 .read = last_radio_log_read,
1405 .llseek = default_llseek,
1406 -diff -urNp linux-2.6.37.1/arch/arm/mach-omap1/pm.c linux-2.6.37.1/arch/arm/mach-omap1/pm.c
1407 ---- linux-2.6.37.1/arch/arm/mach-omap1/pm.c 2011-01-04 19:50:19.000000000 -0500
1408 -+++ linux-2.6.37.1/arch/arm/mach-omap1/pm.c 2011-01-17 02:41:00.000000000 -0500
1409 +diff -urNp linux-2.6.37.2/arch/arm/mach-omap1/pm.c linux-2.6.37.2/arch/arm/mach-omap1/pm.c
1410 +--- linux-2.6.37.2/arch/arm/mach-omap1/pm.c 2011-01-04 19:50:19.000000000 -0500
1411 ++++ linux-2.6.37.2/arch/arm/mach-omap1/pm.c 2011-01-17 02:41:00.000000000 -0500
1412 @@ -647,7 +647,7 @@ static struct irqaction omap_wakeup_irq
1413
1414
1415 @@ -467,9 +467,21 @@ diff -urNp linux-2.6.37.1/arch/arm/mach-omap1/pm.c linux-2.6.37.1/arch/arm/mach-
1416 .prepare = omap_pm_prepare,
1417 .enter = omap_pm_enter,
1418 .finish = omap_pm_finish,
1419 -diff -urNp linux-2.6.37.1/arch/arm/mach-omap2/pm24xx.c linux-2.6.37.1/arch/arm/mach-omap2/pm24xx.c
1420 ---- linux-2.6.37.1/arch/arm/mach-omap2/pm24xx.c 2011-01-04 19:50:19.000000000 -0500
1421 -+++ linux-2.6.37.1/arch/arm/mach-omap2/pm24xx.c 2011-01-17 02:41:00.000000000 -0500
1422 +diff -urNp linux-2.6.37.2/arch/arm/mach-omap2/mux.c linux-2.6.37.2/arch/arm/mach-omap2/mux.c
1423 +--- linux-2.6.37.2/arch/arm/mach-omap2/mux.c 2011-01-04 19:50:19.000000000 -0500
1424 ++++ linux-2.6.37.2/arch/arm/mach-omap2/mux.c 2011-02-27 15:27:38.000000000 -0500
1425 +@@ -393,7 +393,7 @@ static void __init omap_mux_dbg_init(voi
1426 + list_for_each_entry(e, &muxmodes, node) {
1427 + struct omap_mux *m = &e->mux;
1428 +
1429 +- (void)debugfs_create_file(m->muxnames[0], S_IWUGO, mux_dbg_dir,
1430 ++ (void)debugfs_create_file(m->muxnames[0], S_IWUSR, mux_dbg_dir,
1431 + m, &omap_mux_dbg_signal_fops);
1432 + }
1433 + }
1434 +diff -urNp linux-2.6.37.2/arch/arm/mach-omap2/pm24xx.c linux-2.6.37.2/arch/arm/mach-omap2/pm24xx.c
1435 +--- linux-2.6.37.2/arch/arm/mach-omap2/pm24xx.c 2011-01-04 19:50:19.000000000 -0500
1436 ++++ linux-2.6.37.2/arch/arm/mach-omap2/pm24xx.c 2011-01-17 02:41:00.000000000 -0500
1437 @@ -359,7 +359,7 @@ static void omap2_pm_end(void)
1438 suspend_state = PM_SUSPEND_ON;
1439 }
1440 @@ -479,9 +491,9 @@ diff -urNp linux-2.6.37.1/arch/arm/mach-omap2/pm24xx.c linux-2.6.37.1/arch/arm/m
1441 .begin = omap2_pm_begin,
1442 .prepare = omap2_pm_prepare,
1443 .enter = omap2_pm_enter,
1444 -diff -urNp linux-2.6.37.1/arch/arm/mach-omap2/pm34xx.c linux-2.6.37.1/arch/arm/mach-omap2/pm34xx.c
1445 ---- linux-2.6.37.1/arch/arm/mach-omap2/pm34xx.c 2011-01-04 19:50:19.000000000 -0500
1446 -+++ linux-2.6.37.1/arch/arm/mach-omap2/pm34xx.c 2011-01-17 02:41:00.000000000 -0500
1447 +diff -urNp linux-2.6.37.2/arch/arm/mach-omap2/pm34xx.c linux-2.6.37.2/arch/arm/mach-omap2/pm34xx.c
1448 +--- linux-2.6.37.2/arch/arm/mach-omap2/pm34xx.c 2011-01-04 19:50:19.000000000 -0500
1449 ++++ linux-2.6.37.2/arch/arm/mach-omap2/pm34xx.c 2011-01-17 02:41:00.000000000 -0500
1450 @@ -617,7 +617,7 @@ static void omap3_pm_end(void)
1451 return;
1452 }
1453 @@ -491,9 +503,9 @@ diff -urNp linux-2.6.37.1/arch/arm/mach-omap2/pm34xx.c linux-2.6.37.1/arch/arm/m
1454 .begin = omap3_pm_begin,
1455 .end = omap3_pm_end,
1456 .prepare = omap3_pm_prepare,
1457 -diff -urNp linux-2.6.37.1/arch/arm/mach-omap2/pm44xx.c linux-2.6.37.1/arch/arm/mach-omap2/pm44xx.c
1458 ---- linux-2.6.37.1/arch/arm/mach-omap2/pm44xx.c 2011-01-04 19:50:19.000000000 -0500
1459 -+++ linux-2.6.37.1/arch/arm/mach-omap2/pm44xx.c 2011-01-17 02:41:00.000000000 -0500
1460 +diff -urNp linux-2.6.37.2/arch/arm/mach-omap2/pm44xx.c linux-2.6.37.2/arch/arm/mach-omap2/pm44xx.c
1461 +--- linux-2.6.37.2/arch/arm/mach-omap2/pm44xx.c 2011-01-04 19:50:19.000000000 -0500
1462 ++++ linux-2.6.37.2/arch/arm/mach-omap2/pm44xx.c 2011-01-17 02:41:00.000000000 -0500
1463 @@ -75,7 +75,7 @@ static void omap4_pm_end(void)
1464 return;
1465 }
1466 @@ -503,9 +515,31 @@ diff -urNp linux-2.6.37.1/arch/arm/mach-omap2/pm44xx.c linux-2.6.37.1/arch/arm/m
1467 .begin = omap4_pm_begin,
1468 .end = omap4_pm_end,
1469 .prepare = omap4_pm_prepare,
1470 -diff -urNp linux-2.6.37.1/arch/arm/mach-pnx4008/pm.c linux-2.6.37.1/arch/arm/mach-pnx4008/pm.c
1471 ---- linux-2.6.37.1/arch/arm/mach-pnx4008/pm.c 2011-01-04 19:50:19.000000000 -0500
1472 -+++ linux-2.6.37.1/arch/arm/mach-pnx4008/pm.c 2011-01-17 02:41:00.000000000 -0500
1473 +diff -urNp linux-2.6.37.2/arch/arm/mach-omap2/pm-debug.c linux-2.6.37.2/arch/arm/mach-omap2/pm-debug.c
1474 +--- linux-2.6.37.2/arch/arm/mach-omap2/pm-debug.c 2011-01-04 19:50:19.000000000 -0500
1475 ++++ linux-2.6.37.2/arch/arm/mach-omap2/pm-debug.c 2011-02-27 15:28:01.000000000 -0500
1476 +@@ -632,14 +632,14 @@ static int __init pm_dbg_init(void)
1477 +
1478 + }
1479 +
1480 +- (void) debugfs_create_file("enable_off_mode", S_IRUGO | S_IWUGO, d,
1481 ++ (void) debugfs_create_file("enable_off_mode", S_IRUGO | S_IWUSR, d,
1482 + &enable_off_mode, &pm_dbg_option_fops);
1483 +- (void) debugfs_create_file("sleep_while_idle", S_IRUGO | S_IWUGO, d,
1484 ++ (void) debugfs_create_file("sleep_while_idle", S_IRUGO | S_IWUSR, d,
1485 + &sleep_while_idle, &pm_dbg_option_fops);
1486 +- (void) debugfs_create_file("wakeup_timer_seconds", S_IRUGO | S_IWUGO, d,
1487 ++ (void) debugfs_create_file("wakeup_timer_seconds", S_IRUGO | S_IWUSR, d,
1488 + &wakeup_timer_seconds, &pm_dbg_option_fops);
1489 + (void) debugfs_create_file("wakeup_timer_milliseconds",
1490 +- S_IRUGO | S_IWUGO, d, &wakeup_timer_milliseconds,
1491 ++ S_IRUGO | S_IWUSR, d, &wakeup_timer_milliseconds,
1492 + &pm_dbg_option_fops);
1493 + pm_dbg_init_done = 1;
1494 +
1495 +diff -urNp linux-2.6.37.2/arch/arm/mach-pnx4008/pm.c linux-2.6.37.2/arch/arm/mach-pnx4008/pm.c
1496 +--- linux-2.6.37.2/arch/arm/mach-pnx4008/pm.c 2011-01-04 19:50:19.000000000 -0500
1497 ++++ linux-2.6.37.2/arch/arm/mach-pnx4008/pm.c 2011-01-17 02:41:00.000000000 -0500
1498 @@ -119,7 +119,7 @@ static int pnx4008_pm_valid(suspend_stat
1499 (state == PM_SUSPEND_MEM);
1500 }
1501 @@ -515,9 +549,9 @@ diff -urNp linux-2.6.37.1/arch/arm/mach-pnx4008/pm.c linux-2.6.37.1/arch/arm/mac
1502 .enter = pnx4008_pm_enter,
1503 .valid = pnx4008_pm_valid,
1504 };
1505 -diff -urNp linux-2.6.37.1/arch/arm/mach-pxa/pm.c linux-2.6.37.1/arch/arm/mach-pxa/pm.c
1506 ---- linux-2.6.37.1/arch/arm/mach-pxa/pm.c 2011-01-04 19:50:19.000000000 -0500
1507 -+++ linux-2.6.37.1/arch/arm/mach-pxa/pm.c 2011-01-17 02:41:00.000000000 -0500
1508 +diff -urNp linux-2.6.37.2/arch/arm/mach-pxa/pm.c linux-2.6.37.2/arch/arm/mach-pxa/pm.c
1509 +--- linux-2.6.37.2/arch/arm/mach-pxa/pm.c 2011-01-04 19:50:19.000000000 -0500
1510 ++++ linux-2.6.37.2/arch/arm/mach-pxa/pm.c 2011-01-17 02:41:00.000000000 -0500
1511 @@ -96,7 +96,7 @@ void pxa_pm_finish(void)
1512 pxa_cpu_pm_fns->finish();
1513 }
1514 @@ -527,9 +561,9 @@ diff -urNp linux-2.6.37.1/arch/arm/mach-pxa/pm.c linux-2.6.37.1/arch/arm/mach-px
1515 .valid = pxa_pm_valid,
1516 .enter = pxa_pm_enter,
1517 .prepare = pxa_pm_prepare,
1518 -diff -urNp linux-2.6.37.1/arch/arm/mach-pxa/sharpsl_pm.c linux-2.6.37.1/arch/arm/mach-pxa/sharpsl_pm.c
1519 ---- linux-2.6.37.1/arch/arm/mach-pxa/sharpsl_pm.c 2011-01-04 19:50:19.000000000 -0500
1520 -+++ linux-2.6.37.1/arch/arm/mach-pxa/sharpsl_pm.c 2011-01-17 02:41:00.000000000 -0500
1521 +diff -urNp linux-2.6.37.2/arch/arm/mach-pxa/sharpsl_pm.c linux-2.6.37.2/arch/arm/mach-pxa/sharpsl_pm.c
1522 +--- linux-2.6.37.2/arch/arm/mach-pxa/sharpsl_pm.c 2011-01-04 19:50:19.000000000 -0500
1523 ++++ linux-2.6.37.2/arch/arm/mach-pxa/sharpsl_pm.c 2011-01-17 02:41:00.000000000 -0500
1524 @@ -868,7 +868,7 @@ static void sharpsl_apm_get_power_status
1525 }
1526
1527 @@ -539,9 +573,9 @@ diff -urNp linux-2.6.37.1/arch/arm/mach-pxa/sharpsl_pm.c linux-2.6.37.1/arch/arm
1528 .prepare = pxa_pm_prepare,
1529 .finish = pxa_pm_finish,
1530 .enter = corgi_pxa_pm_enter,
1531 -diff -urNp linux-2.6.37.1/arch/arm/mach-sa1100/pm.c linux-2.6.37.1/arch/arm/mach-sa1100/pm.c
1532 ---- linux-2.6.37.1/arch/arm/mach-sa1100/pm.c 2011-01-04 19:50:19.000000000 -0500
1533 -+++ linux-2.6.37.1/arch/arm/mach-sa1100/pm.c 2011-01-17 02:41:00.000000000 -0500
1534 +diff -urNp linux-2.6.37.2/arch/arm/mach-sa1100/pm.c linux-2.6.37.2/arch/arm/mach-sa1100/pm.c
1535 +--- linux-2.6.37.2/arch/arm/mach-sa1100/pm.c 2011-01-04 19:50:19.000000000 -0500
1536 ++++ linux-2.6.37.2/arch/arm/mach-sa1100/pm.c 2011-01-17 02:41:00.000000000 -0500
1537 @@ -120,7 +120,7 @@ unsigned long sleep_phys_sp(void *sp)
1538 return virt_to_phys(sp);
1539 }
1540 @@ -551,9 +585,21 @@ diff -urNp linux-2.6.37.1/arch/arm/mach-sa1100/pm.c linux-2.6.37.1/arch/arm/mach
1541 .enter = sa11x0_pm_enter,
1542 .valid = suspend_valid_only_mem,
1543 };
1544 -diff -urNp linux-2.6.37.1/arch/arm/mm/fault.c linux-2.6.37.1/arch/arm/mm/fault.c
1545 ---- linux-2.6.37.1/arch/arm/mm/fault.c 2011-01-04 19:50:19.000000000 -0500
1546 -+++ linux-2.6.37.1/arch/arm/mm/fault.c 2011-01-17 02:41:00.000000000 -0500
1547 +diff -urNp linux-2.6.37.2/arch/arm/mach-ux500/mbox.c linux-2.6.37.2/arch/arm/mach-ux500/mbox.c
1548 +--- linux-2.6.37.2/arch/arm/mach-ux500/mbox.c 2011-01-04 19:50:19.000000000 -0500
1549 ++++ linux-2.6.37.2/arch/arm/mach-ux500/mbox.c 2011-02-27 15:26:39.000000000 -0500
1550 +@@ -168,7 +168,7 @@ static ssize_t mbox_read_fifo(struct dev
1551 + return sprintf(buf, "0x%X\n", mbox_value);
1552 + }
1553 +
1554 +-static DEVICE_ATTR(fifo, S_IWUGO | S_IRUGO, mbox_read_fifo, mbox_write_fifo);
1555 ++static DEVICE_ATTR(fifo, S_IWUSR | S_IRUGO, mbox_read_fifo, mbox_write_fifo);
1556 +
1557 + static int mbox_show(struct seq_file *s, void *data)
1558 + {
1559 +diff -urNp linux-2.6.37.2/arch/arm/mm/fault.c linux-2.6.37.2/arch/arm/mm/fault.c
1560 +--- linux-2.6.37.2/arch/arm/mm/fault.c 2011-01-04 19:50:19.000000000 -0500
1561 ++++ linux-2.6.37.2/arch/arm/mm/fault.c 2011-01-17 02:41:00.000000000 -0500
1562 @@ -167,6 +167,13 @@ __do_user_fault(struct task_struct *tsk,
1563 }
1564 #endif
1565 @@ -602,9 +648,9 @@ diff -urNp linux-2.6.37.1/arch/arm/mm/fault.c linux-2.6.37.1/arch/arm/mm/fault.c
1566 /*
1567 * First Level Translation Fault Handler
1568 *
1569 -diff -urNp linux-2.6.37.1/arch/arm/mm/mmap.c linux-2.6.37.1/arch/arm/mm/mmap.c
1570 ---- linux-2.6.37.1/arch/arm/mm/mmap.c 2011-01-04 19:50:19.000000000 -0500
1571 -+++ linux-2.6.37.1/arch/arm/mm/mmap.c 2011-01-17 02:41:00.000000000 -0500
1572 +diff -urNp linux-2.6.37.2/arch/arm/mm/mmap.c linux-2.6.37.2/arch/arm/mm/mmap.c
1573 +--- linux-2.6.37.2/arch/arm/mm/mmap.c 2011-01-04 19:50:19.000000000 -0500
1574 ++++ linux-2.6.37.2/arch/arm/mm/mmap.c 2011-01-17 02:41:00.000000000 -0500
1575 @@ -64,6 +64,10 @@ arch_get_unmapped_area(struct file *filp
1576 if (len > TASK_SIZE)
1577 return -ENOMEM;
1578 @@ -654,9 +700,9 @@ diff -urNp linux-2.6.37.1/arch/arm/mm/mmap.c linux-2.6.37.1/arch/arm/mm/mmap.c
1579 /*
1580 * Remember the place where we stopped the search:
1581 */
1582 -diff -urNp linux-2.6.37.1/arch/arm/plat-samsung/pm.c linux-2.6.37.1/arch/arm/plat-samsung/pm.c
1583 ---- linux-2.6.37.1/arch/arm/plat-samsung/pm.c 2011-01-04 19:50:19.000000000 -0500
1584 -+++ linux-2.6.37.1/arch/arm/plat-samsung/pm.c 2011-01-17 02:41:00.000000000 -0500
1585 +diff -urNp linux-2.6.37.2/arch/arm/plat-samsung/pm.c linux-2.6.37.2/arch/arm/plat-samsung/pm.c
1586 +--- linux-2.6.37.2/arch/arm/plat-samsung/pm.c 2011-01-04 19:50:19.000000000 -0500
1587 ++++ linux-2.6.37.2/arch/arm/plat-samsung/pm.c 2011-01-17 02:41:00.000000000 -0500
1588 @@ -355,7 +355,7 @@ static void s3c_pm_finish(void)
1589 s3c_pm_check_cleanup();
1590 }
1591 @@ -666,9 +712,9 @@ diff -urNp linux-2.6.37.1/arch/arm/plat-samsung/pm.c linux-2.6.37.1/arch/arm/pla
1592 .enter = s3c_pm_enter,
1593 .prepare = s3c_pm_prepare,
1594 .finish = s3c_pm_finish,
1595 -diff -urNp linux-2.6.37.1/arch/avr32/include/asm/elf.h linux-2.6.37.1/arch/avr32/include/asm/elf.h
1596 ---- linux-2.6.37.1/arch/avr32/include/asm/elf.h 2011-01-04 19:50:19.000000000 -0500
1597 -+++ linux-2.6.37.1/arch/avr32/include/asm/elf.h 2011-01-17 02:41:00.000000000 -0500
1598 +diff -urNp linux-2.6.37.2/arch/avr32/include/asm/elf.h linux-2.6.37.2/arch/avr32/include/asm/elf.h
1599 +--- linux-2.6.37.2/arch/avr32/include/asm/elf.h 2011-01-04 19:50:19.000000000 -0500
1600 ++++ linux-2.6.37.2/arch/avr32/include/asm/elf.h 2011-01-17 02:41:00.000000000 -0500
1601 @@ -84,8 +84,14 @@ typedef struct user_fpu_struct elf_fpreg
1602 the loader. We need to make sure that it is out of the way of the program
1603 that it will "exec", and that there is sufficient room for the brk. */
1604 @@ -685,9 +731,9 @@ diff -urNp linux-2.6.37.1/arch/avr32/include/asm/elf.h linux-2.6.37.1/arch/avr32
1605
1606 /* This yields a mask that user programs can use to figure out what
1607 instruction set this CPU supports. This could be done in user space,
1608 -diff -urNp linux-2.6.37.1/arch/avr32/include/asm/kmap_types.h linux-2.6.37.1/arch/avr32/include/asm/kmap_types.h
1609 ---- linux-2.6.37.1/arch/avr32/include/asm/kmap_types.h 2011-01-04 19:50:19.000000000 -0500
1610 -+++ linux-2.6.37.1/arch/avr32/include/asm/kmap_types.h 2011-01-17 02:41:00.000000000 -0500
1611 +diff -urNp linux-2.6.37.2/arch/avr32/include/asm/kmap_types.h linux-2.6.37.2/arch/avr32/include/asm/kmap_types.h
1612 +--- linux-2.6.37.2/arch/avr32/include/asm/kmap_types.h 2011-01-04 19:50:19.000000000 -0500
1613 ++++ linux-2.6.37.2/arch/avr32/include/asm/kmap_types.h 2011-01-17 02:41:00.000000000 -0500
1614 @@ -22,7 +22,8 @@ D(10) KM_IRQ0,
1615 D(11) KM_IRQ1,
1616 D(12) KM_SOFTIRQ0,
1617 @@ -698,9 +744,9 @@ diff -urNp linux-2.6.37.1/arch/avr32/include/asm/kmap_types.h linux-2.6.37.1/arc
1618 };
1619
1620 #undef D
1621 -diff -urNp linux-2.6.37.1/arch/avr32/mach-at32ap/pm.c linux-2.6.37.1/arch/avr32/mach-at32ap/pm.c
1622 ---- linux-2.6.37.1/arch/avr32/mach-at32ap/pm.c 2011-01-04 19:50:19.000000000 -0500
1623 -+++ linux-2.6.37.1/arch/avr32/mach-at32ap/pm.c 2011-01-17 02:41:00.000000000 -0500
1624 +diff -urNp linux-2.6.37.2/arch/avr32/mach-at32ap/pm.c linux-2.6.37.2/arch/avr32/mach-at32ap/pm.c
1625 +--- linux-2.6.37.2/arch/avr32/mach-at32ap/pm.c 2011-01-04 19:50:19.000000000 -0500
1626 ++++ linux-2.6.37.2/arch/avr32/mach-at32ap/pm.c 2011-01-17 02:41:00.000000000 -0500
1627 @@ -176,7 +176,7 @@ out:
1628 return 0;
1629 }
1630 @@ -710,9 +756,9 @@ diff -urNp linux-2.6.37.1/arch/avr32/mach-at32ap/pm.c linux-2.6.37.1/arch/avr32/
1631 .valid = avr32_pm_valid_state,
1632 .enter = avr32_pm_enter,
1633 };
1634 -diff -urNp linux-2.6.37.1/arch/avr32/mm/fault.c linux-2.6.37.1/arch/avr32/mm/fault.c
1635 ---- linux-2.6.37.1/arch/avr32/mm/fault.c 2011-01-04 19:50:19.000000000 -0500
1636 -+++ linux-2.6.37.1/arch/avr32/mm/fault.c 2011-01-17 02:41:00.000000000 -0500
1637 +diff -urNp linux-2.6.37.2/arch/avr32/mm/fault.c linux-2.6.37.2/arch/avr32/mm/fault.c
1638 +--- linux-2.6.37.2/arch/avr32/mm/fault.c 2011-01-04 19:50:19.000000000 -0500
1639 ++++ linux-2.6.37.2/arch/avr32/mm/fault.c 2011-01-17 02:41:00.000000000 -0500
1640 @@ -41,6 +41,23 @@ static inline int notify_page_fault(stru
1641
1642 int exception_trace = 1;
1643 @@ -754,9 +800,9 @@ diff -urNp linux-2.6.37.1/arch/avr32/mm/fault.c linux-2.6.37.1/arch/avr32/mm/fau
1644 if (exception_trace && printk_ratelimit())
1645 printk("%s%s[%d]: segfault at %08lx pc %08lx "
1646 "sp %08lx ecr %lu\n",
1647 -diff -urNp linux-2.6.37.1/arch/blackfin/kernel/kgdb.c linux-2.6.37.1/arch/blackfin/kernel/kgdb.c
1648 ---- linux-2.6.37.1/arch/blackfin/kernel/kgdb.c 2011-01-04 19:50:19.000000000 -0500
1649 -+++ linux-2.6.37.1/arch/blackfin/kernel/kgdb.c 2011-01-17 02:41:00.000000000 -0500
1650 +diff -urNp linux-2.6.37.2/arch/blackfin/kernel/kgdb.c linux-2.6.37.2/arch/blackfin/kernel/kgdb.c
1651 +--- linux-2.6.37.2/arch/blackfin/kernel/kgdb.c 2011-01-04 19:50:19.000000000 -0500
1652 ++++ linux-2.6.37.2/arch/blackfin/kernel/kgdb.c 2011-01-17 02:41:00.000000000 -0500
1653 @@ -397,7 +397,7 @@ int kgdb_arch_handle_exception(int vecto
1654 return -1; /* this means that we do not want to exit from the handler */
1655 }
1656 @@ -766,9 +812,9 @@ diff -urNp linux-2.6.37.1/arch/blackfin/kernel/kgdb.c linux-2.6.37.1/arch/blackf
1657 .gdb_bpt_instr = {0xa1},
1658 #ifdef CONFIG_SMP
1659 .flags = KGDB_HW_BREAKPOINT|KGDB_THR_PROC_SWAP,
1660 -diff -urNp linux-2.6.37.1/arch/blackfin/mach-common/pm.c linux-2.6.37.1/arch/blackfin/mach-common/pm.c
1661 ---- linux-2.6.37.1/arch/blackfin/mach-common/pm.c 2011-01-04 19:50:19.000000000 -0500
1662 -+++ linux-2.6.37.1/arch/blackfin/mach-common/pm.c 2011-01-17 02:41:00.000000000 -0500
1663 +diff -urNp linux-2.6.37.2/arch/blackfin/mach-common/pm.c linux-2.6.37.2/arch/blackfin/mach-common/pm.c
1664 +--- linux-2.6.37.2/arch/blackfin/mach-common/pm.c 2011-01-04 19:50:19.000000000 -0500
1665 ++++ linux-2.6.37.2/arch/blackfin/mach-common/pm.c 2011-01-17 02:41:00.000000000 -0500
1666 @@ -233,7 +233,7 @@ static int bfin_pm_enter(suspend_state_t
1667 return 0;
1668 }
1669 @@ -778,9 +824,9 @@ diff -urNp linux-2.6.37.1/arch/blackfin/mach-common/pm.c linux-2.6.37.1/arch/bla
1670 .enter = bfin_pm_enter,
1671 .valid = bfin_pm_valid,
1672 };
1673 -diff -urNp linux-2.6.37.1/arch/blackfin/mm/maccess.c linux-2.6.37.1/arch/blackfin/mm/maccess.c
1674 ---- linux-2.6.37.1/arch/blackfin/mm/maccess.c 2011-01-04 19:50:19.000000000 -0500
1675 -+++ linux-2.6.37.1/arch/blackfin/mm/maccess.c 2011-01-17 02:41:00.000000000 -0500
1676 +diff -urNp linux-2.6.37.2/arch/blackfin/mm/maccess.c linux-2.6.37.2/arch/blackfin/mm/maccess.c
1677 +--- linux-2.6.37.2/arch/blackfin/mm/maccess.c 2011-01-04 19:50:19.000000000 -0500
1678 ++++ linux-2.6.37.2/arch/blackfin/mm/maccess.c 2011-01-17 02:41:00.000000000 -0500
1679 @@ -16,7 +16,7 @@ static int validate_memory_access_addres
1680 return bfin_mem_access_type(addr, size);
1681 }
1682 @@ -799,9 +845,9 @@ diff -urNp linux-2.6.37.1/arch/blackfin/mm/maccess.c linux-2.6.37.1/arch/blackfi
1683 {
1684 unsigned long ldst = (unsigned long)dst;
1685 int mem_type;
1686 -diff -urNp linux-2.6.37.1/arch/frv/include/asm/kmap_types.h linux-2.6.37.1/arch/frv/include/asm/kmap_types.h
1687 ---- linux-2.6.37.1/arch/frv/include/asm/kmap_types.h 2011-01-04 19:50:19.000000000 -0500
1688 -+++ linux-2.6.37.1/arch/frv/include/asm/kmap_types.h 2011-01-17 02:41:00.000000000 -0500
1689 +diff -urNp linux-2.6.37.2/arch/frv/include/asm/kmap_types.h linux-2.6.37.2/arch/frv/include/asm/kmap_types.h
1690 +--- linux-2.6.37.2/arch/frv/include/asm/kmap_types.h 2011-01-04 19:50:19.000000000 -0500
1691 ++++ linux-2.6.37.2/arch/frv/include/asm/kmap_types.h 2011-01-17 02:41:00.000000000 -0500
1692 @@ -23,6 +23,7 @@ enum km_type {
1693 KM_IRQ1,
1694 KM_SOFTIRQ0,
1695 @@ -810,9 +856,9 @@ diff -urNp linux-2.6.37.1/arch/frv/include/asm/kmap_types.h linux-2.6.37.1/arch/
1696 KM_TYPE_NR
1697 };
1698
1699 -diff -urNp linux-2.6.37.1/arch/frv/mm/elf-fdpic.c linux-2.6.37.1/arch/frv/mm/elf-fdpic.c
1700 ---- linux-2.6.37.1/arch/frv/mm/elf-fdpic.c 2011-01-04 19:50:19.000000000 -0500
1701 -+++ linux-2.6.37.1/arch/frv/mm/elf-fdpic.c 2011-01-17 02:41:00.000000000 -0500
1702 +diff -urNp linux-2.6.37.2/arch/frv/mm/elf-fdpic.c linux-2.6.37.2/arch/frv/mm/elf-fdpic.c
1703 +--- linux-2.6.37.2/arch/frv/mm/elf-fdpic.c 2011-01-04 19:50:19.000000000 -0500
1704 ++++ linux-2.6.37.2/arch/frv/mm/elf-fdpic.c 2011-01-17 02:41:00.000000000 -0500
1705 @@ -73,8 +73,7 @@ unsigned long arch_get_unmapped_area(str
1706 if (addr) {
1707 addr = PAGE_ALIGN(addr);
1708 @@ -841,9 +887,9 @@ diff -urNp linux-2.6.37.1/arch/frv/mm/elf-fdpic.c linux-2.6.37.1/arch/frv/mm/elf
1709 goto success;
1710 addr = vma->vm_end;
1711 }
1712 -diff -urNp linux-2.6.37.1/arch/ia64/hp/common/hwsw_iommu.c linux-2.6.37.1/arch/ia64/hp/common/hwsw_iommu.c
1713 ---- linux-2.6.37.1/arch/ia64/hp/common/hwsw_iommu.c 2011-01-04 19:50:19.000000000 -0500
1714 -+++ linux-2.6.37.1/arch/ia64/hp/common/hwsw_iommu.c 2011-01-17 02:41:00.000000000 -0500
1715 +diff -urNp linux-2.6.37.2/arch/ia64/hp/common/hwsw_iommu.c linux-2.6.37.2/arch/ia64/hp/common/hwsw_iommu.c
1716 +--- linux-2.6.37.2/arch/ia64/hp/common/hwsw_iommu.c 2011-01-04 19:50:19.000000000 -0500
1717 ++++ linux-2.6.37.2/arch/ia64/hp/common/hwsw_iommu.c 2011-01-17 02:41:00.000000000 -0500
1718 @@ -17,7 +17,7 @@
1719 #include <linux/swiotlb.h>
1720 #include <asm/machvec.h>
1721 @@ -862,9 +908,9 @@ diff -urNp linux-2.6.37.1/arch/ia64/hp/common/hwsw_iommu.c linux-2.6.37.1/arch/i
1722 {
1723 if (use_swiotlb(dev))
1724 return &swiotlb_dma_ops;
1725 -diff -urNp linux-2.6.37.1/arch/ia64/hp/common/sba_iommu.c linux-2.6.37.1/arch/ia64/hp/common/sba_iommu.c
1726 ---- linux-2.6.37.1/arch/ia64/hp/common/sba_iommu.c 2011-01-04 19:50:19.000000000 -0500
1727 -+++ linux-2.6.37.1/arch/ia64/hp/common/sba_iommu.c 2011-01-17 02:41:00.000000000 -0500
1728 +diff -urNp linux-2.6.37.2/arch/ia64/hp/common/sba_iommu.c linux-2.6.37.2/arch/ia64/hp/common/sba_iommu.c
1729 +--- linux-2.6.37.2/arch/ia64/hp/common/sba_iommu.c 2011-01-04 19:50:19.000000000 -0500
1730 ++++ linux-2.6.37.2/arch/ia64/hp/common/sba_iommu.c 2011-01-17 02:41:00.000000000 -0500
1731 @@ -2097,7 +2097,7 @@ static struct acpi_driver acpi_sba_ioc_d
1732 },
1733 };
1734 @@ -883,9 +929,9 @@ diff -urNp linux-2.6.37.1/arch/ia64/hp/common/sba_iommu.c linux-2.6.37.1/arch/ia
1735 .alloc_coherent = sba_alloc_coherent,
1736 .free_coherent = sba_free_coherent,
1737 .map_page = sba_map_page,
1738 -diff -urNp linux-2.6.37.1/arch/ia64/include/asm/dma-mapping.h linux-2.6.37.1/arch/ia64/include/asm/dma-mapping.h
1739 ---- linux-2.6.37.1/arch/ia64/include/asm/dma-mapping.h 2011-01-04 19:50:19.000000000 -0500
1740 -+++ linux-2.6.37.1/arch/ia64/include/asm/dma-mapping.h 2011-01-17 02:41:00.000000000 -0500
1741 +diff -urNp linux-2.6.37.2/arch/ia64/include/asm/dma-mapping.h linux-2.6.37.2/arch/ia64/include/asm/dma-mapping.h
1742 +--- linux-2.6.37.2/arch/ia64/include/asm/dma-mapping.h 2011-01-04 19:50:19.000000000 -0500
1743 ++++ linux-2.6.37.2/arch/ia64/include/asm/dma-mapping.h 2011-01-17 02:41:00.000000000 -0500
1744 @@ -12,7 +12,7 @@
1745
1746 #define ARCH_HAS_DMA_GET_REQUIRED_MASK
1747 @@ -929,9 +975,9 @@ diff -urNp linux-2.6.37.1/arch/ia64/include/asm/dma-mapping.h linux-2.6.37.1/arc
1748 return ops->dma_supported(dev, mask);
1749 }
1750
1751 -diff -urNp linux-2.6.37.1/arch/ia64/include/asm/elf.h linux-2.6.37.1/arch/ia64/include/asm/elf.h
1752 ---- linux-2.6.37.1/arch/ia64/include/asm/elf.h 2011-01-04 19:50:19.000000000 -0500
1753 -+++ linux-2.6.37.1/arch/ia64/include/asm/elf.h 2011-01-17 02:41:00.000000000 -0500
1754 +diff -urNp linux-2.6.37.2/arch/ia64/include/asm/elf.h linux-2.6.37.2/arch/ia64/include/asm/elf.h
1755 +--- linux-2.6.37.2/arch/ia64/include/asm/elf.h 2011-01-04 19:50:19.000000000 -0500
1756 ++++ linux-2.6.37.2/arch/ia64/include/asm/elf.h 2011-01-17 02:41:00.000000000 -0500
1757 @@ -42,6 +42,13 @@
1758 */
1759 #define ELF_ET_DYN_BASE (TASK_UNMAPPED_BASE + 0x800000000UL)
1760 @@ -946,9 +992,9 @@ diff -urNp linux-2.6.37.1/arch/ia64/include/asm/elf.h linux-2.6.37.1/arch/ia64/i
1761 #define PT_IA_64_UNWIND 0x70000001
1762
1763 /* IA-64 relocations: */
1764 -diff -urNp linux-2.6.37.1/arch/ia64/include/asm/machvec.h linux-2.6.37.1/arch/ia64/include/asm/machvec.h
1765 ---- linux-2.6.37.1/arch/ia64/include/asm/machvec.h 2011-01-04 19:50:19.000000000 -0500
1766 -+++ linux-2.6.37.1/arch/ia64/include/asm/machvec.h 2011-01-17 02:41:00.000000000 -0500
1767 +diff -urNp linux-2.6.37.2/arch/ia64/include/asm/machvec.h linux-2.6.37.2/arch/ia64/include/asm/machvec.h
1768 +--- linux-2.6.37.2/arch/ia64/include/asm/machvec.h 2011-01-04 19:50:19.000000000 -0500
1769 ++++ linux-2.6.37.2/arch/ia64/include/asm/machvec.h 2011-01-17 02:41:00.000000000 -0500
1770 @@ -45,7 +45,7 @@ typedef void ia64_mv_kernel_launch_event
1771 /* DMA-mapping interface: */
1772 typedef void ia64_mv_dma_init (void);
1773 @@ -967,9 +1013,9 @@ diff -urNp linux-2.6.37.1/arch/ia64/include/asm/machvec.h linux-2.6.37.1/arch/ia
1774
1775 /*
1776 * Define default versions so we can extend machvec for new platforms without having
1777 -diff -urNp linux-2.6.37.1/arch/ia64/include/asm/pgtable.h linux-2.6.37.1/arch/ia64/include/asm/pgtable.h
1778 ---- linux-2.6.37.1/arch/ia64/include/asm/pgtable.h 2011-01-04 19:50:19.000000000 -0500
1779 -+++ linux-2.6.37.1/arch/ia64/include/asm/pgtable.h 2011-01-17 02:41:00.000000000 -0500
1780 +diff -urNp linux-2.6.37.2/arch/ia64/include/asm/pgtable.h linux-2.6.37.2/arch/ia64/include/asm/pgtable.h
1781 +--- linux-2.6.37.2/arch/ia64/include/asm/pgtable.h 2011-01-04 19:50:19.000000000 -0500
1782 ++++ linux-2.6.37.2/arch/ia64/include/asm/pgtable.h 2011-01-17 02:41:00.000000000 -0500
1783 @@ -12,7 +12,7 @@
1784 * David Mosberger-Tang <davidm@××××××.com>
1785 */
1786 @@ -997,9 +1043,21 @@ diff -urNp linux-2.6.37.1/arch/ia64/include/asm/pgtable.h linux-2.6.37.1/arch/ia
1787 #define PAGE_GATE __pgprot(__ACCESS_BITS | _PAGE_PL_0 | _PAGE_AR_X_RX)
1788 #define PAGE_KERNEL __pgprot(__DIRTY_BITS | _PAGE_PL_0 | _PAGE_AR_RWX)
1789 #define PAGE_KERNELRX __pgprot(__ACCESS_BITS | _PAGE_PL_0 | _PAGE_AR_RX)
1790 -diff -urNp linux-2.6.37.1/arch/ia64/include/asm/uaccess.h linux-2.6.37.1/arch/ia64/include/asm/uaccess.h
1791 ---- linux-2.6.37.1/arch/ia64/include/asm/uaccess.h 2011-01-04 19:50:19.000000000 -0500
1792 -+++ linux-2.6.37.1/arch/ia64/include/asm/uaccess.h 2011-01-17 02:41:00.000000000 -0500
1793 +diff -urNp linux-2.6.37.2/arch/ia64/include/asm/spinlock.h linux-2.6.37.2/arch/ia64/include/asm/spinlock.h
1794 +--- linux-2.6.37.2/arch/ia64/include/asm/spinlock.h 2011-01-04 19:50:19.000000000 -0500
1795 ++++ linux-2.6.37.2/arch/ia64/include/asm/spinlock.h 2011-02-27 14:48:10.000000000 -0500
1796 +@@ -72,7 +72,7 @@ static __always_inline void __ticket_spi
1797 + unsigned short *p = (unsigned short *)&lock->lock + 1, tmp;
1798 +
1799 + asm volatile ("ld2.bias %0=[%1]" : "=r"(tmp) : "r"(p));
1800 +- ACCESS_ONCE(*p) = (tmp + 2) & ~1;
1801 ++ ACCESS_ONCE_RW(*p) = (tmp + 2) & ~1;
1802 + }
1803 +
1804 + static __always_inline void __ticket_spin_unlock_wait(arch_spinlock_t *lock)
1805 +diff -urNp linux-2.6.37.2/arch/ia64/include/asm/uaccess.h linux-2.6.37.2/arch/ia64/include/asm/uaccess.h
1806 +--- linux-2.6.37.2/arch/ia64/include/asm/uaccess.h 2011-01-04 19:50:19.000000000 -0500
1807 ++++ linux-2.6.37.2/arch/ia64/include/asm/uaccess.h 2011-01-17 02:41:00.000000000 -0500
1808 @@ -257,7 +257,7 @@ __copy_from_user (void *to, const void _
1809 const void *__cu_from = (from); \
1810 long __cu_len = (n); \
1811 @@ -1018,9 +1076,9 @@ diff -urNp linux-2.6.37.1/arch/ia64/include/asm/uaccess.h linux-2.6.37.1/arch/ia
1812 __cu_len = __copy_user((__force void __user *) __cu_to, __cu_from, __cu_len); \
1813 __cu_len; \
1814 })
1815 -diff -urNp linux-2.6.37.1/arch/ia64/kernel/dma-mapping.c linux-2.6.37.1/arch/ia64/kernel/dma-mapping.c
1816 ---- linux-2.6.37.1/arch/ia64/kernel/dma-mapping.c 2011-01-04 19:50:19.000000000 -0500
1817 -+++ linux-2.6.37.1/arch/ia64/kernel/dma-mapping.c 2011-01-17 02:41:00.000000000 -0500
1818 +diff -urNp linux-2.6.37.2/arch/ia64/kernel/dma-mapping.c linux-2.6.37.2/arch/ia64/kernel/dma-mapping.c
1819 +--- linux-2.6.37.2/arch/ia64/kernel/dma-mapping.c 2011-01-04 19:50:19.000000000 -0500
1820 ++++ linux-2.6.37.2/arch/ia64/kernel/dma-mapping.c 2011-01-17 02:41:00.000000000 -0500
1821 @@ -3,7 +3,7 @@
1822 /* Set this to 1 if there is a HW IOMMU in the system */
1823 int iommu_detected __read_mostly;
1824 @@ -1039,9 +1097,9 @@ diff -urNp linux-2.6.37.1/arch/ia64/kernel/dma-mapping.c linux-2.6.37.1/arch/ia6
1825 {
1826 return dma_ops;
1827 }
1828 -diff -urNp linux-2.6.37.1/arch/ia64/kernel/module.c linux-2.6.37.1/arch/ia64/kernel/module.c
1829 ---- linux-2.6.37.1/arch/ia64/kernel/module.c 2011-01-04 19:50:19.000000000 -0500
1830 -+++ linux-2.6.37.1/arch/ia64/kernel/module.c 2011-01-17 02:41:00.000000000 -0500
1831 +diff -urNp linux-2.6.37.2/arch/ia64/kernel/module.c linux-2.6.37.2/arch/ia64/kernel/module.c
1832 +--- linux-2.6.37.2/arch/ia64/kernel/module.c 2011-01-04 19:50:19.000000000 -0500
1833 ++++ linux-2.6.37.2/arch/ia64/kernel/module.c 2011-01-17 02:41:00.000000000 -0500
1834 @@ -315,8 +315,7 @@ module_alloc (unsigned long size)
1835 void
1836 module_free (struct module *mod, void *module_region)
1837 @@ -1130,9 +1188,9 @@ diff -urNp linux-2.6.37.1/arch/ia64/kernel/module.c linux-2.6.37.1/arch/ia64/ker
1838 mod->arch.gp = gp;
1839 DEBUGP("%s: placing gp at 0x%lx\n", __func__, gp);
1840 }
1841 -diff -urNp linux-2.6.37.1/arch/ia64/kernel/pci-dma.c linux-2.6.37.1/arch/ia64/kernel/pci-dma.c
1842 ---- linux-2.6.37.1/arch/ia64/kernel/pci-dma.c 2011-01-04 19:50:19.000000000 -0500
1843 -+++ linux-2.6.37.1/arch/ia64/kernel/pci-dma.c 2011-01-17 02:41:00.000000000 -0500
1844 +diff -urNp linux-2.6.37.2/arch/ia64/kernel/pci-dma.c linux-2.6.37.2/arch/ia64/kernel/pci-dma.c
1845 +--- linux-2.6.37.2/arch/ia64/kernel/pci-dma.c 2011-01-04 19:50:19.000000000 -0500
1846 ++++ linux-2.6.37.2/arch/ia64/kernel/pci-dma.c 2011-01-17 02:41:00.000000000 -0500
1847 @@ -43,7 +43,7 @@ struct device fallback_dev = {
1848 .dma_mask = &fallback_dev.coherent_dma_mask,
1849 };
1850 @@ -1142,9 +1200,9 @@ diff -urNp linux-2.6.37.1/arch/ia64/kernel/pci-dma.c linux-2.6.37.1/arch/ia64/ke
1851
1852 static int __init pci_iommu_init(void)
1853 {
1854 -diff -urNp linux-2.6.37.1/arch/ia64/kernel/pci-swiotlb.c linux-2.6.37.1/arch/ia64/kernel/pci-swiotlb.c
1855 ---- linux-2.6.37.1/arch/ia64/kernel/pci-swiotlb.c 2011-01-04 19:50:19.000000000 -0500
1856 -+++ linux-2.6.37.1/arch/ia64/kernel/pci-swiotlb.c 2011-01-17 02:41:00.000000000 -0500
1857 +diff -urNp linux-2.6.37.2/arch/ia64/kernel/pci-swiotlb.c linux-2.6.37.2/arch/ia64/kernel/pci-swiotlb.c
1858 +--- linux-2.6.37.2/arch/ia64/kernel/pci-swiotlb.c 2011-01-04 19:50:19.000000000 -0500
1859 ++++ linux-2.6.37.2/arch/ia64/kernel/pci-swiotlb.c 2011-01-17 02:41:00.000000000 -0500
1860 @@ -22,7 +22,7 @@ static void *ia64_swiotlb_alloc_coherent
1861 return swiotlb_alloc_coherent(dev, size, dma_handle, gfp);
1862 }
1863 @@ -1154,9 +1212,9 @@ diff -urNp linux-2.6.37.1/arch/ia64/kernel/pci-swiotlb.c linux-2.6.37.1/arch/ia6
1864 .alloc_coherent = ia64_swiotlb_alloc_coherent,
1865 .free_coherent = swiotlb_free_coherent,
1866 .map_page = swiotlb_map_page,
1867 -diff -urNp linux-2.6.37.1/arch/ia64/kernel/sys_ia64.c linux-2.6.37.1/arch/ia64/kernel/sys_ia64.c
1868 ---- linux-2.6.37.1/arch/ia64/kernel/sys_ia64.c 2011-01-04 19:50:19.000000000 -0500
1869 -+++ linux-2.6.37.1/arch/ia64/kernel/sys_ia64.c 2011-01-17 02:41:00.000000000 -0500
1870 +diff -urNp linux-2.6.37.2/arch/ia64/kernel/sys_ia64.c linux-2.6.37.2/arch/ia64/kernel/sys_ia64.c
1871 +--- linux-2.6.37.2/arch/ia64/kernel/sys_ia64.c 2011-01-04 19:50:19.000000000 -0500
1872 ++++ linux-2.6.37.2/arch/ia64/kernel/sys_ia64.c 2011-01-17 02:41:00.000000000 -0500
1873 @@ -43,6 +43,13 @@ arch_get_unmapped_area (struct file *fil
1874 if (REGION_NUMBER(addr) == RGN_HPAGE)
1875 addr = 0;
1876 @@ -1189,9 +1247,9 @@ diff -urNp linux-2.6.37.1/arch/ia64/kernel/sys_ia64.c linux-2.6.37.1/arch/ia64/k
1877 /* Remember the address where we stopped this search: */
1878 mm->free_area_cache = addr + len;
1879 return addr;
1880 -diff -urNp linux-2.6.37.1/arch/ia64/kernel/vmlinux.lds.S linux-2.6.37.1/arch/ia64/kernel/vmlinux.lds.S
1881 ---- linux-2.6.37.1/arch/ia64/kernel/vmlinux.lds.S 2011-01-04 19:50:19.000000000 -0500
1882 -+++ linux-2.6.37.1/arch/ia64/kernel/vmlinux.lds.S 2011-01-17 02:41:00.000000000 -0500
1883 +diff -urNp linux-2.6.37.2/arch/ia64/kernel/vmlinux.lds.S linux-2.6.37.2/arch/ia64/kernel/vmlinux.lds.S
1884 +--- linux-2.6.37.2/arch/ia64/kernel/vmlinux.lds.S 2011-01-04 19:50:19.000000000 -0500
1885 ++++ linux-2.6.37.2/arch/ia64/kernel/vmlinux.lds.S 2011-01-17 02:41:00.000000000 -0500
1886 @@ -199,7 +199,7 @@ SECTIONS {
1887 /* Per-cpu data: */
1888 . = ALIGN(PERCPU_PAGE_SIZE);
1889 @@ -1201,9 +1259,9 @@ diff -urNp linux-2.6.37.1/arch/ia64/kernel/vmlinux.lds.S linux-2.6.37.1/arch/ia6
1890 /*
1891 * ensure percpu data fits
1892 * into percpu page size
1893 -diff -urNp linux-2.6.37.1/arch/ia64/mm/fault.c linux-2.6.37.1/arch/ia64/mm/fault.c
1894 ---- linux-2.6.37.1/arch/ia64/mm/fault.c 2011-01-04 19:50:19.000000000 -0500
1895 -+++ linux-2.6.37.1/arch/ia64/mm/fault.c 2011-01-17 02:41:00.000000000 -0500
1896 +diff -urNp linux-2.6.37.2/arch/ia64/mm/fault.c linux-2.6.37.2/arch/ia64/mm/fault.c
1897 +--- linux-2.6.37.2/arch/ia64/mm/fault.c 2011-01-04 19:50:19.000000000 -0500
1898 ++++ linux-2.6.37.2/arch/ia64/mm/fault.c 2011-01-17 02:41:00.000000000 -0500
1899 @@ -72,6 +72,23 @@ mapped_kernel_page_is_present (unsigned
1900 return pte_present(pte);
1901 }
1902 @@ -1253,9 +1311,9 @@ diff -urNp linux-2.6.37.1/arch/ia64/mm/fault.c linux-2.6.37.1/arch/ia64/mm/fault
1903 /*
1904 * If for any reason at all we couldn't handle the fault, make
1905 * sure we exit gracefully rather than endlessly redo the
1906 -diff -urNp linux-2.6.37.1/arch/ia64/mm/hugetlbpage.c linux-2.6.37.1/arch/ia64/mm/hugetlbpage.c
1907 ---- linux-2.6.37.1/arch/ia64/mm/hugetlbpage.c 2011-01-04 19:50:19.000000000 -0500
1908 -+++ linux-2.6.37.1/arch/ia64/mm/hugetlbpage.c 2011-01-17 02:41:00.000000000 -0500
1909 +diff -urNp linux-2.6.37.2/arch/ia64/mm/hugetlbpage.c linux-2.6.37.2/arch/ia64/mm/hugetlbpage.c
1910 +--- linux-2.6.37.2/arch/ia64/mm/hugetlbpage.c 2011-01-04 19:50:19.000000000 -0500
1911 ++++ linux-2.6.37.2/arch/ia64/mm/hugetlbpage.c 2011-01-17 02:41:00.000000000 -0500
1912 @@ -171,7 +171,7 @@ unsigned long hugetlb_get_unmapped_area(
1913 /* At this point: (!vmm || addr < vmm->vm_end). */
1914 if (REGION_OFFSET(addr) + len > RGN_MAP_LIMIT)
1915 @@ -1265,9 +1323,9 @@ diff -urNp linux-2.6.37.1/arch/ia64/mm/hugetlbpage.c linux-2.6.37.1/arch/ia64/mm
1916 return addr;
1917 addr = ALIGN(vmm->vm_end, HPAGE_SIZE);
1918 }
1919 -diff -urNp linux-2.6.37.1/arch/ia64/mm/init.c linux-2.6.37.1/arch/ia64/mm/init.c
1920 ---- linux-2.6.37.1/arch/ia64/mm/init.c 2011-01-04 19:50:19.000000000 -0500
1921 -+++ linux-2.6.37.1/arch/ia64/mm/init.c 2011-01-17 02:41:00.000000000 -0500
1922 +diff -urNp linux-2.6.37.2/arch/ia64/mm/init.c linux-2.6.37.2/arch/ia64/mm/init.c
1923 +--- linux-2.6.37.2/arch/ia64/mm/init.c 2011-01-04 19:50:19.000000000 -0500
1924 ++++ linux-2.6.37.2/arch/ia64/mm/init.c 2011-01-17 02:41:00.000000000 -0500
1925 @@ -122,6 +122,19 @@ ia64_init_addr_space (void)
1926 vma->vm_start = current->thread.rbs_bot & PAGE_MASK;
1927 vma->vm_end = vma->vm_start + PAGE_SIZE;
1928 @@ -1288,9 +1346,9 @@ diff -urNp linux-2.6.37.1/arch/ia64/mm/init.c linux-2.6.37.1/arch/ia64/mm/init.c
1929 vma->vm_page_prot = vm_get_page_prot(vma->vm_flags);
1930 down_write(&current->mm->mmap_sem);
1931 if (insert_vm_struct(current->mm, vma)) {
1932 -diff -urNp linux-2.6.37.1/arch/ia64/sn/pci/pci_dma.c linux-2.6.37.1/arch/ia64/sn/pci/pci_dma.c
1933 ---- linux-2.6.37.1/arch/ia64/sn/pci/pci_dma.c 2011-01-04 19:50:19.000000000 -0500
1934 -+++ linux-2.6.37.1/arch/ia64/sn/pci/pci_dma.c 2011-01-17 02:41:00.000000000 -0500
1935 +diff -urNp linux-2.6.37.2/arch/ia64/sn/pci/pci_dma.c linux-2.6.37.2/arch/ia64/sn/pci/pci_dma.c
1936 +--- linux-2.6.37.2/arch/ia64/sn/pci/pci_dma.c 2011-01-04 19:50:19.000000000 -0500
1937 ++++ linux-2.6.37.2/arch/ia64/sn/pci/pci_dma.c 2011-01-17 02:41:00.000000000 -0500
1938 @@ -465,7 +465,7 @@ int sn_pci_legacy_write(struct pci_bus *
1939 return ret;
1940 }
1941 @@ -1300,9 +1358,9 @@ diff -urNp linux-2.6.37.1/arch/ia64/sn/pci/pci_dma.c linux-2.6.37.1/arch/ia64/sn
1942 .alloc_coherent = sn_dma_alloc_coherent,
1943 .free_coherent = sn_dma_free_coherent,
1944 .map_page = sn_dma_map_page,
1945 -diff -urNp linux-2.6.37.1/arch/m32r/lib/usercopy.c linux-2.6.37.1/arch/m32r/lib/usercopy.c
1946 ---- linux-2.6.37.1/arch/m32r/lib/usercopy.c 2011-01-04 19:50:19.000000000 -0500
1947 -+++ linux-2.6.37.1/arch/m32r/lib/usercopy.c 2011-01-17 02:41:00.000000000 -0500
1948 +diff -urNp linux-2.6.37.2/arch/m32r/lib/usercopy.c linux-2.6.37.2/arch/m32r/lib/usercopy.c
1949 +--- linux-2.6.37.2/arch/m32r/lib/usercopy.c 2011-01-04 19:50:19.000000000 -0500
1950 ++++ linux-2.6.37.2/arch/m32r/lib/usercopy.c 2011-01-17 02:41:00.000000000 -0500
1951 @@ -14,6 +14,9 @@
1952 unsigned long
1953 __generic_copy_to_user(void __user *to, const void *from, unsigned long n)
1954 @@ -1323,9 +1381,9 @@ diff -urNp linux-2.6.37.1/arch/m32r/lib/usercopy.c linux-2.6.37.1/arch/m32r/lib/
1955 prefetchw(to);
1956 if (access_ok(VERIFY_READ, from, n))
1957 __copy_user_zeroing(to,from,n);
1958 -diff -urNp linux-2.6.37.1/arch/microblaze/include/asm/device.h linux-2.6.37.1/arch/microblaze/include/asm/device.h
1959 ---- linux-2.6.37.1/arch/microblaze/include/asm/device.h 2011-01-04 19:50:19.000000000 -0500
1960 -+++ linux-2.6.37.1/arch/microblaze/include/asm/device.h 2011-01-17 02:41:00.000000000 -0500
1961 +diff -urNp linux-2.6.37.2/arch/microblaze/include/asm/device.h linux-2.6.37.2/arch/microblaze/include/asm/device.h
1962 +--- linux-2.6.37.2/arch/microblaze/include/asm/device.h 2011-01-04 19:50:19.000000000 -0500
1963 ++++ linux-2.6.37.2/arch/microblaze/include/asm/device.h 2011-01-17 02:41:00.000000000 -0500
1964 @@ -13,7 +13,7 @@ struct device_node;
1965
1966 struct dev_archdata {
1967 @@ -1335,9 +1393,9 @@ diff -urNp linux-2.6.37.1/arch/microblaze/include/asm/device.h linux-2.6.37.1/ar
1968 void *dma_data;
1969 };
1970
1971 -diff -urNp linux-2.6.37.1/arch/microblaze/include/asm/dma-mapping.h linux-2.6.37.1/arch/microblaze/include/asm/dma-mapping.h
1972 ---- linux-2.6.37.1/arch/microblaze/include/asm/dma-mapping.h 2011-01-04 19:50:19.000000000 -0500
1973 -+++ linux-2.6.37.1/arch/microblaze/include/asm/dma-mapping.h 2011-01-17 02:41:00.000000000 -0500
1974 +diff -urNp linux-2.6.37.2/arch/microblaze/include/asm/dma-mapping.h linux-2.6.37.2/arch/microblaze/include/asm/dma-mapping.h
1975 +--- linux-2.6.37.2/arch/microblaze/include/asm/dma-mapping.h 2011-01-04 19:50:19.000000000 -0500
1976 ++++ linux-2.6.37.2/arch/microblaze/include/asm/dma-mapping.h 2011-01-17 02:41:00.000000000 -0500
1977 @@ -43,14 +43,14 @@ static inline unsigned long device_to_ma
1978 return 0xfffffffful;
1979 }
1980 @@ -1409,9 +1467,9 @@ diff -urNp linux-2.6.37.1/arch/microblaze/include/asm/dma-mapping.h linux-2.6.37
1981
1982 BUG_ON(!ops);
1983 debug_dma_free_coherent(dev, size, cpu_addr, dma_handle);
1984 -diff -urNp linux-2.6.37.1/arch/microblaze/include/asm/pci.h linux-2.6.37.1/arch/microblaze/include/asm/pci.h
1985 ---- linux-2.6.37.1/arch/microblaze/include/asm/pci.h 2011-01-04 19:50:19.000000000 -0500
1986 -+++ linux-2.6.37.1/arch/microblaze/include/asm/pci.h 2011-01-17 02:41:00.000000000 -0500
1987 +diff -urNp linux-2.6.37.2/arch/microblaze/include/asm/pci.h linux-2.6.37.2/arch/microblaze/include/asm/pci.h
1988 +--- linux-2.6.37.2/arch/microblaze/include/asm/pci.h 2011-01-04 19:50:19.000000000 -0500
1989 ++++ linux-2.6.37.2/arch/microblaze/include/asm/pci.h 2011-01-17 02:41:00.000000000 -0500
1990 @@ -54,8 +54,8 @@ static inline void pcibios_penalize_isa_
1991 }
1992
1993 @@ -1423,9 +1481,9 @@ diff -urNp linux-2.6.37.1/arch/microblaze/include/asm/pci.h linux-2.6.37.1/arch/
1994 #else /* CONFIG_PCI */
1995 #define set_pci_dma_ops(d)
1996 #define get_pci_dma_ops() NULL
1997 -diff -urNp linux-2.6.37.1/arch/microblaze/kernel/dma.c linux-2.6.37.1/arch/microblaze/kernel/dma.c
1998 ---- linux-2.6.37.1/arch/microblaze/kernel/dma.c 2011-01-04 19:50:19.000000000 -0500
1999 -+++ linux-2.6.37.1/arch/microblaze/kernel/dma.c 2011-01-17 02:41:00.000000000 -0500
2000 +diff -urNp linux-2.6.37.2/arch/microblaze/kernel/dma.c linux-2.6.37.2/arch/microblaze/kernel/dma.c
2001 +--- linux-2.6.37.2/arch/microblaze/kernel/dma.c 2011-01-04 19:50:19.000000000 -0500
2002 ++++ linux-2.6.37.2/arch/microblaze/kernel/dma.c 2011-01-17 02:41:00.000000000 -0500
2003 @@ -133,7 +133,7 @@ static inline void dma_direct_unmap_page
2004 __dma_sync_page(dma_address, 0 , size, direction);
2005 }
2006 @@ -1435,9 +1493,9 @@ diff -urNp linux-2.6.37.1/arch/microblaze/kernel/dma.c linux-2.6.37.1/arch/micro
2007 .alloc_coherent = dma_direct_alloc_coherent,
2008 .free_coherent = dma_direct_free_coherent,
2009 .map_sg = dma_direct_map_sg,
2010 -diff -urNp linux-2.6.37.1/arch/microblaze/kernel/kgdb.c linux-2.6.37.1/arch/microblaze/kernel/kgdb.c
2011 ---- linux-2.6.37.1/arch/microblaze/kernel/kgdb.c 2011-01-04 19:50:19.000000000 -0500
2012 -+++ linux-2.6.37.1/arch/microblaze/kernel/kgdb.c 2011-01-17 02:41:00.000000000 -0500
2013 +diff -urNp linux-2.6.37.2/arch/microblaze/kernel/kgdb.c linux-2.6.37.2/arch/microblaze/kernel/kgdb.c
2014 +--- linux-2.6.37.2/arch/microblaze/kernel/kgdb.c 2011-01-04 19:50:19.000000000 -0500
2015 ++++ linux-2.6.37.2/arch/microblaze/kernel/kgdb.c 2011-01-17 02:41:00.000000000 -0500
2016 @@ -141,10 +141,11 @@ void kgdb_arch_exit(void)
2017 /*
2018 * Global data
2019 @@ -1451,9 +1509,9 @@ diff -urNp linux-2.6.37.1/arch/microblaze/kernel/kgdb.c linux-2.6.37.1/arch/micr
2020 .gdb_bpt_instr = {0xba, 0x0c, 0x00, 0x18}, /* brki r16, 0x18 */
2021 #endif
2022 };
2023 -diff -urNp linux-2.6.37.1/arch/microblaze/pci/pci-common.c linux-2.6.37.1/arch/microblaze/pci/pci-common.c
2024 ---- linux-2.6.37.1/arch/microblaze/pci/pci-common.c 2011-01-04 19:50:19.000000000 -0500
2025 -+++ linux-2.6.37.1/arch/microblaze/pci/pci-common.c 2011-01-17 02:41:00.000000000 -0500
2026 +diff -urNp linux-2.6.37.2/arch/microblaze/pci/pci-common.c linux-2.6.37.2/arch/microblaze/pci/pci-common.c
2027 +--- linux-2.6.37.2/arch/microblaze/pci/pci-common.c 2011-01-04 19:50:19.000000000 -0500
2028 ++++ linux-2.6.37.2/arch/microblaze/pci/pci-common.c 2011-01-17 02:41:00.000000000 -0500
2029 @@ -47,14 +47,14 @@ resource_size_t isa_mem_base;
2030 /* Default PCI flags is 0 on ppc32, modified at boot on ppc64 */
2031 unsigned int pci_flags;
2032 @@ -1472,9 +1530,9 @@ diff -urNp linux-2.6.37.1/arch/microblaze/pci/pci-common.c linux-2.6.37.1/arch/m
2033 {
2034 return pci_dma_ops;
2035 }
2036 -diff -urNp linux-2.6.37.1/arch/mips/alchemy/devboards/pm.c linux-2.6.37.1/arch/mips/alchemy/devboards/pm.c
2037 ---- linux-2.6.37.1/arch/mips/alchemy/devboards/pm.c 2011-01-04 19:50:19.000000000 -0500
2038 -+++ linux-2.6.37.1/arch/mips/alchemy/devboards/pm.c 2011-01-17 02:41:00.000000000 -0500
2039 +diff -urNp linux-2.6.37.2/arch/mips/alchemy/devboards/pm.c linux-2.6.37.2/arch/mips/alchemy/devboards/pm.c
2040 +--- linux-2.6.37.2/arch/mips/alchemy/devboards/pm.c 2011-01-04 19:50:19.000000000 -0500
2041 ++++ linux-2.6.37.2/arch/mips/alchemy/devboards/pm.c 2011-01-17 02:41:00.000000000 -0500
2042 @@ -110,7 +110,7 @@ static void db1x_pm_end(void)
2043
2044 }
2045 @@ -1484,9 +1542,9 @@ diff -urNp linux-2.6.37.1/arch/mips/alchemy/devboards/pm.c linux-2.6.37.1/arch/m
2046 .valid = suspend_valid_only_mem,
2047 .begin = db1x_pm_begin,
2048 .enter = db1x_pm_enter,
2049 -diff -urNp linux-2.6.37.1/arch/mips/cavium-octeon/dma-octeon.c linux-2.6.37.1/arch/mips/cavium-octeon/dma-octeon.c
2050 ---- linux-2.6.37.1/arch/mips/cavium-octeon/dma-octeon.c 2011-01-04 19:50:19.000000000 -0500
2051 -+++ linux-2.6.37.1/arch/mips/cavium-octeon/dma-octeon.c 2011-01-17 02:41:00.000000000 -0500
2052 +diff -urNp linux-2.6.37.2/arch/mips/cavium-octeon/dma-octeon.c linux-2.6.37.2/arch/mips/cavium-octeon/dma-octeon.c
2053 +--- linux-2.6.37.2/arch/mips/cavium-octeon/dma-octeon.c 2011-01-04 19:50:19.000000000 -0500
2054 ++++ linux-2.6.37.2/arch/mips/cavium-octeon/dma-octeon.c 2011-01-17 02:41:00.000000000 -0500
2055 @@ -202,7 +202,7 @@ static phys_addr_t octeon_unity_dma_to_p
2056 }
2057
2058 @@ -1505,9 +1563,9 @@ diff -urNp linux-2.6.37.1/arch/mips/cavium-octeon/dma-octeon.c linux-2.6.37.1/ar
2059
2060 void __init octeon_pci_dma_init(void)
2061 {
2062 -diff -urNp linux-2.6.37.1/arch/mips/include/asm/device.h linux-2.6.37.1/arch/mips/include/asm/device.h
2063 ---- linux-2.6.37.1/arch/mips/include/asm/device.h 2011-01-04 19:50:19.000000000 -0500
2064 -+++ linux-2.6.37.1/arch/mips/include/asm/device.h 2011-01-17 02:41:00.000000000 -0500
2065 +diff -urNp linux-2.6.37.2/arch/mips/include/asm/device.h linux-2.6.37.2/arch/mips/include/asm/device.h
2066 +--- linux-2.6.37.2/arch/mips/include/asm/device.h 2011-01-04 19:50:19.000000000 -0500
2067 ++++ linux-2.6.37.2/arch/mips/include/asm/device.h 2011-01-17 02:41:00.000000000 -0500
2068 @@ -10,7 +10,7 @@ struct dma_map_ops;
2069
2070 struct dev_archdata {
2071 @@ -1517,9 +1575,9 @@ diff -urNp linux-2.6.37.1/arch/mips/include/asm/device.h linux-2.6.37.1/arch/mip
2072 };
2073
2074 struct pdev_archdata {
2075 -diff -urNp linux-2.6.37.1/arch/mips/include/asm/dma-mapping.h linux-2.6.37.1/arch/mips/include/asm/dma-mapping.h
2076 ---- linux-2.6.37.1/arch/mips/include/asm/dma-mapping.h 2011-01-04 19:50:19.000000000 -0500
2077 -+++ linux-2.6.37.1/arch/mips/include/asm/dma-mapping.h 2011-01-17 02:41:00.000000000 -0500
2078 +diff -urNp linux-2.6.37.2/arch/mips/include/asm/dma-mapping.h linux-2.6.37.2/arch/mips/include/asm/dma-mapping.h
2079 +--- linux-2.6.37.2/arch/mips/include/asm/dma-mapping.h 2011-01-04 19:50:19.000000000 -0500
2080 ++++ linux-2.6.37.2/arch/mips/include/asm/dma-mapping.h 2011-01-17 02:41:00.000000000 -0500
2081 @@ -7,9 +7,9 @@
2082
2083 #include <dma-coherence.h>
2084 @@ -1566,9 +1624,9 @@ diff -urNp linux-2.6.37.1/arch/mips/include/asm/dma-mapping.h linux-2.6.37.1/arc
2085
2086 ops->free_coherent(dev, size, vaddr, dma_handle);
2087
2088 -diff -urNp linux-2.6.37.1/arch/mips/include/asm/elf.h linux-2.6.37.1/arch/mips/include/asm/elf.h
2089 ---- linux-2.6.37.1/arch/mips/include/asm/elf.h 2011-01-04 19:50:19.000000000 -0500
2090 -+++ linux-2.6.37.1/arch/mips/include/asm/elf.h 2011-01-17 02:41:00.000000000 -0500
2091 +diff -urNp linux-2.6.37.2/arch/mips/include/asm/elf.h linux-2.6.37.2/arch/mips/include/asm/elf.h
2092 +--- linux-2.6.37.2/arch/mips/include/asm/elf.h 2011-01-04 19:50:19.000000000 -0500
2093 ++++ linux-2.6.37.2/arch/mips/include/asm/elf.h 2011-01-17 02:41:00.000000000 -0500
2094 @@ -372,13 +372,16 @@ extern const char *__elf_platform;
2095 #define ELF_ET_DYN_BASE (TASK_SIZE / 3 * 2)
2096 #endif
2097 @@ -1590,9 +1648,9 @@ diff -urNp linux-2.6.37.1/arch/mips/include/asm/elf.h linux-2.6.37.1/arch/mips/i
2098 -#define arch_randomize_brk arch_randomize_brk
2099 -
2100 #endif /* _ASM_ELF_H */
2101 -diff -urNp linux-2.6.37.1/arch/mips/include/asm/mach-cavium-octeon/dma-coherence.h linux-2.6.37.1/arch/mips/include/asm/mach-cavium-octeon/dma-coherence.h
2102 ---- linux-2.6.37.1/arch/mips/include/asm/mach-cavium-octeon/dma-coherence.h 2011-01-04 19:50:19.000000000 -0500
2103 -+++ linux-2.6.37.1/arch/mips/include/asm/mach-cavium-octeon/dma-coherence.h 2011-01-17 02:41:00.000000000 -0500
2104 +diff -urNp linux-2.6.37.2/arch/mips/include/asm/mach-cavium-octeon/dma-coherence.h linux-2.6.37.2/arch/mips/include/asm/mach-cavium-octeon/dma-coherence.h
2105 +--- linux-2.6.37.2/arch/mips/include/asm/mach-cavium-octeon/dma-coherence.h 2011-01-04 19:50:19.000000000 -0500
2106 ++++ linux-2.6.37.2/arch/mips/include/asm/mach-cavium-octeon/dma-coherence.h 2011-01-17 02:41:00.000000000 -0500
2107 @@ -66,7 +66,7 @@ dma_addr_t phys_to_dma(struct device *de
2108 phys_addr_t dma_to_phys(struct device *dev, dma_addr_t daddr);
2109
2110 @@ -1602,9 +1660,9 @@ diff -urNp linux-2.6.37.1/arch/mips/include/asm/mach-cavium-octeon/dma-coherence
2111 extern char *octeon_swiotlb;
2112
2113 #endif /* __ASM_MACH_CAVIUM_OCTEON_DMA_COHERENCE_H */
2114 -diff -urNp linux-2.6.37.1/arch/mips/include/asm/page.h linux-2.6.37.1/arch/mips/include/asm/page.h
2115 ---- linux-2.6.37.1/arch/mips/include/asm/page.h 2011-01-04 19:50:19.000000000 -0500
2116 -+++ linux-2.6.37.1/arch/mips/include/asm/page.h 2011-01-17 02:41:00.000000000 -0500
2117 +diff -urNp linux-2.6.37.2/arch/mips/include/asm/page.h linux-2.6.37.2/arch/mips/include/asm/page.h
2118 +--- linux-2.6.37.2/arch/mips/include/asm/page.h 2011-01-04 19:50:19.000000000 -0500
2119 ++++ linux-2.6.37.2/arch/mips/include/asm/page.h 2011-01-17 02:41:00.000000000 -0500
2120 @@ -93,7 +93,7 @@ extern void copy_user_highpage(struct pa
2121 #ifdef CONFIG_CPU_MIPS32
2122 typedef struct { unsigned long pte_low, pte_high; } pte_t;
2123 @@ -1614,9 +1672,9 @@ diff -urNp linux-2.6.37.1/arch/mips/include/asm/page.h linux-2.6.37.1/arch/mips/
2124 #else
2125 typedef struct { unsigned long long pte; } pte_t;
2126 #define pte_val(x) ((x).pte)
2127 -diff -urNp linux-2.6.37.1/arch/mips/include/asm/system.h linux-2.6.37.1/arch/mips/include/asm/system.h
2128 ---- linux-2.6.37.1/arch/mips/include/asm/system.h 2011-01-04 19:50:19.000000000 -0500
2129 -+++ linux-2.6.37.1/arch/mips/include/asm/system.h 2011-01-17 02:41:00.000000000 -0500
2130 +diff -urNp linux-2.6.37.2/arch/mips/include/asm/system.h linux-2.6.37.2/arch/mips/include/asm/system.h
2131 +--- linux-2.6.37.2/arch/mips/include/asm/system.h 2011-01-04 19:50:19.000000000 -0500
2132 ++++ linux-2.6.37.2/arch/mips/include/asm/system.h 2011-01-17 02:41:00.000000000 -0500
2133 @@ -23,6 +23,7 @@
2134 #include <asm/dsp.h>
2135 #include <asm/watch.h>
2136 @@ -1633,9 +1691,9 @@ diff -urNp linux-2.6.37.1/arch/mips/include/asm/system.h linux-2.6.37.1/arch/mip
2137 +#define arch_align_stack(x) ((x) & ALMASK)
2138
2139 #endif /* _ASM_SYSTEM_H */
2140 -diff -urNp linux-2.6.37.1/arch/mips/jz4740/pm.c linux-2.6.37.1/arch/mips/jz4740/pm.c
2141 ---- linux-2.6.37.1/arch/mips/jz4740/pm.c 2011-01-04 19:50:19.000000000 -0500
2142 -+++ linux-2.6.37.1/arch/mips/jz4740/pm.c 2011-01-17 02:41:00.000000000 -0500
2143 +diff -urNp linux-2.6.37.2/arch/mips/jz4740/pm.c linux-2.6.37.2/arch/mips/jz4740/pm.c
2144 +--- linux-2.6.37.2/arch/mips/jz4740/pm.c 2011-01-04 19:50:19.000000000 -0500
2145 ++++ linux-2.6.37.2/arch/mips/jz4740/pm.c 2011-01-17 02:41:00.000000000 -0500
2146 @@ -42,7 +42,7 @@ static int jz4740_pm_enter(suspend_state
2147 return 0;
2148 }
2149 @@ -1645,9 +1703,9 @@ diff -urNp linux-2.6.37.1/arch/mips/jz4740/pm.c linux-2.6.37.1/arch/mips/jz4740/
2150 .valid = suspend_valid_only_mem,
2151 .enter = jz4740_pm_enter,
2152 };
2153 -diff -urNp linux-2.6.37.1/arch/mips/kernel/binfmt_elfn32.c linux-2.6.37.1/arch/mips/kernel/binfmt_elfn32.c
2154 ---- linux-2.6.37.1/arch/mips/kernel/binfmt_elfn32.c 2011-01-04 19:50:19.000000000 -0500
2155 -+++ linux-2.6.37.1/arch/mips/kernel/binfmt_elfn32.c 2011-01-17 02:41:00.000000000 -0500
2156 +diff -urNp linux-2.6.37.2/arch/mips/kernel/binfmt_elfn32.c linux-2.6.37.2/arch/mips/kernel/binfmt_elfn32.c
2157 +--- linux-2.6.37.2/arch/mips/kernel/binfmt_elfn32.c 2011-01-04 19:50:19.000000000 -0500
2158 ++++ linux-2.6.37.2/arch/mips/kernel/binfmt_elfn32.c 2011-01-17 02:41:00.000000000 -0500
2159 @@ -50,6 +50,13 @@ typedef elf_fpreg_t elf_fpregset_t[ELF_N
2160 #undef ELF_ET_DYN_BASE
2161 #define ELF_ET_DYN_BASE (TASK32_SIZE / 3 * 2)
2162 @@ -1662,9 +1720,9 @@ diff -urNp linux-2.6.37.1/arch/mips/kernel/binfmt_elfn32.c linux-2.6.37.1/arch/m
2163 #include <asm/processor.h>
2164 #include <linux/module.h>
2165 #include <linux/elfcore.h>
2166 -diff -urNp linux-2.6.37.1/arch/mips/kernel/binfmt_elfo32.c linux-2.6.37.1/arch/mips/kernel/binfmt_elfo32.c
2167 ---- linux-2.6.37.1/arch/mips/kernel/binfmt_elfo32.c 2011-01-04 19:50:19.000000000 -0500
2168 -+++ linux-2.6.37.1/arch/mips/kernel/binfmt_elfo32.c 2011-01-17 02:41:00.000000000 -0500
2169 +diff -urNp linux-2.6.37.2/arch/mips/kernel/binfmt_elfo32.c linux-2.6.37.2/arch/mips/kernel/binfmt_elfo32.c
2170 +--- linux-2.6.37.2/arch/mips/kernel/binfmt_elfo32.c 2011-01-04 19:50:19.000000000 -0500
2171 ++++ linux-2.6.37.2/arch/mips/kernel/binfmt_elfo32.c 2011-01-17 02:41:00.000000000 -0500
2172 @@ -52,6 +52,13 @@ typedef elf_fpreg_t elf_fpregset_t[ELF_N
2173 #undef ELF_ET_DYN_BASE
2174 #define ELF_ET_DYN_BASE (TASK32_SIZE / 3 * 2)
2175 @@ -1679,9 +1737,9 @@ diff -urNp linux-2.6.37.1/arch/mips/kernel/binfmt_elfo32.c linux-2.6.37.1/arch/m
2176 #include <asm/processor.h>
2177
2178 /*
2179 -diff -urNp linux-2.6.37.1/arch/mips/kernel/kgdb.c linux-2.6.37.1/arch/mips/kernel/kgdb.c
2180 ---- linux-2.6.37.1/arch/mips/kernel/kgdb.c 2011-01-04 19:50:19.000000000 -0500
2181 -+++ linux-2.6.37.1/arch/mips/kernel/kgdb.c 2011-01-17 02:41:00.000000000 -0500
2182 +diff -urNp linux-2.6.37.2/arch/mips/kernel/kgdb.c linux-2.6.37.2/arch/mips/kernel/kgdb.c
2183 +--- linux-2.6.37.2/arch/mips/kernel/kgdb.c 2011-01-04 19:50:19.000000000 -0500
2184 ++++ linux-2.6.37.2/arch/mips/kernel/kgdb.c 2011-01-17 02:41:00.000000000 -0500
2185 @@ -351,6 +351,7 @@ int kgdb_arch_handle_exception(int vecto
2186 return -1;
2187 }
2188 @@ -1690,9 +1748,9 @@ diff -urNp linux-2.6.37.1/arch/mips/kernel/kgdb.c linux-2.6.37.1/arch/mips/kerne
2189 struct kgdb_arch arch_kgdb_ops;
2190
2191 /*
2192 -diff -urNp linux-2.6.37.1/arch/mips/kernel/process.c linux-2.6.37.1/arch/mips/kernel/process.c
2193 ---- linux-2.6.37.1/arch/mips/kernel/process.c 2011-01-04 19:50:19.000000000 -0500
2194 -+++ linux-2.6.37.1/arch/mips/kernel/process.c 2011-01-17 02:41:00.000000000 -0500
2195 +diff -urNp linux-2.6.37.2/arch/mips/kernel/process.c linux-2.6.37.2/arch/mips/kernel/process.c
2196 +--- linux-2.6.37.2/arch/mips/kernel/process.c 2011-01-04 19:50:19.000000000 -0500
2197 ++++ linux-2.6.37.2/arch/mips/kernel/process.c 2011-01-17 02:41:00.000000000 -0500
2198 @@ -473,15 +473,3 @@ unsigned long get_wchan(struct task_stru
2199 out:
2200 return pc;
2201 @@ -1709,9 +1767,9 @@ diff -urNp linux-2.6.37.1/arch/mips/kernel/process.c linux-2.6.37.1/arch/mips/ke
2202 -
2203 - return sp & ALMASK;
2204 -}
2205 -diff -urNp linux-2.6.37.1/arch/mips/kernel/syscall.c linux-2.6.37.1/arch/mips/kernel/syscall.c
2206 ---- linux-2.6.37.1/arch/mips/kernel/syscall.c 2011-01-04 19:50:19.000000000 -0500
2207 -+++ linux-2.6.37.1/arch/mips/kernel/syscall.c 2011-01-17 02:41:00.000000000 -0500
2208 +diff -urNp linux-2.6.37.2/arch/mips/kernel/syscall.c linux-2.6.37.2/arch/mips/kernel/syscall.c
2209 +--- linux-2.6.37.2/arch/mips/kernel/syscall.c 2011-01-04 19:50:19.000000000 -0500
2210 ++++ linux-2.6.37.2/arch/mips/kernel/syscall.c 2011-01-17 02:41:00.000000000 -0500
2211 @@ -108,14 +108,18 @@ unsigned long arch_get_unmapped_area(str
2212 do_color_align = 0;
2213 if (filp || (flags & MAP_SHARED))
2214 @@ -1762,9 +1820,9 @@ diff -urNp linux-2.6.37.1/arch/mips/kernel/syscall.c linux-2.6.37.1/arch/mips/ke
2215 SYSCALL_DEFINE6(mips_mmap, unsigned long, addr, unsigned long, len,
2216 unsigned long, prot, unsigned long, flags, unsigned long,
2217 fd, off_t, offset)
2218 -diff -urNp linux-2.6.37.1/arch/mips/loongson/common/pm.c linux-2.6.37.1/arch/mips/loongson/common/pm.c
2219 ---- linux-2.6.37.1/arch/mips/loongson/common/pm.c 2011-01-04 19:50:19.000000000 -0500
2220 -+++ linux-2.6.37.1/arch/mips/loongson/common/pm.c 2011-01-17 02:41:00.000000000 -0500
2221 +diff -urNp linux-2.6.37.2/arch/mips/loongson/common/pm.c linux-2.6.37.2/arch/mips/loongson/common/pm.c
2222 +--- linux-2.6.37.2/arch/mips/loongson/common/pm.c 2011-01-04 19:50:19.000000000 -0500
2223 ++++ linux-2.6.37.2/arch/mips/loongson/common/pm.c 2011-01-17 02:41:00.000000000 -0500
2224 @@ -147,7 +147,7 @@ static int loongson_pm_valid_state(suspe
2225 }
2226 }
2227 @@ -1774,9 +1832,9 @@ diff -urNp linux-2.6.37.1/arch/mips/loongson/common/pm.c linux-2.6.37.1/arch/mip
2228 .valid = loongson_pm_valid_state,
2229 .enter = loongson_pm_enter,
2230 };
2231 -diff -urNp linux-2.6.37.1/arch/mips/mm/dma-default.c linux-2.6.37.1/arch/mips/mm/dma-default.c
2232 ---- linux-2.6.37.1/arch/mips/mm/dma-default.c 2011-01-04 19:50:19.000000000 -0500
2233 -+++ linux-2.6.37.1/arch/mips/mm/dma-default.c 2011-01-17 02:41:00.000000000 -0500
2234 +diff -urNp linux-2.6.37.2/arch/mips/mm/dma-default.c linux-2.6.37.2/arch/mips/mm/dma-default.c
2235 +--- linux-2.6.37.2/arch/mips/mm/dma-default.c 2011-01-04 19:50:19.000000000 -0500
2236 ++++ linux-2.6.37.2/arch/mips/mm/dma-default.c 2011-01-17 02:41:00.000000000 -0500
2237 @@ -300,7 +300,7 @@ void dma_cache_sync(struct device *dev,
2238
2239 EXPORT_SYMBOL(dma_cache_sync);
2240 @@ -1795,9 +1853,9 @@ diff -urNp linux-2.6.37.1/arch/mips/mm/dma-default.c linux-2.6.37.1/arch/mips/mm
2241 EXPORT_SYMBOL(mips_dma_map_ops);
2242
2243 #define PREALLOC_DMA_DEBUG_ENTRIES (1 << 16)
2244 -diff -urNp linux-2.6.37.1/arch/mips/mm/fault.c linux-2.6.37.1/arch/mips/mm/fault.c
2245 ---- linux-2.6.37.1/arch/mips/mm/fault.c 2011-01-04 19:50:19.000000000 -0500
2246 -+++ linux-2.6.37.1/arch/mips/mm/fault.c 2011-01-17 02:41:00.000000000 -0500
2247 +diff -urNp linux-2.6.37.2/arch/mips/mm/fault.c linux-2.6.37.2/arch/mips/mm/fault.c
2248 +--- linux-2.6.37.2/arch/mips/mm/fault.c 2011-01-04 19:50:19.000000000 -0500
2249 ++++ linux-2.6.37.2/arch/mips/mm/fault.c 2011-01-17 02:41:00.000000000 -0500
2250 @@ -28,6 +28,23 @@
2251 #include <asm/highmem.h> /* For VMALLOC_END */
2252 #include <linux/kdebug.h>
2253 @@ -1822,9 +1880,9 @@ diff -urNp linux-2.6.37.1/arch/mips/mm/fault.c linux-2.6.37.1/arch/mips/mm/fault
2254 /*
2255 * This routine handles page faults. It determines the address,
2256 * and the problem, and then passes it off to one of the appropriate
2257 -diff -urNp linux-2.6.37.1/arch/parisc/include/asm/elf.h linux-2.6.37.1/arch/parisc/include/asm/elf.h
2258 ---- linux-2.6.37.1/arch/parisc/include/asm/elf.h 2011-01-04 19:50:19.000000000 -0500
2259 -+++ linux-2.6.37.1/arch/parisc/include/asm/elf.h 2011-01-17 02:41:00.000000000 -0500
2260 +diff -urNp linux-2.6.37.2/arch/parisc/include/asm/elf.h linux-2.6.37.2/arch/parisc/include/asm/elf.h
2261 +--- linux-2.6.37.2/arch/parisc/include/asm/elf.h 2011-01-04 19:50:19.000000000 -0500
2262 ++++ linux-2.6.37.2/arch/parisc/include/asm/elf.h 2011-01-17 02:41:00.000000000 -0500
2263 @@ -342,6 +342,13 @@ struct pt_regs; /* forward declaration..
2264
2265 #define ELF_ET_DYN_BASE (TASK_UNMAPPED_BASE + 0x01000000)
2266 @@ -1839,9 +1897,9 @@ diff -urNp linux-2.6.37.1/arch/parisc/include/asm/elf.h linux-2.6.37.1/arch/pari
2267 /* This yields a mask that user programs can use to figure out what
2268 instruction set this CPU supports. This could be done in user space,
2269 but it's not easy, and we've already done it here. */
2270 -diff -urNp linux-2.6.37.1/arch/parisc/include/asm/pgtable.h linux-2.6.37.1/arch/parisc/include/asm/pgtable.h
2271 ---- linux-2.6.37.1/arch/parisc/include/asm/pgtable.h 2011-01-04 19:50:19.000000000 -0500
2272 -+++ linux-2.6.37.1/arch/parisc/include/asm/pgtable.h 2011-01-17 02:41:00.000000000 -0500
2273 +diff -urNp linux-2.6.37.2/arch/parisc/include/asm/pgtable.h linux-2.6.37.2/arch/parisc/include/asm/pgtable.h
2274 +--- linux-2.6.37.2/arch/parisc/include/asm/pgtable.h 2011-01-04 19:50:19.000000000 -0500
2275 ++++ linux-2.6.37.2/arch/parisc/include/asm/pgtable.h 2011-01-17 02:41:00.000000000 -0500
2276 @@ -207,6 +207,17 @@
2277 #define PAGE_EXECREAD __pgprot(_PAGE_PRESENT | _PAGE_USER | _PAGE_READ | _PAGE_EXEC |_PAGE_ACCESSED)
2278 #define PAGE_COPY PAGE_EXECREAD
2279 @@ -1860,9 +1918,9 @@ diff -urNp linux-2.6.37.1/arch/parisc/include/asm/pgtable.h linux-2.6.37.1/arch/
2280 #define PAGE_KERNEL __pgprot(_PAGE_KERNEL)
2281 #define PAGE_KERNEL_RO __pgprot(_PAGE_KERNEL & ~_PAGE_WRITE)
2282 #define PAGE_KERNEL_UNC __pgprot(_PAGE_KERNEL | _PAGE_NO_CACHE)
2283 -diff -urNp linux-2.6.37.1/arch/parisc/kernel/module.c linux-2.6.37.1/arch/parisc/kernel/module.c
2284 ---- linux-2.6.37.1/arch/parisc/kernel/module.c 2011-01-04 19:50:19.000000000 -0500
2285 -+++ linux-2.6.37.1/arch/parisc/kernel/module.c 2011-01-17 02:41:00.000000000 -0500
2286 +diff -urNp linux-2.6.37.2/arch/parisc/kernel/module.c linux-2.6.37.2/arch/parisc/kernel/module.c
2287 +--- linux-2.6.37.2/arch/parisc/kernel/module.c 2011-01-04 19:50:19.000000000 -0500
2288 ++++ linux-2.6.37.2/arch/parisc/kernel/module.c 2011-01-17 02:41:00.000000000 -0500
2289 @@ -96,16 +96,38 @@
2290
2291 /* three functions to determine where in the module core
2292 @@ -1963,9 +2021,9 @@ diff -urNp linux-2.6.37.1/arch/parisc/kernel/module.c linux-2.6.37.1/arch/parisc
2293
2294 DEBUGP("register_unwind_table(), sect = %d at 0x%p - 0x%p (gp=0x%lx)\n",
2295 me->arch.unwind_section, table, end, gp);
2296 -diff -urNp linux-2.6.37.1/arch/parisc/kernel/sys_parisc.c linux-2.6.37.1/arch/parisc/kernel/sys_parisc.c
2297 ---- linux-2.6.37.1/arch/parisc/kernel/sys_parisc.c 2011-01-04 19:50:19.000000000 -0500
2298 -+++ linux-2.6.37.1/arch/parisc/kernel/sys_parisc.c 2011-01-17 02:41:00.000000000 -0500
2299 +diff -urNp linux-2.6.37.2/arch/parisc/kernel/sys_parisc.c linux-2.6.37.2/arch/parisc/kernel/sys_parisc.c
2300 +--- linux-2.6.37.2/arch/parisc/kernel/sys_parisc.c 2011-01-04 19:50:19.000000000 -0500
2301 ++++ linux-2.6.37.2/arch/parisc/kernel/sys_parisc.c 2011-01-17 02:41:00.000000000 -0500
2302 @@ -43,7 +43,7 @@ static unsigned long get_unshared_area(u
2303 /* At this point: (!vma || addr < vma->vm_end). */
2304 if (TASK_SIZE - len < addr)
2305 @@ -1993,9 +2051,9 @@ diff -urNp linux-2.6.37.1/arch/parisc/kernel/sys_parisc.c linux-2.6.37.1/arch/pa
2306
2307 if (filp) {
2308 addr = get_shared_area(filp->f_mapping, addr, len, pgoff);
2309 -diff -urNp linux-2.6.37.1/arch/parisc/kernel/traps.c linux-2.6.37.1/arch/parisc/kernel/traps.c
2310 ---- linux-2.6.37.1/arch/parisc/kernel/traps.c 2011-01-04 19:50:19.000000000 -0500
2311 -+++ linux-2.6.37.1/arch/parisc/kernel/traps.c 2011-01-17 02:41:00.000000000 -0500
2312 +diff -urNp linux-2.6.37.2/arch/parisc/kernel/traps.c linux-2.6.37.2/arch/parisc/kernel/traps.c
2313 +--- linux-2.6.37.2/arch/parisc/kernel/traps.c 2011-01-04 19:50:19.000000000 -0500
2314 ++++ linux-2.6.37.2/arch/parisc/kernel/traps.c 2011-01-17 02:41:00.000000000 -0500
2315 @@ -733,9 +733,7 @@ void notrace handle_interruption(int cod
2316
2317 down_read(&current->mm->mmap_sem);
2318 @@ -2007,9 +2065,9 @@ diff -urNp linux-2.6.37.1/arch/parisc/kernel/traps.c linux-2.6.37.1/arch/parisc/
2319 fault_address = regs->iaoq[0];
2320 fault_space = regs->iasq[0];
2321
2322 -diff -urNp linux-2.6.37.1/arch/parisc/mm/fault.c linux-2.6.37.1/arch/parisc/mm/fault.c
2323 ---- linux-2.6.37.1/arch/parisc/mm/fault.c 2011-01-04 19:50:19.000000000 -0500
2324 -+++ linux-2.6.37.1/arch/parisc/mm/fault.c 2011-01-17 02:41:00.000000000 -0500
2325 +diff -urNp linux-2.6.37.2/arch/parisc/mm/fault.c linux-2.6.37.2/arch/parisc/mm/fault.c
2326 +--- linux-2.6.37.2/arch/parisc/mm/fault.c 2011-01-04 19:50:19.000000000 -0500
2327 ++++ linux-2.6.37.2/arch/parisc/mm/fault.c 2011-01-17 02:41:00.000000000 -0500
2328 @@ -15,6 +15,7 @@
2329 #include <linux/sched.h>
2330 #include <linux/interrupt.h>
2331 @@ -2179,9 +2237,9 @@ diff -urNp linux-2.6.37.1/arch/parisc/mm/fault.c linux-2.6.37.1/arch/parisc/mm/f
2332
2333 /*
2334 * If for any reason at all we couldn't handle the fault, make
2335 -diff -urNp linux-2.6.37.1/arch/powerpc/include/asm/device.h linux-2.6.37.1/arch/powerpc/include/asm/device.h
2336 ---- linux-2.6.37.1/arch/powerpc/include/asm/device.h 2011-01-04 19:50:19.000000000 -0500
2337 -+++ linux-2.6.37.1/arch/powerpc/include/asm/device.h 2011-01-17 02:41:00.000000000 -0500
2338 +diff -urNp linux-2.6.37.2/arch/powerpc/include/asm/device.h linux-2.6.37.2/arch/powerpc/include/asm/device.h
2339 +--- linux-2.6.37.2/arch/powerpc/include/asm/device.h 2011-01-04 19:50:19.000000000 -0500
2340 ++++ linux-2.6.37.2/arch/powerpc/include/asm/device.h 2011-01-17 02:41:00.000000000 -0500
2341 @@ -11,7 +11,7 @@ struct device_node;
2342
2343 struct dev_archdata {
2344 @@ -2191,9 +2249,9 @@ diff -urNp linux-2.6.37.1/arch/powerpc/include/asm/device.h linux-2.6.37.1/arch/
2345
2346 /*
2347 * When an iommu is in use, dma_data is used as a ptr to the base of the
2348 -diff -urNp linux-2.6.37.1/arch/powerpc/include/asm/dma-mapping.h linux-2.6.37.1/arch/powerpc/include/asm/dma-mapping.h
2349 ---- linux-2.6.37.1/arch/powerpc/include/asm/dma-mapping.h 2011-01-04 19:50:19.000000000 -0500
2350 -+++ linux-2.6.37.1/arch/powerpc/include/asm/dma-mapping.h 2011-01-17 02:41:00.000000000 -0500
2351 +diff -urNp linux-2.6.37.2/arch/powerpc/include/asm/dma-mapping.h linux-2.6.37.2/arch/powerpc/include/asm/dma-mapping.h
2352 +--- linux-2.6.37.2/arch/powerpc/include/asm/dma-mapping.h 2011-01-04 19:50:19.000000000 -0500
2353 ++++ linux-2.6.37.2/arch/powerpc/include/asm/dma-mapping.h 2011-01-17 02:41:00.000000000 -0500
2354 @@ -66,12 +66,13 @@ static inline unsigned long device_to_ma
2355 /*
2356 * Available generic sets of operations
2357 @@ -2256,9 +2314,9 @@ diff -urNp linux-2.6.37.1/arch/powerpc/include/asm/dma-mapping.h linux-2.6.37.1/
2358
2359 if (dma_ops->mapping_error)
2360 return dma_ops->mapping_error(dev, dma_addr);
2361 -diff -urNp linux-2.6.37.1/arch/powerpc/include/asm/elf.h linux-2.6.37.1/arch/powerpc/include/asm/elf.h
2362 ---- linux-2.6.37.1/arch/powerpc/include/asm/elf.h 2011-01-04 19:50:19.000000000 -0500
2363 -+++ linux-2.6.37.1/arch/powerpc/include/asm/elf.h 2011-01-17 02:41:00.000000000 -0500
2364 +diff -urNp linux-2.6.37.2/arch/powerpc/include/asm/elf.h linux-2.6.37.2/arch/powerpc/include/asm/elf.h
2365 +--- linux-2.6.37.2/arch/powerpc/include/asm/elf.h 2011-01-04 19:50:19.000000000 -0500
2366 ++++ linux-2.6.37.2/arch/powerpc/include/asm/elf.h 2011-01-17 02:41:00.000000000 -0500
2367 @@ -178,8 +178,19 @@ typedef elf_fpreg_t elf_vsrreghalf_t32[E
2368 the loader. We need to make sure that it is out of the way of the program
2369 that it will "exec", and that there is sufficient room for the brk. */
2370 @@ -2291,9 +2349,9 @@ diff -urNp linux-2.6.37.1/arch/powerpc/include/asm/elf.h linux-2.6.37.1/arch/pow
2371 #endif /* __KERNEL__ */
2372
2373 /*
2374 -diff -urNp linux-2.6.37.1/arch/powerpc/include/asm/iommu.h linux-2.6.37.1/arch/powerpc/include/asm/iommu.h
2375 ---- linux-2.6.37.1/arch/powerpc/include/asm/iommu.h 2011-01-04 19:50:19.000000000 -0500
2376 -+++ linux-2.6.37.1/arch/powerpc/include/asm/iommu.h 2011-01-17 02:41:00.000000000 -0500
2377 +diff -urNp linux-2.6.37.2/arch/powerpc/include/asm/iommu.h linux-2.6.37.2/arch/powerpc/include/asm/iommu.h
2378 +--- linux-2.6.37.2/arch/powerpc/include/asm/iommu.h 2011-01-04 19:50:19.000000000 -0500
2379 ++++ linux-2.6.37.2/arch/powerpc/include/asm/iommu.h 2011-01-17 02:41:00.000000000 -0500
2380 @@ -116,6 +116,9 @@ extern void iommu_init_early_iSeries(voi
2381 extern void iommu_init_early_dart(void);
2382 extern void iommu_init_early_pasemi(void);
2383 @@ -2304,9 +2362,9 @@ diff -urNp linux-2.6.37.1/arch/powerpc/include/asm/iommu.h linux-2.6.37.1/arch/p
2384 #ifdef CONFIG_PCI
2385 extern void pci_iommu_init(void);
2386 extern void pci_direct_iommu_init(void);
2387 -diff -urNp linux-2.6.37.1/arch/powerpc/include/asm/kmap_types.h linux-2.6.37.1/arch/powerpc/include/asm/kmap_types.h
2388 ---- linux-2.6.37.1/arch/powerpc/include/asm/kmap_types.h 2011-01-04 19:50:19.000000000 -0500
2389 -+++ linux-2.6.37.1/arch/powerpc/include/asm/kmap_types.h 2011-01-17 02:41:00.000000000 -0500
2390 +diff -urNp linux-2.6.37.2/arch/powerpc/include/asm/kmap_types.h linux-2.6.37.2/arch/powerpc/include/asm/kmap_types.h
2391 +--- linux-2.6.37.2/arch/powerpc/include/asm/kmap_types.h 2011-01-04 19:50:19.000000000 -0500
2392 ++++ linux-2.6.37.2/arch/powerpc/include/asm/kmap_types.h 2011-01-17 02:41:00.000000000 -0500
2393 @@ -27,6 +27,7 @@ enum km_type {
2394 KM_PPC_SYNC_PAGE,
2395 KM_PPC_SYNC_ICACHE,
2396 @@ -2315,9 +2373,9 @@ diff -urNp linux-2.6.37.1/arch/powerpc/include/asm/kmap_types.h linux-2.6.37.1/a
2397 KM_TYPE_NR
2398 };
2399
2400 -diff -urNp linux-2.6.37.1/arch/powerpc/include/asm/page_64.h linux-2.6.37.1/arch/powerpc/include/asm/page_64.h
2401 ---- linux-2.6.37.1/arch/powerpc/include/asm/page_64.h 2011-01-04 19:50:19.000000000 -0500
2402 -+++ linux-2.6.37.1/arch/powerpc/include/asm/page_64.h 2011-01-17 02:41:00.000000000 -0500
2403 +diff -urNp linux-2.6.37.2/arch/powerpc/include/asm/page_64.h linux-2.6.37.2/arch/powerpc/include/asm/page_64.h
2404 +--- linux-2.6.37.2/arch/powerpc/include/asm/page_64.h 2011-01-04 19:50:19.000000000 -0500
2405 ++++ linux-2.6.37.2/arch/powerpc/include/asm/page_64.h 2011-01-17 02:41:00.000000000 -0500
2406 @@ -172,15 +172,18 @@ do { \
2407 * stack by default, so in the absense of a PT_GNU_STACK program header
2408 * we turn execute permission off.
2409 @@ -2339,9 +2397,9 @@ diff -urNp linux-2.6.37.1/arch/powerpc/include/asm/page_64.h linux-2.6.37.1/arch
2410
2411 #include <asm-generic/getorder.h>
2412
2413 -diff -urNp linux-2.6.37.1/arch/powerpc/include/asm/page.h linux-2.6.37.1/arch/powerpc/include/asm/page.h
2414 ---- linux-2.6.37.1/arch/powerpc/include/asm/page.h 2011-01-04 19:50:19.000000000 -0500
2415 -+++ linux-2.6.37.1/arch/powerpc/include/asm/page.h 2011-01-17 02:41:00.000000000 -0500
2416 +diff -urNp linux-2.6.37.2/arch/powerpc/include/asm/page.h linux-2.6.37.2/arch/powerpc/include/asm/page.h
2417 +--- linux-2.6.37.2/arch/powerpc/include/asm/page.h 2011-01-04 19:50:19.000000000 -0500
2418 ++++ linux-2.6.37.2/arch/powerpc/include/asm/page.h 2011-01-17 02:41:00.000000000 -0500
2419 @@ -129,8 +129,9 @@ extern phys_addr_t kernstart_addr;
2420 * and needs to be executable. This means the whole heap ends
2421 * up being executable.
2422 @@ -2364,9 +2422,9 @@ diff -urNp linux-2.6.37.1/arch/powerpc/include/asm/page.h linux-2.6.37.1/arch/po
2423 #ifndef __ASSEMBLY__
2424
2425 #undef STRICT_MM_TYPECHECKS
2426 -diff -urNp linux-2.6.37.1/arch/powerpc/include/asm/pci.h linux-2.6.37.1/arch/powerpc/include/asm/pci.h
2427 ---- linux-2.6.37.1/arch/powerpc/include/asm/pci.h 2011-01-04 19:50:19.000000000 -0500
2428 -+++ linux-2.6.37.1/arch/powerpc/include/asm/pci.h 2011-01-17 02:41:00.000000000 -0500
2429 +diff -urNp linux-2.6.37.2/arch/powerpc/include/asm/pci.h linux-2.6.37.2/arch/powerpc/include/asm/pci.h
2430 +--- linux-2.6.37.2/arch/powerpc/include/asm/pci.h 2011-01-04 19:50:19.000000000 -0500
2431 ++++ linux-2.6.37.2/arch/powerpc/include/asm/pci.h 2011-01-17 02:41:00.000000000 -0500
2432 @@ -65,8 +65,8 @@ static inline int pci_get_legacy_ide_irq
2433 }
2434
2435 @@ -2378,9 +2436,20 @@ diff -urNp linux-2.6.37.1/arch/powerpc/include/asm/pci.h linux-2.6.37.1/arch/pow
2436 #else /* CONFIG_PCI */
2437 #define set_pci_dma_ops(d)
2438 #define get_pci_dma_ops() NULL
2439 -diff -urNp linux-2.6.37.1/arch/powerpc/include/asm/pte-hash32.h linux-2.6.37.1/arch/powerpc/include/asm/pte-hash32.h
2440 ---- linux-2.6.37.1/arch/powerpc/include/asm/pte-hash32.h 2011-01-04 19:50:19.000000000 -0500
2441 -+++ linux-2.6.37.1/arch/powerpc/include/asm/pte-hash32.h 2011-01-17 02:41:00.000000000 -0500
2442 +diff -urNp linux-2.6.37.2/arch/powerpc/include/asm/pgtable.h linux-2.6.37.2/arch/powerpc/include/asm/pgtable.h
2443 +--- linux-2.6.37.2/arch/powerpc/include/asm/pgtable.h 2011-01-04 19:50:19.000000000 -0500
2444 ++++ linux-2.6.37.2/arch/powerpc/include/asm/pgtable.h 2011-02-27 14:48:10.000000000 -0500
2445 +@@ -2,6 +2,7 @@
2446 + #define _ASM_POWERPC_PGTABLE_H
2447 + #ifdef __KERNEL__
2448 +
2449 ++#include <linux/const.h>
2450 + #ifndef __ASSEMBLY__
2451 + #include <asm/processor.h> /* For TASK_SIZE */
2452