Commit Graph

965 Commits

Author SHA1 Message Date
Bernd Kuhls
073d6dbcb1 {linux, linux-headers}: bump 4.{14, 19}.x / 5.{4, 10, 15}.x / 6.{1, 3}.x series
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2023-06-02 20:48:13 +02:00
Bernd Kuhls
4030a7eb59 package/linux-headers: drop 6.2.x option
The 6.2.x series is now EOL upstream, so drop the linux-headers option
and add legacy handling for it.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2023-05-27 11:54:08 +02:00
Bernd Kuhls
c27bf8881d {linux, linux-headers}: bump 4.{14, 19}.x / 5.{4, 10, 15}.x / 6.{1, 2, 3}.x series
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2023-05-27 11:47:25 +02:00
Andreas Ziegler
142e574d5f linux/linux.mk: fix commit d06dca38bb - remove extra bracket
Commit d06dca38bb (linux: cleanup
kconfig fixup processing) moved the initramfs setup out of an
enclosing statement but kept the closing bracket.

Remove the extra bracket to fix a syntax error in sed processing.

Fixes:
  >>> linux 6.4-rc1 Updating kernel config with fixups
  /bin/bash: -c: line 1: syntax error near unexpected token `)'
  /bin/bash: -c: line 1: `/usr/bin/sed -i -e '/^\(# \)\?CONFIG_INITRAMFS_ROOT_GID\>/d' /home/data/buildroot.experimental/build/linux-6.4-rc1//.config && echo 'CONFIG_INITRAMFS_ROOT_GID=0' >> /home/data/buildroot.experimental/build/linux-6.4-rc1//.config)'

Signed-off-by: Andreas Ziegler <br015@umbiko.net>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2023-05-12 17:23:11 +02:00
Bernd Kuhls
9868d37f5c {linux, linux-headers}: 5.15.x / 6.{1, 2, 3}.x series
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2023-05-11 22:23:38 +02:00
Yann E. MORIN
0a5d8d5f85 linux: use positive logic to define initramfs fixups
Commit d06dca38bb (linux: cleanup kconfig fixup processing) introduced
the conditional LINUX_KCONFIG_FIXUP_CMDS_ROOTFS_CPIO, using a negative
logic condition.

Switch that to use positive logic.

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2023-05-07 23:09:47 +02:00
James Knight
d06dca38bb linux: cleanup kconfig fixup processing
The following is an attempt o cleanup the output generated when fixing
up a Linux's Kconfig:

- Quiet the conditional check host-pahole to avoid having the message
   used to describe a failure generate in the output in its script form.
- Move the initramfs fixups to their own conditional macros, and move
   the comments out of the macro (mainly for developers managing the
   implementation).
- Adding a generic "Updating kernel config..." message, to help inform
   builders that the framework is actively processing Kconfig's (while
   users may be pondering why the closing of a `linux-menuconfig` is
   doing).

