]> git.ipfire.org Git - thirdparty/grsecurity-scrape.git/blob - test/changelog-test.txt
Auto commit, 1 new patch{es}.
[thirdparty/grsecurity-scrape.git] / test / changelog-test.txt
1 commit 708c2e025f8a05b76f319cfa5fa624d37d8ef6f3
2 Author: Brad Spengler <spender@grsecurity.net>
3 Date: Tue Nov 17 18:43:24 2015 -0500
4
5 Fix multiple character encodings in patch, reported by IooNag on the forums
6
7 grsecurity/Makefile | 2 +-
8 net/netfilter/xt_gradm.c | 2 +-
9 2 files changed, 2 insertions(+), 2 deletions(-)
10
11 commit d1f7534df8687fd05858fd45805b1185eafe38a7
12 Author: Hannes Frederic Sowa <hannes@stressinduktion.org>
13 Date: Tue Nov 17 15:10:59 2015 +0100
14
15 af_unix: take receive queue lock while appending new skb
16
17 While possibly in future we don't necessarily need to use
18 sk_buff_head.lock this is a rather larger change, as it affects the
19 af_unix fd garbage collector, diag and socket cleanups. This is too much
20 for a stable patch.
21
22 For the time being grab sk_buff_head.lock without disabling bh and irqs,
23 so don't use locked skb_queue_tail.
24
25 Fixes: 869e7c62486e ("net: af_unix: implement stream sendpage support")
26 Cc: Eric Dumazet <edumazet@google.com>
27 Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
28 Reported-by: Eric Dumazet <edumazet@google.com>
29 Acked-by: Eric Dumazet <edumazet@google.com>
30 Signed-off-by: David S. Miller <davem@davemloft.net>
31
32 net/unix/af_unix.c | 5 ++++-
33 1 files changed, 4 insertions(+), 1 deletions(-)
34
35 commit 0df914e7a66a4807bac7762ab33ba3020944ef6b
36 Author: Hannes Frederic Sowa <hannes@stressinduktion.org>
37 Date: Mon Nov 16 16:25:56 2015 +0100
38
39 af_unix: don't append consumed skbs to sk_receive_queue
40
41 In case multiple writes to a unix stream socket race we could end up in a
42 situation where we pre-allocate a new skb for use in unix_stream_sendpage
43 but have to free it again in the locked section because another skb
44 has been appended meanwhile, which we must use. Accidentally we didn't
45 clear the pointer after consuming it and so we touched freed memory
46 while appending it to the sk_receive_queue. So, clear the pointer after
47 consuming the skb.
48
49 This bug has been found with syzkaller
50 (http://github.com/google/syzkaller) by Dmitry Vyukov.
51
52 Fixes: 869e7c62486e ("net: af_unix: implement stream sendpage support")
53 Reported-by: Dmitry Vyukov <dvyukov@google.com>
54 Cc: Dmitry Vyukov <dvyukov@google.com>
55 Cc: Eric Dumazet <eric.dumazet@gmail.com>
56 Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
57 Acked-by: Eric Dumazet <edumazet@google.com>
58 Signed-off-by: David S. Miller <davem@davemloft.net>
59
60 net/unix/af_unix.c | 1 +
61 1 files changed, 1 insertions(+), 0 deletions(-)
62
63 commit ac8466abcd0ae871cd38d868e1a4e903b92ffc48
64 Author: Jason A. Donenfeld <Jason@zx2c4.com>
65 Date: Thu Nov 12 17:35:58 2015 +0100
66
67 ip_tunnel: disable preemption when updating per-cpu tstats
68
69 Drivers like vxlan use the recently introduced
70 udp_tunnel_xmit_skb/udp_tunnel6_xmit_skb APIs. udp_tunnel6_xmit_skb
71 makes use of ip6tunnel_xmit, and ip6tunnel_xmit, after sending the
72 packet, updates the struct stats using the usual
73 u64_stats_update_begin/end calls on this_cpu_ptr(dev->tstats).
74 udp_tunnel_xmit_skb makes use of iptunnel_xmit, which doesn't touch
75 tstats, so drivers like vxlan, immediately after, call
76 iptunnel_xmit_stats, which does the same thing - calls
77 u64_stats_update_begin/end on this_cpu_ptr(dev->tstats).
78
79 While vxlan is probably fine (I don't know?), calling a similar function
80 from, say, an unbound workqueue, on a fully preemptable kernel causes
81 real issues:
82
83 [ 188.434537] BUG: using smp_processor_id() in preemptible [00000000] code: kworker/u8:0/6
84 [ 188.435579] caller is debug_smp_processor_id+0x17/0x20
85 [ 188.435583] CPU: 0 PID: 6 Comm: kworker/u8:0 Not tainted 4.2.6 #2
86 [ 188.435607] Call Trace:
87 [ 188.435611] [<ffffffff8234e936>] dump_stack+0x4f/0x7b
88 [ 188.435615] [<ffffffff81915f3d>] check_preemption_disabled+0x19d/0x1c0
89 [ 188.435619] [<ffffffff81915f77>] debug_smp_processor_id+0x17/0x20
90
91 The solution would be to protect the whole
92 this_cpu_ptr(dev->tstats)/u64_stats_update_begin/end blocks with
93 disabling preemption and then reenabling it.
94
95 Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
96 Acked-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
97 Signed-off-by: David S. Miller <davem@davemloft.net>
98
99 include/net/ip6_tunnel.h | 3 ++-
100 include/net/ip_tunnels.h | 3 ++-
101 2 files changed, 4 insertions(+), 2 deletions(-)
102
103 commit 44665148f06b73ea0c253a1a34d15689674d7421
104 Author: Mathias Krause <minipli@googlemail.com>
105 Date: Fri Nov 6 16:30:38 2015 -0800
106
107 printk: prevent userland from spoofing kernel messages
108
109 The following statement of ABI/testing/dev-kmsg is not quite right:
110
111 It is not possible to inject messages from userspace with the
112 facility number LOG_KERN (0), to make sure that the origin of the
113 messages can always be reliably determined.
114
115 Userland actually can inject messages with a facility of 0 by abusing the
116 fact that the facility is stored in a u8 data type. By using a facility
117 which is a multiple of 256 the assignment of msg->facility in log_store()
118 implicitly truncates it to 0, i.e. LOG_KERN, allowing users of /dev/kmsg
119 to spoof kernel messages as shown below:
120
121 The following call...
122 # printf '<%d>Kernel panic - not syncing: beer empty\n' 0 >/dev/kmsg
123 ...leads to the following log entry (dmesg -x | tail -n 1):
124 user :emerg : [ 66.137758] Kernel panic - not syncing: beer empty
125
126 However, this call...
127 # printf '<%d>Kernel panic - not syncing: beer empty\n' 0x800 >/dev/kmsg
128 ...leads to the slightly different log entry (note the kernel facility):
129 kern :emerg : [ 74.177343] Kernel panic - not syncing: beer empty
130
131 Fix that by limiting the user provided facility to 8 bit right from the
132 beginning and catch the truncation early.
133
134 Fixes: 7ff9554bb578 ("printk: convert byte-buffer to variable-length...")
135 Signed-off-by: Mathias Krause <minipli@googlemail.com>
136 Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
137 Cc: Petr Mladek <pmladek@suse.cz>
138 Cc: Alex Elder <elder@linaro.org>
139 Cc: Joe Perches <joe@perches.com>
140 Cc: Kay Sievers <kay@vrfy.org>
141 Cc: <stable@vger.kernel.org>
142 Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
143 Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
144
145 kernel/printk/printk.c | 13 ++++++++-----
146 1 files changed, 8 insertions(+), 5 deletions(-)
147
148 commit bef8fb168317597f02c00ab4075ff094dcdfd2c6
149 Author: Borislav Petkov <bp@suse.de>
150 Date: Thu Nov 5 16:57:56 2015 +0100
151
152 x86/cpu: Call verify_cpu() after having entered long mode too
153
154 When we get loaded by a 64-bit bootloader, kernel entry point is
155 startup_64 in head_64.S. We don't trust any and all bootloaders because
156 some will fiddle with CPU configuration so we go ahead and massage each
157 CPU into sanity again.
158
159 For example, some dell BIOSes have this XD disable feature which set
160 IA32_MISC_ENABLE[34] and disable NX. This might be some dumb workaround
161 for other OSes but Linux sure doesn't need it.
162
163 A similar thing is present in the Surface 3 firmware - see
164 https://bugzilla.kernel.org/show_bug.cgi?id=106051 - which sets this bit
165 only on the BSP:
166
167 # rdmsr -a 0x1a0
168 400850089
169 850089
170 850089
171 850089
172
173 I know, right?!
174
175 There's not even an off switch in there.
176
177 So fix all those cases by sanitizing the 64-bit entry point too. For
178 that, make verify_cpu() callable in 64-bit mode also.
179
180 Requested-and-debugged-by: "H. Peter Anvin" <hpa@zytor.com>
181 Reported-and-tested-by: Bastien Nocera <bugzilla@hadess.net>
182 Signed-off-by: Borislav Petkov <bp@suse.de>
183 Cc: Matt Fleming <matt@codeblueprint.co.uk>
184 Cc: Peter Zijlstra <peterz@infradead.org>
185 Cc: stable@vger.kernel.org
186 Link: http://lkml.kernel.org/r/1446739076-21303-1-git-send-email-bp@alien8.de
187 Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
188
189 Conflicts:
190
191 arch/x86/kernel/head_64.S
192
193 arch/x86/kernel/head_64.S | 9 +++++++++
194 arch/x86/kernel/verify_cpu.S | 12 +++++++-----
195 2 files changed, 16 insertions(+), 5 deletions(-)
196
197 commit 9cb084208a9589a6a5be01d2b7df88843f4b01a4
198 Author: Hannes Frederic Sowa <hannes@stressinduktion.org>
199 Date: Tue Nov 10 16:23:15 2015 +0100
200
201 af-unix: fix use-after-free with concurrent readers while splicing
202
203 During splicing an af-unix socket to a pipe we have to drop all
204 af-unix socket locks. While doing so we allow another reader to enter
205 unix_stream_read_generic which can read, copy and finally free another
206 skb. If exactly this skb is just in process of being spliced we get a
207 use-after-free report by kasan.
208
209 First, we must make sure to not have a free while the skb is used during
210 the splice operation. We simply increment its use counter before unlocking
211 the reader lock.
212
213 Stream sockets have the nice characteristic that we don't care about
214 zero length writes and they never reach the peer socket's queue. That
215 said, we can take the UNIXCB.consumed field as the indicator if the
216 skb was already freed from the socket's receive queue. If the skb was
217 fully consumed after we locked the reader side again we know it has been
218 dropped by a second reader. We indicate a short read to user space and
219 abort the current splice operation.
220
221 This bug has been found with syzkaller
222 (http://github.com/google/syzkaller) by Dmitry Vyukov.
223
224 Fixes: 2b514574f7e8 ("net: af_unix: implement splice for stream af_unix sockets")
225 Reported-by: Dmitry Vyukov <dvyukov@google.com>
226 Cc: Dmitry Vyukov <dvyukov@google.com>
227 Cc: Eric Dumazet <eric.dumazet@gmail.com>
228 Acked-by: Eric Dumazet <edumazet@google.com>
229 Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
230 Signed-off-by: David S. Miller <davem@davemloft.net>
231
232 net/unix/af_unix.c | 18 ++++++++++++++++++
233 1 files changed, 18 insertions(+), 0 deletions(-)
234
235 commit 4e75d2b7d6546add44f0951e78410b131a1e660d
236 Author: Brad Spengler <spender@grsecurity.net>
237 Date: Sat Nov 14 15:08:46 2015 -0500
238
239 switch the default for SIZE_OVERFLOW_KILL to n, later we'll remove
240 the option entirely
241 Distros should make sure their users report all overflows printed to the
242 kernel logs so the underlying issues can be fixed
243
244 security/Kconfig | 2 +-
245 1 files changed, 1 insertions(+), 1 deletions(-)
246
247 commit 2e37eb35e0f1ba5a0feac5264a7b24d89376d0a2
248 Author: Brad Spengler <spender@grsecurity.net>
249 Date: Sat Nov 14 15:07:51 2015 -0500
250
251 Resync with PaX
252
253 fs/btrfs/inode.c | 12 ++++++++++++
254 1 files changed, 12 insertions(+), 0 deletions(-)
255
256 commit 2f63d2552f38c700902d17bf9b591d82f39a3fb5
257 Merge: 5e0ec21 823b1bc
258 Author: Brad Spengler <spender@grsecurity.net>
259 Date: Sat Nov 14 14:29:16 2015 -0500
260
261 Merge branch 'pax-test' into grsec-test
262
263 commit 823b1bc5a8e670f7ddfa98ee0d83762bffab28fb
264 Author: Brad Spengler <spender@grsecurity.net>
265 Date: Sat Nov 14 14:28:35 2015 -0500
266
267 Update to pax-linux-4.2.6-test19.patch:
268 - David Sterba updated the fix for one of the previous btrfs problems
269 - Emese and Rasmus Villemoes <linux@rasmusvillemoes.dk> fixed a few bugs in the initify plugin
270 - fixed debian package generation to support building out-of-tree modules with plugins, reported by Elie Roudninski <elie.roudninski@gmail.com>
271
272 fs/btrfs/delayed-inode.c | 3 +-
273 fs/btrfs/delayed-inode.h | 2 +-
274 fs/btrfs/inode.c | 2 +-
275 scripts/package/builddeb | 2 +-
276 tools/gcc/initify_plugin.c | 264 ++++++++++++++++++++++++++++++--------------
277 5 files changed, 188 insertions(+), 85 deletions(-)
278
279 commit 5e0ec21349bb3aeead0701ef51df3086ad377979
280 Author: Brad Spengler <spender@grsecurity.net>
281 Date: Thu Nov 12 19:54:21 2015 -0500
282
283 Revert https://patchwork.kernel.org/patch/7585611/ for now as it's been reported
284 to cause userland hangs, similar to previous bugs seen in the past
285
286 fs/btrfs/inode.c | 12 ------------
287 1 files changed, 0 insertions(+), 12 deletions(-)
288
289 commit 65402b5a6125cc95c3223a0da8f2817e13bf18ec
290 Author: françois romieu <romieu@fr.zoreil.com>
291 Date: Wed Nov 11 23:35:18 2015 +0100
292
293 r8169: fix kasan reported skb use-after-free.
294
295 Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
296 Reported-by: Dave Jones <davej@codemonkey.org.uk>
297 Fixes: d7d2d89d4b0af ("r8169: Add software counter for multicast packages")
298 Acked-by: Eric Dumazet <edumazet@google.com>
299 Acked-by: Corinna Vinschen <vinschen@redhat.com>
300 Signed-off-by: David S. Miller <davem@davemloft.net>
301
302 drivers/net/ethernet/realtek/r8169.c | 3 +++
303 1 files changed, 3 insertions(+), 0 deletions(-)
304
305 commit bbfcbb7b1e086062aa17358927e14e394830b8a3
306 Author: Anthony Lineham <anthony.lineham@alliedtelesis.co.nz>
307 Date: Thu Oct 22 11:17:03 2015 +1300
308
309 netfilter: Fix removal of GRE expectation entries created by PPTP
310
311 The uninitialized tuple structure caused incorrect hash calculation
312 and the lookup failed.
313
314 Link: https://bugzilla.kernel.org/show_bug.cgi?id=106441
315 Signed-off-by: Anthony Lineham <anthony.lineham@alliedtelesis.co.nz>
316 Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
317
318 net/ipv4/netfilter/nf_nat_pptp.c | 2 +-
319 1 files changed, 1 insertions(+), 1 deletions(-)
320
321 commit d7cb19f37a91603021e2bed6417766ecca315bd0
322 Author: Paolo Bonzini <pbonzini@redhat.com>
323 Date: Tue Nov 10 09:14:39 2015 +0100
324
325 KVM: svm: unconditionally intercept #DB
326
327 This is needed to avoid the possibility that the guest triggers
328 an infinite stream of #DB exceptions (CVE-2015-8104).
329
330 VMX is not affected: because it does not save DR6 in the VMCS,
331 it already intercepts #DB unconditionally.
332
333 Reported-by: Jan Beulich <jbeulich@suse.com>
334 Cc: stable@vger.kernel.org
335 Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
336
337 arch/x86/kvm/svm.c | 14 +++-----------
338 1 files changed, 3 insertions(+), 11 deletions(-)
339
340 commit 5b241ac6551e1675e1cbbc4a74fa1c698ada28f4
341 Author: Eric Northup <digitaleric@google.com>
342 Date: Tue Nov 3 18:03:53 2015 +0100
343
344 KVM: x86: work around infinite loop in microcode when #AC is delivered
345
346 It was found that a guest can DoS a host by triggering an infinite
347 stream of "alignment check" (#AC) exceptions. This causes the
348 microcode to enter an infinite loop where the core never receives
349 another interrupt. The host kernel panics pretty quickly due to the
350 effects (CVE-2015-5307).
351
352 Signed-off-by: Eric Northup <digitaleric@google.com>
353 Cc: stable@vger.kernel.org
354 Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
355
356 arch/x86/include/uapi/asm/svm.h | 1 +
357 arch/x86/kvm/svm.c | 8 ++++++++
358 arch/x86/kvm/vmx.c | 5 ++++-
359 3 files changed, 13 insertions(+), 1 deletions(-)
360
361 commit 6113725aaaf6626522b93732f29dd36370695a89
362 Author: Daniel Borkmann <daniel@iogearbox.net>
363 Date: Thu Nov 5 00:01:51 2015 +0100
364
365 debugfs: fix refcount imbalance in start_creating
366
367 In debugfs' start_creating(), we pin the file system to safely access
368 its root. When we failed to create a file, we unpin the file system via
369 failed_creating() to release the mount count and eventually the reference
370 of the vfsmount.
371
372 However, when we run into an error during lookup_one_len() when still
373 in start_creating(), we only release the parent's mutex but not so the
374 reference on the mount. Looks like it was done in the past, but after
375 splitting portions of __create_file() into start_creating() and
376 end_creating() via 190afd81e4a5 ("debugfs: split the beginning and the
377 end of __create_file() off"), this seemed missed. Noticed during code
378 review.
379
380 Fixes: 190afd81e4a5 ("debugfs: split the beginning and the end of __create_file() off")
381 Cc: stable@vger.kernel.org # v4.0+
382 Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
383 Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
384
385 fs/debugfs/inode.c | 6 +++++-
386 1 files changed, 5 insertions(+), 1 deletions(-)
387
388 commit e91f8a6717837a8a64b6e86317a1373ec9cd6c04
389 Author: Maciej W. Rozycki <macro@imgtec.com>
390 Date: Mon Oct 26 15:48:19 2015 +0000
391
392 binfmt_elf: Don't clobber passed executable's file header
393
394 Do not clobber the buffer space passed from `search_binary_handler' and
395 originally preloaded by `prepare_binprm' with the executable's file
396 header by overwriting it with its interpreter's file header. Instead
397 keep the buffer space intact and directly use the data structure locally
398 allocated for the interpreter's file header, fixing a bug introduced in
399 2.1.14 with loadable module support (linux-mips.org commit beb11695
400 [Import of Linux/MIPS 2.1.14], predating kernel.org repo's history).
401 Adjust the amount of data read from the interpreter's file accordingly.
402
403 This was not an issue before loadable module support, because back then
404 `load_elf_binary' was executed only once for a given ELF executable,
405 whether the function succeeded or failed.
406
407 With loadable module support supported and enabled, upon a failure of
408 `load_elf_binary' -- which may for example be caused by architecture
409 code rejecting an executable due to a missing hardware feature requested
410 in the file header -- a module load is attempted and then the function
411 reexecuted by `search_binary_handler'. With the executable's file
412 header replaced with its interpreter's file header the executable can
413 then be erroneously accepted in this subsequent attempt.
414
415 Cc: stable@vger.kernel.org # all the way back
416 Signed-off-by: Maciej W. Rozycki <macro@imgtec.com>
417 Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
418
419 fs/binfmt_elf.c | 10 +++++-----
420 1 files changed, 5 insertions(+), 5 deletions(-)
421
422 commit 9c49029fe4cb9a52cb174aebfd5946a9d26b9956
423 Merge: 5482e7e 7033393
424 Author: Brad Spengler <spender@grsecurity.net>
425 Date: Mon Nov 9 19:51:58 2015 -0500
426
427 Merge branch 'pax-test' into grsec-test
428
429 commit 70333935932c9f3eb333a354dd760b4233efcc37
430 Author: Brad Spengler <spender@grsecurity.net>
431 Date: Mon Nov 9 19:51:19 2015 -0500
432
433 Update to pax-linux-4.2.6-test18.patch:
434 - cleaned up the last of the FPU changes, by spender
435 - fixed a few KERNEXEC regressions (backported from 4.3)
436 - Emese fixed a few size overflow false positives in kvm, reported by Christian Roessner (https://bugs.gentoo.org/show_bug.cgi?id=558138#c23)
437 - David Sterba fixed a few integer overflows in btrfs caught by the size overflow plugin (https://patchwork.kernel.org/patch/7585611/ and https://patchwork.kernel.org/patch/7582351/), reported by Victor, Stebalien and alan.d (https://forums.grsecurity.net/viewtopic.php?f=1&t=4284)
438
439 arch/x86/include/asm/fpu/internal.h | 2 +-
440 arch/x86/include/asm/fpu/types.h | 1 -
441 arch/x86/kernel/apic/apic.c | 4 ++-
442 arch/x86/kernel/fpu/init.c | 36 --------------------
443 arch/x86/kernel/process_64.c | 6 +--
444 arch/x86/kernel/vsmp_64.c | 13 +++++--
445 drivers/acpi/video_detect.c | 2 +-
446 drivers/lguest/core.c | 2 +-
447 fs/btrfs/file.c | 10 ++++--
448 fs/btrfs/inode.c | 12 ++++++
449 .../disable_size_overflow_hash.data | 5 ++-
450 .../size_overflow_plugin/size_overflow_hash.data | 7 +---
451 12 files changed, 42 insertions(+), 58 deletions(-)
452
453 commit 5482e7eb4ba3c5cc90472ccdb1bfe2cec64413e2
454 Merge: 81e2642 682ba19
455 Author: Brad Spengler <spender@grsecurity.net>
456 Date: Mon Nov 9 18:19:48 2015 -0500
457
458 Merge branch 'pax-test' into grsec-test
459
460 Conflicts:
461 drivers/pci/pci-sysfs.c
462
463 commit 682ba19ce305f501c9bc5c42a76f2c7442aa22fc
464 Merge: 7755256 1c02865
465 Author: Brad Spengler <spender@grsecurity.net>
466 Date: Mon Nov 9 18:18:24 2015 -0500
467
468 Merge branch 'linux-4.2.y' into pax-test
469
470 commit 81e26429b7a36f0c75de3ab42754256720c0a159
471 Author: Brad Spengler <spender@grsecurity.net>
472 Date: Mon Nov 9 07:37:30 2015 -0500
473
474 btrfs: fix signed overflow in btrfs_sync_file
475
476 The calculation of range length in btrfs_sync_file leads to signed
477 overflow. This was caught by PaX gcc SIZE_OVERFLOW plugin.
478
479 https://forums.grsecurity.net/viewtopic.php?f=1&t=4284
480
481 The fsync call passes 0 and LLONG_MAX, the range length does not fit to
482 loff_t and overflows, but the value is converted to u64 so it silently
483 works as expected.
484
485 The minimal fix is a typecast to u64, switching functions to take
486 (start, end) instead of (start, len) would be more intrusive.
487
488 Coccinelle script found that there's one more opencoded calculation of
489 the length.
490
491 <smpl>
492 @@
493 loff_t start, end;
494 @@
495 * end - start
496 </smpl>
497
498 CC: stable@vger.kernel.org
499 Signed-off-by: David Sterba <dsterba@suse.com>
500
501 fs/btrfs/file.c | 10 +++++++---
502 1 files changed, 7 insertions(+), 3 deletions(-)
503
504 commit 07fd498a96e2d589ad743851c0dec482a92e0429
505 Author: Brad Spengler <spender@grsecurity.net>
506 Date: Sun Nov 8 17:04:31 2015 -0500
507
508 Fix an upstream type confusion bug exposed by RANDSTRUCT:
509 at the beginning of each sem_array/shmid_kernel/msg_queue
510 struct is an kern_ipc_perm struct. Unlike every other place in the
511 kernel where some field must be at an explicit location, there's
512 no documentation at all that the kern_ipc_perm must be at the beginning
513 of these structs. Previously, shmid_kernel and kern_ipc_perm were both
514 randomized with RANDSTRUCT. The problem arises due to the show() handler
515 for /proc for msg/sem/shm -- what it is provided is a pointer to
516 a kern_ipc_perm struct (as a void *) which each show() handler then
517 assumes can be implicitly cast to its own particular struct type without
518 any kind of container_of being performed. Fix this by doing the proper
519 type conversions for each via container_of, and randomize the sem and msg
520 structs while we're at it.
521
522 include/linux/msg.h | 2 +-
523 include/linux/sem.h | 2 +-
524 ipc/msg.c | 3 ++-
525 ipc/sem.c | 3 ++-
526 ipc/shm.c | 3 ++-
527 5 files changed, 8 insertions(+), 5 deletions(-)
528
529 commit 6591e1a526c544936975cd3515d8def09e8026f0
530 Author: Brad Spengler <spender@grsecurity.net>
531 Date: Tue Nov 3 19:36:05 2015 -0500
532
533 Properly fix the PCI sysfs node check that was recently improperly fixed
534 upstream (it's under CAP_SYS_ADMIN so it's not really serious)
535 Reported by Mathias Krause
536
537 drivers/pci/pci-sysfs.c | 2 +-
538 1 files changed, 1 insertions(+), 1 deletions(-)
539
540 commit ece03d4d07f29634687b2ea5edb7cab23888cff3
541 Merge: 715e674 7755256
542 Author: Brad Spengler <spender@grsecurity.net>
543 Date: Mon Nov 2 21:32:10 2015 -0500
544
545 Merge branch 'pax-test' into grsec-test
546
547 commit 775525660a6353feb261ad6232f6acbc23826bf4
548 Author: Brad Spengler <spender@grsecurity.net>
549 Date: Mon Nov 2 21:31:21 2015 -0500
550
551 Update to pax-linux-4.2.5-test17.patch:
552 - Emese fixed a bunch of size overflow reports:
553 - https://forums.grsecurity.net/viewtopic.php?f=3&t=4290
554 - https://forums.grsecurity.net/viewtopic.php?f=3&t=4291
555 - https://forums.grsecurity.net/viewtopic.php?f=3&t=4288
556 - https://forums.grsecurity.net/viewtopic.php?f=3&t=4285
557 - https://forums.grsecurity.net/viewtopic.php?f=3&t=4283
558 - https://forums.grsecurity.net/viewtopic.php?f=3&t=4287
559 - https://forums.grsecurity.net/viewtopic.php?f=3&t=4289
560 - https://bugs.archlinux.org/task/46798
561 - fixed the x86 fpu code some more, reported by spender and others (https://bugs.gentoo.org/show_bug.cgi?id=563804, https://bugs.archlinux.org/task/46764)
562
563 arch/x86/include/asm/fpu/internal.h | 4 +-
564 arch/x86/kernel/fpu/core.c | 2 +-
565 arch/x86/kernel/process.c | 3 +-
566 arch/x86/kernel/process_64.c | 6 +-
567 drivers/usb/class/cdc-acm.h | 2 +-
568 drivers/video/console/fbcon.c | 2 +-
569 fs/dlm/lowcomms.c | 2 +-
570 include/linux/usb.h | 8 +-
571 .../disable_size_overflow_hash.data | 15 +-
572 .../size_overflow_plugin/intentional_overflow.c | 3 +
573 .../size_overflow_plugin/size_overflow_hash.data | 373 ++++++++++++++++----
574 tools/gcc/size_overflow_plugin/size_overflow_ipa.c | 3 +-
575 .../size_overflow_plugin/size_overflow_plugin.c | 2 +-
576 13 files changed, 329 insertions(+), 96 deletions(-)
577
578 commit 715e674a838f08748044bce459380762e9c1cd29
579 Author: Sasha Levin <sasha.levin@oracle.com>
580 Date: Wed Oct 7 11:03:28 2015 -0500
581
582 PCI: Prevent out of bounds access in numa_node override
583
584 63692df103e9 ("PCI: Allow numa_node override via sysfs") didn't check that
585 the numa node provided by userspace is valid. Passing a node number too
586 high would attempt to access invalid memory and trigger a kernel panic.
587
588 Fixes: 63692df103e9 ("PCI: Allow numa_node override via sysfs")
589 Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
590 Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
591 CC: stable@vger.kernel.org # v3.19+
592
593 drivers/pci/pci-sysfs.c | 2 +-
594 1 files changed, 1 insertions(+), 1 deletions(-)
595
596 commit 6abe1bb892fe394df80dd4267a8bd2874d537e4e
597 Author: David Howells <dhowells@redhat.com>
598 Date: Fri Sep 18 11:45:12 2015 +0100
599
600 ovl: use O_LARGEFILE in ovl_copy_up()
601
602 Open the lower file with O_LARGEFILE in ovl_copy_up().
603
604 Pass O_LARGEFILE unconditionally in ovl_copy_up_data() as it's purely for
605 catching 32-bit userspace dealing with a file large enough that it'll be
606 mishandled if the application isn't aware that there might be an integer
607 overflow. Inside the kernel, there shouldn't be any problems.
608
609 Reported-by: Ulrich Obergfell <uobergfe@redhat.com>
610 Signed-off-by: David Howells <dhowells@redhat.com>
611 Signed-off-by: Miklos Szeredi <miklos@szeredi.hu>
612 Cc: <stable@vger.kernel.org> # v3.18+
613
614 fs/overlayfs/copy_up.c | 4 ++--
615 1 files changed, 2 insertions(+), 2 deletions(-)
616
617 commit bf5e23398e4a82e28fe0801337a4b78ca951a1d9
618 Author: David Howells <dhowells@redhat.com>
619 Date: Fri Sep 18 11:45:22 2015 +0100
620
621 ovl: fix dentry reference leak
622
623 In ovl_copy_up_locked(), newdentry is leaked if the function exits through
624 out_cleanup as this just to out after calling ovl_cleanup() - which doesn't
625 actually release the ref on newdentry.
626
627 The out_cleanup segment should instead exit through out2 as certainly
628 newdentry leaks - and possibly upper does also, though this isn't caught
629 given the catch of newdentry.
630
631 Without this fix, something like the following is seen:
632
633 BUG: Dentry ffff880023e9eb20{i=f861,n=#ffff880023e82d90} still in use (1) [unmount of tmpfs tmpfs]
634 BUG: Dentry ffff880023ece640{i=0,n=bigfile} still in use (1) [unmount of tmpfs tmpfs]
635
636 when unmounting the upper layer after an error occurred in copyup.
637
638 An error can be induced by creating a big file in a lower layer with
639 something like:
640
641 dd if=/dev/zero of=/lower/a/bigfile bs=65536 count=1 seek=$((0xf000))
642
643 to create a large file (4.1G). Overlay an upper layer that is too small
644 (on tmpfs might do) and then induce a copy up by opening it writably.
645
646 Reported-by: Ulrich Obergfell <uobergfe@redhat.com>
647 Signed-off-by: David Howells <dhowells@redhat.com>
648 Signed-off-by: Miklos Szeredi <miklos@szeredi.hu>
649 Cc: <stable@vger.kernel.org> # v3.18+
650
651 fs/overlayfs/copy_up.c | 2 +-
652 1 files changed, 1 insertions(+), 1 deletions(-)
653
654 commit da93976d3355abae09d9fd6a68e7dea77ed619d1
655 Author: Miklos Szeredi <miklos@szeredi.hu>
656 Date: Mon Oct 12 15:56:20 2015 +0200
657
658 ovl: fix open in stacked overlay
659
660 If two overlayfs filesystems are stacked on top of each other, then we need
661 recursion in ovl_d_select_inode().
662
663 I guess d_backing_inode() is supposed to do that. But currently it doesn't
664 and that functionality is open coded in vfs_open(). This is now copied
665 into ovl_d_select_inode() to fix this regression.
666
667 Reported-by: Alban Crequy <alban.crequy@gmail.com>
668 Signed-off-by: Miklos Szeredi <miklos@szeredi.hu>
669 Fixes: 4bacc9c9234c ("overlayfs: Make f_path always point to the overlay...")
670 Cc: David Howells <dhowells@redhat.com>
671 Cc: <stable@vger.kernel.org> # v4.2+
672
673 fs/overlayfs/inode.c | 3 +++
674 1 files changed, 3 insertions(+), 0 deletions(-)
675
676 commit 0ddd9cf6149717882b81c946149bf55332d763ae
677 Author: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
678 Date: Mon Aug 24 15:57:18 2015 +0300
679
680 ovl: free stack of paths in ovl_fill_super
681
682 This fixes small memory leak after mount.
683
684 Kmemleak report:
685
686 unreferenced object 0xffff88003683fe00 (size 16):
687 comm "mount", pid 2029, jiffies 4294909563 (age 33.380s)
688 hex dump (first 16 bytes):
689 20 27 1f bb 00 88 ff ff 40 4b 0f 36 02 88 ff ff '......@K.6....
690 backtrace:
691 [<ffffffff811f8cd4>] create_object+0x124/0x2c0
692 [<ffffffff817a059b>] kmemleak_alloc+0x7b/0xc0
693 [<ffffffff811dffe6>] __kmalloc+0x106/0x340
694 [<ffffffffa01b7a29>] ovl_fill_super+0x389/0x9a0 [overlay]
695 [<ffffffff81200ac4>] mount_nodev+0x54/0xa0
696 [<ffffffffa01b7118>] ovl_mount+0x18/0x20 [overlay]
697 [<ffffffff81201ab3>] mount_fs+0x43/0x170
698 [<ffffffff81220d34>] vfs_kern_mount+0x74/0x170
699 [<ffffffff812233ad>] do_mount+0x22d/0xdf0
700 [<ffffffff812242cb>] SyS_mount+0x7b/0xc0
701 [<ffffffff817b6bee>] entry_SYSCALL_64_fastpath+0x12/0x76
702 [<ffffffffffffffff>] 0xffffffffffffffff
703
704 Signed-off-by: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
705 Signed-off-by: Miklos Szeredi <miklos@szeredi.hu>
706 Fixes: a78d9f0d5d5c ("ovl: support multiple lower layers")
707 Cc: <stable@vger.kernel.org> # v4.0+
708
709 fs/overlayfs/super.c | 1 +
710 1 files changed, 1 insertions(+), 0 deletions(-)
711
712 commit b86575c9973b9ad55d659fd8a6be8f864435ad0e
713 Author: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
714 Date: Mon Aug 24 15:57:19 2015 +0300
715
716 ovl: free lower_mnt array in ovl_put_super
717
718 This fixes memory leak after umount.
719
720 Kmemleak report:
721
722 unreferenced object 0xffff8800ba791010 (size 8):
723 comm "mount", pid 2394, jiffies 4294996294 (age 53.920s)
724 hex dump (first 8 bytes):
725 20 1c 13 02 00 88 ff ff .......
726 backtrace:
727 [<ffffffff811f8cd4>] create_object+0x124/0x2c0
728 [<ffffffff817a059b>] kmemleak_alloc+0x7b/0xc0
729 [<ffffffff811dffe6>] __kmalloc+0x106/0x340
730 [<ffffffffa0152bfc>] ovl_fill_super+0x55c/0x9b0 [overlay]
731 [<ffffffff81200ac4>] mount_nodev+0x54/0xa0
732 [<ffffffffa0152118>] ovl_mount+0x18/0x20 [overlay]
733 [<ffffffff81201ab3>] mount_fs+0x43/0x170
734 [<ffffffff81220d34>] vfs_kern_mount+0x74/0x170
735 [<ffffffff812233ad>] do_mount+0x22d/0xdf0
736 [<ffffffff812242cb>] SyS_mount+0x7b/0xc0
737 [<ffffffff817b6bee>] entry_SYSCALL_64_fastpath+0x12/0x76
738 [<ffffffffffffffff>] 0xffffffffffffffff
739
740 Signed-off-by: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
741 Signed-off-by: Miklos Szeredi <miklos@szeredi.hu>
742 Fixes: dd662667e6d3 ("ovl: add mutli-layer infrastructure")
743 Cc: <stable@vger.kernel.org> # v4.0+
744
745 fs/overlayfs/super.c | 1 +
746 1 files changed, 1 insertions(+), 0 deletions(-)
747
748 commit 9f49b5376fae99cd590d13726e2633bc0a53b6db
749 Author: Linus Torvalds <torvalds@linux-foundation.org>
750 Date: Sun Nov 1 17:09:15 2015 -0800
751
752 mm: get rid of 'vmalloc_info' from /proc/meminfo
753
754 It turns out that at least some versions of glibc end up reading
755 /proc/meminfo at every single startup, because glibc wants to know the
756 amount of memory the machine has. And while that's arguably insane,
757 it's just how things are.
758
759 And it turns out that it's not all that expensive most of the time, but
760 the vmalloc information statistics (amount of virtual memory used in the
761 vmalloc space, and the biggest remaining chunk) can be rather expensive
762 to compute.
763
764 The 'get_vmalloc_info()' function actually showed up on my profiles as
765 4% of the CPU usage of "make test" in the git source repository, because
766 the git tests are lots of very short-lived shell-scripts etc.
767
768 It turns out that apparently this same silly vmalloc info gathering
769 shows up on the facebook servers too, according to Dave Jones. So it's
770 not just "make test" for git.
771
772 We had two patches to just cache the information (one by me, one by
773 Ingo) to mitigate this issue, but the whole vmalloc information of of
774 rather dubious value to begin with, and people who *actually* want to
775 know what the situation is wrt the vmalloc area should just look at the
776 much more complete /proc/vmallocinfo instead.
777
778 In fact, according to my testing - and perhaps more importantly,
779 according to that big search engine in the sky: Google - there is
780 nothing out there that actually cares about those two expensive fields:
781 VmallocUsed and VmallocChunk.
782
783 So let's try to just remove them entirely. Actually, this just removes
784 the computation and reports the numbers as zero for now, just to try to
785 be minimally intrusive.
786
787 If this breaks anything, we'll obviously have to re-introduce the code
788 to compute this all and add the caching patches on top. But if given
789 the option, I'd really prefer to just remove this bad idea entirely
790 rather than add even more code to work around our historical mistake
791 that likely nobody really cares about.
792
793 Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
794
795 fs/proc/meminfo.c | 7 ++-----
796 include/linux/vmalloc.h | 12 ------------
797 mm/vmalloc.c | 47 -----------------------------------------------
798 3 files changed, 2 insertions(+), 64 deletions(-)
799
800 commit 66425129a550275398f886498d957284539bb331
801 Author: Marek Vasut <marex@denx.de>
802 Date: Fri Oct 30 13:48:19 2015 +0100
803
804 can: Use correct type in sizeof() in nla_put()
805
806 The sizeof() is invoked on an incorrect variable, likely due to some
807 copy-paste error, and this might result in memory corruption. Fix this.
808
809 Signed-off-by: Marek Vasut <marex@denx.de>
810 Cc: Wolfgang Grandegger <wg@grandegger.com>
811 Cc: netdev@vger.kernel.org
812 Cc: linux-stable <stable@vger.kernel.org>
813 Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
814
815 drivers/net/can/dev.c | 2 +-
816 1 files changed, 1 insertions(+), 1 deletions(-)
817
818 commit 8c8e802a86f8faf2519710db043339e1cc953bc4
819 Author: Brad Spengler <spender@grsecurity.net>
820 Date: Mon Nov 2 17:20:52 2015 -0500
821
822 Fix the FPU code properly by copying the dynamically-sized FPU state on
823 each clone of the task struct, making it equivalent to the new FPU-in-task-struct code
824
825 Fix is from the PaX Team
826
827 arch/x86/kernel/process.c | 2 ++
828 1 files changed, 2 insertions(+), 0 deletions(-)
829
830 commit 036bc2e2231c76f7eb470bfef67b6bc26187aeae
831 Author: Brad Spengler <spender@grsecurity.net>
832 Date: Mon Nov 2 17:19:43 2015 -0500
833
834 Revert the forced eagerfpu since it's now fixed properly
835
836 arch/x86/kernel/fpu/init.c | 3 ---
837 1 files changed, 0 insertions(+), 3 deletions(-)
838
839 commit a08ab82bcf321704f6a228c7924b860510c6d610
840 Author: Carol L Soto <clsoto@linux.vnet.ibm.com>
841 Date: Tue Oct 27 17:36:20 2015 +0200
842
843 net/mlx4: Copy/set only sizeof struct mlx4_eqe bytes
844
845 When doing memcpy/memset of EQEs, we should use sizeof struct
846 mlx4_eqe as the base size and not caps.eqe_size which could be bigger.
847
848 If caps.eqe_size is bigger than the struct mlx4_eqe then we corrupt
849 data in the master context.
850
851 When using a 64 byte stride, the memcpy copied over 63 bytes to the
852 slave_eq structure. This resulted in copying over the entire eqe of
853 interest, including its ownership bit -- and also 31 bytes of garbage
854 into the next WQE in the slave EQ -- which did NOT include the ownership
855 bit (and therefore had no impact).
856
857 However, once the stride is increased to 128, we are overwriting the
858 ownership bits of *three* eqes in the slave_eq struct. This results
859 in an incorrect ownership bit for those eqes, which causes the eq to
860 seem to be full. The issue therefore surfaced only once 128-byte EQEs
861 started being used in SRIOV and (overarchitectures that have 128/256
862 byte cache-lines such as PPC) - e.g after commit 77507aa249ae
863 "net/mlx4_core: Enable CQE/EQE stride support".
864
865 Fixes: 08ff32352d6f ('mlx4: 64-byte CQE/EQE support')
866 Signed-off-by: Carol L Soto <clsoto@linux.vnet.ibm.com>
867 Signed-off-by: Jack Morgenstein <jackm@dev.mellanox.co.il>
868 Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
869 Signed-off-by: David S. Miller <davem@davemloft.net>
870
871 drivers/net/ethernet/mellanox/mlx4/cmd.c | 2 +-
872 drivers/net/ethernet/mellanox/mlx4/eq.c | 2 +-
873 2 files changed, 2 insertions(+), 2 deletions(-)
874
875 commit 811ab3b52935612def289efa5e9e2aa973f16f26
876 Author: Hannes Frederic Sowa <hannes@stressinduktion.org>
877 Date: Wed Oct 28 13:21:04 2015 +0100
878
879 ipv6: protect mtu calculation of wrap-around and infinite loop by rounding issues
880
881 Raw sockets with hdrincl enabled can insert ipv6 extension headers
882 right into the data stream. In case we need to fragment those packets,
883 we reparse the options header to find the place where we can insert
884 the fragment header. If the extension headers exceed the link's MTU we
885 actually cannot make progress in such a case.
886
887 Instead of ending up in broken arithmetic or rounding towards 0 and
888 entering an endless loop in ip6_fragment, just prevent those cases by
889 aborting early and signal -EMSGSIZE to user space.
890
891 This is the second version of the patch which doesn't use the
892 overflow_usub function, which got reverted for now.
893
894 Suggested-by: Linus Torvalds <torvalds@linux-foundation.org>
895 Cc: Linus Torvalds <torvalds@linux-foundation.org>
896 Reported-by: Dmitry Vyukov <dvyukov@google.com>
897 Cc: Dmitry Vyukov <dvyukov@google.com>
898 Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
899 Signed-off-by: David S. Miller <davem@davemloft.net>
900
901 net/ipv6/ip6_output.c | 2 ++
902 1 files changed, 2 insertions(+), 0 deletions(-)
903
904 commit f074980442c7c3ff4a75c711ff18204dfb4131b8
905 Author: Brad Spengler <spender@grsecurity.net>
906 Date: Thu Oct 29 18:19:02 2015 -0400
907
908 Revert "ipv6: protect mtu calculation of wrap-around and infinite loop by rounding issues"
909
910 This reverts commit 18d5034650b637ec479f41d98e3912398b3e3efc.
911
912 net/ipv6/ip6_output.c | 6 +-----
913 1 files changed, 1 insertions(+), 5 deletions(-)
914
915 commit 53e629c2d13ed09f4c889925482606f82a65bd1d
916 Author: Brad Spengler <spender@grsecurity.net>
917 Date: Thu Oct 29 18:18:55 2015 -0400
918
919 Revert "overflow-arith: begin to add support for overflow builtin functions"
920
921 This reverts commit cfd0008de8db38841f7f06b979482900994717b9.
922
923 Conflicts:
924
925 include/linux/compiler-gcc.h
926
927 include/linux/compiler-gcc.h | 4 ----
928 include/linux/overflow-arith.h | 18 ------------------
929 2 files changed, 0 insertions(+), 22 deletions(-)
930
931 commit 225122602b5b7fd58ec5c2a4a1a4a9a29fe7a02a
932 Author: Brad Spengler <spender@grsecurity.net>
933 Date: Thu Oct 29 09:00:11 2015 -0400
934
935 Update size_overflow plugin
936
937 .../size_overflow_plugin/intentional_overflow.c | 3 +++
938 .../size_overflow_plugin/size_overflow_plugin.c | 2 +-
939 2 files changed, 4 insertions(+), 1 deletions(-)
940
941 commit 2bf85cb1c3df45d59d8b59aeacf63cbbee360175
942 Author: Brad Spengler <spender@grsecurity.net>
943 Date: Thu Oct 29 08:52:07 2015 -0400
944
945 Temporarily disable the builtin_overflow again as the kernexec plugin also has problems with it
946
947 include/linux/compiler-gcc.h | 2 +-
948 1 files changed, 1 insertions(+), 1 deletions(-)
949
950 commit a41c8c4d880b6005e874bf5440e24713da8483cd
951 Author: Brad Spengler <spender@grsecurity.net>
952 Date: Wed Oct 28 19:28:30 2015 -0400
953
954 temporarily work around issue with the dynamic FPU state and lazy FPU mode
955 upstream configures FPU mode based on the eagerfpu variable before it's ever actually
956 set by the commandline parser (so eagerfpu= on the commandline has no effect)
957
958 arch/x86/kernel/fpu/init.c | 3 +++
959 1 files changed, 3 insertions(+), 0 deletions(-)
960
961 commit 8452f9d5cfabda9228496050a16bc8728c0ebbb7
962 Author: Brad Spengler <spender@grsecurity.net>
963 Date: Wed Oct 28 19:25:55 2015 -0400
964
965 Remove/reorder some code due to the reverting of the FPU-state-in-task_struct code
966
967 arch/x86/include/asm/fpu/types.h | 69 ++++++++++++++++++--------------------
968 arch/x86/include/asm/processor.h | 10 ++----
969 arch/x86/kernel/fpu/init.c | 20 -----------
970 include/linux/sched.h | 4 +-
971 4 files changed, 38 insertions(+), 65 deletions(-)
972
973 commit c2127bd4215f8f02a1391bef3bde55d0bb1c19bc
974 Author: Brad Spengler <spender@grsecurity.net>
975 Date: Tue Oct 27 23:38:11 2015 -0400
976
977 fix typo
978
979 tools/gcc/size_overflow_plugin/size_overflow_ipa.c | 2 +-
980 1 files changed, 1 insertions(+), 1 deletions(-)
981
982 commit c588def7b5713c31fef2b848bfebf0d727791b82
983 Author: Brad Spengler <spender@grsecurity.net>
984 Date: Tue Oct 27 21:09:04 2015 -0400
985
986 remove the PAGE_SIZE padding from fpregs_state since it's not included as part
987 of the task struct
988
989 arch/x86/include/asm/fpu/types.h | 1 -
990 1 files changed, 0 insertions(+), 1 deletions(-)
991
992 commit 3bd1e5915353fee1f347577f0e80d925910695f9
993 Author: Herbert Xu <herbert@gondor.apana.org.au>
994 Date: Mon Oct 19 18:23:57 2015 +0800
995
996 crypto: api - Only abort operations on fatal signal
997
998 Currently a number of Crypto API operations may fail when a signal
999 occurs. This causes nasty problems as the caller of those operations
1000 are often not in a good position to restart the operation.
1001
1002 In fact there is currently no need for those operations to be
1003 interrupted by user signals at all. All we need is for them to
1004 be killable.
1005
1006 This patch replaces the relevant calls of signal_pending with
1007 fatal_signal_pending, and wait_for_completion_interruptible with
1008 wait_for_completion_killable, respectively.
1009
1010 Cc: stable@vger.kernel.org
1011 Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
1012
1013 crypto/ablkcipher.c | 2 +-
1014 crypto/algapi.c | 2 +-
1015 crypto/api.c | 6 +++---
1016 crypto/crypto_user.c | 2 +-
1017 4 files changed, 6 insertions(+), 6 deletions(-)
1018
1019 commit 2b278f02de77bd3d0ffb4c64bc56b702d4e27e49
1020 Author: Brad Spengler <spender@grsecurity.net>
1021 Date: Tue Oct 27 18:02:42 2015 -0400
1022
1023 Update a comment
1024
1025 arch/x86/include/asm/fpu/internal.h | 2 +-
1026 1 files changed, 1 insertions(+), 1 deletions(-)
1027
1028 commit 66cbab70d87485c22946485bfd375c3e88140213
1029 Merge: cad84c5 8610c94
1030 Author: Brad Spengler <spender@grsecurity.net>
1031 Date: Tue Oct 27 07:44:23 2015 -0400
1032
1033 Merge branch 'pax-test' into grsec-test
1034
1035 commit 8610c949a76ac2a09b334f41c35cb8e7a04a0ce8
1036 Merge: a851b41 f69d603
1037 Author: Brad Spengler <spender@grsecurity.net>
1038 Date: Tue Oct 27 07:44:14 2015 -0400
1039
1040 Merge branch 'linux-4.2.y' into pax-test
1041
1042 commit cad84c52f547c8ba47ddcf39d1f260f55350f0c2
1043 Author: Brad Spengler <spender@grsecurity.net>
1044 Date: Mon Oct 26 07:33:21 2015 -0400
1045
1046 re-enable builtin_overflow support
1047
1048 include/linux/compiler-gcc.h | 3 +--
1049 1 files changed, 1 insertions(+), 2 deletions(-)
1050
1051 commit 6e281aebbf456c27ce530055d5668bc5829c02a8
1052 Author: Brad Spengler <spender@grsecurity.net>
1053 Date: Mon Oct 26 07:32:15 2015 -0400
1054
1055 Update the size_overflow plugin from Emese to fix the ICE on builtin_overflow use
1056
1057 tools/gcc/size_overflow_plugin/size_overflow_ipa.c | 3 ++-
1058 .../size_overflow_plugin/size_overflow_plugin.c | 2 +-
1059 2 files changed, 3 insertions(+), 2 deletions(-)
1060
1061 commit 75ed97df02fc6eb862df511da6ca690de3d0f15c
1062 Author: Brad Spengler <spender@grsecurity.net>
1063 Date: Mon Oct 26 07:17:00 2015 -0400
1064
1065 Fix from Emese for a size_overflow report in the fbcon code on the
1066 'softback_lines' global variable
1067
1068 drivers/video/console/fbcon.c | 2 +-
1069 1 files changed, 1 insertions(+), 1 deletions(-)
1070
1071 commit b088cabd42c6fe825baa27f40ab450ad75e571d3
1072 Author: Brad Spengler <spender@grsecurity.net>
1073 Date: Sun Oct 25 18:09:55 2015 -0400
1074
1075 Temporarily work around an ICE on GCC >= 5 reported by Daniel Micay due to
1076 backporting of __builtin_usub_overflow
1077
1078 include/linux/compiler-gcc.h | 3 ++-
1079 1 files changed, 2 insertions(+), 1 deletions(-)
1080
1081 commit ba858f46865c6751af3ddba03b176e4d5ecf85c1
1082 Author: Brad Spengler <spender@grsecurity.net>
1083 Date: Sun Oct 25 17:59:17 2015 -0400
1084
1085 Update size_overflow hash table
1086
1087 .../disable_size_overflow_hash.data | 7 +++++++
1088 .../size_overflow_plugin/size_overflow_hash.data | 9 +--------
1089 2 files changed, 8 insertions(+), 8 deletions(-)
1090
1091 commit ba803bceaea0283b38e91c1d3176bf0671786269
1092 Author: Brad Spengler <spender@grsecurity.net>
1093 Date: Sun Oct 25 15:31:17 2015 -0400
1094
1095 Fix oversight in pipacs' removal of FPU state from the task struct:
1096 fpu_copy was performing an OOB copy starting from the address of the 'state'
1097 pointer in the fpu struct instead of starting from the address pointed
1098 to by the state pointer. Reported at:
1099 https://bugs.archlinux.org/task/46764
1100
1101 arch/x86/include/asm/fpu/internal.h | 4 ++--
1102 arch/x86/kernel/fpu/core.c | 2 +-
1103 2 files changed, 3 insertions(+), 3 deletions(-)
1104
1105 commit 26e7d31c5b5c970c50297d2b8be165e9c9ab9d83
1106 Merge: 85d8735 a851b41
1107 Author: Brad Spengler <spender@grsecurity.net>
1108 Date: Sun Oct 25 13:39:21 2015 -0400
1109
1110 Merge branch 'pax-test' into grsec-test
1111
1112 commit a851b41415a0402d76f10712b6950ddff3872a22
1113 Author: Brad Spengler <spender@grsecurity.net>
1114 Date: Sun Oct 25 13:38:25 2015 -0400
1115
1116 Update to latest size_overflow plugin release:
1117 Temporarily ignore bitfield types: https://bugs.archlinux.org/task/46798
1118 Use SI or wider type for the size_overflow type: https://forums.grsecurity.net/viewtopic.php?t=4293&p=15655#p15655
1119
1120 .../size_overflow_plugin/intentional_overflow.c | 3 +++
1121 .../size_overflow_plugin/size_overflow_plugin.c | 2 +-
1122 .../size_overflow_plugin/size_overflow_transform.c | 7 +++++++
1123 .../size_overflow_transform_core.c | 2 --
1124 4 files changed, 11 insertions(+), 3 deletions(-)
1125
1126 commit 85d8735a1d1190e3ad2e3f032ae88f811090fdfc
1127 Author: Brad Spengler <spender@grsecurity.net>
1128 Date: Sun Oct 25 13:01:32 2015 -0400
1129
1130 fpu doesn't live on the task_struct with PaX, so don't even bother computing some task_size
1131 variable that isn't used for anything
1132
1133 arch/x86/kernel/fpu/init.c | 14 --------------
1134 1 files changed, 0 insertions(+), 14 deletions(-)
1135
1136 commit cfd0008de8db38841f7f06b979482900994717b9
1137 Author: Hannes Frederic Sowa <hannes@stressinduktion.org>
1138 Date: Fri Oct 16 11:32:42 2015 +0200
1139
1140 overflow-arith: begin to add support for overflow builtin functions
1141
1142 The idea of the overflow-arith.h header is to collect overflow checking
1143 functions in one central place.
1144
1145 If gcc compiler supports the __builtin_overflow_* builtins we use them
1146 because they might give better performance, otherwise the code falls
1147 back to normal overflow checking functions.
1148
1149 The builtin_overflow functions are supported by gcc-5 and clang. The
1150 matter of supporting clang is to just provide a corresponding
1151 CC_HAVE_BUILTIN_OVERFLOW, because the specific overflow checking builtins
1152 don't differ between gcc and clang.
1153
1154 I just provide overflow_usub function here as I intend this to get merged
1155 into net, more functions will definitely follow as they are needed.
1156
1157 Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
1158 Signed-off-by: David S. Miller <davem@davemloft.net>
1159
1160 include/linux/compiler-gcc.h | 4 ++++
1161 include/linux/overflow-arith.h | 18 ++++++++++++++++++
1162 2 files changed, 22 insertions(+), 0 deletions(-)
1163
1164 commit 18d5034650b637ec479f41d98e3912398b3e3efc
1165 Author: Hannes Frederic Sowa <hannes@stressinduktion.org>
1166 Date: Fri Oct 16 11:32:43 2015 +0200
1167
1168 ipv6: protect mtu calculation of wrap-around and infinite loop by rounding issues
1169
1170 Raw sockets with hdrincl enabled can insert ipv6 extension headers
1171 right into the data stream. In case we need to fragment those packets,
1172 we reparse the options header to find the place where we can insert
1173 the fragment header. If the extension headers exceed the link's MTU we
1174 actually cannot make progress in such a case.
1175
1176 Instead of ending up in broken arithmetic or rounding towards 0 and
1177 entering an endless loop in ip6_fragment, just prevent those cases by
1178 aborting early and signal -EMSGSIZE to user space.
1179
1180 Reported-by: Dmitry Vyukov <dvyukov@google.com>
1181 Cc: Dmitry Vyukov <dvyukov@google.com>
1182 Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
1183 Signed-off-by: David S. Miller <davem@davemloft.net>
1184
1185 net/ipv6/ip6_output.c | 6 +++++-
1186 1 files changed, 5 insertions(+), 1 deletions(-)
1187
1188 commit 0e1d1c0f1981b4049a70d23dce4c69daf19f020b
1189 Merge: c81314c 9470e78
1190 Author: Brad Spengler <spender@grsecurity.net>
1191 Date: Sun Oct 25 11:51:44 2015 -0400
1192
1193 Merge branch 'pax-test' into grsec-test
1194
1195 commit 9470e7893a9a1bf15f9b7d412dc09bebb59105e8
1196 Author: Brad Spengler <spender@grsecurity.net>
1197 Date: Sun Oct 25 11:50:54 2015 -0400
1198
1199 Temporary squelching of overflow warning on skb_transport_offset(), will be fixed properly after H2HC
1200
1201 include/linux/skbuff.h | 2 +-
1202 1 files changed, 1 insertions(+), 1 deletions(-)
1203
1204 commit c81314ce278e9cfa3322881a6133c2c7e53b9430
1205 Author: Brad Spengler <spender@grsecurity.net>
1206 Date: Sat Oct 24 23:13:36 2015 -0400
1207
1208 Update recordmcount/fixdep paths in RPM spec, from Andrew
1209
1210 scripts/package/mkspec | 4 ++--
1211 1 files changed, 2 insertions(+), 2 deletions(-)
1212
1213 commit 798e4296bd55778b5e77f1db69c1bb972419590f
1214 Author: Brad Spengler <spender@grsecurity.net>
1215 Date: Sat Oct 24 23:11:22 2015 -0400
1216
1217 Update size_overflow hash table
1218
1219 .../disable_size_overflow_hash.data | 3 +++
1220 .../size_overflow_plugin/size_overflow_hash.data | 5 +----
1221 2 files changed, 4 insertions(+), 4 deletions(-)
1222
1223 commit d9ef04f20fc634595883d1c1950c32a8fe04df22
1224 Author: Brad Spengler <spender@grsecurity.net>
1225 Date: Sat Oct 24 08:27:29 2015 -0400
1226
1227 Fix from Emese for https://forums.grsecurity.net/viewtopic.php?f=3&t=4291
1228
1229 drivers/usb/class/cdc-acm.h | 2 +-
1230 include/linux/usb.h | 8 ++++----
1231 2 files changed, 5 insertions(+), 5 deletions(-)
1232
1233 commit eea46f1d247f5f63e3762da91a41cba76567800f
1234 Author: Brad Spengler <spender@grsecurity.net>
1235 Date: Fri Oct 23 18:24:57 2015 -0400
1236
1237 Update size_overflow hash tables
1238
1239 .../disable_size_overflow_hash.data | 5 ++++-
1240 .../size_overflow_plugin/size_overflow_hash.data | 5 +----
1241 2 files changed, 5 insertions(+), 5 deletions(-)
1242
1243 commit 8f521b864bd7428f3ad42613416c106d1d619c4d
1244 Merge: 26adf00 285f0d1
1245 Author: Brad Spengler <spender@grsecurity.net>
1246 Date: Thu Oct 22 19:41:57 2015 -0400
1247
1248 Merge branch 'pax-test' into grsec-test
1249
1250 Conflicts:
1251 drivers/gpu/drm/drm_lock.c
1252
1253 commit 285f0d1cda31b45ee217b90861677c032cb6550b
1254 Merge: d6dc25f 190bd21
1255 Author: Brad Spengler <spender@grsecurity.net>
1256 Date: Thu Oct 22 19:40:34 2015 -0400
1257
1258 Merge branch 'linux-4.2.y' into pax-test
1259
1260 Conflicts:
1261 arch/x86/kernel/process_64.c
1262
1263 commit 26adf00caf8f4ebf155422082d4e8b8e4eb60eef
1264 Author: Eric W. Biederman <ebiederm@xmission.com>
1265 Date: Sat Aug 15 13:36:12 2015 -0500
1266
1267 dcache: Handle escaped paths in prepend_path
1268
1269 A rename can result in a dentry that by walking up d_parent
1270 will never reach it's mnt_root. For lack of a better term
1271 I call this an escaped path.
1272
1273 prepend_path is called by four different functions __d_path,
1274 d_absolute_path, d_path, and getcwd.
1275
1276 __d_path only wants to see paths are connected to the root it passes
1277 in. So __d_path needs prepend_path to return an error.
1278
1279 d_absolute_path similarly wants to see paths that are connected to
1280 some root. Escaped paths are not connected to any mnt_root so
1281 d_absolute_path needs prepend_path to return an error greater
1282 than 1. So escaped paths will be treated like paths on lazily
1283 unmounted mounts.
1284
1285 getcwd needs to prepend "(unreachable)" so getcwd also needs
1286 prepend_path to return an error.
1287
1288 d_path is the interesting hold out. d_path just wants to print
1289 something, and does not care about the weird cases. Which raises
1290 the question what should be printed?
1291
1292 Given that <escaped_path>/<anything> should result in -ENOENT I
1293 believe it is desirable for escaped paths to be printed as empty
1294 paths. As there are not really any meaninful path components when
1295 considered from the perspective of a mount tree.
1296
1297 So tweak prepend_path to return an empty path with an new error
1298 code of 3 when it encounters an escaped path.
1299
1300 Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
1301 Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
1302
1303 fs/dcache.c | 7 +++++++
1304 1 files changed, 7 insertions(+), 0 deletions(-)
1305
1306 commit d402147a7689356c29bfd46a7cfa6594e517ab95
1307 Author: Salva Peiró <speirofr@gmail.com>
1308 Date: Wed Oct 14 17:48:02 2015 +0200
1309
1310 staging/dgnc: fix info leak in ioctl
1311
1312 The dgnc_mgmt_ioctl() code fails to initialize the 16 _reserved bytes of
1313 struct digi_dinfo after the ->dinfo_nboards member. Add an explicit
1314 memset(0) before filling the structure to avoid the info leak.
1315
1316 Signed-off-by: Salva Peiró <speirofr@gmail.com>
1317 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1318
1319 drivers/staging/dgnc/dgnc_mgmt.c | 1 +
1320 1 files changed, 1 insertions(+), 0 deletions(-)
1321
1322 commit bafc510c4fb4e8a5e69531fdc3a733e58c4bbdbf
1323 Author: Salva Peiró <speirofr@gmail.com>
1324 Date: Wed Oct 7 07:09:26 2015 -0300
1325
1326 [media] media/vivid-osd: fix info leak in ioctl
1327
1328 The vivid_fb_ioctl() code fails to initialize the 16 _reserved bytes of
1329 struct fb_vblank after the ->hcount member. Add an explicit
1330 memset(0) before filling the structure to avoid the info leak.
1331
1332 Signed-off-by: Salva Peiró <speirofr@gmail.com>
1333 Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
1334 Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
1335
1336 drivers/media/platform/vivid/vivid-osd.c | 1 +
1337 1 files changed, 1 insertions(+), 0 deletions(-)
1338
1339 commit 980a903796ae06366fd5acbcd179ee2dc57fbabf
1340 Author: David Howells <dhowells@redhat.com>
1341 Date: Mon Oct 19 11:20:28 2015 +0100
1342
1343 KEYS: Don't permit request_key() to construct a new keyring
1344
1345 If request_key() is used to find a keyring, only do the search part - don't
1346 do the construction part if the keyring was not found by the search. We
1347 don't really want keyrings in the negative instantiated state since the
1348 rejected/negative instantiation error value in the payload is unioned with
1349 keyring metadata.
1350
1351 Now the kernel gives an error:
1352
1353 request_key("keyring", "#selinux,bdekeyring", "keyring", KEY_SPEC_USER_SESSION_KEYRING) = -1 EPERM (Operation not permitted)
1354
1355 Signed-off-by: David Howells <dhowells@redhat.com>
1356
1357 security/keys/request_key.c | 3 +++
1358 1 files changed, 3 insertions(+), 0 deletions(-)
1359
1360 commit f705c157ed6f8a9c4c0cf552fd5f054d9d500550
1361 Author: Dan Carpenter <dan.carpenter@oracle.com>
1362 Date: Mon Oct 19 13:16:49 2015 +0300
1363
1364 irda: precedence bug in irlmp_seq_hb_idx()
1365
1366 This is decrementing the pointer, instead of the value stored in the
1367 pointer. KASan detects it as an out of bounds reference.
1368
1369 Reported-by: "Berry Cheng 程君(成淼)" <chengmiao.cj@alibaba-inc.com>
1370 Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
1371 Signed-off-by: David S. Miller <davem@davemloft.net>
1372
1373 net/irda/irlmp.c | 2 +-
1374 1 files changed, 1 insertions(+), 1 deletions(-)
1375
1376 commit 4a110451298bfce895ed224e6bbd9201d8605b2b
1377 Author: Brad Spengler <spender@grsecurity.net>
1378 Date: Tue Oct 20 19:25:13 2015 -0400
1379
1380 Ratelimit the dump_stack as well, both to 15s with a burst of 3, enough not to completely
1381 flood syslog
1382
1383 fs/exec.c | 11 +++++++++--
1384 1 files changed, 9 insertions(+), 2 deletions(-)
1385
1386 commit 183fc2ae7d90e077fd27623998d82916260a2223
1387 Merge: a240939 d6dc25f
1388 Author: Brad Spengler <spender@grsecurity.net>
1389 Date: Tue Oct 20 19:16:04 2015 -0400
1390
1391 Merge branch 'pax-test' into grsec-test
1392
1393 Conflicts:
1394 tools/gcc/size_overflow_plugin/size_overflow_plugin.c
1395
1396 commit d6dc25f193a832e08d8e7cf097d7f70b3dc24776
1397 Author: Brad Spengler <spender@grsecurity.net>
1398 Date: Tue Oct 20 19:14:41 2015 -0400
1399
1400 Update to pax-linux-4.2.3-test16.patch:
1401 - fixed undefined integer shift in proc_do_submiturb, reported by Arnaud <arnaud@drno.eu>
1402 - fixed integer underflow in scm_detach_fds (similar to 1ac70e7ad24a88710cf9b6d7ababaefa2b575df0 upstream), reported by kdave (https://forums.grsecurity.net/viewtopic.php?f=1&t=4286)
1403 - Emese added a temporary workaround for miscompiling the ath10k driver, reported by victor
1404 - Emese fixed a false positive that affected the iwlwifi driver among others, reported by victor
1405 - Emese disabled size overflow checking in acpi_ex_do_math_op and on acpi_object_integer, reported by xxterry1xx and rfnx (https://forums.grsecurity.net/viewtopic.php?f=3&t=4287)
1406
1407 drivers/net/wireless/ath/ath10k/ce.c | 2 +-
1408 drivers/usb/core/devio.c | 2 +-
1409 fs/dlm/lowcomms.c | 2 +-
1410 net/core/scm.c | 6 ++-
1411 .../disable_size_overflow_hash.data | 4 +-
1412 .../size_overflow_plugin/intentional_overflow.c | 44 --------------------
1413 tools/gcc/size_overflow_plugin/size_overflow.h | 1 -
1414 .../size_overflow_plugin/size_overflow_hash.data | 4 +-
1415 .../size_overflow_plugin/size_overflow_plugin.c | 4 +-
1416 .../size_overflow_plugin/size_overflow_transform.c | 3 -
1417 .../size_overflow_transform_core.c | 6 +++
1418 11 files changed, 19 insertions(+), 59 deletions(-)
1419
1420 commit a2409394c2b0d97a9f02bf62ca4c0254602e58a6
1421 Author: Brad Spengler <spender@grsecurity.net>
1422 Date: Tue Oct 20 08:58:25 2015 -0400
1423
1424 set default to y
1425
1426 security/Kconfig | 1 +
1427 1 files changed, 1 insertions(+), 0 deletions(-)
1428
1429 commit 3abe24117389419654da44adc87a9a03ad7e3f38
1430 Author: Brad Spengler <spender@grsecurity.net>
1431 Date: Tue Oct 20 08:08:32 2015 -0400
1432
1433 Add a new config option from Emese to allow SIZE_OVERFLOW to be enabled
1434 while having it not kill the userland process in an overflow condition.
1435 This will help us obtain reports over the next few weeks while not making
1436 some percentage of users' machines unusable.
1437
1438 To enable this option, set CONFIG_PAX_SIZE_OVERFLOW_DISABLE_KILL=y in .config
1439
1440 fs/exec.c | 5 +++++
1441 security/Kconfig | 4 ++++
1442 .../size_overflow_plugin/size_overflow_plugin.c | 4 ++--
1443 3 files changed, 11 insertions(+), 2 deletions(-)
1444
1445 commit bcae982f720ce0b3463a81f2b72a4807cb89048b
1446 Merge: 0e55d80 128d3a5
1447 Author: Brad Spengler <spender@grsecurity.net>
1448 Date: Mon Oct 19 18:56:09 2015 -0400
1449
1450 Merge branch 'pax-test' into grsec-test
1451
1452 commit 128d3a5452ab001b29235b05eb0be3334fff3998
1453 Author: Brad Spengler <spender@grsecurity.net>
1454 Date: Mon Oct 19 18:55:37 2015 -0400
1455
1456 Update to pax-linux-4.2.3-test14.patch:
1457 - Emese fixed a false positive size overflow report, reported by gus (https://forums.grsecurity.net/viewtopic.php?t=4280)
1458 - fixed an integer sign mixup in usb_stor_invoke_transport, reported by Arnaud <arnaud@drno.eu>
1459
1460 drivers/usb/storage/transport.c | 2 +-
1461 .../size_overflow_plugin/size_overflow_plugin.c | 2 +-
1462 .../size_overflow_plugin/size_overflow_transform.c | 15 +++-
1463 .../size_overflow_transform_core.c | 90 ++++++++++++++-----
1464 4 files changed, 81 insertions(+), 28 deletions(-)
1465
1466 commit 0e55d80a65998266cab71804131a072fcc8ee558
1467 Merge: a61fd15 9c4310f
1468 Author: Brad Spengler <spender@grsecurity.net>
1469 Date: Sat Oct 17 23:15:36 2015 -0400
1470
1471 Merge branch 'pax-test' into grsec-test
1472
1473 commit 9c4310fdb2d19f83affc62eb2698d3763ce8c36b
1474 Author: Brad Spengler <spender@grsecurity.net>
1475 Date: Sat Oct 17 23:15:13 2015 -0400
1476
1477 Update to pax-linux-4.2.3-test14.patch:
1478 - reverted some page table hardening that caused too much slowdown under virtualization, reported by quasar366 (https://forums.grsecurity.net/viewtopic.php?f=3&t=4275)
1479
1480 arch/x86/include/asm/pgtable-2level.h | 18 ++----------------
1481 arch/x86/include/asm/pgtable-3level.h | 10 ----------
1482 arch/x86/include/asm/pgtable_32.h | 2 ++
1483 arch/x86/include/asm/pgtable_64.h | 18 ++----------------
1484 arch/x86/mm/highmem_32.c | 2 ++
1485 arch/x86/mm/init_64.c | 2 ++
1486 arch/x86/mm/iomap_32.c | 4 ++++
1487 arch/x86/mm/pageattr.c | 4 ++++
1488 arch/x86/mm/pgtable.c | 2 ++
1489 arch/x86/mm/pgtable_32.c | 3 +++
1490 mm/highmem.c | 5 +++++
1491 mm/vmalloc.c | 7 +++++++
1492 12 files changed, 35 insertions(+), 42 deletions(-)
1493
1494 commit a61fd152e87bd3ed91194b07f6b1fcbcd165093b
1495 Merge: 00f1afa db7a8e5
1496 Author: Brad Spengler <spender@grsecurity.net>
1497 Date: Sat Oct 17 18:33:48 2015 -0400
1498
1499 Merge branch 'pax-test' into grsec-test
1500
1501 commit db7a8e5c284179889014b5929a40298e1b228fbc
1502 Author: Brad Spengler <spender@grsecurity.net>
1503 Date: Sat Oct 17 18:33:22 2015 -0400
1504
1505 Update to pax-linux-4.2.3-test13.patch:
1506 - Emese worked around a sign mixup with wiphy.rts_threshold, reported by gus (https://forums.grsecurity.net/viewtopic.php?f=3&t=4278)
1507
1508 .../disable_size_overflow_hash.data | 2 ++
1509 .../size_overflow_plugin/size_overflow_hash.data | 2 --
1510 2 files changed, 2 insertions(+), 2 deletions(-)
1511
1512 commit 00f1afa694317365e9bd6dc77d2e3e96ae3a68ec
1513 Merge: 7098385 57dc21d
1514 Author: Brad Spengler <spender@grsecurity.net>
1515 Date: Sat Oct 17 11:04:56 2015 -0400
1516
1517 Merge branch 'pax-test' into grsec-test
1518
1519 commit 57dc21d203a9fa1312a4abc608da5b3644d29078
1520 Author: Brad Spengler <spender@grsecurity.net>
1521 Date: Sat Oct 17 11:04:34 2015 -0400
1522
1523 Update to pax-linux-4.2.3-test12.patch:
1524 - removed size_overflow_hash.data.prev that was left behind by accident
1525 - Emese fixed a false positive overflow report in the megaraid driver due to a gcc limitation, reported by vortex (https://forums.grsecurity.net/viewtopic.php?f=3&t=4277)
1526
1527 drivers/scsi/megaraid/megaraid_sas.h | 2 +-
1528 1 files changed, 1 insertions(+), 1 deletions(-)
1529
1530 commit 7098385851c43dea6692508c71cd5fbcce3187b2
1531 Merge: bc6d23e 78b0f64
1532 Author: Brad Spengler <spender@grsecurity.net>
1533 Date: Fri Oct 16 17:45:06 2015 -0400
1534
1535 Merge branch 'pax-test' into grsec-test
1536
1537 Conflicts:
1538 tools/gcc/size_overflow_plugin/intentional_overflow.c
1539
1540 commit 78b0f643d8d2b870e8ad5df075d4ab79befa4266
1541 Author: Brad Spengler <spender@grsecurity.net>
1542 Date: Fri Oct 16 17:44:18 2015 -0400
1543
1544 Update to pax-linux-4.2.3-test11.patch:
1545 - Emese fixed a few false positives caused by error codes
1546 - simplified the switch_mm code on x86 a bit
1547
1548 arch/x86/include/asm/mmu_context.h | 118 +++++--------
1549 include/drm/drm_mm.h | 2 +-
1550 .../size_overflow_plugin/intentional_overflow.c | 11 +-
1551 tools/gcc/size_overflow_plugin/size_overflow.h | 19 ++-
1552 .../size_overflow_plugin/size_overflow_plugin.c | 2 +-
1553 .../size_overflow_plugin/size_overflow_transform.c | 178 +++++++++-----------
1554 .../size_overflow_transform_core.c | 31 ++--
1555 7 files changed, 169 insertions(+), 192 deletions(-)
1556
1557 commit bc6d23e3408e389f8a96134f6bc915e9fc8b370b
1558 Author: Brad Spengler <spender@grsecurity.net>
1559 Date: Fri Oct 16 17:28:54 2015 -0400
1560
1561 Update rpm devel spec, thanks to Andrew
1562
1563 scripts/package/mkspec | 3 +++
1564 1 files changed, 3 insertions(+), 0 deletions(-)
1565
1566 commit b3f30cb9207a72a6aa4a78f23f8c5353be0bb27b
1567 Author: Brad Spengler <spender@grsecurity.net>
1568 Date: Thu Oct 15 20:10:56 2015 -0400
1569
1570 disable tracing support with GRKERNSEC_KMEM (it forces debugfs support on)
1571
1572 kernel/trace/Kconfig | 2 +-
1573 1 files changed, 1 insertions(+), 1 deletions(-)
1574
1575 commit 82a0c12587f14add438ddf3b558e2278fcb7a387
1576 Author: Brad Spengler <spender@grsecurity.net>
1577 Date: Thu Oct 15 19:19:43 2015 -0400
1578
1579 Force DEBUG_FS off the hard way, since 'select' can cause it to be
1580 inadvertently enabled. Add a backup check that fails the build if
1581 GRKERNSEC_KMEM is enabled with DEBUG_FS
1582 Ditto for PROC_PAGE_MONITOR
1583
1584 arch/arc/Kconfig | 1 +
1585 arch/arm/Kconfig.debug | 1 +
1586 arch/arm64/Kconfig.debug | 1 +
1587 arch/blackfin/Kconfig.debug | 1 +
1588 arch/s390/Kconfig.debug | 1 +
1589 arch/x86/Kconfig.debug | 2 ++
1590 drivers/iommu/Kconfig | 1 +
1591 drivers/md/bcache/Kconfig | 1 +
1592 drivers/net/wireless/ath/ath9k/Kconfig | 1 -
1593 include/linux/grsecurity.h | 6 ++++++
1594 init/Kconfig | 1 +
1595 kernel/trace/Kconfig | 2 ++
1596 lib/Kconfig.debug | 6 +++++-
1597 mm/Kconfig | 3 +++
1598 net/sunrpc/Kconfig | 1 +
1599 15 files changed, 27 insertions(+), 2 deletions(-)
1600
1601 commit 1b6f8fc8b8100292647638c713326776a0865705
1602 Author: Brad Spengler <spender@grsecurity.net>
1603 Date: Thu Oct 15 17:58:59 2015 -0400
1604
1605 Force DEBUG_FS off in the kernel config, even having it present is a security
1606 risk
1607
1608 Conflicts:
1609
1610 lib/Kconfig.debug
1611
1612 lib/Kconfig.debug | 1 +
1613 1 files changed, 1 insertions(+), 0 deletions(-)
1614
1615 commit 21057fc30571f96aa46acf8922417311905d0f2b
1616 Author: Brad Spengler <spender@grsecurity.net>
1617 Date: Thu Oct 15 08:15:33 2015 -0400
1618
1619 Backport fix from: https://patchwork.kernel.org/patch/6853351/
1620 The debug_read_tlb() uses the sprintf() functions directly on the buffer
1621 allocated by buf = kmalloc(count), without taking into account the size
1622 of the buffer, with the consequence corrupting the heap, depending on
1623 the count requested by the user.
1624
1625 The patch fixes the issue replacing sprintf() by seq_printf().
1626
1627 Signed-off-by: Salva Peiró <speirofr@gmail.com>
1628
1629 drivers/iommu/omap-iommu-debug.c | 26 +++++++-------------------
1630 drivers/iommu/omap-iommu.c | 28 +++++++++++-----------------
1631 drivers/iommu/omap-iommu.h | 3 +--
1632 3 files changed, 19 insertions(+), 38 deletions(-)
1633
1634 commit ba936d19274485bad900a69d679878a50faa50aa
1635 Author: Joe Perches <joe@perches.com>
1636 Date: Wed Oct 14 01:09:40 2015 -0700
1637
1638 ethtool: Use kcalloc instead of kmalloc for ethtool_get_strings
1639
1640 It seems that kernel memory can leak into userspace by a
1641 kmalloc, ethtool_get_strings, then copy_to_user sequence.
1642
1643 Avoid this by using kcalloc to zero fill the copied buffer.
1644
1645 Signed-off-by: Joe Perches <joe@perches.com>
1646 Acked-by: Ben Hutchings <ben@decadent.org.uk>
1647 Signed-off-by: David S. Miller <davem@davemloft.net>
1648
1649 net/core/ethtool.c | 2 +-
1650 1 files changed, 1 insertions(+), 1 deletions(-)
1651
1652 commit bae0a8209962cede6a0d486cf2414cac1747f91b
1653 Author: Brad Spengler <spender@grsecurity.net>
1654 Date: Wed Oct 14 19:54:27 2015 -0400
1655
1656 Update size_overflow hash table
1657
1658 .../size_overflow_plugin/size_overflow_hash.data | 53 +++++++++++++++++--
1659 1 files changed, 47 insertions(+), 6 deletions(-)
1660
1661 commit 1d840cc98b8f9b62d3c906ae24385f79c9131e29
1662 Author: Brad Spengler <spender@grsecurity.net>
1663 Date: Wed Oct 14 19:50:48 2015 -0400
1664
1665 Update size_overflow hash table
1666
1667 .../size_overflow_plugin/size_overflow_hash.data | 1 +
1668 1 files changed, 1 insertions(+), 0 deletions(-)
1669
1670 commit fca9b7af6aebd1d80f364d6d849470e917919004
1671 Author: Brad Spengler <spender@grsecurity.net>
1672 Date: Wed Oct 14 19:47:21 2015 -0400
1673
1674 Update size_overflow hash table
1675
1676 .../size_overflow_plugin/size_overflow_hash.data | 300 ++++++++++++++++----
1677 1 files changed, 244 insertions(+), 56 deletions(-)
1678
1679 commit 07cadc277ba83222698c99091c7da2c28275981f
1680 Author: Brad Spengler <spender@grsecurity.net>
1681 Date: Wed Oct 14 19:39:44 2015 -0400
1682
1683 squelch some informational messages only used by Emese
1684
1685 .../size_overflow_plugin/intentional_overflow.c | 6 +++---
1686 1 files changed, 3 insertions(+), 3 deletions(-)
1687
1688 commit 77eeeac20bde1e0ebd72efe0f7b5c52786411bc7
1689 Author: Brad Spengler <spender@grsecurity.net>
1690 Date: Wed Oct 14 19:15:56 2015 -0400
1691
1692 Re-enable size_overflow
1693
1694 security/Kconfig | 1 -
1695 1 files changed, 0 insertions(+), 1 deletions(-)
1696
1697 commit cb8efa1fd63be1bbcf5e585396cc0ed562d0c624
1698 Merge: 913cbf6 4c48a7f
1699 Author: Brad Spengler <spender@grsecurity.net>
1700 Date: Wed Oct 14 17:14:42 2015 -0400
1701
1702 Merge branch 'pax-test' into grsec-test
1703
1704 Conflicts:
1705 tools/gcc/size_overflow_plugin/size_overflow_hash.data
1706
1707 commit 4c48a7fc8df9310f994708b42fe1102a2943917c
1708 Author: Brad Spengler <spender@grsecurity.net>
1709 Date: Wed Oct 14 17:12:54 2015 -0400
1710
1711 Update to pax-linux-4.2.3-test10.patch:
1712 - fixed accidentally dropped csum_partial_copy_generic_to_user entry point for pre-P6 i386 configs, by minipli
1713 - Emese fixed a bunch of false positives with the size overflow plugin, let's see how it goes in the real world :)
1714
1715 arch/x86/include/asm/processor.h | 2 +-
1716 arch/x86/include/asm/ptrace.h | 8 +-
1717 arch/x86/lib/checksum_32.S | 2 +
1718 arch/x86/xen/mmu.c | 2 +-
1719 drivers/ata/libahci.c | 2 +-
1720 drivers/i2c/busses/i2c-diolan-u2c.c | 2 +-
1721 drivers/oprofile/oprofile_files.c | 2 +-
1722 drivers/spi/spidev.c | 2 +-
1723 drivers/tty/n_tty.c | 2 +-
1724 drivers/usb/core/message.c | 6 +-
1725 fs/binfmt_elf.c | 2 +-
1726 fs/ubifs/io.c | 2 +-
1727 include/drm/drm_mm.h | 2 +-
1728 include/linux/completion.h | 12 +-
1729 include/linux/jiffies.h | 10 +-
1730 include/linux/kernel.h | 2 +-
1731 include/linux/mm.h | 2 +-
1732 include/linux/random.h | 4 +-
1733 include/linux/sched.h | 2 +-
1734 include/linux/usb.h | 2 +-
1735 kernel/sched/completion.c | 6 +-
1736 kernel/time/timer.c | 2 +-
1737 lib/bitmap.c | 2 +-
1738 mm/internal.h | 2 +-
1739 net/sunrpc/svcauth_unix.c | 2 +-
1740 .../disable_size_overflow_hash.data |22980 +++++++++++---------
1741 .../insert_size_overflow_asm.c | 7 +
1742 .../size_overflow_plugin/intentional_overflow.c | 10 +-
1743 tools/gcc/size_overflow_plugin/size_overflow.h | 29 +-
1744 .../gcc/size_overflow_plugin/size_overflow_debug.c | 20 +-
1745 .../size_overflow_plugin/size_overflow_hash.data |14092 ++++++++----
1746 tools/gcc/size_overflow_plugin/size_overflow_ipa.c | 252 +-
1747 .../size_overflow_plugin/size_overflow_plugin.c | 2 +-
1748 .../size_overflow_plugin_hash.c | 13 +-
1749 .../size_overflow_plugin/size_overflow_transform.c | 205 +-
1750 .../size_overflow_transform_core.c | 4 +-
1751 36 files changed, 21958 insertions(+), 15740 deletions(-)
1752
1753 commit 913cbf6a23fcad570b776b1a5a71242b909c5c99
1754 Author: Dave Kleikamp <dave.kleikamp@oracle.com>
1755 Date: Mon Oct 5 10:08:51 2015 -0500
1756
1757 crypto: sparc - initialize blkcipher.ivsize
1758
1759 Some of the crypto algorithms write to the initialization vector,
1760 but no space has been allocated for it. This clobbers adjacent memory.
1761
1762 Cc: stable@vger.kernel.org
1763 Signed-off-by: Dave Kleikamp <dave.kleikamp@oracle.com>
1764 Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
1765
1766 arch/sparc/crypto/aes_glue.c | 2 ++
1767 arch/sparc/crypto/camellia_glue.c | 1 +
1768 arch/sparc/crypto/des_glue.c | 2 ++
1769 3 files changed, 5 insertions(+), 0 deletions(-)
1770
1771 commit 7af7ad1e287067b7ea659dc0dd3e2e355588e246
1772 Author: Brad Spengler <spender@grsecurity.net>
1773 Date: Tue Oct 13 08:03:51 2015 -0400
1774
1775 Apply fix by Tejun Heo for upstream bug reported on the forums by Fuxino:
1776 https://forums.grsecurity.net/viewtopic.php?f=3&t=4276#p15570
1777
1778 Probably made more easily reproducible via SANITIZE, but we won't know for
1779 sure without a full oops report.
1780
1781 For some reason even though this patch was marked for 4.2+ stable over a month
1782 ago, it still hasn't hit Greg's tree.
1783
1784 block/blk-cgroup.c | 3 +++
1785 1 files changed, 3 insertions(+), 0 deletions(-)
1786
1787 commit 8e1f29f9e1af36f71d12213ea6530eb77014c00c
1788 Author: Dmitry Vyukov <dvyukov@google.com>
1789 Date: Thu Sep 17 17:17:10 2015 +0200
1790
1791 tty: fix data race on tty_buffer.commit
1792
1793 Race on buffer data happens when newly committed data is
1794 picked up by an old flush work in the following scenario:
1795 __tty_buffer_request_room does a plain write of tail->commit,
1796 no barriers were executed before that.
1797 At this point flush_to_ldisc reads this new value of commit,
1798 and reads buffer data, no barriers in between.
1799 The committed buffer data is not necessary visible to flush_to_ldisc.
1800
1801 Similar bug happens when tty_schedule_flip commits data.
1802
1803 Update commit with smp_store_release and read commit with
1804 smp_load_acquire, as it is commit that signals data readiness.
1805 This is orthogonal to the existing synchronization on tty_buffer.next,
1806 which is required to not dismiss a buffer with unconsumed data.
1807
1808 The data race was found with KernelThreadSanitizer (KTSAN).
1809
1810 Signed-off-by: Dmitry Vyukov <dvyukov@google.com>
1811 Reviewed-by: Peter Hurley <peter@hurleysoftware.com>
1812 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1813
1814 drivers/tty/tty_buffer.c | 15 ++++++++++++---
1815 1 files changed, 12 insertions(+), 3 deletions(-)
1816
1817 commit d62db216e7182e24317596471c1a3a2a9fb9d1f5
1818 Author: Peter Hurley <peter@hurleysoftware.com>
1819 Date: Sun Jul 12 20:50:49 2015 -0400
1820
1821 tty: Replace smp_rmb/smp_wmb with smp_load_acquire/smp_store_release
1822
1823 Clarify flip buffer producer/consumer operation; the use of
1824 smp_load_acquire() and smp_store_release() more clearly indicates
1825 which memory access requires a barrier.
1826
1827 Signed-off-by: Peter Hurley <peter@hurleysoftware.com>
1828 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1829
1830 drivers/tty/tty_buffer.c | 10 ++++------
1831 1 files changed, 4 insertions(+), 6 deletions(-)
1832
1833 commit c6bbe8a6097f869b6a3d3c40d456727180573dd9
1834 Author: Kosuke Tatsukawa <tatsu@ab.jp.nec.com>
1835 Date: Fri Oct 2 08:27:05 2015 +0000
1836
1837 tty: fix stall caused by missing memory barrier in drivers/tty/n_tty.c
1838
1839 My colleague ran into a program stall on a x86_64 server, where
1840 n_tty_read() was waiting for data even if there was data in the buffer
1841 in the pty. kernel stack for the stuck process looks like below.
1842 #0 [ffff88303d107b58] __schedule at ffffffff815c4b20
1843 #1 [ffff88303d107bd0] schedule at ffffffff815c513e
1844 #2 [ffff88303d107bf0] schedule_timeout at ffffffff815c7818
1845 #3 [ffff88303d107ca0] wait_woken at ffffffff81096bd2
1846 #4 [ffff88303d107ce0] n_tty_read at ffffffff8136fa23
1847 #5 [ffff88303d107dd0] tty_read at ffffffff81368013
1848 #6 [ffff88303d107e20] __vfs_read at ffffffff811a3704
1849 #7 [ffff88303d107ec0] vfs_read at ffffffff811a3a57
1850 #8 [ffff88303d107f00] sys_read at ffffffff811a4306
1851 #9 [ffff88303d107f50] entry_SYSCALL_64_fastpath at ffffffff815c86d7
1852
1853 There seems to be two problems causing this issue.
1854
1855 First, in drivers/tty/n_tty.c, __receive_buf() stores the data and
1856 updates ldata->commit_head using smp_store_release() and then checks
1857 the wait queue using waitqueue_active(). However, since there is no
1858 memory barrier, __receive_buf() could return without calling
1859 wake_up_interactive_poll(), and at the same time, n_tty_read() could
1860 start to wait in wait_woken() as in the following chart.
1861
1862 __receive_buf() n_tty_read()
1863 ------------------------------------------------------------------------
1864 if (waitqueue_active(&tty->read_wait))
1865 /* Memory operations issued after the
1866 RELEASE may be completed before the
1867 RELEASE operation has completed */
1868 add_wait_queue(&tty->read_wait, &wait);
1869 ...
1870 if (!input_available_p(tty, 0)) {
1871 smp_store_release(&ldata->commit_head,
1872 ldata->read_head);
1873 ...
1874 timeout = wait_woken(&wait,
1875 TASK_INTERRUPTIBLE, timeout);
1876 ------------------------------------------------------------------------
1877
1878 The second problem is that n_tty_read() also lacks a memory barrier
1879 call and could also cause __receive_buf() to return without calling
1880 wake_up_interactive_poll(), and n_tty_read() to wait in wait_woken()
1881 as in the chart below.
1882
1883 __receive_buf() n_tty_read()
1884 ------------------------------------------------------------------------
1885 spin_lock_irqsave(&q->lock, flags);
1886 /* from add_wait_queue() */
1887 ...
1888 if (!input_available_p(tty, 0)) {
1889 /* Memory operations issued after the
1890 RELEASE may be completed before the
1891 RELEASE operation has completed */
1892 smp_store_release(&ldata->commit_head,
1893 ldata->read_head);
1894 if (waitqueue_active(&tty->read_wait))
1895 __add_wait_queue(q, wait);
1896 spin_unlock_irqrestore(&q->lock,flags);
1897 /* from add_wait_queue() */
1898 ...
1899 timeout = wait_woken(&wait,
1900 TASK_INTERRUPTIBLE, timeout);
1901 ------------------------------------------------------------------------
1902
1903 There are also other places in drivers/tty/n_tty.c which have similar
1904 calls to waitqueue_active(), so instead of adding many memory barrier
1905 calls, this patch simply removes the call to waitqueue_active(),
1906 leaving just wake_up*() behind.
1907
1908 This fixes both problems because, even though the memory access before
1909 or after the spinlocks in both wake_up*() and add_wait_queue() can
1910 sneak into the critical section, it cannot go past it and the critical
1911 section assures that they will be serialized (please see "INTER-CPU
1912 ACQUIRING BARRIER EFFECTS" in Documentation/memory-barriers.txt for a
1913 better explanation). Moreover, the resulting code is much simpler.
1914
1915 Latency measurement using a ping-pong test over a pty doesn't show any
1916 visible performance drop.
1917
1918 Signed-off-by: Kosuke Tatsukawa <tatsu@ab.jp.nec.com>
1919 Cc: stable@vger.kernel.org
1920 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1921
1922 drivers/tty/n_tty.c | 15 +++++----------
1923 1 files changed, 5 insertions(+), 10 deletions(-)
1924
1925 commit 3af2011ac1a085a3e8c57ca3a840aec393b37db3
1926 Author: Dmitry Vyukov <dvyukov@google.com>
1927 Date: Thu Sep 17 17:17:08 2015 +0200
1928
1929 tty: fix data race in flush_to_ldisc
1930
1931 flush_to_ldisc reads port->itty and checks that it is not NULL,
1932 concurrently release_tty sets port->itty to NULL. It is possible
1933 that flush_to_ldisc loads port->itty once, ensures that it is
1934 not NULL, but then reloads it again and uses. The second load
1935 can already return NULL, which will cause a crash.
1936
1937 Use READ_ONCE to read port->itty.
1938
1939 The data race was found with KernelThreadSanitizer (KTSAN).
1940
1941 Signed-off-by: Dmitry Vyukov <dvyukov@google.com>
1942 Reviewed-by: Peter Hurley <peter@hurleysoftware.com>
1943 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1944
1945 drivers/tty/tty_buffer.c | 2 +-
1946 1 files changed, 1 insertions(+), 1 deletions(-)
1947
1948 commit 4a433f384b0a5b7e39f969ee8df89c56537d078d
1949 Author: Dmitry Vyukov <dvyukov@google.com>
1950 Date: Thu Sep 17 17:17:09 2015 +0200
1951
1952 tty: fix data race in tty_buffer_flush
1953
1954 tty_buffer_flush frees not acquired buffers.
1955 As the result, for example, read of b->size in tty_buffer_free
1956 can return garbage value which will lead to a huge buffer
1957 hanging in the freelist. This is just the benignest
1958 manifestation of freeing of a not acquired object.
1959 If the object is passed to kfree, heap can be corrupted.
1960
1961 Acquire visibility over the buffer before freeing it.
1962
1963 The data race was found with KernelThreadSanitizer (KTSAN).
1964
1965 Signed-off-by: Dmitry Vyukov <dvyukov@google.com>
1966 Reviewed-by: Peter Hurley <peter@hurleysoftware.com>
1967 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1968
1969 drivers/tty/tty_buffer.c | 5 ++++-
1970 1 files changed, 4 insertions(+), 1 deletions(-)
1971
1972 commit 1477c439d65debf45ac3164a1615504131fad1ff
1973 Author: Jann Horn <jann@thejh.net>
1974 Date: Sun Oct 4 19:29:12 2015 +0200
1975
1976 drivers/tty: require read access for controlling terminal
1977
1978 This is mostly a hardening fix, given that write-only access to other
1979 users' ttys is usually only given through setgid tty executables.
1980
1981 Signed-off-by: Jann Horn <jann@thejh.net>
1982 Cc: stable@vger.kernel.org
1983 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1984
1985 drivers/tty/tty_io.c | 31 +++++++++++++++++++++++++++----
1986 1 files changed, 27 insertions(+), 4 deletions(-)
1987
1988 commit c2d51348729aa244b827216715db7734daf07155
1989 Author: Brad Spengler <spender@grsecurity.net>
1990 Date: Mon Oct 12 07:19:03 2015 -0400
1991
1992 Don't auto-enable UDEREF on x64 with a VirtualBox host
1993
1994 Conflicts:
1995
1996 security/Kconfig
1997
1998 security/Kconfig | 2 +-
1999 1 files changed, 1 insertions(+), 1 deletions(-)
2000
2001 commit 45ff0fe97624b7133be6f0280ab8fda4610b7937
2002 Merge: ca6828e 1c527d2
2003 Author: Brad Spengler <spender@grsecurity.net>
2004 Date: Sun Oct 11 17:17:58 2015 -0400
2005
2006 Merge branch 'pax-test' into grsec-test
2007
2008 Conflicts:
2009 arch/x86/mm/pgtable.c
2010
2011 commit 1c527d25ad2ece4cdb4723047625d96b942a3b91
2012 Author: Brad Spengler <spender@grsecurity.net>
2013 Date: Sun Oct 11 17:16:49 2015 -0400
2014
2015 Update to pax-linux-4.2.3-test9.patch:
2016 - really fixed vsyscall/pvclock regression caused by the recent page table hardening, reported by kamil (https://forums.grsecurity.net/viewtopic.php?f=3&t=4272) and quasar366 (https://forums.grsecurity.net/viewtopic.php?f=3&t=4275)
2017 - fixed a compilation error caused by the above regression, reported by spender
2018 - fixed an arm compilation error, reported by Emese
2019
2020 arch/arm/kernel/module-plts.c | 7 +------
2021 arch/x86/mm/pgtable.c | 21 +++++++++++++++++++--
2022 2 files changed, 20 insertions(+), 8 deletions(-)
2023
2024 commit ca6828e73b10b4a7537b16a37c2c0280523171e1
2025 Author: Trond Myklebust <trond.myklebust@primarydata.com>
2026 Date: Fri Oct 9 13:44:34 2015 -0400
2027
2028 namei: results of d_is_negative() should be checked after dentry revalidation
2029
2030 Leandro Awa writes:
2031 "After switching to version 4.1.6, our parallelized and distributed
2032 workflows now fail consistently with errors of the form:
2033
2034 T34: ./regex.c:39:22: error: config.h: No such file or directory
2035
2036 From our 'git bisect' testing, the following commit appears to be the
2037 possible cause of the behavior we've been seeing: commit 766c4cbfacd8"
2038
2039 Al Viro says:
2040 "What happens is that 766c4cbfacd8 got the things subtly wrong.
2041
2042 We used to treat d_is_negative() after lookup_fast() as "fall with
2043 ENOENT". That was wrong - checking ->d_flags outside of ->d_seq
2044 protection is unreliable and failing with hard error on what should've
2045 fallen back to non-RCU pathname resolution is a bug.
2046
2047 Unfortunately, we'd pulled the test too far up and ran afoul of
2048 another kind of staleness. The dentry might have been absolutely
2049 stable from the RCU point of view (and we might be on UP, etc), but
2050 stale from the remote fs point of view. If ->d_revalidate() returns
2051 "it's actually stale", dentry gets thrown away and the original code
2052 wouldn't even have looked at its ->d_flags.
2053
2054 What we need is to check ->d_flags where 766c4cbfacd8 does (prior to
2055 ->d_seq validation) but only use the result in cases where we do not
2056 discard this dentry outright"
2057
2058 Reported-by: Leandro Awa <lawa@nvidia.com>
2059 Link: https://bugzilla.kernel.org/show_bug.cgi?id=104911
2060 Fixes: 766c4cbfacd8 ("namei: d_is_negative() should be checked...")
2061 Tested-by: Leandro Awa <lawa@nvidia.com>
2062 Cc: stable@vger.kernel.org # v4.1+
2063 Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
2064 Acked-by: Al Viro <viro@zeniv.linux.org.uk>
2065 Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2066
2067 fs/namei.c | 8 ++++++--
2068 1 files changed, 6 insertions(+), 2 deletions(-)
2069
2070 commit c0181260ce096a814637ad60e45a64c94840fffa
2071 Author: Matt Fleming <matt.fleming@intel.com>
2072 Date: Fri Sep 25 23:02:18 2015 +0100
2073
2074 x86/efi: Fix boot crash by mapping EFI memmap entries bottom-up at runtime, instead of top-down
2075
2076 Beginning with UEFI v2.5 EFI_PROPERTIES_TABLE was introduced
2077 that signals that the firmware PE/COFF loader supports splitting
2078 code and data sections of PE/COFF images into separate EFI
2079 memory map entries. This allows the kernel to map those regions
2080 with strict memory protections, e.g. EFI_MEMORY_RO for code,
2081 EFI_MEMORY_XP for data, etc.
2082
2083 Unfortunately, an unwritten requirement of this new feature is
2084 that the regions need to be mapped with the same offsets
2085 relative to each other as observed in the EFI memory map. If
2086 this is not done crashes like this may occur,
2087
2088 BUG: unable to handle kernel paging request at fffffffefe6086dd
2089 IP: [<fffffffefe6086dd>] 0xfffffffefe6086dd
2090 Call Trace:
2091 [<ffffffff8104c90e>] efi_call+0x7e/0x100
2092 [<ffffffff81602091>] ? virt_efi_set_variable+0x61/0x90
2093 [<ffffffff8104c583>] efi_delete_dummy_variable+0x63/0x70
2094 [<ffffffff81f4e4aa>] efi_enter_virtual_mode+0x383/0x392
2095 [<ffffffff81f37e1b>] start_kernel+0x38a/0x417
2096 [<ffffffff81f37495>] x86_64_start_reservations+0x2a/0x2c
2097 [<ffffffff81f37582>] x86_64_start_kernel+0xeb/0xef
2098
2099 Here 0xfffffffefe6086dd refers to an address the firmware
2100 expects to be mapped but which the OS never claimed was mapped.
2101 The issue is that included in these regions are relative
2102 addresses to other regions which were emitted by the firmware
2103 toolchain before the "splitting" of sections occurred at
2104 runtime.
2105
2106 Needless to say, we don't satisfy this unwritten requirement on
2107 x86_64 and instead map the EFI memory map entries in reverse
2108 order. The above crash is almost certainly triggerable with any
2109 kernel newer than v3.13 because that's when we rewrote the EFI
2110 runtime region mapping code, in commit d2f7cbe7b26a ("x86/efi:
2111 Runtime services virtual mapping"). For kernel versions before
2112 v3.13 things may work by pure luck depending on the
2113 fragmentation of the kernel virtual address space at the time we
2114 map the EFI regions.
2115
2116 Instead of mapping the EFI memory map entries in reverse order,
2117 where entry N has a higher virtual address than entry N+1, map
2118 them in the same order as they appear in the EFI memory map to
2119 preserve this relative offset between regions.
2120
2121 This patch has been kept as small as possible with the intention
2122 that it should be applied aggressively to stable and
2123 distribution kernels. It is very much a bugfix rather than
2124 support for a new feature, since when EFI_PROPERTIES_TABLE is
2125 enabled we must map things as outlined above to even boot - we
2126 have no way of asking the firmware not to split the code/data
2127 regions.
2128
2129 In fact, this patch doesn't even make use of the more strict
2130 memory protections available in UEFI v2.5. That will come later.
2131
2132 Suggested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
2133 Reported-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
2134 Signed-off-by: Matt Fleming <matt.fleming@intel.com>
2135 Cc: <stable@vger.kernel.org>
2136 Cc: Borislav Petkov <bp@suse.de>
2137 Cc: Chun-Yi <jlee@suse.com>
2138 Cc: Dave Young <dyoung@redhat.com>
2139 Cc: H. Peter Anvin <hpa@zytor.com>
2140 Cc: James Bottomley <JBottomley@Odin.com>
2141 Cc: Lee, Chun-Yi <jlee@suse.com>
2142 Cc: Leif Lindholm <leif.lindholm@linaro.org>
2143 Cc: Linus Torvalds <torvalds@linux-foundation.org>
2144 Cc: Matthew Garrett <mjg59@srcf.ucam.org>
2145 Cc: Mike Galbraith <efault@gmx.de>
2146 Cc: Peter Jones <pjones@redhat.com>
2147 Cc: Peter Zijlstra <peterz@infradead.org>
2148 Cc: Thomas Gleixner <tglx@linutronix.de>
2149 Cc: linux-kernel@vger.kernel.org
2150 Link: http://lkml.kernel.org/r/1443218539-7610-2-git-send-email-matt@codeblueprint.co.uk
2151 Signed-off-by: Ingo Molnar <mingo@kernel.org>
2152
2153 arch/x86/platform/efi/efi.c | 67 ++++++++++++++++++++++++++++++++++++++++++-
2154 1 files changed, 66 insertions(+), 1 deletions(-)
2155
2156 commit 9377caab146791c8c587da3750d6eddcd01bdfba
2157 Author: Ard Biesheuvel <ard.biesheuvel@linaro.org>
2158 Date: Fri Sep 25 23:02:19 2015 +0100
2159
2160 arm64/efi: Fix boot crash by not padding between EFI_MEMORY_RUNTIME regions
2161
2162 The new Properties Table feature introduced in UEFIv2.5 may
2163 split memory regions that cover PE/COFF memory images into
2164 separate code and data regions. Since these regions only differ
2165 in the type (runtime code vs runtime data) and the permission
2166 bits, but not in the memory type attributes (UC/WC/WT/WB), the
2167 spec does not require them to be aligned to 64 KB.
2168
2169 Since the relative offset of PE/COFF .text and .data segments
2170 cannot be changed on the fly, this means that we can no longer
2171 pad out those regions to be mappable using 64 KB pages.
2172 Unfortunately, there is no annotation in the UEFI memory map
2173 that identifies data regions that were split off from a code
2174 region, so we must apply this logic to all adjacent runtime
2175 regions whose attributes only differ in the permission bits.
2176
2177 So instead of rounding each memory region to 64 KB alignment at
2178 both ends, only round down regions that are not directly
2179 preceded by another runtime region with the same type
2180 attributes. Since the UEFI spec does not mandate that the memory
2181 map be sorted, this means we also need to sort it first.
2182
2183 Note that this change will result in all EFI_MEMORY_RUNTIME
2184 regions whose start addresses are not aligned to the OS page
2185 size to be mapped with executable permissions (i.e., on kernels
2186 compiled with 64 KB pages). However, since these mappings are
2187 only active during the time that UEFI Runtime Services are being
2188 invoked, the window for abuse is rather small.
2189
2190 Tested-by: Mark Salter <msalter@redhat.com>
2191 Tested-by: Mark Rutland <mark.rutland@arm.com> [UEFI 2.4 only]
2192 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
2193 Signed-off-by: Matt Fleming <matt.fleming@intel.com>
2194 Reviewed-by: Mark Salter <msalter@redhat.com>
2195 Reviewed-by: Mark Rutland <mark.rutland@arm.com>
2196 Cc: <stable@vger.kernel.org> # v4.0+
2197 Cc: Catalin Marinas <catalin.marinas@arm.com>
2198 Cc: Leif Lindholm <leif.lindholm@linaro.org>
2199 Cc: Linus Torvalds <torvalds@linux-foundation.org>
2200 Cc: Mike Galbraith <efault@gmx.de>
2201 Cc: Peter Zijlstra <peterz@infradead.org>
2202 Cc: Thomas Gleixner <tglx@linutronix.de>
2203 Cc: Will Deacon <will.deacon@arm.com>
2204 Cc: linux-kernel@vger.kernel.org
2205 Link: http://lkml.kernel.org/r/1443218539-7610-3-git-send-email-matt@codeblueprint.co.uk
2206 Signed-off-by: Ingo Molnar <mingo@kernel.org>
2207
2208 arch/arm64/kernel/efi.c | 3 +-
2209 drivers/firmware/efi/libstub/arm-stub.c | 88 +++++++++++++++++++++++++-----
2210 2 files changed, 75 insertions(+), 16 deletions(-)
2211
2212 commit 189124f1e733622c44d72060832af3c68d7ee8bc
2213 Author: Ralf Baechle <ralf@linux-mips.org>
2214 Date: Fri Oct 2 09:48:57 2015 +0200
2215
2216 MIPS: BPF: Fix load delay slots.
2217
2218 The entire bpf_jit_asm.S is written in noreorder mode because "we know
2219 better" according to a comment. This also prevented the assembler from
2220 throwing in the required NOPs for MIPS I processors which have no
2221 load-use interlock, thus the load's consumer might end up using the
2222 old value of the register from prior to the load.
2223
2224 Fixed by putting the assembler in reorder mode for just the affected
2225 load instructions. This is not enough for gas to actually try to be
2226 clever by looking at the next instruction and inserting a nop only
2227 when needed but as the comment said "we know better", so getting gas
2228 to unconditionally emit a NOP is just right in this case and prevents
2229 adding further ifdefery.
2230
2231 Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2232
2233 arch/mips/net/bpf_jit_asm.S | 4 ++++
2234 1 files changed, 4 insertions(+), 0 deletions(-)
2235
2236 commit b4b012d6599fbc3c6e81f0a03cd59eb9f0095ed8
2237 Author: Lee, Chun-Yi <joeyli.kernel@gmail.com>
2238 Date: Tue Sep 29 20:58:57 2015 +0800
2239
2240 x86/kexec: Fix kexec crash in syscall kexec_file_load()
2241
2242 The original bug is a page fault crash that sometimes happens
2243 on big machines when preparing ELF headers:
2244
2245 BUG: unable to handle kernel paging request at ffffc90613fc9000
2246 IP: [<ffffffff8103d645>] prepare_elf64_ram_headers_callback+0x165/0x260
2247
2248 The bug is caused by us under-counting the number of memory ranges
2249 and subsequently not allocating enough ELF header space for them.
2250 The bug is typically masked on smaller systems, because the ELF header
2251 allocation is rounded up to the next page.
2252
2253 This patch modifies the code in fill_up_crash_elf_data() by using
2254 walk_system_ram_res() instead of walk_system_ram_range() to correctly
2255 count the max number of crash memory ranges. That's because the
2256 walk_system_ram_range() filters out small memory regions that
2257 reside in the same page, but walk_system_ram_res() does not.
2258
2259 Here's how I found the bug:
2260
2261 After tracing prepare_elf64_headers() and prepare_elf64_ram_headers_callback(),
2262 the code uses walk_system_ram_res() to fill-in crash memory regions information
2263 to the program header, so it counts those small memory regions that
2264 reside in a page area.
2265
2266 But, when the kernel was using walk_system_ram_range() in
2267 fill_up_crash_elf_data() to count the number of crash memory regions,
2268 it filters out small regions.
2269
2270 I printed those small memory regions, for example:
2271
2272 kexec: Get nr_ram ranges. vaddr=0xffff880077592258 paddr=0x77592258, sz=0xdc0
2273
2274 Based on the code in walk_system_ram_range(), this memory region
2275 will be filtered out:
2276
2277 pfn = (0x77592258 + 0x1000 - 1) >> 12 = 0x77593
2278 end_pfn = (0x77592258 + 0xfc0 -1 + 1) >> 12 = 0x77593
2279 end_pfn - pfn = 0x77593 - 0x77593 = 0 <=== if (end_pfn > pfn) is FALSE
2280
2281 So, the max_nr_ranges that's counted by the kernel doesn't include
2282 small memory regions - causing us to under-allocate the required space.
2283 That causes the page fault crash that happens in a later code path
2284 when preparing ELF headers.
2285
2286 This bug is not easy to reproduce on small machines that have few
2287 CPUs, because the allocated page aligned ELF buffer has more free
2288 space to cover those small memory regions' PT_LOAD headers.
2289
2290 Signed-off-by: Lee, Chun-Yi <jlee@suse.com>
2291 Cc: Andy Lutomirski <luto@kernel.org>
2292 Cc: Baoquan He <bhe@redhat.com>
2293 Cc: Jiang Liu <jiang.liu@linux.intel.com>
2294 Cc: Linus Torvalds <torvalds@linux-foundation.org>
2295 Cc: Mike Galbraith <efault@gmx.de>
2296 Cc: Peter Zijlstra <peterz@infradead.org>
2297 Cc: Stephen Rothwell <sfr@canb.auug.org.au>
2298 Cc: Takashi Iwai <tiwai@suse.de>
2299 Cc: Thomas Gleixner <tglx@linutronix.de>
2300 Cc: Viresh Kumar <viresh.kumar@linaro.org>
2301 Cc: Vivek Goyal <vgoyal@redhat.com>
2302 Cc: kexec@lists.infradead.org
2303 Cc: linux-kernel@vger.kernel.org
2304 Cc: <stable@vger.kernel.org>
2305 Link: http://lkml.kernel.org/r/1443531537-29436-1-git-send-email-jlee@suse.com
2306 Signed-off-by: Ingo Molnar <mingo@kernel.org>
2307
2308 arch/x86/kernel/crash.c | 7 +++----
2309 1 files changed, 3 insertions(+), 4 deletions(-)
2310
2311 commit bf91f1e0162bdd27ebd1411090a81fd9188daa4f
2312 Author: Elad Raz <eladr@mellanox.com>
2313 Date: Sat Aug 22 08:44:11 2015 +0300
2314
2315 netfilter: ipset: Fixing unnamed union init
2316
2317 In continue to proposed Vinson Lee's post [1], this patch fixes compilation
2318 issues founded at gcc 4.4.7. The initialization of .cidr field of unnamed
2319 unions causes compilation error in gcc 4.4.x.
2320
2321 References
2322
2323 Visible links
2324 [1] https://lkml.org/lkml/2015/7/5/74
2325
2326 Signed-off-by: Elad Raz <eladr@mellanox.com>
2327 Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
2328
2329 net/netfilter/ipset/ip_set_hash_netnet.c | 20 ++++++++++++++++++--
2330 net/netfilter/ipset/ip_set_hash_netportnet.c | 20 ++++++++++++++++++--
2331 2 files changed, 36 insertions(+), 4 deletions(-)
2332
2333 commit fed13a5012b8d7e87a6f9efa2e40e0be28eaecd9
2334 Author: Brad Spengler <spender@grsecurity.net>
2335 Date: Fri Oct 9 23:12:43 2015 -0400
2336
2337 compile fix
2338
2339 arch/x86/mm/pgtable.c | 2 ++
2340 1 files changed, 2 insertions(+), 0 deletions(-)
2341
2342 commit 58edc15a668a6dd90b3f66abc84b509f8fba7505
2343 Author: Daniel Borkmann <daniel@iogearbox.net>
2344 Date: Mon Aug 31 19:11:02 2015 +0200
2345
2346 netfilter: conntrack: use nf_ct_tmpl_free in CT/synproxy error paths
2347
2348 Commit 0838aa7fcfcd ("netfilter: fix netns dependencies with conntrack
2349 templates") migrated templates to the new allocator api, but forgot to
2350 update error paths for them in CT and synproxy to use nf_ct_tmpl_free()
2351 instead of nf_conntrack_free().
2352
2353 Due to that, memory is being freed into the wrong kmemcache, but also
2354 we drop the per net reference count of ct objects causing an imbalance.
2355
2356 In Brad's case, this leads to a wrap-around of net->ct.count and thus
2357 lets __nf_conntrack_alloc() refuse to create a new ct object:
2358
2359 [ 10.340913] xt_addrtype: ipv6 does not support BROADCAST matching
2360 [ 10.810168] nf_conntrack: table full, dropping packet
2361 [ 11.917416] r8169 0000:07:00.0 eth0: link up
2362 [ 11.917438] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
2363 [ 12.815902] nf_conntrack: table full, dropping packet
2364 [ 15.688561] nf_conntrack: table full, dropping packet
2365 [ 15.689365] nf_conntrack: table full, dropping packet
2366 [ 15.690169] nf_conntrack: table full, dropping packet
2367 [ 15.690967] nf_conntrack: table full, dropping packet
2368 [...]
2369
2370 With slab debugging, it also reports the wrong kmemcache (kmalloc-512 vs.
2371 nf_conntrack_ffffffff81ce75c0) and reports poison overwrites, etc. Thus,
2372 to fix the problem, export and use nf_ct_tmpl_free() instead.
2373
2374 Fixes: 0838aa7fcfcd ("netfilter: fix netns dependencies with conntrack templates")
2375 Reported-by: Brad Jackson <bjackson0971@gmail.com>
2376 Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
2377 Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
2378
2379 include/net/netfilter/nf_conntrack.h | 1 +
2380 net/netfilter/nf_conntrack_core.c | 3 ++-
2381 net/netfilter/nf_synproxy_core.c | 2 +-
2382 net/netfilter/xt_CT.c | 2 +-
2383 4 files changed, 5 insertions(+), 3 deletions(-)
2384
2385 commit 37d26e44573aaa9c3b1f0c36ec9d4bddc008fc03
2386 Author: Brad Spengler <spender@grsecurity.net>
2387 Date: Fri Oct 9 18:22:54 2015 -0400
2388
2389 Fix BUG() in scatterwalk_map_and_copy caused by virt_to_page being
2390 called on the KSTACKOVERFLOW's vmalloc'd stack. Thanks to
2391 Yves-Alexis Perez for the report
2392
2393 crypto/scatterwalk.c | 10 ++++++++--
2394 1 files changed, 8 insertions(+), 2 deletions(-)
2395
2396 commit 8137d53d2b60023587a48004f0b67946ed6db4a8
2397 Merge: 147420b a9c991f
2398 Author: Brad Spengler <spender@grsecurity.net>
2399 Date: Fri Oct 9 18:20:32 2015 -0400
2400
2401 Merge branch 'pax-test' into grsec-test
2402
2403 commit a9c991f727bb8daf15838296e301683791c17071
2404 Author: Brad Spengler <spender@grsecurity.net>
2405 Date: Fri Oct 9 18:20:07 2015 -0400
2406
2407 Update to pax-linux-4.2.3-test8.patch:
2408 - fixed vsyscall/pvclock regression caused by the recent page table hardening, reported by kamil (https://forums.grsecurity.net/viewtopic.php?f=3&t=4272)
2409
2410 arch/x86/kernel/espfix_64.c | 4 +---
2411 arch/x86/kernel/kvmclock.c | 20 ++++++--------------
2412 arch/x86/mm/highmem_32.c | 2 ++
2413 arch/x86/mm/pgtable.c | 33 +++++++++++++++++++++++++++++++++
2414 4 files changed, 42 insertions(+), 17 deletions(-)
2415
2416 commit 147420b0f00c7f20f354e1dfa460b904a3af432b
2417 Author: Brad Spengler <spender@grsecurity.net>
2418 Date: Fri Oct 9 08:54:24 2015 -0400
2419
2420 Properly fix the bug reported at:
2421 https://code.google.com/p/android/issues/detail?id=187973
2422
2423 drivers/net/slip/slhc.c | 3 +++
2424 1 files changed, 3 insertions(+), 0 deletions(-)
2425
2426 commit 4918a68ea80e1185ec8f3a94d3a2210552ed0bb5
2427 Merge: 4e736d9 7e02f35
2428 Author: Brad Spengler <spender@grsecurity.net>
2429 Date: Wed Oct 7 20:57:21 2015 -0400
2430
2431 Merge branch 'pax-test' into grsec-test
2432
2433 Conflicts:
2434 arch/x86/kernel/espfix_64.c
2435
2436 commit 7e02f35880fd6bdb2f4e7ba07a13d6df1d121008
2437 Author: Brad Spengler <spender@grsecurity.net>
2438 Date: Wed Oct 7 20:54:36 2015 -0400
2439
2440 Update to pax-linux-4.2.3-test7.patch:
2441 - backported vanilla commits b763ec17ac762470eec5be8ebcc43e4f8b2c2b82 and 176fc2d5770a0990eebff903ba680d2edd32e718
2442 - constified a few more page tables for ESPFIX/amd64
2443 - fixed xen and the recently added level1_modules_pgt page tables on amd64
2444
2445 arch/x86/include/asm/pgtable_64.h | 1 +
2446 arch/x86/kernel/espfix_64.c | 35 +++++++++++++++++++++++----------
2447 arch/x86/xen/mmu.c | 4 +++
2448 drivers/base/regmap/regmap-debugfs.c | 14 +++++-------
2449 4 files changed, 35 insertions(+), 19 deletions(-)
2450
2451 commit 4e736d9e568f6cc0d08dfe7519abf9a5d58a5418
2452 Author: Robin Murphy <robin.murphy@arm.com>
2453 Date: Thu Oct 1 15:37:19 2015 -0700
2454
2455 dmapool: fix overflow condition in pool_find_page()
2456
2457 If a DMA pool lies at the very top of the dma_addr_t range (as may
2458 happen with an IOMMU involved), the calculated end address of the pool
2459 wraps around to zero, and page lookup always fails.
2460
2461 Tweak the relevant calculation to be overflow-proof.
2462
2463 Signed-off-by: Robin Murphy <robin.murphy@arm.com>
2464 Cc: Arnd Bergmann <arnd@arndb.de>
2465 Cc: Marek Szyprowski <m.szyprowski@samsung.com>
2466 Cc: Sumit Semwal <sumit.semwal@linaro.org>
2467 Cc: Sakari Ailus <sakari.ailus@iki.fi>
2468 Cc: Russell King <rmk+kernel@arm.linux.org.uk>
2469 Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2470 Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2471
2472 mm/dmapool.c | 2 +-
2473 1 files changed, 1 insertions(+), 1 deletions(-)
2474
2475 commit 96a101a9b4208a6e5f2a0db7599881142e70ba43
2476 Author: Greg Thelen <gthelen@google.com>
2477 Date: Thu Oct 1 15:37:05 2015 -0700
2478
2479 memcg: make mem_cgroup_read_stat() unsigned
2480
2481 mem_cgroup_read_stat() returns a page count by summing per cpu page
2482 counters. The summing is racy wrt. updates, so a transient negative
2483 sum is possible. Callers don't want negative values:
2484
2485 - mem_cgroup_wb_stats() doesn't want negative nr_dirty or nr_writeback.
2486 This could confuse dirty throttling.
2487
2488 - oom reports and memory.stat shouldn't show confusing negative usage.
2489
2490 - tree_usage() already avoids negatives.
2491
2492 Avoid returning negative page counts from mem_cgroup_read_stat() and
2493 convert it to unsigned.
2494
2495 [akpm@linux-foundation.org: fix old typo while we're in there]
2496 Signed-off-by: Greg Thelen <gthelen@google.com>
2497 Cc: Johannes Weiner <hannes@cmpxchg.org>
2498 Acked-by: Michal Hocko <mhocko@suse.com>
2499 Cc: <stable@vger.kernel.org> [4.2+]
2500 Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2501 Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2502
2503 mm/memcontrol.c | 30 ++++++++++++++++++------------
2504 1 files changed, 18 insertions(+), 12 deletions(-)
2505
2506 commit b7808c46650d5f4c09f071566de991af36eb9d37
2507 Author: Daniel Borkmann <daniel@iogearbox.net>
2508 Date: Fri Oct 2 12:06:03 2015 +0200
2509
2510 bpf: fix panic in SO_GET_FILTER with native ebpf programs
2511
2512 When sockets have a native eBPF program attached through
2513 setsockopt(sk, SOL_SOCKET, SO_ATTACH_BPF, ...), and then try to
2514 dump these over getsockopt(sk, SOL_SOCKET, SO_GET_FILTER, ...),
2515 the following panic appears:
2516
2517 [49904.178642] BUG: unable to handle kernel NULL pointer dereference at (null)
2518 [49904.178762] IP: [<ffffffff81610fd9>] sk_get_filter+0x39/0x90
2519 [49904.182000] PGD 86fc9067 PUD 531a1067 PMD 0
2520 [49904.185196] Oops: 0000 [#1] SMP
2521 [...]
2522 [49904.224677] Call Trace:
2523 [49904.226090] [<ffffffff815e3d49>] sock_getsockopt+0x319/0x740
2524 [49904.227535] [<ffffffff812f59e3>] ? sock_has_perm+0x63/0x70
2525 [49904.228953] [<ffffffff815e2fc8>] ? release_sock+0x108/0x150
2526 [49904.230380] [<ffffffff812f5a43>] ? selinux_socket_getsockopt+0x23/0x30
2527 [49904.231788] [<ffffffff815dff36>] SyS_getsockopt+0xa6/0xc0
2528 [49904.233267] [<ffffffff8171b9ae>] entry_SYSCALL_64_fastpath+0x12/0x71
2529
2530 The underlying issue is the very same as in commit b382c0865600
2531 ("sock, diag: fix panic in sock_diag_put_filterinfo"), that is,
2532 native eBPF programs don't store an original program since this
2533 is only needed in cBPF ones.
2534
2535 However, sk_get_filter() wasn't updated to test for this at the
2536 time when eBPF could be attached. Just throw an error to the user
2537 to indicate that eBPF cannot be dumped over this interface.
2538 That way, it can also be known that a program _is_ attached (as
2539 opposed to just return 0), and a different (future) method needs
2540 to be consulted for a dump.
2541
2542 Fixes: 89aa075832b0 ("net: sock: allow eBPF programs to be attached to sockets")
2543 Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
2544 Acked-by: Alexei Starovoitov <ast@plumgrid.com>
2545 Signed-off-by: David S. Miller <davem@davemloft.net>
2546
2547 net/core/filter.c | 6 +++++-
2548 1 files changed, 5 insertions(+), 1 deletions(-)
2549
2550 commit 40853c884afb5fc2dcb9f7fc34ef446162566fcc
2551 Author: Steve French <smfrench@gmail.com>
2552 Date: Mon Sep 28 17:21:07 2015 -0500
2553
2554 [SMB3] Do not fall back to SMBWriteX in set_file_size error cases
2555
2556 The error paths in set_file_size for cifs and smb3 are incorrect.
2557
2558 In the unlikely event that a server did not support set file info
2559 of the file size, the code incorrectly falls back to trying SMBWriteX
2560 (note that only the original core SMB Write, used for example by DOS,
2561 can set the file size this way - this actually does not work for the more
2562 recent SMBWriteX). The idea was since the old DOS SMB Write could set
2563 the file size if you write zero bytes at that offset then use that if
2564 server rejects the normal set file info call.
2565
2566 Fortunately the SMBWriteX will never be sent on the wire (except when
2567 file size is zero) since the length and offset fields were reversed
2568 in the two places in this function that call SMBWriteX causing
2569 the fall back path to return an error. It is also important to never call
2570 an SMB request from an SMB2/sMB3 session (which theoretically would
2571 be possible, and can cause a brief session drop, although the client
2572 recovers) so this should be fixed. In practice this path does not happen
2573 with modern servers but the error fall back to SMBWriteX is clearly wrong.
2574
2575 Removing the calls to SMBWriteX in the error paths in cifs_set_file_size
2576
2577 Pointed out by PaX/grsecurity team
2578
2579 Signed-off-by: Steve French <steve.french@primarydata.com>
2580 Reported-by: PaX Team <pageexec@freemail.hu>
2581 CC: Emese Revfy <re.emese@gmail.com>
2582 CC: Brad Spengler <spender@grsecurity.net>
2583 CC: Stable <stable@vger.kernel.org>
2584
2585 fs/cifs/inode.c | 34 ----------------------------------
2586 1 files changed, 0 insertions(+), 34 deletions(-)
2587
2588 commit f5fad97c967a08f4a89513969598b1d3c8232a38
2589 Author: Brad Spengler <spender@grsecurity.net>
2590 Date: Wed Oct 7 18:22:40 2015 -0400
2591
2592 Initial import of grsecurity for Linux 4.2.3
2593 Note that size_overflow is currently marked BROKEN
2594
2595 Documentation/dontdiff | 2 +
2596 Documentation/kernel-parameters.txt | 7 +
2597 Documentation/sysctl/kernel.txt | 15 +
2598 Makefile | 18 +-
2599 arch/alpha/include/asm/cache.h | 4 +-
2600 arch/alpha/kernel/osf_sys.c | 12 +-
2601 arch/arm/Kconfig | 1 +
2602 arch/arm/include/asm/thread_info.h | 9 +-
2603 arch/arm/kernel/process.c | 4 +-
2604 arch/arm/kernel/ptrace.c | 9 +
2605 arch/arm/kernel/traps.c | 7 +-
2606 arch/arm/mm/Kconfig | 2 +-
2607 arch/arm/mm/fault.c | 40 +-
2608 arch/arm/mm/mmap.c | 8 +-
2609 arch/arm/net/bpf_jit_32.c | 51 +-
2610 arch/avr32/include/asm/cache.h | 4 +-
2611 arch/blackfin/include/asm/cache.h | 3 +-
2612 arch/cris/include/arch-v10/arch/cache.h | 3 +-
2613 arch/cris/include/arch-v32/arch/cache.h | 3 +-
2614 arch/frv/include/asm/cache.h | 3 +-
2615 arch/frv/mm/elf-fdpic.c | 4 +-
2616 arch/hexagon/include/asm/cache.h | 6 +-
2617 arch/ia64/Kconfig | 1 +
2618 arch/ia64/include/asm/cache.h | 3 +-
2619 arch/ia64/kernel/sys_ia64.c | 2 +
2620 arch/ia64/mm/hugetlbpage.c | 2 +
2621 arch/m32r/include/asm/cache.h | 4 +-
2622 arch/m68k/include/asm/cache.h | 4 +-
2623 arch/metag/mm/hugetlbpage.c | 1 +
2624 arch/microblaze/include/asm/cache.h | 3 +-
2625 arch/mips/Kconfig | 1 +
2626 arch/mips/include/asm/cache.h | 3 +-
2627 arch/mips/include/asm/thread_info.h | 11 +-
2628 arch/mips/kernel/irq.c | 3 +
2629 arch/mips/kernel/ptrace.c | 9 +
2630 arch/mips/mm/mmap.c | 4 +-
2631 arch/mn10300/proc-mn103e010/include/proc/cache.h | 4 +-
2632 arch/mn10300/proc-mn2ws0050/include/proc/cache.h | 4 +-
2633 arch/openrisc/include/asm/cache.h | 4 +-
2634 arch/parisc/include/asm/cache.h | 5 +-
2635 arch/parisc/kernel/sys_parisc.c | 4 +
2636 arch/powerpc/Kconfig | 1 +
2637 arch/powerpc/include/asm/cache.h | 3 +-
2638 arch/powerpc/include/asm/thread_info.h | 5 +-
2639 arch/powerpc/kernel/Makefile | 2 +
2640 arch/powerpc/kernel/irq.c | 3 +
2641 arch/powerpc/kernel/process.c | 10 +-
2642 arch/powerpc/kernel/ptrace.c | 14 +
2643 arch/powerpc/kernel/traps.c | 5 +
2644 arch/powerpc/mm/slice.c | 2 +-
2645 arch/s390/include/asm/cache.h | 4 +-
2646 arch/score/include/asm/cache.h | 4 +-
2647 arch/sh/include/asm/cache.h | 3 +-
2648 arch/sh/mm/mmap.c | 6 +-
2649 arch/sparc/include/asm/cache.h | 4 +-
2650 arch/sparc/include/asm/pgalloc_64.h | 1 +
2651 arch/sparc/include/asm/thread_info_64.h | 8 +-
2652 arch/sparc/kernel/process_32.c | 6 +-
2653 arch/sparc/kernel/process_64.c | 8 +-
2654 arch/sparc/kernel/ptrace_64.c | 14 +
2655 arch/sparc/kernel/sys_sparc_64.c | 8 +-
2656 arch/sparc/kernel/syscalls.S | 8 +-
2657 arch/sparc/kernel/traps_32.c | 8 +-
2658 arch/sparc/kernel/traps_64.c | 28 +-
2659 arch/sparc/kernel/unaligned_64.c | 2 +-
2660 arch/sparc/mm/fault_64.c | 2 +-
2661 arch/sparc/mm/hugetlbpage.c | 15 +-
2662 arch/tile/Kconfig | 1 +
2663 arch/tile/include/asm/cache.h | 3 +-
2664 arch/tile/mm/hugetlbpage.c | 2 +
2665 arch/um/include/asm/cache.h | 3 +-
2666 arch/unicore32/include/asm/cache.h | 6 +-
2667 arch/x86/Kconfig | 21 +
2668 arch/x86/entry/entry_32.S | 2 +-
2669 arch/x86/entry/entry_64.S | 2 +-
2670 arch/x86/ia32/ia32_aout.c | 2 +
2671 arch/x86/include/asm/floppy.h | 20 +-
2672 arch/x86/include/asm/io.h | 2 +-
2673 arch/x86/include/asm/page.h | 12 +-
2674 arch/x86/include/asm/paravirt_types.h | 23 +-
2675 arch/x86/include/asm/processor.h | 2 +-
2676 arch/x86/include/asm/thread_info.h | 8 +-
2677 arch/x86/kernel/dumpstack.c | 10 +-
2678 arch/x86/kernel/dumpstack_32.c | 2 +-
2679 arch/x86/kernel/dumpstack_64.c | 2 +-
2680 arch/x86/kernel/espfix_64.c | 2 +-
2681 arch/x86/kernel/fpu/init.c | 4 +-
2682 arch/x86/kernel/ioport.c | 13 +
2683 arch/x86/kernel/irq_32.c | 3 +
2684 arch/x86/kernel/irq_64.c | 4 +
2685 arch/x86/kernel/ldt.c | 18 +
2686 arch/x86/kernel/msr.c | 10 +
2687 arch/x86/kernel/ptrace.c | 28 +
2688 arch/x86/kernel/signal.c | 9 +-
2689 arch/x86/kernel/sys_i386_32.c | 9 +-
2690 arch/x86/kernel/sys_x86_64.c | 8 +-
2691 arch/x86/kernel/traps.c | 5 +
2692 arch/x86/kernel/verify_cpu.S | 1 +
2693 arch/x86/kernel/vm86_32.c | 16 +
2694 arch/x86/mm/fault.c | 12 +-
2695 arch/x86/mm/hugetlbpage.c | 15 +-
2696 arch/x86/mm/init.c | 66 +-
2697 arch/x86/mm/init_32.c | 6 +-
2698 arch/x86/net/bpf_jit_comp.c | 4 +
2699 arch/x86/platform/efi/efi_64.c | 2 +-
2700 arch/x86/xen/Kconfig | 1 +
2701 arch/xtensa/variants/dc232b/include/variant/core.h | 2 +-
2702 arch/xtensa/variants/fsf/include/variant/core.h | 3 +-
2703 drivers/acpi/acpica/hwxfsleep.c | 11 +-
2704 drivers/acpi/custom_method.c | 4 +
2705 drivers/block/cciss.h | 30 +-
2706 drivers/block/smart1,2.h | 40 +-
2707 drivers/cdrom/cdrom.c | 2 +-
2708 drivers/char/Kconfig | 4 +-
2709 drivers/char/genrtc.c | 1 +
2710 drivers/char/mem.c | 17 +
2711 drivers/char/random.c | 5 +-
2712 drivers/cpufreq/sparc-us3-cpufreq.c | 2 -
2713 drivers/firewire/ohci.c | 4 +
2714 drivers/gpu/drm/drm_context.c | 50 +-
2715 drivers/gpu/drm/drm_drv.c | 11 +-
2716 drivers/gpu/drm/drm_lock.c | 18 +-
2717 drivers/gpu/drm/i915/i915_dma.c | 2 +
2718 drivers/gpu/drm/nouveau/nouveau_drm.c | 3 +-
2719 drivers/gpu/drm/nouveau/nouveau_ttm.c | 30 +-
2720 drivers/gpu/drm/ttm/ttm_bo_manager.c | 10 +-
2721 drivers/gpu/drm/virtio/virtgpu_ttm.c | 10 +-
2722 drivers/gpu/drm/vmwgfx/vmwgfx_gmrid_manager.c | 10 +-
2723 drivers/hid/hid-wiimote-debug.c | 2 +-
2724 drivers/infiniband/hw/nes/nes_cm.c | 22 +-
2725 drivers/iommu/amd_iommu.c | 14 +-
2726 drivers/isdn/gigaset/bas-gigaset.c | 32 +-
2727 drivers/isdn/gigaset/ser-gigaset.c | 32 +-
2728 drivers/isdn/gigaset/usb-gigaset.c | 32 +-
2729 drivers/isdn/i4l/isdn_concap.c | 6 +-
2730 drivers/isdn/i4l/isdn_x25iface.c | 16 +-
2731 drivers/md/raid5.c | 8 +
2732 drivers/media/pci/solo6x10/solo6x10-g723.c | 2 +-
2733 drivers/media/radio/radio-cadet.c | 5 +-
2734 drivers/media/usb/dvb-usb/cinergyT2-core.c | 91 +-
2735 drivers/media/usb/dvb-usb/cinergyT2-fe.c | 182 +-
2736 drivers/media/usb/dvb-usb/dvb-usb-firmware.c | 37 +-
2737 drivers/media/usb/dvb-usb/technisat-usb2.c | 75 +-
2738 drivers/message/fusion/mptbase.c | 9 +
2739 drivers/misc/sgi-xp/xp_main.c | 12 +-
2740 drivers/net/ethernet/brocade/bna/bna_enet.c | 8 +-
2741 drivers/net/wan/lmc/lmc_media.c | 97 +-
2742 drivers/net/wan/z85230.c | 24 +-
2743 drivers/net/wireless/zd1211rw/zd_usb.c | 2 +-
2744 drivers/pci/proc.c | 9 +
2745 drivers/platform/x86/asus-wmi.c | 12 +
2746 drivers/rtc/rtc-dev.c | 3 +
2747 drivers/scsi/bfa/bfa_fcs.c | 19 +-
2748 drivers/scsi/bfa/bfa_fcs_lport.c | 29 +-
2749 drivers/scsi/bfa/bfa_modules.h | 12 +-
2750 drivers/scsi/hpsa.h | 40 +-
2751 drivers/staging/lustre/lustre/ldlm/ldlm_flock.c | 2 +-
2752 drivers/staging/lustre/lustre/libcfs/module.c | 10 +-
2753 drivers/staging/sm750fb/sm750.c | 3 +
2754 drivers/tty/serial/uartlite.c | 4 +-
2755 drivers/tty/sysrq.c | 2 +-
2756 drivers/tty/vt/keyboard.c | 22 +-
2757 drivers/uio/uio.c | 6 +-
2758 drivers/usb/core/hub.c | 5 +
2759 drivers/usb/gadget/function/f_uac1.c | 1 +
2760 drivers/usb/gadget/function/u_uac1.c | 1 +
2761 drivers/usb/host/hwa-hc.c | 9 +-
2762 drivers/usb/usbip/vhci_sysfs.c | 2 +-
2763 drivers/video/fbdev/arcfb.c | 2 +-
2764 drivers/video/fbdev/matrox/matroxfb_DAC1064.c | 10 +-
2765 drivers/video/fbdev/matrox/matroxfb_Ti3026.c | 5 +-
2766 drivers/video/fbdev/sh_mobile_lcdcfb.c | 6 +-
2767 drivers/video/logo/logo_linux_clut224.ppm | 2720 ++++-----
2768 drivers/xen/xenfs/xenstored.c | 5 +
2769 firmware/Makefile | 2 +
2770 firmware/WHENCE | 20 +-
2771 firmware/bnx2/bnx2-mips-06-6.2.3.fw.ihex | 5804 +++++++++++++++++
2772 firmware/bnx2/bnx2-mips-09-6.2.1b.fw.ihex | 6496 ++++++++++++++++++++
2773 fs/attr.c | 1 +
2774 fs/autofs4/waitq.c | 9 +
2775 fs/binfmt_aout.c | 7 +
2776 fs/binfmt_elf.c | 40 +-
2777 fs/compat.c | 20 +-
2778 fs/coredump.c | 17 +-
2779 fs/dcache.c | 3 +
2780 fs/debugfs/inode.c | 11 +-
2781 fs/exec.c | 218 +-
2782 fs/ext2/balloc.c | 4 +-
2783 fs/ext2/super.c | 8 +-
2784 fs/ext3/balloc.c | 4 +-
2785 fs/ext3/super.c | 8 +-
2786 fs/ext4/balloc.c | 4 +-
2787 fs/fcntl.c | 4 +
2788 fs/fhandle.c | 3 +-
2789 fs/file.c | 4 +
2790 fs/filesystems.c | 4 +
2791 fs/fs_struct.c | 20 +-
2792 fs/hugetlbfs/inode.c | 5 +-
2793 fs/inode.c | 8 +-
2794 fs/kernfs/dir.c | 6 +
2795 fs/mount.h | 4 +-
2796 fs/namei.c | 285 +-
2797 fs/namespace.c | 24 +
2798 fs/nfsd/nfscache.c | 2 +-
2799 fs/open.c | 38 +
2800 fs/overlayfs/inode.c | 3 +
2801 fs/overlayfs/super.c | 6 +-
2802 fs/pipe.c | 2 +-
2803 fs/posix_acl.c | 15 +-
2804 fs/proc/Kconfig | 10 +-
2805 fs/proc/array.c | 66 +-
2806 fs/proc/base.c | 168 +-
2807 fs/proc/cmdline.c | 4 +
2808 fs/proc/devices.c | 4 +
2809 fs/proc/fd.c | 17 +-
2810 fs/proc/generic.c | 64 +
2811 fs/proc/inode.c | 17 +
2812 fs/proc/internal.h | 11 +-
2813 fs/proc/interrupts.c | 4 +
2814 fs/proc/kcore.c | 3 +
2815 fs/proc/proc_net.c | 31 +
2816 fs/proc/proc_sysctl.c | 52 +-
2817 fs/proc/root.c | 8 +
2818 fs/proc/stat.c | 69 +-
2819 fs/proc/task_mmu.c | 66 +-
2820 fs/readdir.c | 19 +
2821 fs/reiserfs/item_ops.c | 24 +-
2822 fs/reiserfs/super.c | 4 +
2823 fs/select.c | 2 +
2824 fs/seq_file.c | 30 +-
2825 fs/stat.c | 20 +-
2826 fs/sysfs/dir.c | 30 +-
2827 fs/utimes.c | 7 +
2828 fs/xattr.c | 26 +-
2829 grsecurity/Kconfig | 1182 ++++
2830 grsecurity/Makefile | 54 +
2831 grsecurity/gracl.c | 2757 +++++++++
2832 grsecurity/gracl_alloc.c | 105 +
2833 grsecurity/gracl_cap.c | 127 +
2834 grsecurity/gracl_compat.c | 269 +
2835 grsecurity/gracl_fs.c | 448 ++
2836 grsecurity/gracl_ip.c | 386 ++
2837 grsecurity/gracl_learn.c | 207 +
2838 grsecurity/gracl_policy.c | 1786 ++++++
2839 grsecurity/gracl_res.c | 68 +
2840 grsecurity/gracl_segv.c | 304 +
2841 grsecurity/gracl_shm.c | 40 +
2842 grsecurity/grsec_chdir.c | 19 +
2843 grsecurity/grsec_chroot.c | 467 ++
2844 grsecurity/grsec_disabled.c | 445 ++
2845 grsecurity/grsec_exec.c | 189 +
2846 grsecurity/grsec_fifo.c | 26 +
2847 grsecurity/grsec_fork.c | 23 +
2848 grsecurity/grsec_init.c | 290 +
2849 grsecurity/grsec_ipc.c | 48 +
2850 grsecurity/grsec_link.c | 65 +
2851 grsecurity/grsec_log.c | 340 +
2852 grsecurity/grsec_mem.c | 48 +
2853 grsecurity/grsec_mount.c | 65 +
2854 grsecurity/grsec_pax.c | 47 +
2855 grsecurity/grsec_proc.c | 20 +
2856 grsecurity/grsec_ptrace.c | 30 +
2857 grsecurity/grsec_sig.c | 236 +
2858 grsecurity/grsec_sock.c | 244 +
2859 grsecurity/grsec_sysctl.c | 488 ++
2860 grsecurity/grsec_time.c | 16 +
2861 grsecurity/grsec_tpe.c | 78 +
2862 grsecurity/grsec_usb.c | 15 +
2863 grsecurity/grsum.c | 64 +
2864 include/drm/drmP.h | 23 +-
2865 include/linux/binfmts.h | 5 +-
2866 include/linux/capability.h | 13 +
2867 include/linux/compiler-gcc.h | 5 +
2868 include/linux/compiler.h | 8 +
2869 include/linux/cred.h | 8 +-
2870 include/linux/dcache.h | 5 +-
2871 include/linux/fs.h | 24 +-
2872 include/linux/fs_struct.h | 2 +-
2873 include/linux/fsnotify.h | 6 +
2874 include/linux/gracl.h | 342 +
2875 include/linux/gracl_compat.h | 156 +
2876 include/linux/gralloc.h | 9 +
2877 include/linux/grdefs.h | 140 +
2878 include/linux/grinternal.h | 230 +
2879 include/linux/grmsg.h | 118 +
2880 include/linux/grsecurity.h | 249 +
2881 include/linux/grsock.h | 19 +
2882 include/linux/ipc.h | 2 +-
2883 include/linux/ipc_namespace.h | 2 +-
2884 include/linux/kallsyms.h | 18 +-
2885 include/linux/kmod.h | 5 +
2886 include/linux/kobject.h | 2 +-
2887 include/linux/lsm_hooks.h | 4 +-
2888 include/linux/mm.h | 12 +
2889 include/linux/mm_types.h | 4 +-
2890 include/linux/module.h | 5 +-
2891 include/linux/mount.h | 2 +-
2892 include/linux/netfilter/xt_gradm.h | 9 +
2893 include/linux/path.h | 4 +-
2894 include/linux/perf_event.h | 13 +-
2895 include/linux/pid_namespace.h | 2 +-
2896 include/linux/printk.h | 2 +-
2897 include/linux/proc_fs.h | 22 +-
2898 include/linux/proc_ns.h | 2 +-
2899 include/linux/random.h | 2 +-
2900 include/linux/rbtree_augmented.h | 4 +-
2901 include/linux/scatterlist.h | 12 +-
2902 include/linux/sched.h | 110 +-
2903 include/linux/security.h | 3 +-
2904 include/linux/seq_file.h | 5 +
2905 include/linux/shm.h | 6 +-
2906 include/linux/skbuff.h | 3 +
2907 include/linux/slab.h | 9 -
2908 include/linux/sysctl.h | 8 +-
2909 include/linux/thread_info.h | 6 +-
2910 include/linux/tty.h | 2 +-
2911 include/linux/tty_driver.h | 4 +-
2912 include/linux/uidgid.h | 5 +
2913 include/linux/user_namespace.h | 2 +-
2914 include/linux/utsname.h | 2 +-
2915 include/linux/vermagic.h | 16 +-
2916 include/linux/vmalloc.h | 8 +
2917 include/net/af_unix.h | 2 +-
2918 include/net/ip.h | 2 +-
2919 include/net/neighbour.h | 2 +-
2920 include/net/net_namespace.h | 2 +-
2921 include/net/sock.h | 2 +-
2922 include/trace/events/fs.h | 53 +
2923 include/uapi/drm/i915_drm.h | 1 +
2924 include/uapi/linux/personality.h | 1 +
2925 init/Kconfig | 3 +-
2926 init/main.c | 35 +-
2927 ipc/mqueue.c | 1 +
2928 ipc/msg.c | 14 +-
2929 ipc/shm.c | 36 +-
2930 ipc/util.c | 14 +-
2931 kernel/auditsc.c | 2 +-
2932 kernel/bpf/syscall.c | 8 +-
2933 kernel/capability.c | 41 +-
2934 kernel/cgroup.c | 5 +-
2935 kernel/compat.c | 1 +
2936 kernel/configs.c | 11 +
2937 kernel/cred.c | 112 +-
2938 kernel/events/core.c | 14 +-
2939 kernel/exit.c | 10 +-
2940 kernel/fork.c | 86 +-
2941 kernel/futex.c | 4 +-
2942 kernel/kallsyms.c | 9 +
2943 kernel/kcmp.c | 4 +
2944 kernel/kexec.c | 2 +-
2945 kernel/kmod.c | 95 +-
2946 kernel/kprobes.c | 7 +-
2947 kernel/ksysfs.c | 2 +
2948 kernel/locking/lockdep_proc.c | 10 +-
2949 kernel/module.c | 108 +-
2950 kernel/panic.c | 4 +-
2951 kernel/pid.c | 19 +-
2952 kernel/power/Kconfig | 2 +
2953 kernel/printk/printk.c | 7 +-
2954 kernel/ptrace.c | 20 +-
2955 kernel/resource.c | 10 +
2956 kernel/sched/core.c | 11 +-
2957 kernel/signal.c | 37 +-
2958 kernel/sys.c | 64 +-
2959 kernel/sysctl.c | 180 +-
2960 kernel/taskstats.c | 6 +
2961 kernel/time/posix-timers.c | 8 +
2962 kernel/time/time.c | 5 +
2963 kernel/time/timekeeping.c | 3 +
2964 kernel/time/timer_list.c | 13 +-
2965 kernel/time/timer_stats.c | 10 +-
2966 kernel/trace/trace_syscalls.c | 8 +
2967 kernel/user_namespace.c | 15 +
2968 lib/Kconfig.debug | 7 +-
2969 lib/is_single_threaded.c | 3 +
2970 lib/list_debug.c | 65 +-
2971 lib/nlattr.c | 2 +
2972 lib/rbtree.c | 4 +-
2973 lib/vsprintf.c | 39 +-
2974 localversion-grsec | 1 +
2975 mm/Kconfig | 5 +-
2976 mm/Kconfig.debug | 1 +
2977 mm/filemap.c | 1 +
2978 mm/hugetlb.c | 8 +
2979 mm/kmemleak.c | 4 +-
2980 mm/memory.c | 2 +-
2981 mm/mempolicy.c | 12 +-
2982 mm/migrate.c | 3 +-
2983 mm/mlock.c | 6 +-
2984 mm/mmap.c | 93 +-
2985 mm/mprotect.c | 8 +
2986 mm/page_alloc.c | 2 +-
2987 mm/process_vm_access.c | 6 +
2988 mm/shmem.c | 2 +-
2989 mm/slab.c | 27 +-
2990 mm/slab_common.c | 2 +-
2991 mm/slob.c | 12 +
2992 mm/slub.c | 33 +-
2993 mm/util.c | 3 +
2994 mm/vmalloc.c | 80 +-
2995 mm/vmstat.c | 29 +-
2996 net/appletalk/atalk_proc.c | 2 +-
2997 net/atm/lec.c | 6 +-
2998 net/atm/mpoa_caches.c | 42 +-
2999 net/can/bcm.c | 2 +-
3000 net/can/proc.c | 2 +-
3001 net/core/dev_ioctl.c | 7 +-
3002 net/core/filter.c | 8 +-
3003 net/core/net-procfs.c | 17 +-
3004 net/core/pktgen.c | 2 +-
3005 net/core/sock.c | 3 +-
3006 net/core/sysctl_net_core.c | 2 +-
3007 net/decnet/dn_dev.c | 2 +-
3008 net/ipv4/devinet.c | 6 +-
3009 net/ipv4/inet_hashtables.c | 5 +
3010 net/ipv4/ip_input.c | 7 +
3011 net/ipv4/ip_sockglue.c | 3 +-
3012 net/ipv4/netfilter/ipt_CLUSTERIP.c | 2 +-
3013 net/ipv4/route.c | 6 +-
3014 net/ipv4/tcp_input.c | 4 +-
3015 net/ipv4/tcp_ipv4.c | 24 +-
3016 net/ipv4/tcp_minisocks.c | 9 +-
3017 net/ipv4/tcp_timer.c | 11 +
3018 net/ipv4/udp.c | 24 +
3019 net/ipv6/addrconf.c | 13 +-
3020 net/ipv6/proc.c | 2 +-
3021 net/ipv6/tcp_ipv6.c | 23 +-
3022 net/ipv6/udp.c | 7 +
3023 net/ipx/ipx_proc.c | 2 +-
3024 net/irda/irproc.c | 2 +-
3025 net/llc/llc_proc.c | 2 +-
3026 net/netfilter/Kconfig | 10 +
3027 net/netfilter/Makefile | 1 +
3028 net/netfilter/nf_conntrack_core.c | 8 +
3029 net/netfilter/xt_gradm.c | 51 +
3030 net/netfilter/xt_hashlimit.c | 4 +-
3031 net/netfilter/xt_recent.c | 2 +-
3032 net/socket.c | 71 +-
3033 net/sunrpc/cache.c | 2 +-
3034 net/sunrpc/stats.c | 2 +-
3035 net/sysctl_net.c | 2 +-
3036 net/unix/af_unix.c | 52 +-
3037 net/vmw_vsock/vmci_transport_notify.c | 30 +-
3038 net/vmw_vsock/vmci_transport_notify_qstate.c | 30 +-
3039 net/x25/sysctl_net_x25.c | 2 +-
3040 net/x25/x25_proc.c | 2 +-
3041 scripts/package/Makefile | 2 +-
3042 scripts/package/mkspec | 38 +-
3043 security/Kconfig | 370 +-
3044 security/apparmor/file.c | 4 +-
3045 security/apparmor/lsm.c | 8 +-
3046 security/commoncap.c | 29 +
3047 security/min_addr.c | 2 +
3048 security/tomoyo/file.c | 12 +-
3049 security/tomoyo/mount.c | 4 +
3050 security/tomoyo/tomoyo.c | 20 +-
3051 security/yama/Kconfig | 2 +-
3052 sound/synth/emux/emux_seq.c | 14 +-
3053 sound/usb/line6/driver.c | 40 +-
3054 sound/usb/line6/toneport.c | 12 +-
3055 tools/gcc/.gitignore | 1 +
3056 tools/gcc/Makefile | 12 +
3057 tools/gcc/gen-random-seed.sh | 8 +
3058 tools/gcc/randomize_layout_plugin.c | 930 +++
3059 tools/gcc/size_overflow_plugin/.gitignore | 1 +
3060 .../size_overflow_plugin/size_overflow_hash.data | 320 +-
3061 466 files changed, 32295 insertions(+), 2907 deletions(-)
3062
3063 commit fc19197ab5a42069863a7d88f1d41eb687697fe9
3064 Author: Brad Spengler <spender@grsecurity.net>
3065 Date: Sun Oct 4 20:43:51 2015 -0400
3066
3067 Update to pax-linux-4.2.3-test6.patch:
3068 - fixed a KERNEXEC/x86 and early ioremap regression, reported by spender
3069 - sanitized a few more top level page table entries on amd64
3070
3071 arch/x86/kernel/espfix_64.c | 2 +-
3072 arch/x86/kernel/head_64.S | 8 ++++----
3073 arch/x86/mm/ioremap.c | 6 +++++-
3074 3 files changed, 10 insertions(+), 6 deletions(-)
3075
3076 commit 23ac5415b9ef394e10b1516d3b314c742c6a3e59
3077 Author: Brad Spengler <spender@grsecurity.net>
3078 Date: Sun Oct 4 17:47:37 2015 -0400
3079
3080 Resync with pax-linux-4.2.3-test5.patch
3081
3082 arch/x86/include/asm/pgtable-2level.h | 20 ++++++++++++++++----
3083 arch/x86/include/asm/pgtable-3level.h | 8 ++++++++
3084 arch/x86/include/asm/pgtable_32.h | 2 --
3085 arch/x86/include/asm/pgtable_64.h | 20 ++++++++++++++++----
3086 arch/x86/mm/highmem_32.c | 2 --
3087 arch/x86/mm/init_64.c | 2 --
3088 arch/x86/mm/iomap_32.c | 4 ----
3089 arch/x86/mm/ioremap.c | 2 +-
3090 arch/x86/mm/pgtable.c | 2 --
3091 arch/x86/mm/pgtable_32.c | 3 ---
3092 mm/highmem.c | 6 +-----
3093 mm/vmalloc.c | 12 +-----------
3094 .../size_overflow_plugin/size_overflow_hash.data | 2 --
3095 13 files changed, 43 insertions(+), 42 deletions(-)
3096
3097 commit 25f4bed80f0d87783793a70d6c20080031a1fd38
3098 Author: Brad Spengler <spender@grsecurity.net>
3099 Date: Sun Oct 4 13:06:32 2015 -0400
3100
3101 Update to pax-linux-4.2.3-test5.patch:
3102 - forward port to 4.2.3
3103 - fixed integer sign conversion errors caused by ieee80211_tx_rate_control.max_rate_idx, caught by the size overflow plugin
3104 - fixed a bug in try_preserve_large_page that caused unnecessary large page split ups
3105 - increased the number of statically allocated kernel page tables under KERNEXEC/amd64
3106
3107 arch/x86/include/asm/pgtable-2level.h | 2 ++
3108 arch/x86/include/asm/pgtable-3level.h | 5 +++++
3109 arch/x86/include/asm/pgtable_64.h | 2 ++
3110 arch/x86/kernel/cpu/bugs_64.c | 2 ++
3111 arch/x86/kernel/head_64.S | 28 +++++++++++++++++++++++-----
3112 arch/x86/kernel/vmlinux.lds.S | 8 +++++++-
3113 arch/x86/mm/init.c | 18 ++++++++++++++----
3114 arch/x86/mm/ioremap.c | 8 ++++++--
3115 arch/x86/mm/pageattr.c | 5 ++---
3116 arch/x86/mm/pgtable.c | 2 ++
3117 include/asm-generic/sections.h | 1 +
3118 include/asm-generic/vmlinux.lds.h | 2 ++
3119 include/net/mac80211.h | 2 +-
3120 mm/vmalloc.c | 7 ++++++-
3121 14 files changed, 75 insertions(+), 17 deletions(-)
3122
3123 commit a2dce7cb2e3c389b7ef6c76c15ccdbf506007ddd
3124 Merge: d113ff6 fcba09f
3125 Author: Brad Spengler <spender@grsecurity.net>
3126 Date: Sat Oct 3 09:12:31 2015 -0400
3127
3128 Merge branch 'linux-4.2.y' into pax-test
3129
3130 commit d113ff6e7835e89e2b954503b1a100750ddb43c7
3131 Author: Brad Spengler <spender@grsecurity.net>
3132 Date: Thu Oct 1 21:34:12 2015 -0400
3133
3134 Update to pax-linux-4.2.2-test5.patch:
3135 - fixed a RANDKSTACK regression, reported by spender
3136 - fixed some more compiler warnings due to the ktla_ktva changes, reported by spender
3137
3138 arch/x86/entry/entry_64.S | 2 ++
3139 arch/x86/kernel/process.c | 1 +
3140 drivers/hv/hv.c | 2 +-
3141 drivers/lguest/x86/core.c | 4 ++--
3142 drivers/misc/kgdbts.c | 4 ++--
3143 drivers/video/fbdev/uvesafb.c | 4 ++--
3144 fs/binfmt_elf_fdpic.c | 2 +-
3145 7 files changed, 11 insertions(+), 8 deletions(-)
3146
3147 commit 149e32a4dddfae46e2490f011870cd4492ca946c
3148 Author: Brad Spengler <spender@grsecurity.net>
3149 Date: Tue Sep 29 16:31:50 2015 -0400
3150
3151 Update to pax-linux-4.2.2-test4.patch:
3152 - fixed a few compiler warnings caused by the recently reworked ktla_ktva/ktva_ktla functions, reported by spender
3153 - Emese fixed a size overflow false positive in the IDE driver, reported by spender
3154
3155 arch/x86/lib/insn.c | 2 +-
3156 drivers/ide/ide-disk.c | 2 +-
3157 drivers/video/fbdev/vesafb.c | 4 ++--
3158 fs/binfmt_elf.c | 2 +-
3159 .../size_overflow_plugin/size_overflow_plugin.c | 4 ++--
3160 .../size_overflow_transform_core.c | 11 +++++------
3161 6 files changed, 12 insertions(+), 13 deletions(-)
3162
3163 commit 02c41b848fbaddf82ce98690b23d3d85a94d55fe
3164 Merge: b8b2f5b 7659db3
3165 Author: Brad Spengler <spender@grsecurity.net>
3166 Date: Tue Sep 29 15:50:40 2015 -0400
3167
3168 Merge branch 'linux-4.2.y' into pax-test
3169
3170 Conflicts:
3171 fs/nfs/inode.c
3172
3173 commit b8b2f5bc93ced0ca9a8366d0f3fa09abd1ca7ac6
3174 Author: Brad Spengler <spender@grsecurity.net>
3175 Date: Tue Sep 29 09:13:54 2015 -0400
3176
3177 Initial import of pax-linux-4.2.1-test3.patch
3178
3179 Documentation/dontdiff | 47 +-
3180 Documentation/kbuild/makefiles.txt | 39 +-
3181 Documentation/kernel-parameters.txt | 28 +
3182 Makefile | 108 +-
3183 arch/alpha/include/asm/atomic.h | 10 +
3184 arch/alpha/include/asm/elf.h | 7 +
3185 arch/alpha/include/asm/pgalloc.h | 6 +
3186 arch/alpha/include/asm/pgtable.h | 11 +
3187 arch/alpha/kernel/module.c | 2 +-
3188 arch/alpha/kernel/osf_sys.c | 8 +-
3189 arch/alpha/mm/fault.c | 141 +-
3190 arch/arm/Kconfig | 2 +-
3191 arch/arm/include/asm/atomic.h | 319 +-
3192 arch/arm/include/asm/barrier.h | 2 +-
3193 arch/arm/include/asm/cache.h | 5 +-
3194 arch/arm/include/asm/cacheflush.h | 2 +-
3195 arch/arm/include/asm/checksum.h | 14 +-
3196 arch/arm/include/asm/cmpxchg.h | 4 +
3197 arch/arm/include/asm/cpuidle.h | 2 +-
3198 arch/arm/include/asm/domain.h | 33 +-
3199 arch/arm/include/asm/elf.h | 9 +-
3200 arch/arm/include/asm/fncpy.h | 2 +
3201 arch/arm/include/asm/futex.h | 10 +
3202 arch/arm/include/asm/kmap_types.h | 2 +-
3203 arch/arm/include/asm/mach/dma.h | 2 +-
3204 arch/arm/include/asm/mach/map.h | 16 +-
3205 arch/arm/include/asm/outercache.h | 2 +-
3206 arch/arm/include/asm/page.h | 3 +-
3207 arch/arm/include/asm/pgalloc.h | 20 +
3208 arch/arm/include/asm/pgtable-2level-hwdef.h | 4 +-
3209 arch/arm/include/asm/pgtable-2level.h | 3 +
3210 arch/arm/include/asm/pgtable-3level.h | 3 +
3211 arch/arm/include/asm/pgtable.h | 54 +-
3212 arch/arm/include/asm/psci.h | 2 +-
3213 arch/arm/include/asm/smp.h | 2 +-
3214 arch/arm/include/asm/thread_info.h | 6 +-
3215 arch/arm/include/asm/tls.h | 3 +
3216 arch/arm/include/asm/uaccess.h | 100 +-
3217 arch/arm/include/uapi/asm/ptrace.h | 2 +-
3218 arch/arm/kernel/armksyms.c | 8 +-
3219 arch/arm/kernel/cpuidle.c | 2 +-
3220 arch/arm/kernel/entry-armv.S | 110 +-
3221 arch/arm/kernel/entry-common.S | 40 +-
3222 arch/arm/kernel/entry-header.S | 60 +
3223 arch/arm/kernel/fiq.c | 3 +
3224 arch/arm/kernel/head.S | 2 +-
3225 arch/arm/kernel/module.c | 38 +-
3226 arch/arm/kernel/patch.c | 2 +
3227 arch/arm/kernel/process.c | 90 +-
3228 arch/arm/kernel/psci.c | 2 +-
3229 arch/arm/kernel/reboot.c | 1 +
3230 arch/arm/kernel/setup.c | 20 +-
3231 arch/arm/kernel/signal.c | 35 +-
3232 arch/arm/kernel/smp.c | 2 +-
3233 arch/arm/kernel/tcm.c | 4 +-
3234 arch/arm/kernel/traps.c | 6 +-
3235 arch/arm/kernel/vmlinux.lds.S | 6 +-
3236 arch/arm/kvm/arm.c | 10 +-
3237 arch/arm/lib/clear_user.S | 6 +-
3238 arch/arm/lib/copy_from_user.S | 6 +-
3239 arch/arm/lib/copy_page.S | 1 +
3240 arch/arm/lib/copy_to_user.S | 6 +-
3241 arch/arm/lib/csumpartialcopyuser.S | 4 +-
3242 arch/arm/lib/delay.c | 2 +-
3243 arch/arm/lib/uaccess_with_memcpy.c | 8 +-
3244 arch/arm/mach-exynos/suspend.c | 6 +-
3245 arch/arm/mach-mvebu/coherency.c | 4 +-
3246 arch/arm/mach-omap2/board-n8x0.c | 2 +-
3247 arch/arm/mach-omap2/omap-mpuss-lowpower.c | 4 +-
3248 arch/arm/mach-omap2/omap-smp.c | 1 +
3249 arch/arm/mach-omap2/omap-wakeupgen.c | 2 +-
3250 arch/arm/mach-omap2/omap_device.c | 4 +-
3251 arch/arm/mach-omap2/omap_device.h | 4 +-
3252 arch/arm/mach-omap2/omap_hwmod.c | 4 +-
3253 arch/arm/mach-omap2/powerdomains43xx_data.c | 5 +-
3254 arch/arm/mach-omap2/wd_timer.c | 6 +-
3255 arch/arm/mach-shmobile/platsmp-apmu.c | 5 +-
3256 arch/arm/mach-shmobile/pm-r8a7740.c | 5 +-
3257 arch/arm/mach-shmobile/pm-sh73a0.c | 5 +-
3258 arch/arm/mach-tegra/cpuidle-tegra20.c | 2 +-
3259 arch/arm/mach-tegra/irq.c | 1 +
3260 arch/arm/mach-ux500/pm.c | 1 +
3261 arch/arm/mach-zynq/platsmp.c | 1 +
3262 arch/arm/mm/Kconfig | 6 +-
3263 arch/arm/mm/alignment.c | 8 +
3264 arch/arm/mm/cache-l2x0.c | 2 +-
3265 arch/arm/mm/context.c | 10 +-
3266 arch/arm/mm/fault.c | 146 +
3267 arch/arm/mm/fault.h | 12 +
3268 arch/arm/mm/init.c | 39 +
3269 arch/arm/mm/ioremap.c | 4 +-
3270 arch/arm/mm/mmap.c | 30 +-
3271 arch/arm/mm/mmu.c | 182 +-
3272 arch/arm/net/bpf_jit_32.c | 3 +
3273 arch/arm/plat-iop/setup.c | 2 +-
3274 arch/arm/plat-omap/sram.c | 2 +
3275 arch/arm64/include/asm/atomic.h | 10 +
3276 arch/arm64/include/asm/barrier.h | 2 +-
3277 arch/arm64/include/asm/percpu.h | 8 +-
3278 arch/arm64/include/asm/pgalloc.h | 5 +
3279 arch/arm64/include/asm/uaccess.h | 1 +
3280 arch/arm64/mm/dma-mapping.c | 2 +-
3281 arch/avr32/include/asm/elf.h | 8 +-
3282 arch/avr32/include/asm/kmap_types.h | 4 +-
3283 arch/avr32/mm/fault.c | 27 +
3284 arch/frv/include/asm/atomic.h | 10 +
3285 arch/frv/include/asm/kmap_types.h | 2 +-
3286 arch/frv/mm/elf-fdpic.c | 3 +-
3287 arch/ia64/Makefile | 1 +
3288 arch/ia64/include/asm/atomic.h | 10 +
3289 arch/ia64/include/asm/barrier.h | 2 +-
3290 arch/ia64/include/asm/elf.h | 7 +
3291 arch/ia64/include/asm/pgalloc.h | 12 +
3292 arch/ia64/include/asm/pgtable.h | 13 +-
3293 arch/ia64/include/asm/spinlock.h | 2 +-
3294 arch/ia64/include/asm/uaccess.h | 27 +-
3295 arch/ia64/kernel/module.c | 45 +-
3296 arch/ia64/kernel/palinfo.c | 2 +-
3297 arch/ia64/kernel/sys_ia64.c | 7 +
3298 arch/ia64/kernel/vmlinux.lds.S | 2 +-
3299 arch/ia64/mm/fault.c | 32 +-
3300 arch/ia64/mm/init.c | 15 +-
3301 arch/m32r/lib/usercopy.c | 6 +
3302 arch/metag/include/asm/barrier.h | 2 +-
3303 arch/mips/cavium-octeon/dma-octeon.c | 2 +-
3304 arch/mips/include/asm/atomic.h | 355 +-
3305 arch/mips/include/asm/barrier.h | 2 +-
3306 arch/mips/include/asm/elf.h | 7 +
3307 arch/mips/include/asm/exec.h | 2 +-
3308 arch/mips/include/asm/hw_irq.h | 2 +-
3309 arch/mips/include/asm/local.h | 57 +
3310 arch/mips/include/asm/page.h | 2 +-
3311 arch/mips/include/asm/pgalloc.h | 5 +
3312 arch/mips/include/asm/pgtable.h | 3 +
3313 arch/mips/include/asm/uaccess.h | 1 +
3314 arch/mips/kernel/binfmt_elfn32.c | 7 +
3315 arch/mips/kernel/binfmt_elfo32.c | 7 +
3316 arch/mips/kernel/i8259.c | 2 +-
3317 arch/mips/kernel/irq-gt641xx.c | 2 +-
3318 arch/mips/kernel/irq.c | 6 +-
3319 arch/mips/kernel/pm-cps.c | 2 +-
3320 arch/mips/kernel/process.c | 12 -
3321 arch/mips/kernel/sync-r4k.c | 24 +-
3322 arch/mips/kernel/traps.c | 13 +-
3323 arch/mips/kvm/mips.c | 2 +-
3324 arch/mips/mm/fault.c | 25 +
3325 arch/mips/mm/mmap.c | 51 +-
3326 arch/mips/sgi-ip27/ip27-nmi.c | 6 +-
3327 arch/mips/sni/rm200.c | 2 +-
3328 arch/mips/vr41xx/common/icu.c | 2 +-
3329 arch/mips/vr41xx/common/irq.c | 4 +-
3330 arch/parisc/include/asm/atomic.h | 10 +
3331 arch/parisc/include/asm/elf.h | 7 +
3332 arch/parisc/include/asm/pgalloc.h | 6 +
3333 arch/parisc/include/asm/pgtable.h | 11 +
3334 arch/parisc/include/asm/uaccess.h | 4 +-
3335 arch/parisc/kernel/module.c | 50 +-
3336 arch/parisc/kernel/sys_parisc.c | 15 +
3337 arch/parisc/kernel/traps.c | 4 +-
3338 arch/parisc/mm/fault.c | 140 +-
3339 arch/powerpc/include/asm/atomic.h | 329 +-
3340 arch/powerpc/include/asm/barrier.h | 2 +-
3341 arch/powerpc/include/asm/elf.h | 12 +
3342 arch/powerpc/include/asm/exec.h | 2 +-
3343 arch/powerpc/include/asm/kmap_types.h | 2 +-
3344 arch/powerpc/include/asm/local.h | 46 +
3345 arch/powerpc/include/asm/mman.h | 2 +-
3346 arch/powerpc/include/asm/page.h | 8 +-
3347 arch/powerpc/include/asm/page_64.h | 7 +-
3348 arch/powerpc/include/asm/pgalloc-64.h | 7 +
3349 arch/powerpc/include/asm/pgtable.h | 1 +
3350 arch/powerpc/include/asm/pte-hash32.h | 1 +
3351 arch/powerpc/include/asm/reg.h | 1 +
3352 arch/powerpc/include/asm/smp.h | 2 +-
3353 arch/powerpc/include/asm/spinlock.h | 42 +-
3354 arch/powerpc/include/asm/uaccess.h | 141 +-
3355 arch/powerpc/kernel/Makefile | 5 +
3356 arch/powerpc/kernel/exceptions-64e.S | 4 +-
3357 arch/powerpc/kernel/exceptions-64s.S | 2 +-
3358 arch/powerpc/kernel/module_32.c | 15 +-
3359 arch/powerpc/kernel/process.c | 46 -
3360 arch/powerpc/kernel/signal_32.c | 2 +-
3361 arch/powerpc/kernel/signal_64.c | 2 +-
3362 arch/powerpc/kernel/traps.c | 21 +
3363 arch/powerpc/kernel/vdso.c | 5 +-
3364 arch/powerpc/kvm/powerpc.c | 2 +-
3365 arch/powerpc/lib/usercopy_64.c | 18 -
3366 arch/powerpc/mm/fault.c | 56 +-
3367 arch/powerpc/mm/mmap.c | 16 +
3368 arch/powerpc/mm/slice.c | 13 +-
3369 arch/powerpc/platforms/cell/spufs/file.c | 4 +-
3370 arch/s390/include/asm/atomic.h | 10 +
3371 arch/s390/include/asm/barrier.h | 2 +-
3372 arch/s390/include/asm/elf.h | 7 +
3373 arch/s390/include/asm/exec.h | 2 +-
3374 arch/s390/include/asm/uaccess.h | 13 +-
3375 arch/s390/kernel/module.c | 22 +-
3376 arch/s390/kernel/process.c | 24 -
3377 arch/s390/mm/mmap.c | 16 +
3378 arch/score/include/asm/exec.h | 2 +-
3379 arch/score/kernel/process.c | 5 -
3380 arch/sh/mm/mmap.c | 22 +-
3381 arch/sparc/include/asm/atomic_64.h | 110 +-
3382 arch/sparc/include/asm/barrier_64.h | 2 +-
3383 arch/sparc/include/asm/cache.h | 2 +-
3384 arch/sparc/include/asm/elf_32.h | 7 +
3385 arch/sparc/include/asm/elf_64.h | 7 +
3386 arch/sparc/include/asm/pgalloc_32.h | 1 +
3387 arch/sparc/include/asm/pgalloc_64.h | 1 +
3388 arch/sparc/include/asm/pgtable.h | 4 +
3389 arch/sparc/include/asm/pgtable_32.h | 15 +-
3390 arch/sparc/include/asm/pgtsrmmu.h | 5 +
3391 arch/sparc/include/asm/setup.h | 4 +-
3392 arch/sparc/include/asm/spinlock_64.h | 35 +-
3393 arch/sparc/include/asm/thread_info_32.h | 1 +
3394 arch/sparc/include/asm/thread_info_64.h | 2 +
3395 arch/sparc/include/asm/uaccess.h | 1 +
3396 arch/sparc/include/asm/uaccess_32.h | 28 +-
3397 arch/sparc/include/asm/uaccess_64.h | 24 +-
3398 arch/sparc/kernel/Makefile | 2 +-
3399 arch/sparc/kernel/prom_common.c | 2 +-
3400 arch/sparc/kernel/smp_64.c | 8 +-
3401 arch/sparc/kernel/sys_sparc_32.c | 2 +-
3402 arch/sparc/kernel/sys_sparc_64.c | 52 +-
3403 arch/sparc/kernel/traps_64.c | 27 +-
3404 arch/sparc/lib/Makefile | 2 +-
3405 arch/sparc/lib/atomic_64.S | 57 +-
3406 arch/sparc/lib/ksyms.c | 6 +-
3407 arch/sparc/mm/Makefile | 2 +-
3408 arch/sparc/mm/fault_32.c | 292 +
3409 arch/sparc/mm/fault_64.c | 486 +
3410 arch/sparc/mm/hugetlbpage.c | 22 +-
3411 arch/sparc/mm/init_64.c | 10 +-
3412 arch/tile/include/asm/atomic_64.h | 10 +
3413 arch/tile/include/asm/uaccess.h | 4 +-
3414 arch/um/Makefile | 4 +
3415 arch/um/include/asm/kmap_types.h | 2 +-
3416 arch/um/include/asm/page.h | 3 +
3417 arch/um/include/asm/pgtable-3level.h | 1 +
3418 arch/um/kernel/process.c | 16 -
3419 arch/x86/Kconfig | 15 +-
3420 arch/x86/Kconfig.cpu | 6 +-
3421 arch/x86/Kconfig.debug | 4 +-
3422 arch/x86/Makefile | 13 +-
3423 arch/x86/boot/Makefile | 3 +
3424 arch/x86/boot/bitops.h | 4 +-
3425 arch/x86/boot/boot.h | 2 +-
3426 arch/x86/boot/compressed/Makefile | 3 +
3427 arch/x86/boot/compressed/efi_stub_32.S | 16 +-
3428 arch/x86/boot/compressed/efi_thunk_64.S | 4 +-
3429 arch/x86/boot/compressed/head_32.S | 4 +-
3430 arch/x86/boot/compressed/head_64.S | 12 +-
3431 arch/x86/boot/compressed/misc.c | 11 +-
3432 arch/x86/boot/cpucheck.c | 16 +-
3433 arch/x86/boot/header.S | 6 +-
3434 arch/x86/boot/memory.c | 2 +-
3435 arch/x86/boot/video-vesa.c | 1 +
3436 arch/x86/boot/video.c | 2 +-
3437 arch/x86/crypto/aes-x86_64-asm_64.S | 4 +
3438 arch/x86/crypto/aesni-intel_asm.S | 106 +-
3439 arch/x86/crypto/blowfish-x86_64-asm_64.S | 7 +
3440 arch/x86/crypto/camellia-aesni-avx-asm_64.S | 10 +
3441 arch/x86/crypto/camellia-aesni-avx2-asm_64.S | 10 +
3442 arch/x86/crypto/camellia-x86_64-asm_64.S | 7 +
3443 arch/x86/crypto/cast5-avx-x86_64-asm_64.S | 51 +-
3444 arch/x86/crypto/cast6-avx-x86_64-asm_64.S | 25 +-
3445 arch/x86/crypto/crc32c-pcl-intel-asm_64.S | 4 +-
3446 arch/x86/crypto/ghash-clmulni-intel_asm.S | 4 +
3447 arch/x86/crypto/salsa20-x86_64-asm_64.S | 4 +
3448 arch/x86/crypto/serpent-avx-x86_64-asm_64.S | 9 +
3449 arch/x86/crypto/serpent-avx2-asm_64.S | 9 +
3450 arch/x86/crypto/serpent-sse2-x86_64-asm_64.S | 4 +
3451 arch/x86/crypto/sha1_ssse3_asm.S | 10 +-
3452 arch/x86/crypto/sha256-avx-asm.S | 2 +
3453 arch/x86/crypto/sha256-avx2-asm.S | 2 +
3454 arch/x86/crypto/sha256-ssse3-asm.S | 2 +
3455 arch/x86/crypto/sha512-avx-asm.S | 2 +
3456 arch/x86/crypto/sha512-avx2-asm.S | 2 +
3457 arch/x86/crypto/sha512-ssse3-asm.S | 2 +
3458 arch/x86/crypto/twofish-avx-x86_64-asm_64.S | 25 +-
3459 arch/x86/crypto/twofish-x86_64-asm_64-3way.S | 4 +
3460 arch/x86/crypto/twofish-x86_64-asm_64.S | 3 +
3461 arch/x86/entry/calling.h | 92 +-
3462 arch/x86/entry/entry_32.S | 360 +-
3463 arch/x86/entry/entry_64.S | 636 +-
3464 arch/x86/entry/entry_64_compat.S | 159 +-
3465 arch/x86/entry/thunk_64.S | 2 +
3466 arch/x86/entry/vdso/Makefile | 2 +-
3467 arch/x86/entry/vdso/vdso2c.h | 4 +-
3468 arch/x86/entry/vdso/vma.c | 41 +-
3469 arch/x86/entry/vsyscall/vsyscall_64.c | 16 +-
3470 arch/x86/ia32/ia32_signal.c | 23 +-
3471 arch/x86/ia32/sys_ia32.c | 42 +-
3472 arch/x86/include/asm/alternative-asm.h | 43 +-
3473 arch/x86/include/asm/alternative.h | 4 +-
3474 arch/x86/include/asm/apic.h | 2 +-
3475 arch/x86/include/asm/apm.h | 4 +-
3476 arch/x86/include/asm/atomic.h | 269 +-
3477 arch/x86/include/asm/atomic64_32.h | 100 +
3478 arch/x86/include/asm/atomic64_64.h | 164 +-
3479 arch/x86/include/asm/barrier.h | 4 +-
3480 arch/x86/include/asm/bitops.h | 18 +-
3481 arch/x86/include/asm/boot.h | 2 +-
3482 arch/x86/include/asm/cache.h | 5 +-
3483 arch/x86/include/asm/checksum_32.h | 12 +-
3484 arch/x86/include/asm/cmpxchg.h | 39 +
3485 arch/x86/include/asm/compat.h | 2 +-
3486 arch/x86/include/asm/cpufeature.h | 17 +-
3487 arch/x86/include/asm/desc.h | 78 +-
3488 arch/x86/include/asm/desc_defs.h | 6 +
3489 arch/x86/include/asm/div64.h | 2 +-
3490 arch/x86/include/asm/elf.h | 33 +-
3491 arch/x86/include/asm/emergency-restart.h | 2 +-
3492 arch/x86/include/asm/fpu/internal.h | 36 +-
3493 arch/x86/include/asm/fpu/types.h | 5 +-
3494 arch/x86/include/asm/futex.h | 14 +-
3495 arch/x86/include/asm/hw_irq.h | 4 +-
3496 arch/x86/include/asm/i8259.h | 2 +-
3497 arch/x86/include/asm/io.h | 22 +-
3498 arch/x86/include/asm/irqflags.h | 5 +
3499 arch/x86/include/asm/kprobes.h | 9 +-
3500 arch/x86/include/asm/local.h | 106 +-
3501 arch/x86/include/asm/mman.h | 15 +
3502 arch/x86/include/asm/mmu.h | 14 +-
3503 arch/x86/include/asm/mmu_context.h | 138 +-
3504 arch/x86/include/asm/module.h | 17 +-
3505 arch/x86/include/asm/nmi.h | 19 +-
3506 arch/x86/include/asm/page.h | 1 +
3507 arch/x86/include/asm/page_32.h | 12 +-
3508 arch/x86/include/asm/page_64.h | 14 +-
3509 arch/x86/include/asm/paravirt.h | 46 +-
3510 arch/x86/include/asm/paravirt_types.h | 15 +-
3511 arch/x86/include/asm/pgalloc.h | 23 +
3512 arch/x86/include/asm/pgtable-2level.h | 2 +
3513 arch/x86/include/asm/pgtable-3level.h | 4 +
3514 arch/x86/include/asm/pgtable.h | 128 +-
3515 arch/x86/include/asm/pgtable_32.h | 14 +-
3516 arch/x86/include/asm/pgtable_32_types.h | 24 +-
3517 arch/x86/include/asm/pgtable_64.h | 22 +-
3518 arch/x86/include/asm/pgtable_64_types.h | 5 +
3519 arch/x86/include/asm/pgtable_types.h | 26 +-
3520 arch/x86/include/asm/preempt.h | 2 +-
3521 arch/x86/include/asm/processor.h | 59 +-
3522 arch/x86/include/asm/ptrace.h | 21 +-
3523 arch/x86/include/asm/qrwlock.h | 4 +-
3524 arch/x86/include/asm/realmode.h | 4 +-
3525 arch/x86/include/asm/reboot.h | 10 +-
3526 arch/x86/include/asm/rmwcc.h | 84 +-
3527 arch/x86/include/asm/rwsem.h | 60 +-
3528 arch/x86/include/asm/segment.h | 27 +-
3529 arch/x86/include/asm/smap.h | 43 +
3530 arch/x86/include/asm/smp.h | 14 +-
3531 arch/x86/include/asm/stackprotector.h | 4 +-
3532 arch/x86/include/asm/stacktrace.h | 32 +-
3533 arch/x86/include/asm/switch_to.h | 4 +-
3534 arch/x86/include/asm/sys_ia32.h | 6 +-
3535 arch/x86/include/asm/thread_info.h | 27 +-
3536 arch/x86/include/asm/tlbflush.h | 77 +-
3537 arch/x86/include/asm/uaccess.h | 192 +-
3538 arch/x86/include/asm/uaccess_32.h | 28 +-
3539 arch/x86/include/asm/uaccess_64.h | 169 +-
3540 arch/x86/include/asm/word-at-a-time.h | 2 +-
3541 arch/x86/include/asm/x86_init.h | 10 +-
3542 arch/x86/include/asm/xen/page.h | 2 +-
3543 arch/x86/include/uapi/asm/e820.h | 2 +-
3544 arch/x86/kernel/Makefile | 2 +-
3545 arch/x86/kernel/acpi/boot.c | 4 +-
3546 arch/x86/kernel/acpi/sleep.c | 4 +
3547 arch/x86/kernel/acpi/wakeup_32.S | 6 +-
3548 arch/x86/kernel/alternative.c | 124 +-
3549 arch/x86/kernel/apic/apic.c | 4 +-
3550 arch/x86/kernel/apic/apic_flat_64.c | 4 +-
3551 arch/x86/kernel/apic/apic_noop.c | 2 +-
3552 arch/x86/kernel/apic/bigsmp_32.c | 2 +-
3553 arch/x86/kernel/apic/io_apic.c | 8 +-
3554 arch/x86/kernel/apic/msi.c | 2 +-
3555 arch/x86/kernel/apic/probe_32.c | 2 +-
3556 arch/x86/kernel/apic/vector.c | 4 +-
3557 arch/x86/kernel/apic/x2apic_cluster.c | 4 +-
3558 arch/x86/kernel/apic/x2apic_phys.c | 2 +-
3559 arch/x86/kernel/apic/x2apic_uv_x.c | 2 +-
3560 arch/x86/kernel/apm_32.c | 21 +-
3561 arch/x86/kernel/asm-offsets.c | 20 +
3562 arch/x86/kernel/asm-offsets_64.c | 1 +
3563 arch/x86/kernel/cpu/Makefile | 4 -
3564 arch/x86/kernel/cpu/amd.c | 2 +-
3565 arch/x86/kernel/cpu/common.c | 202 +-
3566 arch/x86/kernel/cpu/intel_cacheinfo.c | 14 +-
3567 arch/x86/kernel/cpu/mcheck/mce.c | 31 +-
3568 arch/x86/kernel/cpu/mcheck/p5.c | 3 +
3569 arch/x86/kernel/cpu/mcheck/winchip.c | 3 +
3570 arch/x86/kernel/cpu/microcode/core.c | 2 +-
3571 arch/x86/kernel/cpu/microcode/intel.c | 4 +-
3572 arch/x86/kernel/cpu/mtrr/main.c | 2 +-
3573 arch/x86/kernel/cpu/mtrr/mtrr.h | 2 +-
3574 arch/x86/kernel/cpu/perf_event.c | 10 +-
3575 arch/x86/kernel/cpu/perf_event_amd_iommu.c | 2 +-
3576 arch/x86/kernel/cpu/perf_event_intel.c | 6 +-
3577 arch/x86/kernel/cpu/perf_event_intel_bts.c | 6 +-
3578 arch/x86/kernel/cpu/perf_event_intel_cqm.c | 4 +-
3579 arch/x86/kernel/cpu/perf_event_intel_pt.c | 44 +-
3580 arch/x86/kernel/cpu/perf_event_intel_rapl.c | 2 +-
3581 arch/x86/kernel/cpu/perf_event_intel_uncore.c | 2 +-
3582 arch/x86/kernel/cpu/perf_event_intel_uncore.h | 2 +-
3583 arch/x86/kernel/cpuid.c | 2 +-
3584 arch/x86/kernel/crash_dump_64.c | 2 +-
3585 arch/x86/kernel/doublefault.c | 8 +-
3586 arch/x86/kernel/dumpstack.c | 24 +-
3587 arch/x86/kernel/dumpstack_32.c | 25 +-
3588 arch/x86/kernel/dumpstack_64.c | 62 +-
3589 arch/x86/kernel/e820.c | 4 +-
3590 arch/x86/kernel/early_printk.c | 1 +
3591 arch/x86/kernel/espfix_64.c | 13 +-
3592 arch/x86/kernel/fpu/core.c | 22 +-
3593 arch/x86/kernel/fpu/init.c | 8 +-
3594 arch/x86/kernel/fpu/regset.c | 22 +-
3595 arch/x86/kernel/fpu/signal.c | 20 +-
3596 arch/x86/kernel/fpu/xstate.c | 8 +-
3597 arch/x86/kernel/ftrace.c | 18 +-
3598 arch/x86/kernel/head64.c | 14 +-
3599 arch/x86/kernel/head_32.S | 235 +-
3600 arch/x86/kernel/head_64.S | 149 +-
3601 arch/x86/kernel/i386_ksyms_32.c | 12 +
3602 arch/x86/kernel/i8259.c | 10 +-
3603 arch/x86/kernel/io_delay.c | 2 +-
3604 arch/x86/kernel/ioport.c | 2 +-
3605 arch/x86/kernel/irq.c | 8 +-
3606 arch/x86/kernel/irq_32.c | 45 +-
3607 arch/x86/kernel/jump_label.c | 10 +-
3608 arch/x86/kernel/kgdb.c | 21 +-
3609 arch/x86/kernel/kprobes/core.c | 28 +-
3610 arch/x86/kernel/kprobes/opt.c | 16 +-
3611 arch/x86/kernel/ksysfs.c | 2 +-
3612 arch/x86/kernel/ldt.c | 25 +
3613 arch/x86/kernel/livepatch.c | 12 +-
3614 arch/x86/kernel/machine_kexec_32.c | 6 +-
3615 arch/x86/kernel/mcount_64.S | 19 +-
3616 arch/x86/kernel/module.c | 78 +-
3617 arch/x86/kernel/msr.c | 2 +-
3618 arch/x86/kernel/nmi.c | 34 +-
3619 arch/x86/kernel/nmi_selftest.c | 4 +-
3620 arch/x86/kernel/paravirt-spinlocks.c | 2 +-
3621 arch/x86/kernel/paravirt.c | 45 +-
3622 arch/x86/kernel/paravirt_patch_64.c | 8 +
3623 arch/x86/kernel/pci-calgary_64.c | 2 +-
3624 arch/x86/kernel/pci-iommu_table.c | 2 +-
3625 arch/x86/kernel/pci-swiotlb.c | 2 +-
3626 arch/x86/kernel/process.c | 71 +-
3627 arch/x86/kernel/process_32.c | 30 +-
3628 arch/x86/kernel/process_64.c | 19 +-
3629 arch/x86/kernel/ptrace.c | 20 +-
3630 arch/x86/kernel/pvclock.c | 8 +-
3631 arch/x86/kernel/reboot.c | 44 +-
3632 arch/x86/kernel/reboot_fixups_32.c | 2 +-
3633 arch/x86/kernel/relocate_kernel_64.S | 3 +-
3634 arch/x86/kernel/setup.c | 29 +-
3635 arch/x86/kernel/setup_percpu.c | 29 +-
3636 arch/x86/kernel/signal.c | 17 +-
3637 arch/x86/kernel/smp.c | 2 +-
3638 arch/x86/kernel/smpboot.c | 29 +-
3639 arch/x86/kernel/step.c | 6 +-
3640 arch/x86/kernel/sys_i386_32.c | 184 +
3641 arch/x86/kernel/sys_x86_64.c | 22 +-
3642 arch/x86/kernel/tboot.c | 14 +-
3643 arch/x86/kernel/time.c | 8 +-
3644 arch/x86/kernel/tls.c | 7 +-
3645 arch/x86/kernel/tracepoint.c | 4 +-
3646 arch/x86/kernel/traps.c | 53 +-
3647 arch/x86/kernel/tsc.c | 2 +-
3648 arch/x86/kernel/uprobes.c | 2 +-
3649 arch/x86/kernel/vm86_32.c | 6 +-
3650 arch/x86/kernel/vmlinux.lds.S | 147 +-
3651 arch/x86/kernel/x8664_ksyms_64.c | 6 +-
3652 arch/x86/kernel/x86_init.c | 6 +-
3653 arch/x86/kvm/cpuid.c | 21 +-
3654 arch/x86/kvm/emulate.c | 2 +-
3655 arch/x86/kvm/lapic.c | 2 +-
3656 arch/x86/kvm/paging_tmpl.h | 2 +-
3657 arch/x86/kvm/svm.c | 8 +
3658 arch/x86/kvm/vmx.c | 82 +-
3659 arch/x86/kvm/x86.c | 44 +-
3660 arch/x86/lguest/boot.c | 3 +-
3661 arch/x86/lib/atomic64_386_32.S | 164 +
3662 arch/x86/lib/atomic64_cx8_32.S | 98 +-
3663 arch/x86/lib/checksum_32.S | 97 +-
3664 arch/x86/lib/clear_page_64.S | 3 +
3665 arch/x86/lib/cmpxchg16b_emu.S | 3 +
3666 arch/x86/lib/copy_page_64.S | 14 +-
3667 arch/x86/lib/copy_user_64.S | 66 +-
3668 arch/x86/lib/csum-copy_64.S | 14 +-
3669 arch/x86/lib/csum-wrappers_64.c | 8 +-
3670 arch/x86/lib/getuser.S | 74 +-
3671 arch/x86/lib/insn.c | 8 +-
3672 arch/x86/lib/iomap_copy_64.S | 2 +
3673 arch/x86/lib/memcpy_64.S | 6 +
3674 arch/x86/lib/memmove_64.S | 3 +-
3675 arch/x86/lib/memset_64.S | 3 +
3676 arch/x86/lib/mmx_32.c | 243 +-
3677 arch/x86/lib/msr-reg.S | 2 +
3678 arch/x86/lib/putuser.S | 87 +-
3679 arch/x86/lib/rwsem.S | 6 +-
3680 arch/x86/lib/usercopy_32.c | 359 +-
3681 arch/x86/lib/usercopy_64.c | 20 +-
3682 arch/x86/math-emu/fpu_aux.c | 2 +-
3683 arch/x86/math-emu/fpu_entry.c | 4 +-
3684 arch/x86/math-emu/fpu_system.h | 2 +-
3685 arch/x86/mm/Makefile | 4 +
3686 arch/x86/mm/extable.c | 26 +-
3687 arch/x86/mm/fault.c | 570 +-
3688 arch/x86/mm/gup.c | 6 +-
3689 arch/x86/mm/highmem_32.c | 4 +
3690 arch/x86/mm/hugetlbpage.c | 24 +-
3691 arch/x86/mm/init.c | 101 +-
3692 arch/x86/mm/init_32.c | 111 +-
3693 arch/x86/mm/init_64.c | 46 +-
3694 arch/x86/mm/iomap_32.c | 4 +
3695 arch/x86/mm/ioremap.c | 44 +-
3696 arch/x86/mm/kmemcheck/kmemcheck.c | 4 +-
3697 arch/x86/mm/mmap.c | 40 +-
3698 arch/x86/mm/mmio-mod.c | 10 +-
3699 arch/x86/mm/numa.c | 2 +-
3700 arch/x86/mm/pageattr.c | 33 +-
3701 arch/x86/mm/pat.c | 12 +-
3702 arch/x86/mm/pat_rbtree.c | 2 +-
3703 arch/x86/mm/pf_in.c | 10 +-
3704 arch/x86/mm/pgtable.c | 162 +-
3705 arch/x86/mm/pgtable_32.c | 3 +
3706 arch/x86/mm/setup_nx.c | 7 +
3707 arch/x86/mm/tlb.c | 4 +
3708 arch/x86/mm/uderef_64.c | 37 +
3709 arch/x86/net/bpf_jit.S | 11 +
3710 arch/x86/net/bpf_jit_comp.c | 13 +-
3711 arch/x86/oprofile/backtrace.c | 6 +-
3712 arch/x86/oprofile/nmi_int.c | 8 +-
3713 arch/x86/oprofile/op_model_amd.c | 8 +-
3714 arch/x86/oprofile/op_model_ppro.c | 7 +-
3715 arch/x86/oprofile/op_x86_model.h | 2 +-
3716 arch/x86/pci/intel_mid_pci.c | 2 +-
3717 arch/x86/pci/irq.c | 8 +-
3718 arch/x86/pci/pcbios.c | 144 +-
3719 arch/x86/platform/efi/efi_32.c | 24 +
3720 arch/x86/platform/efi/efi_64.c | 26 +-
3721 arch/x86/platform/efi/efi_stub_32.S | 64 +-
3722 arch/x86/platform/efi/efi_stub_64.S | 2 +
3723 arch/x86/platform/intel-mid/intel-mid.c | 5 +-
3724 arch/x86/platform/intel-mid/intel_mid_weak_decls.h | 6 +-
3725 arch/x86/platform/intel-mid/mfld.c | 4 +-
3726 arch/x86/platform/intel-mid/mrfl.c | 2 +-
3727 arch/x86/platform/intel-quark/imr_selftest.c | 2 +-
3728 arch/x86/platform/olpc/olpc_dt.c | 2 +-
3729 arch/x86/power/cpu.c | 11 +-
3730 arch/x86/realmode/init.c | 10 +-
3731 arch/x86/realmode/rm/Makefile | 3 +
3732 arch/x86/realmode/rm/header.S | 4 +-
3733 arch/x86/realmode/rm/reboot.S | 4 +
3734 arch/x86/realmode/rm/trampoline_32.S | 12 +-
3735 arch/x86/realmode/rm/trampoline_64.S | 3 +-
3736 arch/x86/realmode/rm/wakeup_asm.S | 5 +-
3737 arch/x86/tools/Makefile | 2 +-
3738 arch/x86/tools/relocs.c | 96 +-
3739 arch/x86/um/mem_32.c | 2 +-
3740 arch/x86/um/tls_32.c | 2 +-
3741 arch/x86/xen/enlighten.c | 50 +-
3742 arch/x86/xen/mmu.c | 17 +-
3743 arch/x86/xen/smp.c | 16 +-
3744 arch/x86/xen/xen-asm_32.S | 2 +-
3745 arch/x86/xen/xen-head.S | 11 +
3746 arch/x86/xen/xen-ops.h | 2 -
3747 block/bio.c | 4 +-
3748 block/blk-iopoll.c | 2 +-
3749 block/blk-map.c | 2 +-
3750 block/blk-softirq.c | 2 +-
3751 block/bsg.c | 12 +-
3752 block/compat_ioctl.c | 4 +-
3753 block/genhd.c | 9 +-
3754 block/partitions/efi.c | 8 +-
3755 block/scsi_ioctl.c | 29 +-
3756 crypto/cryptd.c | 4 +-
3757 crypto/pcrypt.c | 2 +-
3758 crypto/zlib.c | 4 +-
3759 drivers/acpi/acpi_video.c | 2 +-
3760 drivers/acpi/apei/apei-internal.h | 2 +-
3761 drivers/acpi/apei/ghes.c | 4 +-
3762 drivers/acpi/bgrt.c | 6 +-
3763 drivers/acpi/blacklist.c | 4 +-
3764 drivers/acpi/bus.c | 4 +-
3765 drivers/acpi/device_pm.c | 4 +-
3766 drivers/acpi/ec.c | 2 +-
3767 drivers/acpi/pci_slot.c | 2 +-
3768 drivers/acpi/processor_driver.c | 2 +-
3769 drivers/acpi/processor_idle.c | 2 +-
3770 drivers/acpi/processor_pdc.c | 2 +-
3771 drivers/acpi/sleep.c | 2 +-
3772 drivers/acpi/sysfs.c | 4 +-
3773 drivers/acpi/thermal.c | 2 +-
3774 drivers/acpi/video_detect.c | 7 +-
3775 drivers/ata/libahci.c | 2 +-
3776 drivers/ata/libata-core.c | 12 +-
3777 drivers/ata/libata-scsi.c | 2 +-
3778 drivers/ata/libata.h | 2 +-
3779 drivers/ata/pata_arasan_cf.c | 4 +-
3780 drivers/atm/adummy.c | 2 +-
3781 drivers/atm/ambassador.c | 8 +-
3782 drivers/atm/atmtcp.c | 14 +-
3783 drivers/atm/eni.c | 10 +-
3784 drivers/atm/firestream.c | 8 +-
3785 drivers/atm/fore200e.c | 14 +-
3786 drivers/atm/he.c | 18 +-
3787 drivers/atm/horizon.c | 4 +-
3788 drivers/atm/idt77252.c | 36 +-
3789 drivers/atm/iphase.c | 34 +-
3790 drivers/atm/lanai.c | 12 +-
3791 drivers/atm/nicstar.c | 46 +-
3792 drivers/atm/solos-pci.c | 4 +-
3793 drivers/atm/suni.c | 4 +-
3794 drivers/atm/uPD98402.c | 16 +-
3795 drivers/atm/zatm.c | 6 +-
3796 drivers/base/bus.c | 4 +-
3797 drivers/base/devtmpfs.c | 8 +-
3798 drivers/base/node.c | 2 +-
3799 drivers/base/power/domain.c | 11 +-
3800 drivers/base/power/sysfs.c | 2 +-
3801 drivers/base/power/wakeup.c | 8 +-
3802 drivers/base/syscore.c | 4 +-
3803 drivers/block/cciss.c | 28 +-
3804 drivers/block/cciss.h | 2 +-
3805 drivers/block/cpqarray.c | 28 +-
3806 drivers/block/cpqarray.h | 2 +-
3807 drivers/block/drbd/drbd_bitmap.c | 2 +-
3808 drivers/block/drbd/drbd_int.h | 8 +-
3809 drivers/block/drbd/drbd_main.c | 12 +-
3810 drivers/block/drbd/drbd_nl.c | 4 +-
3811 drivers/block/drbd/drbd_receiver.c | 34 +-
3812 drivers/block/drbd/drbd_worker.c | 8 +-
3813 drivers/block/pktcdvd.c | 4 +-
3814 drivers/block/rbd.c | 2 +-
3815 drivers/bluetooth/btwilink.c | 2 +-
3816 drivers/cdrom/cdrom.c | 11 +-
3817 drivers/cdrom/gdrom.c | 1 -
3818 drivers/char/agp/compat_ioctl.c | 2 +-
3819 drivers/char/agp/frontend.c | 4 +-
3820 drivers/char/agp/intel-gtt.c | 4 +-
3821 drivers/char/hpet.c | 2 +-
3822 drivers/char/ipmi/ipmi_msghandler.c | 8 +-
3823 drivers/char/ipmi/ipmi_si_intf.c | 8 +-
3824 drivers/char/mem.c | 47 +-
3825 drivers/char/nvram.c | 2 +-
3826 drivers/char/pcmcia/synclink_cs.c | 16 +-
3827 drivers/char/random.c | 12 +-
3828 drivers/char/sonypi.c | 11 +-
3829 drivers/char/tpm/tpm_acpi.c | 3 +-
3830 drivers/char/tpm/tpm_eventlog.c | 7 +-
3831 drivers/char/virtio_console.c | 4 +-
3832 drivers/clk/clk-composite.c | 2 +-
3833 drivers/clk/samsung/clk.h | 2 +-
3834 drivers/clk/socfpga/clk-gate.c | 9 +-
3835 drivers/clk/socfpga/clk-pll.c | 9 +-
3836 drivers/cpufreq/acpi-cpufreq.c | 17 +-
3837 drivers/cpufreq/cpufreq-dt.c | 4 +-
3838 drivers/cpufreq/cpufreq.c | 26 +-
3839 drivers/cpufreq/cpufreq_governor.c | 2 +-
3840 drivers/cpufreq/cpufreq_governor.h | 4 +-
3841 drivers/cpufreq/cpufreq_ondemand.c | 10 +-
3842 drivers/cpufreq/intel_pstate.c | 33 +-
3843 drivers/cpufreq/p4-clockmod.c | 12 +-
3844 drivers/cpufreq/sparc-us3-cpufreq.c | 67 +-
3845 drivers/cpufreq/speedstep-centrino.c | 7 +-
3846 drivers/cpuidle/driver.c | 2 +-
3847 drivers/cpuidle/dt_idle_states.c | 2 +-
3848 drivers/cpuidle/governor.c | 2 +-
3849 drivers/cpuidle/sysfs.c | 2 +-
3850 drivers/crypto/hifn_795x.c | 4 +-
3851 drivers/devfreq/devfreq.c | 4 +-
3852 drivers/dma/sh/shdma-base.c | 4 +-
3853 drivers/dma/sh/shdmac.c | 2 +-
3854 drivers/edac/edac_device.c | 4 +-
3855 drivers/edac/edac_mc_sysfs.c | 2 +-
3856 drivers/edac/edac_pci.c | 4 +-
3857 drivers/edac/edac_pci_sysfs.c | 22 +-
3858 drivers/edac/mce_amd.h | 2 +-
3859 drivers/firewire/core-card.c | 6 +-
3860 drivers/firewire/core-device.c | 2 +-
3861 drivers/firewire/core-transaction.c | 1 +
3862 drivers/firewire/core.h | 1 +
3863 drivers/firmware/dmi-id.c | 2 +-
3864 drivers/firmware/dmi_scan.c | 12 +-
3865 drivers/firmware/efi/cper.c | 8 +-
3866 drivers/firmware/efi/efi.c | 12 +-
3867 drivers/firmware/efi/efivars.c | 2 +-
3868 drivers/firmware/efi/runtime-map.c | 2 +-
3869 drivers/firmware/google/gsmi.c | 2 +-
3870 drivers/firmware/google/memconsole.c | 7 +-
3871 drivers/firmware/memmap.c | 2 +-
3872 drivers/gpio/gpio-davinci.c | 6 +-
3873 drivers/gpio/gpio-em.c | 2 +-
3874 drivers/gpio/gpio-ich.c | 2 +-
3875 drivers/gpio/gpio-omap.c | 4 +-
3876 drivers/gpio/gpio-rcar.c | 2 +-
3877 drivers/gpio/gpio-vr41xx.c | 2 +-
3878 drivers/gpio/gpiolib.c | 13 +-
3879 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 2 +-
3880 drivers/gpu/drm/amd/amdkfd/kfd_chardev.c | 2 +-
3881 drivers/gpu/drm/amd/amdkfd/kfd_device.c | 6 +-
3882 .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.c | 90 +-
3883 .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.h | 8 +-
3884 .../drm/amd/amdkfd/kfd_device_queue_manager_cik.c | 14 +-
3885 .../drm/amd/amdkfd/kfd_device_queue_manager_vi.c | 14 +-
3886 drivers/gpu/drm/amd/amdkfd/kfd_interrupt.c | 4 +-
3887 drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.c | 2 +-
3888 drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.h | 2 +-
3889 .../gpu/drm/amd/amdkfd/kfd_process_queue_manager.c | 16 +-
3890 drivers/gpu/drm/drm_crtc.c | 2 +-
3891 drivers/gpu/drm/drm_drv.c | 2 +-
3892 drivers/gpu/drm/drm_fops.c | 12 +-
3893 drivers/gpu/drm/drm_global.c | 14 +-
3894 drivers/gpu/drm/drm_info.c | 13 +-
3895 drivers/gpu/drm/drm_ioc32.c | 13 +-
3896 drivers/gpu/drm/drm_ioctl.c | 2 +-
3897 drivers/gpu/drm/gma500/mdfld_dsi_dpi.c | 10 +-
3898 drivers/gpu/drm/i810/i810_drv.h | 4 +-
3899 drivers/gpu/drm/i915/i915_debugfs.c | 2 +-
3900 drivers/gpu/drm/i915/i915_dma.c | 2 +-
3901 drivers/gpu/drm/i915/i915_gem_execbuffer.c | 4 +-
3902 drivers/gpu/drm/i915/i915_gem_gtt.c | 32 +-
3903 drivers/gpu/drm/i915/i915_gem_gtt.h | 16 +-
3904 drivers/gpu/drm/i915/i915_gem_stolen.c | 2 +-
3905 drivers/gpu/drm/i915/i915_ioc32.c | 16 +-
3906 drivers/gpu/drm/i915/intel_display.c | 26 +-
3907 drivers/gpu/drm/imx/imx-drm-core.c | 2 +-
3908 drivers/gpu/drm/mga/mga_drv.h | 4 +-
3909 drivers/gpu/drm/mga/mga_ioc32.c | 10 +-
3910 drivers/gpu/drm/mga/mga_irq.c | 8 +-
3911 drivers/gpu/drm/nouveau/nouveau_bios.c | 2 +-
3912 drivers/gpu/drm/nouveau/nouveau_drm.h | 1 -
3913 drivers/gpu/drm/nouveau/nouveau_ioc32.c | 2 +-
3914 drivers/gpu/drm/nouveau/nouveau_vga.c | 2 +-
3915 drivers/gpu/drm/omapdrm/Makefile | 2 +-
3916 drivers/gpu/drm/qxl/qxl_cmd.c | 12 +-
3917 drivers/gpu/drm/qxl/qxl_debugfs.c | 8 +-
3918 drivers/gpu/drm/qxl/qxl_drv.h | 8 +-
3919 drivers/gpu/drm/qxl/qxl_ioctl.c | 10 +-
3920 drivers/gpu/drm/qxl/qxl_irq.c | 16 +-
3921 drivers/gpu/drm/qxl/qxl_ttm.c | 38 +-
3922 drivers/gpu/drm/r128/r128_cce.c | 2 +-
3923 drivers/gpu/drm/r128/r128_drv.h | 4 +-
3924 drivers/gpu/drm/r128/r128_ioc32.c | 10 +-
3925 drivers/gpu/drm/r128/r128_irq.c | 4 +-
3926 drivers/gpu/drm/r128/r128_state.c | 4 +-
3927 drivers/gpu/drm/radeon/mkregtable.c | 4 +-
3928 drivers/gpu/drm/radeon/radeon_device.c | 2 +-
3929 drivers/gpu/drm/radeon/radeon_drv.h | 2 +-
3930 drivers/gpu/drm/radeon/radeon_ioc32.c | 12 +-
3931 drivers/gpu/drm/radeon/radeon_irq.c | 6 +-
3932 drivers/gpu/drm/radeon/radeon_state.c | 4 +-
3933 drivers/gpu/drm/radeon/radeon_ttm.c | 4 +-
3934 drivers/gpu/drm/tegra/dc.c | 2 +-
3935 drivers/gpu/drm/tegra/dsi.c | 2 +-
3936 drivers/gpu/drm/tegra/hdmi.c | 2 +-
3937 drivers/gpu/drm/tegra/sor.c | 7 +-
3938 drivers/gpu/drm/tilcdc/Makefile | 6 +-
3939 drivers/gpu/drm/ttm/ttm_memory.c | 4 +-
3940 drivers/gpu/drm/ttm/ttm_page_alloc.c | 18 +-
3941 drivers/gpu/drm/ttm/ttm_page_alloc_dma.c | 18 +-
3942 drivers/gpu/drm/udl/udl_fb.c | 1 -
3943 drivers/gpu/drm/via/via_drv.h | 4 +-
3944 drivers/gpu/drm/via/via_irq.c | 18 +-
3945 drivers/gpu/drm/virtio/virtgpu_debugfs.c | 2 +-
3946 drivers/gpu/drm/virtio/virtgpu_fence.c | 2 +-
3947 drivers/gpu/drm/vmwgfx/vmwgfx_drv.h | 2 +-
3948 drivers/gpu/drm/vmwgfx/vmwgfx_fifo.c | 8 +-
3949 drivers/gpu/drm/vmwgfx/vmwgfx_ioctl.c | 4 +-
3950 drivers/gpu/drm/vmwgfx/vmwgfx_irq.c | 4 +-
3951 drivers/gpu/drm/vmwgfx/vmwgfx_marker.c | 2 +-
3952 drivers/gpu/vga/vga_switcheroo.c | 4 +-
3953 drivers/hid/hid-core.c | 4 +-
3954 drivers/hid/hid-sensor-custom.c | 2 +-
3955 drivers/hv/channel.c | 2 +-
3956 drivers/hv/hv.c | 4 +-
3957 drivers/hv/hv_balloon.c | 18 +-
3958 drivers/hv/hyperv_vmbus.h | 2 +-
3959 drivers/hwmon/acpi_power_meter.c | 6 +-
3960 drivers/hwmon/applesmc.c | 2 +-
3961 drivers/hwmon/asus_atk0110.c | 10 +-
3962 drivers/hwmon/coretemp.c | 2 +-
3963 drivers/hwmon/dell-smm-hwmon.c | 2 +-
3964 drivers/hwmon/ibmaem.c | 2 +-
3965 drivers/hwmon/iio_hwmon.c | 2 +-
3966 drivers/hwmon/nct6683.c | 6 +-
3967 drivers/hwmon/nct6775.c | 6 +-
3968 drivers/hwmon/pmbus/pmbus_core.c | 10 +-
3969 drivers/hwmon/sht15.c | 12 +-
3970 drivers/hwmon/via-cputemp.c | 2 +-
3971 drivers/i2c/busses/i2c-amd756-s4882.c | 2 +-
3972 drivers/i2c/busses/i2c-diolan-u2c.c | 2 +-
3973 drivers/i2c/busses/i2c-nforce2-s4985.c | 2 +-
3974 drivers/i2c/i2c-dev.c | 2 +-
3975 drivers/ide/ide-cd.c | 2 +-
3976 drivers/iio/industrialio-core.c | 2 +-
3977 drivers/iio/magnetometer/ak8975.c | 2 +-
3978 drivers/infiniband/core/cm.c | 32 +-
3979 drivers/infiniband/core/fmr_pool.c | 20 +-
3980 drivers/infiniband/core/uverbs_cmd.c | 3 +
3981 drivers/infiniband/hw/cxgb4/mem.c | 4 +-
3982 drivers/infiniband/hw/ipath/ipath_rc.c | 6 +-
3983 drivers/infiniband/hw/ipath/ipath_ruc.c | 6 +-
3984 drivers/infiniband/hw/mlx4/mad.c | 2 +-
3985 drivers/infiniband/hw/mlx4/mcg.c | 2 +-
3986 drivers/infiniband/hw/mlx4/mlx4_ib.h | 2 +-
3987 drivers/infiniband/hw/mthca/mthca_cmd.c | 8 +-
3988 drivers/infiniband/hw/mthca/mthca_main.c | 2 +-
3989 drivers/infiniband/hw/mthca/mthca_mr.c | 6 +-
3990 drivers/infiniband/hw/mthca/mthca_provider.c | 2 +-
3991 drivers/infiniband/hw/nes/nes.c | 4 +-
3992 drivers/infiniband/hw/nes/nes.h | 40 +-
3993 drivers/infiniband/hw/nes/nes_cm.c | 62 +-
3994 drivers/infiniband/hw/nes/nes_mgt.c | 8 +-
3995 drivers/infiniband/hw/nes/nes_nic.c | 40 +-
3996 drivers/infiniband/hw/nes/nes_verbs.c | 10 +-
3997 drivers/infiniband/hw/qib/qib.h | 1 +
3998 drivers/infiniband/ulp/ipoib/ipoib_netlink.c | 2 +-
3999 drivers/input/gameport/gameport.c | 4 +-
4000 drivers/input/input.c | 4 +-
4001 drivers/input/joystick/sidewinder.c | 1 +
4002 drivers/input/joystick/xpad.c | 4 +-
4003 drivers/input/misc/ims-pcu.c | 4 +-
4004 drivers/input/mouse/psmouse.h | 2 +-
4005 drivers/input/mousedev.c | 2 +-
4006 drivers/input/serio/serio.c | 4 +-
4007 drivers/input/serio/serio_raw.c | 4 +-
4008 drivers/input/touchscreen/htcpen.c | 2 +-
4009 drivers/iommu/arm-smmu.c | 43 +-
4010 drivers/iommu/io-pgtable-arm.c | 101 +-
4011 drivers/iommu/io-pgtable.c | 11 +-
4012 drivers/iommu/io-pgtable.h | 19 +-
4013 drivers/iommu/iommu.c | 2 +-
4014 drivers/iommu/ipmmu-vmsa.c | 13 +-
4015 drivers/iommu/irq_remapping.c | 2 +-
4016 drivers/irqchip/irq-gic.c | 2 +-
4017 drivers/irqchip/irq-renesas-intc-irqpin.c | 2 +-
4018 drivers/irqchip/irq-renesas-irqc.c | 2 +-
4019 drivers/isdn/capi/capi.c | 10 +-
4020 drivers/isdn/gigaset/interface.c | 8 +-
4021 drivers/isdn/gigaset/usb-gigaset.c | 2 +-
4022 drivers/isdn/hardware/avm/b1.c | 4 +-
4023 drivers/isdn/i4l/isdn_common.c | 2 +
4024 drivers/isdn/i4l/isdn_tty.c | 22 +-
4025 drivers/isdn/icn/icn.c | 2 +-
4026 drivers/isdn/mISDN/dsp_cmx.c | 2 +-
4027 drivers/lguest/core.c | 10 +-
4028 drivers/lguest/page_tables.c | 2 +-
4029 drivers/lguest/x86/core.c | 12 +-
4030 drivers/lguest/x86/switcher_32.S | 27 +-
4031 drivers/md/bcache/closure.h | 2 +-
4032 drivers/md/bitmap.c | 2 +-
4033 drivers/md/dm-ioctl.c | 2 +-
4034 drivers/md/dm-raid1.c | 18 +-
4035 drivers/md/dm-stats.c | 6 +-
4036 drivers/md/dm-stripe.c | 10 +-
4037 drivers/md/dm-table.c | 2 +-
4038 drivers/md/dm-thin-metadata.c | 4 +-
4039 drivers/md/dm.c | 16 +-
4040 drivers/md/md.c | 26 +-
4041 drivers/md/md.h | 6 +-
4042 drivers/md/persistent-data/dm-space-map-metadata.c | 4 +-
4043 drivers/md/persistent-data/dm-space-map.h | 1 +
4044 drivers/md/raid1.c | 4 +-
4045 drivers/md/raid10.c | 16 +-
4046 drivers/md/raid5.c | 22 +-
4047 drivers/media/dvb-core/dvbdev.c | 2 +-
4048 drivers/media/dvb-frontends/af9033.h | 2 +-
4049 drivers/media/dvb-frontends/dib3000.h | 2 +-
4050 drivers/media/dvb-frontends/dib7000p.h | 2 +-
4051 drivers/media/dvb-frontends/dib8000.h | 2 +-
4052 drivers/media/pci/cx88/cx88-video.c | 6 +-
4053 drivers/media/pci/ivtv/ivtv-driver.c | 2 +-
4054 drivers/media/pci/solo6x10/solo6x10-core.c | 2 +-
4055 drivers/media/pci/solo6x10/solo6x10-p2m.c | 2 +-
4056 drivers/media/pci/solo6x10/solo6x10.h | 2 +-
4057 drivers/media/pci/tw68/tw68-core.c | 2 +-
4058 drivers/media/platform/omap/omap_vout.c | 11 +-
4059 drivers/media/platform/s5p-tv/mixer.h | 2 +-
4060 drivers/media/platform/s5p-tv/mixer_grp_layer.c | 2 +-
4061 drivers/media/platform/s5p-tv/mixer_reg.c | 2 +-
4062 drivers/media/platform/s5p-tv/mixer_video.c | 24 +-
4063 drivers/media/platform/s5p-tv/mixer_vp_layer.c | 2 +-
4064 drivers/media/radio/radio-cadet.c | 2 +
4065 drivers/media/radio/radio-maxiradio.c | 2 +-
4066 drivers/media/radio/radio-shark.c | 2 +-
4067 drivers/media/radio/radio-shark2.c | 2 +-
4068 drivers/media/radio/radio-si476x.c | 2 +-
4069 drivers/media/radio/wl128x/fmdrv_common.c | 2 +-
4070 drivers/media/v4l2-core/v4l2-compat-ioctl32.c | 12 +-
4071 drivers/media/v4l2-core/v4l2-device.c | 4 +-
4072 drivers/media/v4l2-core/v4l2-ioctl.c | 13 +-
4073 drivers/memory/omap-gpmc.c | 21 +-
4074 drivers/message/fusion/mptsas.c | 34 +-
4075 drivers/mfd/ab8500-debugfs.c | 2 +-
4076 drivers/mfd/kempld-core.c | 2 +-
4077 drivers/mfd/max8925-i2c.c | 2 +-
4078 drivers/mfd/tps65910.c | 2 +-
4079 drivers/mfd/twl4030-irq.c | 9 +-
4080 drivers/misc/c2port/core.c | 4 +-
4081 drivers/misc/eeprom/sunxi_sid.c | 4 +-
4082 drivers/misc/kgdbts.c | 4 +-
4083 drivers/misc/lis3lv02d/lis3lv02d.c | 8 +-
4084 drivers/misc/lis3lv02d/lis3lv02d.h | 2 +-
4085 drivers/misc/mic/scif/scif_rb.c | 8 +-
4086 drivers/misc/sgi-gru/gruhandles.c | 4 +-
4087 drivers/misc/sgi-gru/gruprocfs.c | 8 +-
4088 drivers/misc/sgi-gru/grutables.h | 154 +-
4089 drivers/misc/sgi-xp/xp.h | 2 +-
4090 drivers/misc/sgi-xp/xpc.h | 3 +-
4091 drivers/misc/sgi-xp/xpc_main.c | 2 +-
4092 drivers/mmc/card/block.c | 2 +-
4093 drivers/mmc/host/dw_mmc.h | 2 +-
4094 drivers/mmc/host/mmci.c | 4 +-
4095 drivers/mmc/host/omap_hsmmc.c | 4 +-
4096 drivers/mmc/host/sdhci-esdhc-imx.c | 7 +-
4097 drivers/mmc/host/sdhci-s3c.c | 8 +-
4098 drivers/mtd/chips/cfi_cmdset_0020.c | 2 +-
4099 drivers/mtd/nand/denali.c | 1 +
4100 drivers/mtd/nand/gpmi-nand/gpmi-nand.c | 2 +-
4101 drivers/mtd/nftlmount.c | 1 +
4102 drivers/mtd/sm_ftl.c | 2 +-
4103 drivers/net/bonding/bond_netlink.c | 2 +-
4104 drivers/net/caif/caif_hsi.c | 2 +-
4105 drivers/net/can/Kconfig | 2 +-
4106 drivers/net/can/dev.c | 2 +-
4107 drivers/net/can/vcan.c | 2 +-
4108 drivers/net/dummy.c | 2 +-
4109 drivers/net/ethernet/8390/ax88796.c | 4 +-
4110 drivers/net/ethernet/altera/altera_tse_main.c | 4 +-
4111 drivers/net/ethernet/amd/xgbe/xgbe-common.h | 4 +-
4112 drivers/net/ethernet/amd/xgbe/xgbe-dcb.c | 4 +-
4113 drivers/net/ethernet/amd/xgbe/xgbe-desc.c | 27 +-
4114 drivers/net/ethernet/amd/xgbe/xgbe-dev.c | 143 +-
4115 drivers/net/ethernet/amd/xgbe/xgbe-drv.c | 64 +-
4116 drivers/net/ethernet/amd/xgbe/xgbe-ethtool.c | 10 +-
4117 drivers/net/ethernet/amd/xgbe/xgbe-main.c | 15 +-
4118 drivers/net/ethernet/amd/xgbe/xgbe-mdio.c | 27 +-
4119 drivers/net/ethernet/amd/xgbe/xgbe-ptp.c | 4 +-
4120 drivers/net/ethernet/amd/xgbe/xgbe.h | 10 +-
4121 drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.h | 2 +-
4122 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c | 11 +-
4123 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.h | 3 +-
4124 drivers/net/ethernet/broadcom/tg3.h | 1 +
4125 drivers/net/ethernet/cavium/liquidio/lio_ethtool.c | 6 +-
4126 drivers/net/ethernet/cavium/liquidio/lio_main.c | 11 +-
4127 drivers/net/ethernet/chelsio/cxgb3/l2t.h | 2 +-
4128 drivers/net/ethernet/dec/tulip/de4x5.c | 4 +-
4129 drivers/net/ethernet/emulex/benet/be_main.c | 2 +-
4130 drivers/net/ethernet/faraday/ftgmac100.c | 2 +
4131 drivers/net/ethernet/faraday/ftmac100.c | 2 +
4132 drivers/net/ethernet/intel/i40e/i40e_ptp.c | 2 +-
4133 drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c | 2 +-
4134 drivers/net/ethernet/mellanox/mlx4/en_tx.c | 4 +-
4135 drivers/net/ethernet/mellanox/mlx5/core/en_main.c | 4 +-
4136 drivers/net/ethernet/neterion/vxge/vxge-config.c | 7 +-
4137 .../net/ethernet/qlogic/qlcnic/qlcnic_83xx_init.c | 4 +-
4138 .../net/ethernet/qlogic/qlcnic/qlcnic_83xx_vnic.c | 12 +-
4139 .../net/ethernet/qlogic/qlcnic/qlcnic_minidump.c | 2 +-
4140 drivers/net/ethernet/realtek/r8169.c | 8 +-
4141 drivers/net/ethernet/sfc/ptp.c | 2 +-
4142 drivers/net/ethernet/stmicro/stmmac/mmc_core.c | 4 +-
4143 drivers/net/ethernet/via/via-rhine.c | 2 +-
4144 drivers/net/hyperv/hyperv_net.h | 2 +-
4145 drivers/net/hyperv/rndis_filter.c | 4 +-
4146 drivers/net/ifb.c | 2 +-
4147 drivers/net/ipvlan/ipvlan_core.c | 2 +-
4148 drivers/net/macvlan.c | 20 +-
4149 drivers/net/macvtap.c | 6 +-
4150 drivers/net/nlmon.c | 2 +-
4151 drivers/net/phy/phy_device.c | 6 +-
4152 drivers/net/ppp/ppp_generic.c | 4 +-
4153 drivers/net/slip/slhc.c | 2 +-
4154 drivers/net/team/team.c | 4 +-
4155 drivers/net/tun.c | 7 +-
4156 drivers/net/usb/hso.c | 23 +-
4157 drivers/net/usb/r8152.c | 2 +-
4158 drivers/net/usb/sierra_net.c | 4 +-
4159 drivers/net/virtio_net.c | 2 +-
4160 drivers/net/vxlan.c | 4 +-
4161 drivers/net/wimax/i2400m/rx.c | 2 +-
4162 drivers/net/wireless/airo.c | 2 +-
4163 drivers/net/wireless/at76c50x-usb.c | 2 +-
4164 drivers/net/wireless/ath/ath10k/htc.c | 7 +-
4165 drivers/net/wireless/ath/ath10k/htc.h | 4 +-
4166 drivers/net/wireless/ath/ath9k/ar9002_mac.c | 36 +-
4167 drivers/net/wireless/ath/ath9k/ar9003_mac.c | 64 +-
4168 drivers/net/wireless/ath/ath9k/hw.h | 4 +-
4169 drivers/net/wireless/ath/ath9k/main.c | 22 +-
4170 drivers/net/wireless/b43/phy_lp.c | 2 +-
4171 drivers/net/wireless/iwlegacy/3945-mac.c | 4 +-
4172 drivers/net/wireless/iwlwifi/dvm/debugfs.c | 34 +-
4173 drivers/net/wireless/iwlwifi/pcie/trans.c | 4 +-
4174 drivers/net/wireless/mac80211_hwsim.c | 28 +-
4175 drivers/net/wireless/rndis_wlan.c | 2 +-
4176 drivers/net/wireless/rt2x00/rt2x00.h | 2 +-
4177 drivers/net/wireless/rt2x00/rt2x00queue.c | 4 +-
4178 drivers/net/wireless/ti/wl1251/sdio.c | 12 +-
4179 drivers/net/wireless/ti/wl12xx/main.c | 8 +-
4180 drivers/net/wireless/ti/wl18xx/main.c | 6 +-
4181 drivers/nfc/nfcwilink.c | 2 +-
4182 drivers/of/fdt.c | 4 +-
4183 drivers/oprofile/buffer_sync.c | 8 +-
4184 drivers/oprofile/event_buffer.c | 2 +-
4185 drivers/oprofile/oprof.c | 2 +-
4186 drivers/oprofile/oprofile_files.c | 2 +-
4187 drivers/oprofile/oprofile_stats.c | 10 +-
4188 drivers/oprofile/oprofile_stats.h | 10 +-
4189 drivers/oprofile/oprofilefs.c | 6 +-
4190 drivers/oprofile/timer_int.c | 2 +-
4191 drivers/parport/procfs.c | 4 +-
4192 drivers/pci/host/pci-host-generic.c | 24 +-
4193 drivers/pci/hotplug/acpiphp_ibm.c | 4 +-
4194 drivers/pci/hotplug/cpcihp_generic.c | 6 +-
4195 drivers/pci/hotplug/cpcihp_zt5550.c | 14 +-
4196 drivers/pci/hotplug/cpqphp_nvram.c | 2 +
4197 drivers/pci/hotplug/pci_hotplug_core.c | 6 +-
4198 drivers/pci/hotplug/pciehp_core.c | 2 +-
4199 drivers/pci/msi.c | 21 +-
4200 drivers/pci/pci-sysfs.c | 6 +-
4201 drivers/pci/pci.h | 2 +-
4202 drivers/pci/pcie/aspm.c | 6 +-
4203 drivers/pci/pcie/portdrv_pci.c | 2 +-
4204 drivers/pci/probe.c | 2 +-
4205 drivers/pinctrl/pinctrl-at91.c | 5 +-
4206 drivers/platform/chrome/chromeos_pstore.c | 2 +-
4207 drivers/platform/x86/alienware-wmi.c | 4 +-
4208 drivers/platform/x86/compal-laptop.c | 2 +-
4209 drivers/platform/x86/hdaps.c | 2 +-
4210 drivers/platform/x86/ibm_rtl.c | 2 +-
4211 drivers/platform/x86/intel_oaktrail.c | 2 +-
4212 drivers/platform/x86/msi-laptop.c | 16 +-
4213 drivers/platform/x86/msi-wmi.c | 2 +-
4214 drivers/platform/x86/samsung-laptop.c | 2 +-
4215 drivers/platform/x86/samsung-q10.c | 2 +-
4216 drivers/platform/x86/sony-laptop.c | 14 +-
4217 drivers/platform/x86/thinkpad_acpi.c | 2 +-
4218 drivers/pnp/pnpbios/bioscalls.c | 14 +-
4219 drivers/pnp/pnpbios/core.c | 2 +-
4220 drivers/power/pda_power.c | 7 +-
4221 drivers/power/power_supply.h | 4 +-
4222 drivers/power/power_supply_core.c | 7 +-
4223 drivers/power/power_supply_sysfs.c | 6 +-
4224 drivers/power/reset/at91-reset.c | 9 +-
4225 drivers/powercap/powercap_sys.c | 136 +-
4226 drivers/ptp/ptp_private.h | 2 +-
4227 drivers/ptp/ptp_sysfs.c | 2 +-
4228 drivers/regulator/core.c | 4 +-
4229 drivers/regulator/max8660.c | 6 +-
4230 drivers/regulator/max8973-regulator.c | 16 +-
4231 drivers/regulator/mc13892-regulator.c | 8 +-
4232 drivers/rtc/rtc-armada38x.c | 7 +-
4233 drivers/rtc/rtc-cmos.c | 4 +-
4234 drivers/rtc/rtc-ds1307.c | 2 +-
4235 drivers/rtc/rtc-m48t59.c | 4 +-
4236 drivers/rtc/rtc-test.c | 6 +-
4237 drivers/scsi/be2iscsi/be_main.c | 2 +-
4238 drivers/scsi/bfa/bfa_fcpim.h | 2 +-
4239 drivers/scsi/bfa/bfa_ioc.h | 4 +-
4240 drivers/scsi/fcoe/fcoe_sysfs.c | 12 +-
4241 drivers/scsi/hosts.c | 4 +-
4242 drivers/scsi/hpsa.c | 38 +-
4243 drivers/scsi/hpsa.h | 2 +-
4244 drivers/scsi/libfc/fc_exch.c | 50 +-
4245 drivers/scsi/libsas/sas_ata.c | 2 +-
4246 drivers/scsi/lpfc/lpfc.h | 8 +-
4247 drivers/scsi/lpfc/lpfc_debugfs.c | 18 +-
4248 drivers/scsi/lpfc/lpfc_init.c | 6 +-
4249 drivers/scsi/lpfc/lpfc_scsi.c | 10 +-
4250 drivers/scsi/mpt2sas/mpt2sas_scsih.c | 8 +-
4251 drivers/scsi/pmcraid.c | 20 +-
4252 drivers/scsi/pmcraid.h | 8 +-
4253 drivers/scsi/qla2xxx/qla_attr.c | 4 +-
4254 drivers/scsi/qla2xxx/qla_gbl.h | 4 +-
4255 drivers/scsi/qla2xxx/qla_os.c | 6 +-
4256 drivers/scsi/qla4xxx/ql4_def.h | 2 +-
4257 drivers/scsi/qla4xxx/ql4_os.c | 6 +-
4258 drivers/scsi/scsi.c | 2 +-
4259 drivers/scsi/scsi_lib.c | 8 +-
4260 drivers/scsi/scsi_sysfs.c | 2 +-
4261 drivers/scsi/scsi_transport_fc.c | 8 +-
4262 drivers/scsi/scsi_transport_iscsi.c | 6 +-
4263 drivers/scsi/scsi_transport_srp.c | 6 +-
4264 drivers/scsi/sd.c | 6 +-
4265 drivers/scsi/sg.c | 2 +-
4266 drivers/scsi/sr.c | 21 +-
4267 drivers/soc/tegra/fuse/fuse-tegra.c | 2 +-
4268 drivers/spi/spi.c | 2 +-
4269 drivers/spi/spidev.c | 2 +-
4270 drivers/staging/android/timed_output.c | 6 +-
4271 drivers/staging/comedi/comedi_fops.c | 8 +-
4272 drivers/staging/fbtft/fbtft-core.c | 2 +-
4273 drivers/staging/fbtft/fbtft.h | 2 +-
4274 drivers/staging/gdm724x/gdm_tty.c | 2 +-
4275 drivers/staging/iio/accel/lis3l02dq_ring.c | 2 +-
4276 drivers/staging/iio/adc/ad7280a.c | 4 +-
4277 drivers/staging/lustre/lnet/selftest/brw_test.c | 12 +-
4278 drivers/staging/lustre/lnet/selftest/framework.c | 4 -
4279 drivers/staging/lustre/lnet/selftest/ping_test.c | 14 +-
4280 drivers/staging/lustre/lustre/include/lustre_dlm.h | 2 +-
4281 drivers/staging/lustre/lustre/include/obd.h | 2 +-
4282 drivers/staging/lustre/lustre/libcfs/module.c | 6 +-
4283 drivers/staging/octeon/ethernet-rx.c | 12 +-
4284 drivers/staging/octeon/ethernet.c | 8 +-
4285 drivers/staging/rtl8188eu/include/hal_intf.h | 2 +-
4286 drivers/staging/rtl8712/rtl871x_io.h | 2 +-
4287 drivers/staging/sm750fb/sm750.c | 14 +-
4288 drivers/staging/unisys/visorbus/visorbus_private.h | 4 +-
4289 drivers/target/sbp/sbp_target.c | 4 +-
4290 drivers/target/target_core_device.c | 2 +-
4291 drivers/target/target_core_transport.c | 2 +-
4292 drivers/thermal/cpu_cooling.c | 9 +-
4293 drivers/thermal/int340x_thermal/int3400_thermal.c | 6 +-
4294 drivers/thermal/of-thermal.c | 17 +-
4295 drivers/thermal/x86_pkg_temp_thermal.c | 2 +-
4296 drivers/tty/cyclades.c | 6 +-
4297 drivers/tty/hvc/hvc_console.c | 14 +-
4298 drivers/tty/hvc/hvcs.c | 21 +-
4299 drivers/tty/hvc/hvsi.c | 22 +-
4300 drivers/tty/hvc/hvsi_lib.c | 4 +-
4301 drivers/tty/ipwireless/tty.c | 27 +-
4302 drivers/tty/moxa.c | 2 +-
4303 drivers/tty/n_gsm.c | 4 +-
4304 drivers/tty/n_tty.c | 5 +-
4305 drivers/tty/pty.c | 4 +-
4306 drivers/tty/rocket.c | 6 +-
4307 drivers/tty/serial/8250/8250_core.c | 10 +-
4308 drivers/tty/serial/ifx6x60.c | 2 +-
4309 drivers/tty/serial/ioc4_serial.c | 6 +-
4310 drivers/tty/serial/kgdb_nmi.c | 4 +-
4311 drivers/tty/serial/kgdboc.c | 32 +-
4312 drivers/tty/serial/msm_serial.c | 4 +-
4313 drivers/tty/serial/samsung.c | 9 +-
4314 drivers/tty/serial/serial_core.c | 8 +-
4315 drivers/tty/synclink.c | 34 +-
4316 drivers/tty/synclink_gt.c | 28 +-
4317 drivers/tty/synclinkmp.c | 34 +-
4318 drivers/tty/tty_io.c | 2 +-
4319 drivers/tty/tty_ldisc.c | 8 +-
4320 drivers/tty/tty_port.c | 22 +-
4321 drivers/uio/uio.c | 13 +-
4322 drivers/usb/atm/cxacru.c | 2 +-
4323 drivers/usb/atm/usbatm.c | 24 +-
4324 drivers/usb/core/devices.c | 6 +-
4325 drivers/usb/core/devio.c | 10 +-
4326 drivers/usb/core/hcd.c | 4 +-
4327 drivers/usb/core/message.c | 6 +-
4328 drivers/usb/core/sysfs.c | 2 +-
4329 drivers/usb/core/usb.c | 2 +-
4330 drivers/usb/early/ehci-dbgp.c | 16 +-
4331 drivers/usb/gadget/function/u_serial.c | 22 +-
4332 drivers/usb/gadget/udc/dummy_hcd.c | 2 +-
4333 drivers/usb/host/ehci-hcd.c | 2 +-
4334 drivers/usb/host/ehci-hub.c | 4 +-
4335 drivers/usb/host/ehci-q.c | 4 +-
4336 drivers/usb/host/fotg210-hcd.c | 2 +-
4337 drivers/usb/host/fusbh200-hcd.c | 2 +-
4338 drivers/usb/host/hwa-hc.c | 2 +-
4339 drivers/usb/host/ohci-hcd.c | 2 +-
4340 drivers/usb/host/r8a66597.h | 2 +-
4341 drivers/usb/host/uhci-hcd.c | 2 +-
4342 drivers/usb/host/xhci-pci.c | 2 +-
4343 drivers/usb/host/xhci.c | 2 +-
4344 drivers/usb/misc/appledisplay.c | 4 +-
4345 drivers/usb/serial/console.c | 8 +-
4346 drivers/usb/storage/usb.c | 2 +-
4347 drivers/usb/storage/usb.h | 2 +-
4348 drivers/usb/usbip/vhci.h | 2 +-
4349 drivers/usb/usbip/vhci_hcd.c | 6 +-
4350 drivers/usb/usbip/vhci_rx.c | 2 +-
4351 drivers/usb/wusbcore/wa-hc.h | 4 +-
4352 drivers/usb/wusbcore/wa-xfer.c | 2 +-
4353 drivers/vfio/vfio.c | 2 +-
4354 drivers/vhost/vringh.c | 20 +-
4355 drivers/video/backlight/kb3886_bl.c | 2 +-
4356 drivers/video/fbdev/aty/aty128fb.c | 2 +-
4357 drivers/video/fbdev/aty/atyfb_base.c | 8 +-
4358 drivers/video/fbdev/aty/mach64_cursor.c | 5 +-
4359 drivers/video/fbdev/core/fb_defio.c | 6 +-
4360 drivers/video/fbdev/core/fbmem.c | 2 +-
4361 drivers/video/fbdev/hyperv_fb.c | 4 +-
4362 drivers/video/fbdev/i810/i810_accel.c | 1 +
4363 drivers/video/fbdev/matrox/matroxfb_base.c | 2 +-
4364 drivers/video/fbdev/mb862xx/mb862xxfb_accel.c | 16 +-
4365 drivers/video/fbdev/nvidia/nvidia.c | 27 +-
4366 drivers/video/fbdev/omap2/dss/display.c | 8 +-
4367 drivers/video/fbdev/s1d13xxxfb.c | 6 +-
4368 drivers/video/fbdev/smscufx.c | 4 +-
4369 drivers/video/fbdev/udlfb.c | 36 +-
4370 drivers/video/fbdev/uvesafb.c | 52 +-
4371 drivers/video/fbdev/vesafb.c | 58 +-
4372 drivers/video/fbdev/via/via_clock.h | 2 +-
4373 drivers/xen/events/events_base.c | 6 +-
4374 drivers/xen/evtchn.c | 4 +-
4375 fs/Kconfig.binfmt | 2 +-
4376 fs/afs/inode.c | 4 +-
4377 fs/aio.c | 2 +-
4378 fs/autofs4/waitq.c | 2 +-
4379 fs/befs/endian.h | 6 +-
4380 fs/binfmt_aout.c | 23 +-
4381 fs/binfmt_elf.c | 672 +-
4382 fs/binfmt_elf_fdpic.c | 2 +-
4383 fs/block_dev.c | 2 +-
4384 fs/btrfs/ctree.c | 9 +-
4385 fs/btrfs/delayed-inode.c | 6 +-
4386 fs/btrfs/delayed-inode.h | 4 +-
4387 fs/btrfs/super.c | 2 +-
4388 fs/btrfs/sysfs.c | 2 +-
4389 fs/btrfs/tests/free-space-tests.c | 8 +-
4390 fs/btrfs/tree-log.h | 2 +-
4391 fs/buffer.c | 2 +-
4392 fs/cachefiles/bind.c | 6 +-
4393 fs/cachefiles/daemon.c | 8 +-
4394 fs/cachefiles/internal.h | 12 +-
4395 fs/cachefiles/namei.c | 2 +-
4396 fs/cachefiles/proc.c | 12 +-
4397 fs/ceph/dir.c | 12 +-
4398 fs/ceph/super.c | 4 +-
4399 fs/cifs/cifs_debug.c | 12 +-
4400 fs/cifs/cifsfs.c | 8 +-
4401 fs/cifs/cifsglob.h | 54 +-
4402 fs/cifs/file.c | 10 +-
4403 fs/cifs/misc.c | 4 +-
4404 fs/cifs/smb1ops.c | 80 +-
4405 fs/cifs/smb2ops.c | 84 +-
4406 fs/cifs/smb2pdu.c | 3 +-
4407 fs/coda/cache.c | 10 +-
4408 fs/compat.c | 4 +-
4409 fs/compat_binfmt_elf.c | 2 +
4410 fs/compat_ioctl.c | 12 +-
4411 fs/configfs/dir.c | 10 +-
4412 fs/coredump.c | 16 +-
4413 fs/dcache.c | 51 +-
4414 fs/ecryptfs/inode.c | 2 +-
4415 fs/ecryptfs/miscdev.c | 2 +-
4416 fs/exec.c | 362 +-
4417 fs/ext2/xattr.c | 5 +-
4418 fs/ext3/xattr.c | 5 +-
4419 fs/ext4/ext4.h | 20 +-
4420 fs/ext4/mballoc.c | 44 +-
4421 fs/ext4/mmp.c | 2 +-
4422 fs/ext4/resize.c | 16 +-
4423 fs/ext4/super.c | 4 +-
4424 fs/ext4/xattr.c | 5 +-
4425 fs/fhandle.c | 3 +-
4426 fs/file.c | 4 +-
4427 fs/fs_struct.c | 8 +-
4428 fs/fscache/cookie.c | 40 +-
4429 fs/fscache/internal.h | 202 +-
4430 fs/fscache/object.c | 26 +-
4431 fs/fscache/operation.c | 38 +-
4432 fs/fscache/page.c | 110 +-
4433 fs/fscache/stats.c | 348 +-
4434 fs/fuse/cuse.c | 10 +-
4435 fs/fuse/dev.c | 4 +-
4436 fs/gfs2/glock.c | 22 +-
4437 fs/gfs2/glops.c | 4 +-
4438 fs/gfs2/quota.c | 6 +-
4439 fs/hugetlbfs/inode.c | 13 +-
4440 fs/inode.c | 4 +-
4441 fs/jffs2/erase.c | 3 +-
4442 fs/jffs2/wbuf.c | 3 +-
4443 fs/jfs/super.c | 2 +-
4444 fs/kernfs/dir.c | 2 +-
4445 fs/kernfs/file.c | 20 +-
4446 fs/libfs.c | 10 +-
4447 fs/lockd/clntproc.c | 4 +-
4448 fs/namei.c | 16 +-
4449 fs/namespace.c | 16 +-
4450 fs/nfs/callback_xdr.c | 2 +-
4451 fs/nfs/inode.c | 6 +-
4452 fs/nfsd/nfs4proc.c | 2 +-
4453 fs/nfsd/nfs4xdr.c | 2 +-
4454 fs/nfsd/nfscache.c | 11 +-
4455 fs/nfsd/vfs.c | 6 +-
4456 fs/nls/nls_base.c | 26 +-
4457 fs/nls/nls_euc-jp.c | 6 +-
4458 fs/nls/nls_koi8-ru.c | 6 +-
4459 fs/notify/fanotify/fanotify_user.c | 4 +-
4460 fs/notify/notification.c | 4 +-
4461 fs/ntfs/dir.c | 2 +-
4462 fs/ntfs/super.c | 6 +-
4463 fs/ocfs2/localalloc.c | 2 +-
4464 fs/ocfs2/ocfs2.h | 10 +-
4465 fs/ocfs2/suballoc.c | 12 +-
4466 fs/ocfs2/super.c | 20 +-
4467 fs/pipe.c | 72 +-
4468 fs/posix_acl.c | 4 +-
4469 fs/proc/array.c | 20 +
4470 fs/proc/base.c | 4 +-
4471 fs/proc/kcore.c | 34 +-
4472 fs/proc/meminfo.c | 2 +-
4473 fs/proc/nommu.c | 2 +-
4474 fs/proc/proc_sysctl.c | 26 +-
4475 fs/proc/task_mmu.c | 39 +-
4476 fs/proc/task_nommu.c | 4 +-
4477 fs/proc/vmcore.c | 16 +-
4478 fs/qnx6/qnx6.h | 4 +-
4479 fs/quota/netlink.c | 4 +-
4480 fs/read_write.c | 2 +-
4481 fs/reiserfs/do_balan.c | 2 +-
4482 fs/reiserfs/procfs.c | 2 +-
4483 fs/reiserfs/reiserfs.h | 4 +-
4484 fs/seq_file.c | 4 +-
4485 fs/splice.c | 43 +-
4486 fs/squashfs/xattr.c | 12 +-
4487 fs/sysv/sysv.h | 2 +-
4488 fs/tracefs/inode.c | 8 +-
4489 fs/ubifs/io.c | 2 +-
4490 fs/udf/misc.c | 2 +-
4491 fs/ufs/swab.h | 4 +-
4492 fs/xattr.c | 21 +
4493 fs/xfs/libxfs/xfs_bmap.c | 2 +-
4494 fs/xfs/xfs_dir2_readdir.c | 7 +-
4495 fs/xfs/xfs_ioctl.c | 2 +-
4496 fs/xfs/xfs_linux.h | 4 +-
4497 include/asm-generic/4level-fixup.h | 2 +
4498 include/asm-generic/atomic-long.h | 214 +-
4499 include/asm-generic/atomic64.h | 12 +
4500 include/asm-generic/barrier.h | 2 +-
4501 include/asm-generic/bitops/__fls.h | 2 +-
4502 include/asm-generic/bitops/fls.h | 2 +-
4503 include/asm-generic/bitops/fls64.h | 4 +-
4504 include/asm-generic/bug.h | 6 +-
4505 include/asm-generic/cache.h | 4 +-
4506 include/asm-generic/emergency-restart.h | 2 +-
4507 include/asm-generic/kmap_types.h | 4 +-
4508 include/asm-generic/local.h | 13 +
4509 include/asm-generic/pgtable-nopmd.h | 18 +-
4510 include/asm-generic/pgtable-nopud.h | 15 +-
4511 include/asm-generic/pgtable.h | 16 +
4512 include/asm-generic/uaccess.h | 16 +
4513 include/asm-generic/vmlinux.lds.h | 13 +-
4514 include/crypto/algapi.h | 2 +-
4515 include/drm/drmP.h | 16 +-
4516 include/drm/drm_crtc_helper.h | 2 +-
4517 include/drm/drm_mm.h | 2 +-
4518 include/drm/i915_pciids.h | 2 +-
4519 include/drm/intel-gtt.h | 4 +-
4520 include/drm/ttm/ttm_memory.h | 2 +-
4521 include/drm/ttm/ttm_page_alloc.h | 1 +
4522 include/keys/asymmetric-subtype.h | 2 +-
4523 include/linux/atmdev.h | 4 +-
4524 include/linux/atomic.h | 2 +-
4525 include/linux/audit.h | 2 +-
4526 include/linux/binfmts.h | 3 +-
4527 include/linux/bitmap.h | 2 +-
4528 include/linux/bitops.h | 8 +-
4529 include/linux/blkdev.h | 2 +-
4530 include/linux/blktrace_api.h | 2 +-
4531 include/linux/cache.h | 8 +
4532 include/linux/cdrom.h | 1 -
4533 include/linux/cleancache.h | 2 +-
4534 include/linux/clk-provider.h | 1 +
4535 include/linux/compat.h | 6 +-
4536 include/linux/compiler-gcc.h | 28 +-
4537 include/linux/compiler.h | 95 +-
4538 include/linux/completion.h | 12 +-
4539 include/linux/configfs.h | 2 +-
4540 include/linux/cpufreq.h | 3 +-
4541 include/linux/cpuidle.h | 5 +-
4542 include/linux/cpumask.h | 14 +-
4543 include/linux/crypto.h | 4 +-
4544 include/linux/ctype.h | 2 +-
4545 include/linux/dcache.h | 4 +-
4546 include/linux/decompress/mm.h | 2 +-
4547 include/linux/devfreq.h | 2 +-
4548 include/linux/device.h | 7 +-
4549 include/linux/dma-mapping.h | 2 +-
4550 include/linux/efi.h | 1 +
4551 include/linux/elf.h | 2 +
4552 include/linux/err.h | 4 +-
4553 include/linux/extcon.h | 2 +-
4554 include/linux/fb.h | 3 +-
4555 include/linux/fdtable.h | 2 +-
4556 include/linux/fs.h | 5 +-
4557 include/linux/fs_struct.h | 2 +-
4558 include/linux/fscache-cache.h | 2 +-
4559 include/linux/fscache.h | 2 +-
4560 include/linux/fsnotify.h | 2 +-
4561 include/linux/genhd.h | 4 +-
4562 include/linux/genl_magic_func.h | 2 +-
4563 include/linux/gfp.h | 12 +-
4564 include/linux/highmem.h | 12 +
4565 include/linux/hwmon-sysfs.h | 6 +-
4566 include/linux/i2c.h | 1 +
4567 include/linux/if_pppox.h | 2 +-
4568 include/linux/init.h | 12 +-
4569 include/linux/init_task.h | 7 +
4570 include/linux/interrupt.h | 6 +-
4571 include/linux/iommu.h | 2 +-
4572 include/linux/ioport.h | 2 +-
4573 include/linux/ipc.h | 2 +-
4574 include/linux/irq.h | 5 +-
4575 include/linux/irqdesc.h | 2 +-
4576 include/linux/irqdomain.h | 3 +
4577 include/linux/jiffies.h | 30 +-
4578 include/linux/kernel.h | 2 +-
4579 include/linux/key-type.h | 2 +-
4580 include/linux/kgdb.h | 6 +-
4581 include/linux/kmemleak.h | 4 +-
4582 include/linux/kobject.h | 3 +-
4583 include/linux/kobject_ns.h | 2 +-
4584 include/linux/kref.h | 2 +-
4585 include/linux/kvm_host.h | 4 +-
4586 include/linux/libata.h | 2 +-
4587 include/linux/linkage.h | 1 +
4588 include/linux/list.h | 15 +
4589 include/linux/lockref.h | 26 +-
4590 include/linux/math64.h | 10 +-
4591 include/linux/mempolicy.h | 7 +
4592 include/linux/mm.h | 104 +-
4593 include/linux/mm_types.h | 20 +
4594 include/linux/mmiotrace.h | 4 +-
4595 include/linux/mmzone.h | 2 +-
4596 include/linux/mod_devicetable.h | 4 +-
4597 include/linux/module.h | 69 +-
4598 include/linux/moduleloader.h | 16 +
4599 include/linux/moduleparam.h | 4 +-
4600 include/linux/net.h | 2 +-
4601 include/linux/netdevice.h | 7 +-
4602 include/linux/netfilter.h | 2 +-
4603 include/linux/netfilter/nfnetlink.h | 2 +-
4604 include/linux/nls.h | 4 +-
4605 include/linux/notifier.h | 3 +-
4606 include/linux/oprofile.h | 4 +-
4607 include/linux/padata.h | 2 +-
4608 include/linux/pci_hotplug.h | 3 +-
4609 include/linux/percpu.h | 2 +-
4610 include/linux/perf_event.h | 12 +-
4611 include/linux/pipe_fs_i.h | 8 +-
4612 include/linux/pm.h | 1 +
4613 include/linux/pm_domain.h | 4 +-
4614 include/linux/pm_runtime.h | 2 +-
4615 include/linux/pnp.h | 2 +-
4616 include/linux/poison.h | 4 +-
4617 include/linux/power/smartreflex.h | 2 +-
4618 include/linux/ppp-comp.h | 2 +-
4619 include/linux/preempt.h | 21 +
4620 include/linux/proc_ns.h | 2 +-
4621 include/linux/quota.h | 2 +-
4622 include/linux/random.h | 23 +-
4623 include/linux/rculist.h | 16 +
4624 include/linux/reboot.h | 14 +-
4625 include/linux/regset.h | 3 +-
4626 include/linux/relay.h | 2 +-
4627 include/linux/rio.h | 2 +-
4628 include/linux/rmap.h | 4 +-
4629 include/linux/sched.h | 74 +-
4630 include/linux/sched/sysctl.h | 1 +
4631 include/linux/semaphore.h | 2 +-
4632 include/linux/seq_file.h | 1 +
4633 include/linux/signal.h | 2 +-
4634 include/linux/skbuff.h | 10 +-
4635 include/linux/slab.h | 47 +-
4636 include/linux/slab_def.h | 14 +-
4637 include/linux/slub_def.h | 2 +-
4638 include/linux/smp.h | 2 +
4639 include/linux/sock_diag.h | 2 +-
4640 include/linux/sonet.h | 2 +-
4641 include/linux/sunrpc/addr.h | 8 +-
4642 include/linux/sunrpc/clnt.h | 2 +-
4643 include/linux/sunrpc/svc.h | 2 +-
4644 include/linux/sunrpc/svc_rdma.h | 18 +-
4645 include/linux/sunrpc/svcauth.h | 2 +-
4646 include/linux/swiotlb.h | 3 +-
4647 include/linux/syscalls.h | 21 +-
4648 include/linux/syscore_ops.h | 2 +-
4649 include/linux/sysctl.h | 3 +-
4650 include/linux/sysfs.h | 9 +-
4651 include/linux/sysrq.h | 3 +-
4652 include/linux/tcp.h | 14 +-
4653 include/linux/thread_info.h | 7 +
4654 include/linux/tty.h | 4 +-
4655 include/linux/tty_driver.h | 2 +-
4656 include/linux/tty_ldisc.h | 2 +-
4657 include/linux/types.h | 16 +
4658 include/linux/uaccess.h | 6 +-
4659 include/linux/uio_driver.h | 2 +-
4660 include/linux/unaligned/access_ok.h | 24 +-
4661 include/linux/usb.h | 6 +-
4662 include/linux/usb/hcd.h | 1 +
4663 include/linux/usb/renesas_usbhs.h | 2 +-
4664 include/linux/vermagic.h | 21 +-
4665 include/linux/vga_switcheroo.h | 8 +-
4666 include/linux/vmalloc.h | 7 +-
4667 include/linux/vmstat.h | 24 +-
4668 include/linux/xattr.h | 5 +-
4669 include/linux/zlib.h | 3 +-
4670 include/media/v4l2-dev.h | 2 +-
4671 include/media/v4l2-device.h | 2 +-
4672 include/net/9p/transport.h | 2 +-
4673 include/net/bluetooth/l2cap.h | 2 +-
4674 include/net/bonding.h | 2 +-
4675 include/net/caif/cfctrl.h | 6 +-
4676 include/net/flow.h | 2 +-
4677 include/net/genetlink.h | 2 +-
4678 include/net/gro_cells.h | 2 +-
4679 include/net/inet_connection_sock.h | 2 +-
4680 include/net/inet_sock.h | 2 +-
4681 include/net/inetpeer.h | 2 +-
4682 include/net/ip_fib.h | 2 +-
4683 include/net/ip_vs.h | 8 +-
4684 include/net/irda/ircomm_tty.h | 1 +
4685 include/net/iucv/af_iucv.h | 2 +-
4686 include/net/llc_c_ac.h | 2 +-
4687 include/net/llc_c_ev.h | 4 +-
4688 include/net/llc_c_st.h | 2 +-
4689 include/net/llc_s_ac.h | 2 +-
4690 include/net/llc_s_st.h | 2 +-
4691 include/net/mac80211.h | 2 +-
4692 include/net/neighbour.h | 2 +-
4693 include/net/net_namespace.h | 18 +-
4694 include/net/netlink.h | 2 +-
4695 include/net/netns/conntrack.h | 6 +-
4696 include/net/netns/ipv4.h | 4 +-
4697 include/net/netns/ipv6.h | 4 +-
4698 include/net/netns/xfrm.h | 2 +-
4699 include/net/ping.h | 2 +-
4700 include/net/protocol.h | 4 +-
4701 include/net/rtnetlink.h | 2 +-
4702 include/net/sctp/checksum.h | 4 +-
4703 include/net/sctp/sm.h | 4 +-
4704 include/net/sctp/structs.h | 2 +-
4705 include/net/sock.h | 12 +-
4706 include/net/tcp.h | 8 +-
4707 include/net/xfrm.h | 13 +-
4708 include/rdma/iw_cm.h | 2 +-
4709 include/scsi/libfc.h | 3 +-
4710 include/scsi/scsi_device.h | 6 +-
4711 include/scsi/scsi_driver.h | 2 +-
4712 include/scsi/scsi_transport_fc.h | 3 +-
4713 include/scsi/sg.h | 2 +-
4714 include/sound/compress_driver.h | 2 +-
4715 include/sound/soc.h | 4 +-
4716 include/target/target_core_base.h | 2 +-
4717 include/trace/events/irq.h | 4 +-
4718 include/uapi/linux/a.out.h | 8 +
4719 include/uapi/linux/bcache.h | 5 +-
4720 include/uapi/linux/byteorder/little_endian.h | 28 +-
4721 include/uapi/linux/connector.h | 2 +-
4722 include/uapi/linux/elf.h | 28 +
4723 include/uapi/linux/screen_info.h | 3 +-
4724 include/uapi/linux/swab.h | 6 +-
4725 include/uapi/linux/xattr.h | 4 +
4726 include/video/udlfb.h | 8 +-
4727 include/video/uvesafb.h | 1 +
4728 init/Kconfig | 2 +-
4729 init/Makefile | 3 +
4730 init/do_mounts.c | 14 +-
4731 init/do_mounts.h | 8 +-
4732 init/do_mounts_initrd.c | 30 +-
4733 init/do_mounts_md.c | 6 +-
4734 init/init_task.c | 4 +
4735 init/initramfs.c | 38 +-
4736 init/main.c | 30 +-
4737 ipc/compat.c | 4 +-
4738 ipc/ipc_sysctl.c | 8 +-
4739 ipc/mq_sysctl.c | 4 +-
4740 ipc/sem.c | 4 +-
4741 ipc/shm.c | 6 +
4742 kernel/audit.c | 8 +-
4743 kernel/auditsc.c | 4 +-
4744 kernel/bpf/core.c | 7 +-
4745 kernel/capability.c | 3 +
4746 kernel/compat.c | 38 +-
4747 kernel/debug/debug_core.c | 16 +-
4748 kernel/debug/kdb/kdb_main.c | 4 +-
4749 kernel/events/core.c | 26 +-
4750 kernel/events/internal.h | 10 +-
4751 kernel/events/uprobes.c | 2 +-
4752 kernel/exit.c | 2 +-
4753 kernel/fork.c | 165 +-
4754 kernel/futex.c | 11 +-
4755 kernel/futex_compat.c | 2 +-
4756 kernel/gcov/base.c | 7 +-
4757 kernel/irq/manage.c | 2 +-
4758 kernel/irq/msi.c | 20 +-
4759 kernel/irq/spurious.c | 2 +-
4760 kernel/jump_label.c | 5 +
4761 kernel/kallsyms.c | 37 +-
4762 kernel/kexec.c | 3 +-
4763 kernel/kmod.c | 8 +-
4764 kernel/kprobes.c | 4 +-
4765 kernel/ksysfs.c | 2 +-
4766 kernel/locking/lockdep.c | 7 +-
4767 kernel/locking/mutex-debug.c | 12 +-
4768 kernel/locking/mutex-debug.h | 4 +-
4769 kernel/locking/mutex.c | 6 +-
4770 kernel/locking/rtmutex-tester.c | 24 +-
4771 kernel/module.c | 422 +-
4772 kernel/notifier.c | 17 +-
4773 kernel/padata.c | 4 +-
4774 kernel/panic.c | 5 +-
4775 kernel/pid.c | 2 +-
4776 kernel/pid_namespace.c | 2 +-
4777 kernel/power/process.c | 12 +-
4778 kernel/profile.c | 14 +-
4779 kernel/ptrace.c | 8 +-
4780 kernel/rcu/rcutorture.c | 60 +-
4781 kernel/rcu/tiny.c | 4 +-
4782 kernel/rcu/tree.c | 66 +-
4783 kernel/rcu/tree.h | 26 +-
4784 kernel/rcu/tree_plugin.h | 14 +-
4785 kernel/rcu/tree_trace.c | 22 +-
4786 kernel/sched/auto_group.c | 4 +-
4787 kernel/sched/completion.c | 6 +-
4788 kernel/sched/core.c | 45 +-
4789 kernel/sched/fair.c | 2 +-
4790 kernel/sched/sched.h | 2 +-
4791 kernel/signal.c | 12 +-
4792 kernel/smpboot.c | 4 +-
4793 kernel/softirq.c | 12 +-
4794 kernel/sys.c | 10 +-
4795 kernel/sysctl.c | 34 +-
4796 kernel/time/alarmtimer.c | 2 +-
4797 kernel/time/posix-cpu-timers.c | 4 +-
4798 kernel/time/posix-timers.c | 24 +-
4799 kernel/time/timer.c | 4 +-
4800 kernel/time/timer_stats.c | 10 +-
4801 kernel/trace/blktrace.c | 6 +-
4802 kernel/trace/ftrace.c | 15 +-
4803 kernel/trace/ring_buffer.c | 96 +-
4804 kernel/trace/trace.c | 2 +-
4805 kernel/trace/trace.h | 2 +-
4806 kernel/trace/trace_clock.c | 4 +-
4807 kernel/trace/trace_events.c | 1 -
4808 kernel/trace/trace_functions_graph.c | 4 +-
4809 kernel/trace/trace_mmiotrace.c | 8 +-
4810 kernel/trace/trace_output.c | 10 +-
4811 kernel/trace/trace_seq.c | 2 +-
4812 kernel/trace/trace_stack.c | 2 +-
4813 kernel/user_namespace.c | 2 +-
4814 kernel/utsname_sysctl.c | 2 +-
4815 kernel/watchdog.c | 2 +-
4816 kernel/workqueue.c | 4 +-
4817 lib/Kconfig.debug | 8 +-
4818 lib/Makefile | 2 +-
4819 lib/average.c | 2 +-
4820 lib/bitmap.c | 10 +-
4821 lib/bug.c | 2 +
4822 lib/debugobjects.c | 2 +-
4823 lib/decompress_bunzip2.c | 3 +-
4824 lib/decompress_unlzma.c | 4 +-
4825 lib/div64.c | 4 +-
4826 lib/dma-debug.c | 4 +-
4827 lib/inflate.c | 2 +-
4828 lib/ioremap.c | 4 +-
4829 lib/kobject.c | 4 +-
4830 lib/list_debug.c | 126 +-
4831 lib/lockref.c | 44 +-
4832 lib/percpu-refcount.c | 2 +-
4833 lib/radix-tree.c | 2 +-
4834 lib/random32.c | 2 +-
4835 lib/show_mem.c | 2 +-
4836 lib/strncpy_from_user.c | 2 +-
4837 lib/strnlen_user.c | 2 +-
4838 lib/swiotlb.c | 2 +-
4839 lib/usercopy.c | 6 +
4840 lib/vsprintf.c | 12 +-
4841 mm/Kconfig | 6 +-
4842 mm/backing-dev.c | 4 +-
4843 mm/filemap.c | 2 +-
4844 mm/gup.c | 13 +-
4845 mm/highmem.c | 7 +-
4846 mm/hugetlb.c | 70 +-
4847 mm/internal.h | 3 +-
4848 mm/maccess.c | 4 +-
4849 mm/madvise.c | 37 +
4850 mm/memory-failure.c | 34 +-
4851 mm/memory.c | 425 +-
4852 mm/mempolicy.c | 25 +
4853 mm/mlock.c | 15 +-
4854 mm/mm_init.c | 2 +-
4855 mm/mmap.c | 582 +-
4856 mm/mprotect.c | 137 +-
4857 mm/mremap.c | 44 +-
4858 mm/nommu.c | 21 +-
4859 mm/page-writeback.c | 2 +-
4860 mm/page_alloc.c | 49 +-
4861 mm/percpu.c | 2 +-
4862 mm/process_vm_access.c | 14 +-
4863 mm/rmap.c | 45 +-
4864 mm/shmem.c | 19 +-
4865 mm/slab.c | 109 +-
4866 mm/slab.h | 22 +-
4867 mm/slab_common.c | 86 +-
4868 mm/slob.c | 218 +-
4869 mm/slub.c | 102 +-
4870 mm/sparse-vmemmap.c | 4 +-
4871 mm/sparse.c | 2 +-
4872 mm/swap.c | 2 +
4873 mm/swapfile.c | 12 +-
4874 mm/util.c | 6 +
4875 mm/vmalloc.c | 112 +-
4876 mm/vmstat.c | 12 +-
4877 net/8021q/vlan.c | 5 +-
4878 net/8021q/vlan_netlink.c | 2 +-
4879 net/9p/mod.c | 4 +-
4880 net/9p/trans_fd.c | 2 +-
4881 net/atm/atm_misc.c | 8 +-
4882 net/atm/lec.h | 2 +-
4883 net/atm/proc.c | 6 +-
4884 net/atm/resources.c | 4 +-
4885 net/ax25/sysctl_net_ax25.c | 2 +-
4886 net/batman-adv/bat_iv_ogm.c | 8 +-
4887 net/batman-adv/fragmentation.c | 2 +-
4888 net/batman-adv/soft-interface.c | 8 +-
4889 net/batman-adv/types.h | 6 +-
4890 net/bluetooth/hci_sock.c | 2 +-
4891 net/bluetooth/l2cap_core.c | 6 +-
4892 net/bluetooth/l2cap_sock.c | 12 +-
4893 net/bluetooth/rfcomm/sock.c | 4 +-
4894 net/bluetooth/rfcomm/tty.c | 4 +-
4895 net/bridge/br_netlink.c | 2 +-
4896 net/bridge/netfilter/ebtables.c | 6 +-
4897 net/caif/cfctrl.c | 11 +-
4898 net/caif/chnl_net.c | 2 +-
4899 net/can/af_can.c | 2 +-
4900 net/can/gw.c | 6 +-
4901 net/ceph/messenger.c | 4 +-
4902 net/compat.c | 24 +-
4903 net/core/datagram.c | 2 +-
4904 net/core/dev.c | 16 +-
4905 net/core/filter.c | 2 +-
4906 net/core/flow.c | 6 +-
4907 net/core/neighbour.c | 4 +-
4908 net/core/net-sysfs.c | 2 +-
4909 net/core/net_namespace.c | 8 +-
4910 net/core/netpoll.c | 4 +-
4911 net/core/rtnetlink.c | 15 +-
4912 net/core/scm.c | 8 +-
4913 net/core/skbuff.c | 8 +-
4914 net/core/sock.c | 28 +-
4915 net/core/sock_diag.c | 15 +-
4916 net/core/sysctl_net_core.c | 22 +-
4917 net/decnet/af_decnet.c | 1 +
4918 net/decnet/sysctl_net_decnet.c | 4 +-
4919 net/dsa/dsa.c | 2 +-
4920 net/hsr/hsr_netlink.c | 2 +-
4921 net/ieee802154/6lowpan/core.c | 2 +-
4922 net/ieee802154/6lowpan/reassembly.c | 14 +-
4923 net/ipv4/af_inet.c | 2 +-
4924 net/ipv4/devinet.c | 18 +-
4925 net/ipv4/fib_frontend.c | 6 +-
4926 net/ipv4/fib_semantics.c | 2 +-
4927 net/ipv4/inet_connection_sock.c | 4 +-
4928 net/ipv4/inet_timewait_sock.c | 2 +-
4929 net/ipv4/inetpeer.c | 2 +-
4930 net/ipv4/ip_fragment.c | 15 +-
4931 net/ipv4/ip_gre.c | 6 +-
4932 net/ipv4/ip_sockglue.c | 2 +-
4933 net/ipv4/ip_vti.c | 4 +-
4934 net/ipv4/ipconfig.c | 6 +-
4935 net/ipv4/ipip.c | 4 +-
4936 net/ipv4/netfilter/arp_tables.c | 12 +-
4937 net/ipv4/netfilter/ip_tables.c | 12 +-
4938 net/ipv4/ping.c | 14 +-
4939 net/ipv4/raw.c | 14 +-
4940 net/ipv4/route.c | 32 +-
4941 net/ipv4/sysctl_net_ipv4.c | 22 +-
4942 net/ipv4/tcp_input.c | 6 +-
4943 net/ipv4/tcp_probe.c | 2 +-
4944 net/ipv4/udp.c | 10 +-
4945 net/ipv4/xfrm4_policy.c | 18 +-
4946 net/ipv6/addrconf.c | 16 +-
4947 net/ipv6/af_inet6.c | 2 +-
4948 net/ipv6/datagram.c | 2 +-
4949 net/ipv6/icmp.c | 2 +-
4950 net/ipv6/ip6_fib.c | 4 +-
4951 net/ipv6/ip6_gre.c | 10 +-
4952 net/ipv6/ip6_tunnel.c | 4 +-
4953 net/ipv6/ip6_vti.c | 4 +-
4954 net/ipv6/ipv6_sockglue.c | 2 +-
4955 net/ipv6/netfilter/ip6_tables.c | 12 +-
4956 net/ipv6/netfilter/nf_conntrack_reasm.c | 14 +-
4957 net/ipv6/ping.c | 33 +-
4958 net/ipv6/raw.c | 17 +-
4959 net/ipv6/reassembly.c | 13 +-
4960 net/ipv6/route.c | 2 +-
4961 net/ipv6/sit.c | 4 +-
4962 net/ipv6/sysctl_net_ipv6.c | 2 +-
4963 net/ipv6/udp.c | 6 +-
4964 net/ipv6/xfrm6_policy.c | 23 +-
4965 net/irda/ircomm/ircomm_tty.c | 18 +-
4966 net/iucv/af_iucv.c | 4 +-
4967 net/iucv/iucv.c | 2 +-
4968 net/key/af_key.c | 4 +-
4969 net/l2tp/l2tp_eth.c | 38 +-
4970 net/l2tp/l2tp_ip.c | 2 +-
4971 net/l2tp/l2tp_ip6.c | 2 +-
4972 net/mac80211/cfg.c | 8 +-
4973 net/mac80211/ieee80211_i.h | 3 +-
4974 net/mac80211/iface.c | 20 +-
4975 net/mac80211/main.c | 2 +-
4976 net/mac80211/pm.c | 4 +-
4977 net/mac80211/rate.c | 2 +-
4978 net/mac80211/sta_info.c | 2 +-
4979 net/mac80211/util.c | 8 +-
4980 net/mpls/af_mpls.c | 6 +-
4981 net/netfilter/ipset/ip_set_core.c | 2 +-
4982 net/netfilter/ipvs/ip_vs_conn.c | 6 +-
4983 net/netfilter/ipvs/ip_vs_core.c | 4 +-
4984 net/netfilter/ipvs/ip_vs_ctl.c | 14 +-
4985 net/netfilter/ipvs/ip_vs_lblc.c | 2 +-
4986 net/netfilter/ipvs/ip_vs_lblcr.c | 2 +-
4987 net/netfilter/ipvs/ip_vs_sync.c | 6 +-
4988 net/netfilter/ipvs/ip_vs_xmit.c | 4 +-
4989 net/netfilter/nf_conntrack_acct.c | 2 +-
4990 net/netfilter/nf_conntrack_ecache.c | 2 +-
4991 net/netfilter/nf_conntrack_helper.c | 2 +-
4992 net/netfilter/nf_conntrack_proto.c | 2 +-
4993 net/netfilter/nf_conntrack_standalone.c | 2 +-
4994 net/netfilter/nf_conntrack_timestamp.c | 2 +-
4995 net/netfilter/nf_log.c | 10 +-
4996 net/netfilter/nf_sockopt.c | 4 +-
4997 net/netfilter/nfnetlink_log.c | 4 +-
4998 net/netfilter/nft_compat.c | 9 +-
4999 net/netfilter/xt_statistic.c | 8 +-
5000 net/netlink/af_netlink.c | 4 +-
5001 net/openvswitch/vport-internal_dev.c | 2 +-
5002 net/openvswitch/vport.c | 16 +-
5003 net/openvswitch/vport.h | 8 +-
5004 net/packet/af_packet.c | 8 +-
5005 net/phonet/pep.c | 6 +-
5006 net/phonet/socket.c | 2 +-
5007 net/phonet/sysctl.c | 2 +-
5008 net/rds/cong.c | 6 +-
5009 net/rds/ib.h | 2 +-
5010 net/rds/ib_cm.c | 2 +-
5011 net/rds/ib_recv.c | 4 +-
5012 net/rds/iw.h | 2 +-
5013 net/rds/iw_cm.c | 2 +-
5014 net/rds/iw_recv.c | 4 +-
5015 net/rds/rds.h | 2 +-
5016 net/rds/tcp.c | 2 +-
5017 net/rds/tcp_send.c | 2 +-
5018 net/rxrpc/af_rxrpc.c | 2 +-
5019 net/rxrpc/ar-ack.c | 14 +-
5020 net/rxrpc/ar-call.c | 2 +-
5021 net/rxrpc/ar-connection.c | 2 +-
5022 net/rxrpc/ar-connevent.c | 2 +-
5023 net/rxrpc/ar-input.c | 4 +-
5024 net/rxrpc/ar-internal.h | 8 +-
5025 net/rxrpc/ar-local.c | 2 +-
5026 net/rxrpc/ar-output.c | 4 +-
5027 net/rxrpc/ar-peer.c | 2 +-
5028 net/rxrpc/ar-proc.c | 4 +-
5029 net/rxrpc/ar-transport.c | 2 +-
5030 net/rxrpc/rxkad.c | 4 +-
5031 net/sched/sch_generic.c | 4 +-
5032 net/sctp/ipv6.c | 6 +-
5033 net/sctp/protocol.c | 10 +-
5034 net/sctp/sm_sideeffect.c | 2 +-
5035 net/sctp/socket.c | 21 +-
5036 net/sctp/sysctl.c | 10 +-
5037 net/socket.c | 18 +-
5038 net/sunrpc/auth_gss/svcauth_gss.c | 4 +-
5039 net/sunrpc/clnt.c | 4 +-
5040 net/sunrpc/sched.c | 4 +-
5041 net/sunrpc/svc.c | 4 +-
5042 net/sunrpc/svcauth_unix.c | 4 +-
5043 net/sunrpc/xprtrdma/svc_rdma.c | 38 +-
5044 net/sunrpc/xprtrdma/svc_rdma_recvfrom.c | 8 +-
5045 net/sunrpc/xprtrdma/svc_rdma_sendto.c | 2 +-
5046 net/sunrpc/xprtrdma/svc_rdma_transport.c | 10 +-
5047 net/tipc/netlink_compat.c | 12 +-
5048 net/tipc/subscr.c | 2 +-
5049 net/unix/af_unix.c | 7 +-
5050 net/unix/sysctl_net_unix.c | 2 +-
5051 net/wireless/wext-core.c | 19 +-
5052 net/xfrm/xfrm_policy.c | 16 +-
5053 net/xfrm/xfrm_state.c | 33 +-
5054 net/xfrm/xfrm_sysctl.c | 2 +-
5055 scripts/Kbuild.include | 2 +-
5056 scripts/Makefile.build | 2 +-
5057 scripts/Makefile.clean | 3 +-
5058 scripts/Makefile.host | 63 +-
5059 scripts/basic/fixdep.c | 12 +-
5060 scripts/dtc/checks.c | 14 +-
5061 scripts/dtc/data.c | 6 +-
5062 scripts/dtc/flattree.c | 8 +-
5063 scripts/dtc/livetree.c | 4 +-
5064 scripts/gcc-plugin.sh | 51 +
5065 scripts/headers_install.sh | 1 +
5066 scripts/kallsyms.c | 4 +-
5067 scripts/kconfig/lkc.h | 5 +-
5068 scripts/kconfig/menu.c | 2 +-
5069 scripts/kconfig/symbol.c | 6 +-
5070 scripts/link-vmlinux.sh | 2 +-
5071 scripts/mod/file2alias.c | 14 +-
5072 scripts/mod/modpost.c | 25 +-
5073 scripts/mod/modpost.h | 6 +-
5074 scripts/mod/sumversion.c | 2 +-
5075 scripts/module-common.lds | 4 +
5076 scripts/package/builddeb | 1 +
5077 scripts/pnmtologo.c | 6 +-
5078 scripts/sortextable.h | 6 +-
5079 scripts/tags.sh | 2 +-
5080 security/Kconfig | 691 +-
5081 security/integrity/ima/ima.h | 4 +-
5082 security/integrity/ima/ima_api.c | 2 +-
5083 security/integrity/ima/ima_fs.c | 4 +-
5084 security/integrity/ima/ima_queue.c | 2 +-
5085 security/keys/key.c | 18 +-
5086 security/selinux/avc.c | 6 +-
5087 security/selinux/include/xfrm.h | 2 +-
5088 security/yama/yama_lsm.c | 2 +-
5089 sound/aoa/codecs/onyx.c | 7 +-
5090 sound/aoa/codecs/onyx.h | 1 +
5091 sound/core/oss/pcm_oss.c | 18 +-
5092 sound/core/pcm_compat.c | 2 +-
5093 sound/core/pcm_native.c | 4 +-
5094 sound/core/sound.c | 2 +-
5095 sound/drivers/mts64.c | 14 +-
5096 sound/drivers/opl4/opl4_lib.c | 2 +-
5097 sound/drivers/portman2x4.c | 3 +-
5098 sound/firewire/amdtp.c | 4 +-
5099 sound/firewire/amdtp.h | 4 +-
5100 sound/firewire/isight.c | 10 +-
5101 sound/firewire/scs1x.c | 8 +-
5102 sound/oss/sb_audio.c | 2 +-
5103 sound/oss/swarm_cs4297a.c | 6 +-
5104 sound/pci/hda/hda_codec.c | 2 +-
5105 sound/pci/ymfpci/ymfpci.h | 2 +-
5106 sound/pci/ymfpci/ymfpci_main.c | 12 +-
5107 sound/soc/soc-ac97.c | 6 +-
5108 sound/soc/xtensa/xtfpga-i2s.c | 2 +-
5109 tools/gcc/Makefile | 42 +
5110 tools/gcc/checker_plugin.c | 150 +
5111 tools/gcc/colorize_plugin.c | 215 +
5112 tools/gcc/constify_plugin.c | 564 +
5113 tools/gcc/gcc-common.h | 790 +
5114 tools/gcc/initify_plugin.c | 450 +
5115 tools/gcc/kallocstat_plugin.c | 188 +
5116 tools/gcc/kernexec_plugin.c | 551 +
5117 tools/gcc/latent_entropy_plugin.c | 470 +
5118 tools/gcc/size_overflow_plugin/.gitignore | 2 +
5119 tools/gcc/size_overflow_plugin/Makefile | 26 +
5120 .../disable_size_overflow_hash.data |11008 ++++++++++++++
5121 .../generate_size_overflow_hash.sh | 103 +
5122 .../insert_size_overflow_asm.c | 409 +
5123 .../size_overflow_plugin/intentional_overflow.c | 980 ++
5124 .../size_overflow_plugin/remove_unnecessary_dup.c | 137 +
5125 tools/gcc/size_overflow_plugin/size_overflow.h | 329 +
5126 .../gcc/size_overflow_plugin/size_overflow_debug.c | 192 +
5127 .../size_overflow_plugin/size_overflow_hash.data |15719 ++++++++++++++++++++
5128 .../size_overflow_hash_aux.data | 92 +
5129 tools/gcc/size_overflow_plugin/size_overflow_ipa.c | 1373 ++
5130 .../gcc/size_overflow_plugin/size_overflow_misc.c | 505 +
5131 .../size_overflow_plugin/size_overflow_plugin.c | 318 +
5132 .../size_overflow_plugin_hash.c | 353 +
5133 .../size_overflow_plugin/size_overflow_transform.c | 576 +
5134 .../size_overflow_transform_core.c | 962 ++
5135 tools/gcc/stackleak_plugin.c | 436 +
5136 tools/gcc/structleak_plugin.c | 287 +
5137 tools/include/linux/compiler.h | 8 +
5138 tools/lib/api/Makefile | 2 +-
5139 tools/perf/util/include/asm/alternative-asm.h | 3 +
5140 tools/virtio/linux/uaccess.h | 2 +-
5141 virt/kvm/kvm_main.c | 44 +-
5142 1963 files changed, 60342 insertions(+), 8946 deletions(-)