summaryrefslogtreecommitdiff
path: root/Makefile
AgeCommit message (Collapse)Author
2018-02-13Linux 3.16.54v3.16.54Ben Hutchings
2018-01-09Linux 3.16.53v3.16.53Ben Hutchings
2018-01-01Linux 3.16.52v3.16.52Ben Hutchings
2017-11-26Linux 3.16.51v3.16.51Ben Hutchings
2017-11-11Linux 3.16.50v3.16.50Ben Hutchings
2017-11-11Disable "frame-address" warningLinus Torvalds
commit 124a3d88fa20e1869fc229d7d8c740cc81944264 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> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
2017-10-12Linux 3.16.49v3.16.49Ben Hutchings
2017-09-15Linux 3.16.48v3.16.48Ben Hutchings
2017-08-26Linux 3.16.47v3.16.47Ben Hutchings
2017-07-18Linux 3.16.46v3.16.46Ben Hutchings
2017-07-02Linux 3.16.45v3.16.45Ben Hutchings
2017-06-05Linux 3.16.44v3.16.44Ben Hutchings
2017-04-04Linux 3.16.43v3.16.43Ben Hutchings
2017-03-16Linux 3.16.42v3.16.42Ben Hutchings
2017-02-26Linux 3.16.41v3.16.41Ben Hutchings
2017-02-23Linux 3.16.40v3.16.40Ben Hutchings
2017-02-23kbuild: Steal gcc's pie from the very beginningBorislav Petkov
commit c6a385539175ebc603da53aafb7753d39089f32e 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> [bwh: Backported to 3.16: adjust context] Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
2017-02-23kbuild: add -fno-PIESebastian Andrzej Siewior
commit 8ae94224c9d72fc4d9aaac93b2d7833cf46d7141 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> [bwh: Backported to 3.16: adjust context] Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
2016-11-20Linux 3.16.39v3.16.39Ben Hutchings
2016-10-20Linux 3.16.38v3.16.38Ben Hutchings
2016-08-22Linux 3.16.37v3.16.37Ben Hutchings
2016-08-22kbuild: move -Wunused-const-variable to W=1 warning levelArnd Bergmann
commit c9c6837d39311b0cc14cdbe7c18e815ab44aefb1 upstream. gcc-6 started warning by default about variables that are not used anywhere and that are marked 'const', generating many false positives in an allmodconfig build, e.g.: arch/arm/mach-davinci/board-da830-evm.c:282:20: warning: 'da830_evm_emif25_pins' defined but not used [-Wunused-const-variable=] arch/arm/plat-omap/dmtimer.c:958:34: warning: 'omap_timer_match' defined but not used [-Wunused-const-variable=] drivers/bluetooth/hci_bcm.c:625:39: warning: 'acpi_bcm_default_gpios' defined but not used [-Wunused-const-variable=] drivers/char/hw_random/omap-rng.c:92:18: warning: 'reg_map_omap4' defined but not used [-Wunused-const-variable=] drivers/devfreq/exynos/exynos5_bus.c:381:32: warning: 'exynos5_busfreq_int_pm' defined but not used [-Wunused-const-variable=] drivers/dma/mv_xor.c:1139:34: warning: 'mv_xor_dt_ids' defined but not used [-Wunused-const-variable=] This is similar to the existing -Wunused-but-set-variable warning that was added in an earlier release and that we disable by default now and only enable when W=1 is set, so it makes sense to do the same here. Once we have eliminated the majority of the warnings for both, we can put them back into the default list. We probably want this in backport kernels as well, to allow building them with gcc-6 without introducing extra warnings. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Olof Johansson <olof@lixom.net> Acked-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Michal Marek <mmarek@suse.com> Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
2016-08-22gcov: disable tree-loop-im to reduce stack usageArnd Bergmann
commit c87bf431448b404a6ef5fbabd74c0e3e42157a7f upstream. Enabling CONFIG_GCOV_PROFILE_ALL produces us a lot of warnings like lib/lz4/lz4hc_compress.c: In function 'lz4_compresshcctx': lib/lz4/lz4hc_compress.c:514:1: warning: the frame size of 1504 bytes is larger than 1024 bytes [-Wframe-larger-than=] After some investigation, I found that this behavior started with gcc-4.9, and opened https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69702. A suggested workaround for it is to use the -fno-tree-loop-im flag that turns off one of the optimization stages in gcc, so the code runs a little slower but does not use excessive amounts of stack. We could make this conditional on the gcc version, but I could not find an easy way to do this in Kbuild and the benefit would be fairly small, given that most of the gcc version in production are affected now. I'm marking this for 'stable' backports because it addresses a bug with code generation in gcc that exists in all kernel versions with the affected gcc releases. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Peter Oberparleiter <oberpar@linux.vnet.ibm.com> Signed-off-by: Michal Marek <mmarek@suse.com> [bwh: Backported to 3.16: adjust context] Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
2016-06-15Linux 3.16.36v3.16.36Ben Hutchings
2016-05-01Linux 3.16.35v3.16.35Ben Hutchings
2016-04-15Linux 3.16.7-ckt27Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2016-03-29Linux 3.16.7-ckt26Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2016-03-02Linux 3.16.7-ckt25Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2016-02-07Linux 3.16.7-ckt24Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2016-01-28Linux 3.16.7-ckt23Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2016-01-11Linux 3.16.7-ckt22Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2015-12-14Linux 3.16.7-ckt21Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2015-11-18Linux 3.16.7-ckt20Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2015-10-30Linux 3.16.7-ckt19Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2015-10-06Linux 3.16.7-ckt18Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2015-09-11Linux 3.16.7-ckt17Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2015-08-20Linux 3.16.7-ckt16Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2015-08-10kbuild: Allow arch Makefiles to override {cpp,ld,c}flagsMichal Marek
commit 61754c18752ffb78145671e94f053fb202fff041 upstream. Since commit a1c48bb1 (Makefile: Fix unrecognized cross-compiler command line options), the arch Makefile is included earlier by the main Makefile, preventing the arc architecture to set its -O3 compiler option. Since there might be more use cases for an arch Makefile to fine-tune the options, add support for ARCH_CPPFLAGS, ARCH_AFLAGS and ARCH_CFLAGS variables that are appended to the respective kbuild variables. The user still has the final say via the KCPPFLAGS, KAFLAGS and KCFLAGS variables. Reported-by: Vineet Gupta <Vineet.Gupta1@synopsys.com> Signed-off-by: Michal Marek <mmarek@suse.com> [ luis: backported to 3.16: adjusted context ] Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2015-07-20Linux 3.16.7-ckt15Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2015-06-30Linux 3.16.7-ckt14Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2015-06-11Linux 3.16.7-ckt13Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2015-05-28kernel: use the gnu89 standard explicitlyKirill A. Shutemov
commit 51b97e354ba9fce1890cf38ecc754aa49677fc89 upstream. Sasha Levin reports: "gcc5 changes the default standard to c11, which makes kernel build unhappy Explicitly define the kernel standard to be gnu89 which should keep everything working exactly like it was before gcc5" There are multiple small issues with the new default, but the biggest issue seems to be that the old - and very useful - GNU extension to allow a cast in front of an initializer has gone away. Patch updated by Kirill: "I'm pretty sure all gcc versions you can build kernel with supports -std=gnu89. cc-option is redunrant. We also need to adjust HOSTCFLAGS otherwise allmodconfig fails for me" Note by Andrew Pinski: "Yes it was reported and both problems relating to this extension has been added to gnu99 and gnu11. Though there are other issues with the kernel dealing with extern inline have different semantics between gnu89 and gnu99/11" End result: we may be able to move up to a newer stdc model eventually, but right now the newer models have some annoying deficiencies, so the traditional "gnu89" model ends up being the preferred one. Signed-off-by: Sasha Levin <sasha.levin@oracle.com> Singed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Cc: Philip Müller <philm@manjaro.org> Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2015-05-28Linux 3.16.7-ckt12Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2015-05-12Linux 3.16.7-ckt11Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2015-04-27Linux 3.16.7-ckt10Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2015-03-30Linux 3.16.7-ckt9Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2015-03-11Linux 3.16.7-ckt8Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2015-02-24Linux 3.16.7-ckt7Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2015-02-10Linux 3.16.7-ckt6Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
2015-02-02Linux 3.16.7-ckt5Luis Henriques
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>