1160 Commits
Author SHA1 Message Date
Greg Kroah-Hartman dec1dc2a0e Linux 4.4.67 2017-05-08 07:46:17 +02:00
Greg Kroah-Hartman 0c49a2c16c Linux 4.4.66 2017-05-02 21:20:09 -07:00
Greg Kroah-Hartman 418b99042b Linux 4.4.65 2017-04-30 05:50:11 +02:00
Greg Kroah-Hartman 12f4e1f54a Linux 4.4.64 2017-04-27 09:09:53 +02:00
Greg Kroah-Hartman 81af21fe95 Linux 4.4.63 2017-04-21 09:30:24 +02:00
Greg Kroah-Hartman a80c068fbf Linux 4.4.62 2017-04-18 07:15:37 +02:00
Greg Kroah-Hartman ec5e61608a Linux 4.4.61 2017-04-12 12:38:50 +02:00
Greg Kroah-Hartman 8f8ee9706b Linux 4.4.60 2017-04-08 09:53:53 +02:00
Greg Kroah-Hartman 61a4577c9a Linux 4.4.59 2017-03-31 10:17:09 +02:00
Greg Kroah-Hartman 0a5766a6a7 Linux 4.4.58 2017-03-30 09:36:33 +02:00
Greg Kroah-Hartman a5c3f390eb Linux 4.4.57 2017-03-26 12:13:55 +02:00
Greg Kroah-Hartman 0136bca4e0 Linux 4.4.56 2017-03-22 12:17:51 +01:00
Greg Kroah-Hartman 28ec98bc2e Linux 4.4.55 2017-03-18 19:10:23 +08:00
Greg Kroah-Hartman 804a935963 Linux 4.4.54 2017-03-15 09:57:56 +08:00
Greg Kroah-Hartman 49616e7150 Linux 4.4.53 2017-03-12 06:37:49 +01:00
Greg Kroah-Hartman dd4534d88b Linux 4.4.52 2017-02-26 11:08:29 +01:00
Greg Kroah-Hartman f1924ac09c Linux 4.4.51 2017-02-23 17:43:20 +01:00
Greg Kroah-Hartman c50b74d886 Linux 4.4.50 2017-02-18 16:39:37 +01:00
Greg Kroah-Hartman 702c0ce9a7 Linux 4.4.49 2017-02-14 15:23:09 -08:00
Greg Kroah-Hartman 6a1bd90632 Linux 4.4.48 2017-02-09 08:02:59 +01:00
Greg Kroah-Hartman 4686ea264f Linux 4.4.47 2017-02-04 09:45:26 +01:00
Greg Kroah-Hartman 6c1ed78cb0 Linux 4.4.46 2017-02-01 08:31:11 +01:00
Greg Kroah-Hartman ef30573ef2 Linux 4.4.45 2017-01-26 08:24:03 +01:00
Greg Kroah-Hartman a7dd347a67 Linux 4.4.44 2017-01-20 10:56:50 +01:00
Greg Kroah-Hartman d9ea51a9be Linux 4.4.43 2017-01-15 13:41:49 +01:00
Greg Kroah-Hartman 49c4446a2e Linux 4.4.42 2017-01-12 11:23:02 +01:00
Greg Kroah-Hartman cdd86b9722 Linux 4.4.41 2017-01-09 08:08:10 +01:00
Greg Kroah-Hartman a3edc7b2e5 Linux 4.4.40 2017-01-06 11:16:31 +01:00
Greg Kroah-Hartman a34f0e8a2f Linux 4.4.39 2016-12-15 08:49:34 -08:00
Greg Kroah-Hartman c95b7f1fab Linux 4.4.38 2016-12-10 19:08:05 +01:00
Greg Kroah-Hartman e5f84c1444 Linux 4.4.37 2016-12-08 07:15:46 +01:00
Greg Kroah-Hartman 87c6c6ef5b Linux 4.4.36 2016-12-02 09:09:18 +01:00
Greg Kroah-Hartman 0a5b451a53 Linux 4.4.35 2016-11-26 09:55:04 +01:00
Borislav Petkov 147117cf23 kbuild: Steal gcc's pie from the very beginning
commit c6a3855391 upstream.