Signed-off-by: James Knight <james.d.knight@live.com>
[yann.morin.1998@free.fr:
  - introduce LINUX_KCONFIG_FIXUP_CMDS_ROOTFS_CPIO
  - use MESSAGE to display... a message...
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2023-05-07 22:59:42 +02:00
Bernd Kuhls
773a6fb1b2 {linux, linux-headers}: 5.15.x / 6.{1, 2, 3}.x series
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2023-05-04 22:06:31 +02:00
Bernd Kuhls
a4233a5949 linux: bump latest version to 6.3
We do not need to add a hash for 6.3, as it was already added in
eadff4efe9 ({toolchain, linux-headers}: add support for 6.3 headers).

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
[yann.morin.1998@free.fr: explain why no hash update]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2023-05-04 22:05:17 +02:00
Bernd Kuhls
eadff4efe9 {toolchain, linux-headers}: add support for 6.3 headers
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2023-04-30 22:42:00 +02:00
Bernd Kuhls
b73d16cdcf {toolchain, linux-headers}: add support for 6.2 headers
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2023-04-30 22:41:39 +02:00
Bernd Kuhls
d79fce3edd {linux, linux-headers}: bump 4.{14, 19}.x / 5.{4, 10, 15}.x / 6.1.x series
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2023-04-30 22:41:21 +02:00
Oleg Lyovin
0b9efc991f linux: use BR2_MAKE
Since kernel version 6.2, the minimum GNU Make version is 3.82 [1]. We
have an optional host-make 4.0 minimum dependency, so we can use it as
is. It's a bit unfortunate that we have to apply this even to older
kernel versions, but make itself builds fairly fast compared to the
kernel.

Use BR2_MAKE and BR2_MAKE1 for linux, and depend on
BR2_MAKE_HOST_DEPENDENCY. In addition, we need to set LINUX_MAKE to
BR2_MAKE for use in the kconfig infrastructure.

Signed-off-by: Oleg Lyovin <ovlevin@sberdevices.ru>
Signed-off-by: Arnout Vandecappelle <arnout@mind.be>
2023-04-10 17:24:15 +02:00
Lang Daniel
37be4bda85 linux: use -isystem instead of -I in HOSTCC
A package might install headers that are incompatible with the kernel's
header. One example is the most recent version of pahole (1.24).
HOST_CC includes -I$(HOST_DIR)/include which comes before any include
logic the kernel might have thus forcing the kernel to prefer headers in
HOST_DIR.

The logic to substituting -I with -isystem is taken from
boot/uboot/uboot.mk.

Signed-off-by: Daniel Lang <d.lang@abatec.at>
Reviewed-by: Francis Laniel <flaniel@linux.microsoft.com>
Tested-by: Francis Laniel <flaniel@linux.microsoft.com>
Signed-off-by: Arnout Vandecappelle <arnout@mind.be>
2023-03-10 21:44:10 +01:00
Fabrice Fontaine
08a52da205 linux: fix CIP RT kernel on microblaze
Fix the following build failure with CIP RT kernel on microblaze raised
since bump to version 5.10.83-cip1-rt1 in commit
b5778d7b76 and
https://git.kernel.org/pub/scm/linux/kernel/git/cip/linux-cip.git/commit/?id=32ac92b5a39e2ef91308929bf5ed0804094b4183:

arch/microblaze/mm/init.c:71:2: error: #endif without #if
   71 | #endif /* CONFIG_HIGHMEM */
      |  ^~~~~

Fixes:
 - http://autobuild.buildroot.org/results/27291870cf7539d26e45c45f34322d24a6dbca33

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2023-03-07 22:22:20 +01:00
Lang Daniel
159df6a531 {linux, linux-headers}: bump 4.{14, 19}.x / 5.{4, 10, 15}.x / 6.1.x series
Signed-off-by: Daniel Lang <d.lang@abatec.at>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2023-02-27 15:48:43 +01:00
Peter Korsgaard
e2b70aa949 package/linux-headers: drop 6.0.x option
The 6.0.x series is now EOL upstream, so drop the linux-headers option and
add legacy handling for it.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2023-02-14 18:12:17 +01:00
Peter Korsgaard
6634710cdb package/linux-headers: drop 4.9.x option
The 4.9.x series is now EOL upstream, so drop the linux-headers option and
add legacy handling for it.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2023-02-14 18:12:05 +01:00
Peter Korsgaard
36a8be4770 {linux, linux-headers}: bump 4.{14, 19}.x / 5.{4, 10, 15}.x / 6.1.x series
4.9.x / 6.0.x is now EOL.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2023-02-14 18:11:38 +01:00
Angelo Compagnucci
3274404b36 linux: bump CIP kernel to version 5.10.162-cip24
Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2023-02-06 17:42:59 +01:00
Peter Korsgaard
def789059a {linux, linux-headers}: bump 4.{14, 19}.x / 5.{4, 10, 15}.x / 6.1.x series
4.9.x / 6.0.x is now EOL.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2023-02-03 08:32:00 +01:00
Peter Korsgaard
479b042433 {linux, linux-headers}: bump 4.9.x / 5.{10, 15}.x / 6.{0, 1}.x series
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2023-01-13 11:21:08 +01:00
Bernd Kuhls
a94567b4b5 {linux, linux-headers}: bump 5.15.x / 6.{0, 1}.x series
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2023-01-03 13:58:19 +01:00
Julien Olivain
e75f396208 linux: fix builds for kernels < 5.6 and host-gcc >= 10
During a linux-backports update, it was found that kernel v3.10.108 was
failing to compile. See:
https://lists.buildroot.org/pipermail/buildroot/2022-August/649507.html

This issue was introduced by commit 9b41b54be0
"linux: fix build with host-gcc 10+", which removes all declarations of
"yylloc" symbols in the dtc parser. This symbol is generated by bison, if the
"%locations" directive is provided in the parser. See:
https://git.savannah.gnu.org/cgit/bison.git/tree/doc/bison.texi?h=v3.8.2#n5984

Kernel versions < 5.6 did not include this directive, so removing all
yylloc declararions in the parser also was failing for those version.

In the kernel, dtc was updated to v1.5.1-22-gc40aeb60b47a in:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=0cec114e36606412908a35695a5db944cec2e3db
This commit is included in kernel v5.6.

This dtc update include the dtc commit:
https://git.kernel.org/pub/scm/utils/dtc/dtc.git/commit/?id=7150286225476345bd6e7312331e3baf4d621c32
which adds the '%locations' directive.

This commit fixes the issue by programmatically adding the '%locations'
Bison directive, if it's not found in the parser file.

Fixes:
- https://bugs.busybox.net/show_bug.cgi?id=14971

Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2022-12-31 20:24:32 +01:00
Bernd Kuhls
0245d30e56 {linux, linux-headers}: 5.{4, 10, 15}.x / 6.{0, 1}.x series
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2022-12-22 08:39:31 +01:00
Bernd Kuhls
78504fca92 linux: bump _KERNEL_LATEST_VERSION to 6.1
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2022-12-18 14:57:08 +01:00
Bernd Kuhls
79bb1ab519 {toolchain, linux-headers}: add support for 6.1 headers
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2022-12-18 14:56:37 +01:00
Bernd Kuhls
298bcb0455 {linux, linux-headers}: bump 4.{9, 14, 19}.x / 5.{4, 10, 15}.x / 6.0.x series
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2022-12-18 14:56:15 +01:00
Bernd Kuhls
5449ea7d20 package/linux-headers: drop 5.19.x option
The 5.19.x series is now EOL upstream, so drop the linux-headers option and
add legacy handling for it.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2022-12-11 11:32:26 +01:00
Bernd Kuhls
6936ec7ec6 {linux, linux-headers}: bump 4.{9, 14, 19}.x / 5.{4, 10, 15}.x / 6.0.x series
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2022-12-11 11:32:26 +01:00
Peter Korsgaard
f157a11362 {linux, linux-headers}: bump 4.{9, 14, 19}.x / 5.{4, 10, 15, 19}.x / 6.0.x series
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2022-11-23 11:01:46 +01:00
Nuno Gonçalves
a848418db4 package/linux: don't leak host timezone into linux version string
Signed-off-by: Nuno Gonçalves <nunog@fr24.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2022-11-05 15:09:33 +01:00
Peter Korsgaard
716b8c4e7b {linux, linux-headers}: bump 4.{9, 14, 19}.x / 5.{4, 10, 15}.x / 6.0.x series
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2022-10-15 18:49:27 +02:00
Angelo Compagnucci
baca1e12ba linux: update cip/cip-rt kernels to version 5.10.145-cip17
Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2022-10-06 19:55:21 +02:00
Peter Korsgaard
374e39b634 linux: bump _KERNEL_LATEST_VERSION to 6.0
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2022-10-06 19:53:44 +02:00
Peter Korsgaard
4613b7aaf0 {toolchain, linux-headers}: add support for 6.0 headers
And add (and default to) 6.0 to linux-headers.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2022-10-06 19:53:40 +02:00
Peter Korsgaard
0551f23b05 {toolchain, linux-headers}: add support for 5.19 headers
And add (and default to) 5.19.13 to linux-headers.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2022-10-06 19:53:35 +02:00
Peter Korsgaard
49f661e548 {linux, linux-headers}: bump 4.{9, 14, 19}.x / 5.{4, 10, 15}.x series
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2022-09-09 21:48:51 +02:00
Peter Korsgaard
2bc9cac446 {linux, linux-headers}: bump 4.{9, 14, 19}.x / 5.{4, 10, 15}.x series
5.17.x is EOL.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2022-09-04 09:51:20 +02:00
Francois Perrad
0276a6fccf linux/linux: fix firmware-imx dependency
Commit 666084f494 ("linux:linux.mk: Add
"firmware-imx" dependency if needed") introduced a dependency from
linux to firmware-imx, but based on the incorrect BR2 option.

This commit fixes this mistake.

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2022-08-14 12:28:25 +02:00
Thomas Petazzoni
dcb74db89e arch: add support for configurable page size on ARM64
This commit is based on earlier work from Łukasz Stelmach
<l.stelmach@samsung.com> to add support for different page sizes on
ARM64.

In his initial submission, Łukasz took an approach similar to this
one, i.e make it ARM64-specific. Following the feedback on the mailing
list, his second version [1] tried to generalize the logic to
configure the page size between architectures. But the general
consensus during the review process was that there wasn't much to
generalize in the end.

So, this new iteration is back to a simpler approach:

 * We have new options in Config.in.arm to configure the page
   size. Only 4 KB and 64 KB are supported, because our testing in
   Qemu and real hardware has not allowed to get a successful setup
   for 16 KB pages. We can always re-add support for 16 KB later if
   that is resolved.

 * The logic to define the ARCH_TOOLCHAIN_WRAPPER_OPTS options is
   moved from the ARC-specific file to arch/arch.mk, and extended to
   cover ARM64.

 * The appropriate logic in uclibc.mk and linux.mk is added to tweak
   the relevant configuration options.

 * A test case is added in the runtime test infrastructure to test
   building and booting under Qemu a 64 KB configuration, with all 3 C
   libraries.

For the regular configuration of 4 KB pages, this commit makes one
functional change: on ARM64, -Wl,-z,max-page-size=4096 is now passed in
the compiler flags of the wrapper.

[1] https://patchwork.ozlabs.org/project/buildroot/list/?series=275452

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2022-07-26 22:54:39 +02:00
Peter Korsgaard
5645990b88 {linux, linux-headers}: bump 4.{9, 14, 19}.x / 5.{4, 10, 15, 17}.x series
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2022-07-11 18:38:46 +02:00
Nicolas POIROT
4de196a1ce support/scripts/br2-external: add kernel extensions
Buildroot documentation section 9.2.1.6 "Additional kernel extensions"
indicates support for kernel extensions defined in external buildroot
trees but unfortunately, there didn't seem to be any support in
br2-external script.

This patch copies 'init' code support to include external kernel
extensions defined in 'linux' dir at the br2-external root directory as
explained in documentation.

Signed-off-by: Nicolas POIROT <ni.poirot@laposte.net>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2022-06-22 22:22:30 +02:00
James Hilliard
2810b51e52 linux: update cip/cip-rt kernels to latest versions
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2022-06-06 15:21:21 +02:00
Peter Korsgaard
3176d9febb {linux, linux-headers}: bump 4.{9, 14, 19}.x / 5.{4, 10, 15, 17}.x series
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2022-06-06 11:48:58 +02:00
Yann E. MORIN
baa55a4e26 linux: disable -Werror when building host tools
gcc-12 is starting to trickle down to some distros, like Archlinux.
gcc-12 has new warnings, and detects more cases of issues, like new
UAF cases, which is causing build issues in code that was previously
building fine, as reported in #14826:

    In file included from sigchain.c:3:
    In function 'xrealloc',
        inlined from 'sigchain_push.isra' at sigchain.c:26:2:
    subcmd-util.h:56:23: error: pointer may be used after 'realloc' [-Werror=use-after-free]
       56 |                 ret = realloc(ptr, size);
          |                       ^~~~~~~~~~~~~~~~~~
    subcmd-util.h:52:21: note: call to 'realloc' here
       52 |         void *ret = realloc(ptr, size);
          |                     ^~~~~~~~~~~~~~~~~~
    subcmd-util.h:58:31: error: pointer may be used after 'realloc' [-Werror=use-after-free]
       58 |                         ret = realloc(ptr, 1);
          |                               ^~~~~~~~~~~~~~~
    subcmd-util.h:52:21: note: call to 'realloc' here
       52 |         void *ret = realloc(ptr, size);
          |                     ^~~~~~~~~~~~~~~~~~

In that case, the kernel has already fixed their code, which is part of
5.17:
    https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=52a9dab6d892763b2a8334a568bd4e2c1a6fde66

However, we can't easily carry that patch, because we don't know
whether the kernel the user uses already has the fix or not.

Instead, we can just tell the kernel to disable use of -Werror when
building host tools.

As a consequence, we can drop it from the perf-specific setting.

Fixes: #14826

Reported-by: Anders Pitman <buildroot@apitman.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2022-06-04 10:22:41 +02:00
Joel Stanley
62044e8675 linux: Fix powerpc64le defconfig selection
The default defconfig target for the 64 bit powerpc kernel is
ppc64_defconfig, the big endian configuration.

When building for powerpc64le users want the little endian kernel as
they can't boot LE userspace on a BE kernel.

Fix up the defconfig used in this case. This will avoid the following
autobuilder failure:

 VDSO32A arch/powerpc/kernel/vdso32/sigtramp.o
 cc1: error: ‘-m32’ not supported in this configuratioin
 make[4]: *** [arch/powerpc/kernel/vdso32/Makefile:49: arch/powerpc/kernel/vdso32/sigtramp.o] Error 1

 http://autobuild.buildroot.net/results/dd76d53bab56470c0b83e296872d7bb90f9e8296/

Note that the failure indicates the toolchain is configured to disable
the 32 bit target, causing the kernel to fail when building the 32 bit
VDSO. This is only a problem on the BE kernel as the LE kernel disables
CONFIG_COMPAT, aka 32 bit userspace support, by default.

Signed-off-by: Joel Stanley <joel@jms.id.au>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2022-05-13 23:54:14 +02:00
Peter Korsgaard
d1f7af938c {linux, linux-headers}: default to 5.17.x
5.15.x is getting quite old, so default to 5.17.x instead.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2022-05-13 23:47:31 +02:00
Peter Korsgaard
334924192b package/linux-headers: drop 5.16.x option
The 5.16.x series is now EOL upstream, so drop the linux-headers option and
add legacy handling for it.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2022-05-13 23:47:28 +02:00
Peter Korsgaard
2b134f9549 {toolchain, linux-headers}: add support for 5.17.x headers
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2022-05-13 18:32:13 +02:00