So Sebastian turned off the PIE for kernel builds but that was too late
- Kbuild.include already uses KBUILD_CFLAGS and trying to disable gcc
options with, say cc-disable-warning, fails:

  gcc -D__KERNEL__ -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs
  ...
  -Wno-sign-compare -fno-asynchronous-unwind-tables -Wframe-address -c -x c /dev/null -o .31392.tmp
  /dev/null:1:0: error: code model kernel does not support PIC mode

because that returns an error and we can't disable the warning. For
example in this case:

KBUILD_CFLAGS   += $(call cc-disable-warning,frame-address,)

which leads to gcc issuing all those warnings again.

So let's turn off PIE/PIC at the earliest possible moment, when we
declare KBUILD_CFLAGS so that cc-disable-warning picks it up too.

Also, we need the $(call cc-option ...) because -fno-PIE is supported
since gcc v3.4 and our lowest supported gcc version is 3.2 right now.

Signed-off-by: Borislav Petkov <bp@suse.de>
Cc: Ben Hutchings <ben@decadent.org.uk>
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Michal Marek <mmarek@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-11-26 09:54:52 +01:00
Sebastian Andrzej Siewior f740b5cc39 kbuild: add -fno-PIE
commit 8ae94224c9 upstream.

Debian started to build the gcc with -fPIE by default so the kernel
build ends before it starts properly with:
|kernel/bounds.c:1:0: error: code model kernel does not support PIC mode

Also add to KBUILD_AFLAGS due to:

|gcc -Wp,-MD,arch/x86/entry/vdso/vdso32/.note.o.d … -mfentry -DCC_USING_FENTRY … vdso/vdso32/note.S
|arch/x86/entry/vdso/vdso32/note.S:1:0: sorry, unimplemented: -mfentry isn’t supported for 32-bit in combination with -fpic

Tagging it stable so it is possible to compile recent stable kernels as
well.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Michal Marek <mmarek@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-11-26 09:54:52 +01:00
Greg Kroah-Hartman 4eb9a81002 Linux 4.4.34 2016-11-21 10:06:53 +01:00
Greg Kroah-Hartman 86429bd405 Linux 4.4.33 2016-11-18 10:49:03 +01:00
Greg Kroah-Hartman 4dab3e4df9 Linux 4.4.32 2016-11-15 07:47:35 +01:00
Greg Kroah-Hartman beb996c1c3 Linux 4.4.31 2016-11-10 16:37:00 +01:00
Linus Torvalds 1d79b67c4a Disable "frame-address" warning
commit 124a3d88fa upstream.

Newer versions of gcc warn about the use of __builtin_return_address()
with a non-zero argument when "-Wall" is specified:

  kernel/trace/trace_irqsoff.c: In function ‘stop_critical_timings’:
  kernel/trace/trace_irqsoff.c:433:86: warning: calling ‘__builtin_return_address’ with a nonzero argument is unsafe [-Wframe-address]
     stop_critical_timing(CALLER_ADDR0, CALLER_ADDR1);
  [ .. repeats a few times for other similar cases .. ]

It is true that a non-zero argument is somewhat dangerous, and we do not
actually have very many uses of that in the kernel - but the ftrace code
does use it, and as Stephen Rostedt says:

 "We are well aware of the danger of using __builtin_return_address() of
  > 0.  In fact that's part of the reason for having the "thunk" code in
  x86 (See arch/x86/entry/thunk_{64,32}.S).  [..] it adds extra frames
  when tracking irqs off sections, to prevent __builtin_return_address()
  from accessing bad areas.  In fact the thunk_32.S states: 'Trampoline to
  trace irqs off.  (otherwise CALLER_ADDR1 might crash)'."

For now, __builtin_return_address() with a non-zero argument is the best
we can do, and the warning is not helpful and can end up making people
miss other warnings for real problems.

So disable the frame-address warning on compilers that need it.

Acked-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-11-10 16:36:36 +01:00
Greg Kroah-Hartman 887b692a46 Linux 4.4.30 2016-10-31 19:56:58 -06:00
Greg Kroah-Hartman acd21d8482 Linux 4.4.29 2016-10-31 06:15:26 -06:00
Greg Kroah-Hartman c843445f19 Linux 4.4.28 2016-10-28 03:53:25 -04:00
Greg Kroah-Hartman 3afd8362fa Linux 4.4.27 2016-10-22 12:27:13 +02:00
Greg Kroah-Hartman 4ad454918b Linux 4.4.26 2016-10-20 10:01:03 +02:00
Greg Kroah-Hartman 6c789d9edd Linux 4.4.25 2016-10-16 17:48:03 +02:00
Greg Kroah-Hartman 11bfbae194 Linux 4.4.24 2016-10-07 15:23:59 +02:00
Greg Kroah-Hartman d19e48fe5d Linux 4.4.23 2016-09-30 10:20:43 +02:00
Steven Rostedt a52031beb0 Makefile: Mute warning for __builtin_return_address(>0) for tracing only
commit 377ccbb483 upstream.

With the latest gcc compilers, they give a warning if
__builtin_return_address() parameter is greater than 0. That is because if
it is used by a function called by a top level function (or in the case of
the kernel, by assembly), it can try to access stack frames outside the
stack and crash the system.

The tracing system uses __builtin_return_address() of up to 2! But it is
well aware of the dangers that it may have, and has even added precautions
to protect against it (see the thunk code in arch/x86/entry/thunk*.S)

Linus originally added KBUILD_CFLAGS that would suppress the warning for the
entire kernel, as simply adding KBUILD_CFLAGS to the tracing directory
wouldn't work. The tracing directory plays a bit with the CFLAGS and
requires a little more logic.

This adds that special logic to only suppress the warning for the tracing
directory. If it is used anywhere else outside of tracing, the warning will
still be triggered.

Link: http://lkml.kernel.org/r/20160728223043.51996267@grimm.local.home

Tested-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-09-30 10:18:35 +02:00
Linus Torvalds a521e942bd Disable "frame-address" warning
commit 124a3d88fa upstream.

Newer versions of gcc warn about the use of __builtin_return_address()
with a non-zero argument when "-Wall" is specified:

  kernel/trace/trace_irqsoff.c: In function ‘stop_critical_timings’:
  kernel/trace/trace_irqsoff.c:433:86: warning: calling ‘__builtin_return_address’ with a nonzero argument is unsafe [-Wframe-address]
     stop_critical_timing(CALLER_ADDR0, CALLER_ADDR1);
  [ .. repeats a few times for other similar cases .. ]

It is true that a non-zero argument is somewhat dangerous, and we do not
actually have very many uses of that in the kernel - but the ftrace code
does use it, and as Stephen Rostedt says:

 "We are well aware of the danger of using __builtin_return_address() of
  > 0.  In fact that's part of the reason for having the "thunk" code in
  x86 (See arch/x86/entry/thunk_{64,32}.S).  [..] it adds extra frames
  when tracking irqs off sections, to prevent __builtin_return_address()
  from accessing bad areas.  In fact the thunk_32.S states: 'Trampoline to
  trace irqs off.  (otherwise CALLER_ADDR1 might crash)'."

For now, __builtin_return_address() with a non-zero argument is the best
we can do, and the warning is not helpful and can end up making people
miss other warnings for real problems.

So disable the frame-address warning on compilers that need it.

Acked-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-09-30 10:18:35 +02:00