mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-09-30 14:01:57 -09:00
Merge tag '2023.08-rc2' into next
Conflicts:
- .checkpackageignore
- Makefile
- board/versal/post-image.sh
- package/sentry-cli/0001-Disable-SSL-support-for-the-curl-module.patch
=> keep version in next
- Config.in.legacy
=> merge, introduce legacy comment for 2023.11
- toolchain/toolchain-external/toolchain-external-bootlin/Config.in.options
=> regenerate, drop dependency on inexistant BR2_ARCH_NEEDS_GCC_AT_LEAST_14
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This commit is contained in:
@@ -0,0 +1,97 @@
|
||||
From 0bb6b7477f5dcfafbdd76eea9c7aa7a5f78d7613 Mon Sep 17 00:00:00 2001
|
||||
From: Ben Hutchings <benh@debian.org>
|
||||
Date: Fri, 16 Jun 2023 17:36:10 +0200
|
||||
Subject: [PATCH] m68k: Fix invalid .section syntax
|
||||
|
||||
gas supports several different forms for .section for ELF targets,
|
||||
including:
|
||||
.section NAME [, "FLAGS"[, @TYPE[,FLAG_SPECIFIC_ARGUMENTS]]]
|
||||
and:
|
||||
.section "NAME"[, #FLAGS...]
|
||||
|
||||
In several places we use a mix of these two forms:
|
||||
.section NAME, #FLAGS...
|
||||
|
||||
A current development snapshot of binutils (2.40.50.20230611) treats
|
||||
this mixed syntax as an error.
|
||||
|
||||
Change to consistently use:
|
||||
.section NAME, "FLAGS"
|
||||
as is used elsewhere in the kernel.
|
||||
|
||||
Link: https://buildd.debian.org/status/fetch.php?pkg=linux&arch=m68k&ver=6.4%7Erc6-1%7Eexp1&stamp=1686907300&raw=1
|
||||
Signed-off-by: Ben Hutchings <benh@debian.org>
|
||||
Tested-by: Jan-Benedict Glaw <jbglaw@lug-owl.de>
|
||||
Link: https://lore.kernel.org/r/ZIyBaueWT9jnTwRC@decadent.org.uk
|
||||
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
|
||||
Upstream: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=922a9bd138101e3e5718f0f4d40dba68ef89bb43
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
arch/m68k/fpsp040/skeleton.S | 4 ++--
|
||||
arch/m68k/ifpsp060/os.S | 4 ++--
|
||||
arch/m68k/kernel/relocate_kernel.S | 4 ++--
|
||||
3 files changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/arch/m68k/fpsp040/skeleton.S b/arch/m68k/fpsp040/skeleton.S
|
||||
index 439395aa6fb4..081922c72daa 100644
|
||||
--- a/arch/m68k/fpsp040/skeleton.S
|
||||
+++ b/arch/m68k/fpsp040/skeleton.S
|
||||
@@ -499,13 +499,13 @@ in_ea:
|
||||
dbf %d0,morein
|
||||
rts
|
||||
|
||||
- .section .fixup,#alloc,#execinstr
|
||||
+ .section .fixup,"ax"
|
||||
.even
|
||||
1:
|
||||
jbsr fpsp040_die
|
||||
jbra .Lnotkern
|
||||
|
||||
- .section __ex_table,#alloc
|
||||
+ .section __ex_table,"a"
|
||||
.align 4
|
||||
|
||||
.long in_ea,1b
|
||||
diff --git a/arch/m68k/ifpsp060/os.S b/arch/m68k/ifpsp060/os.S
|
||||
index 7a0d6e428066..89e2ec224ab6 100644
|
||||
--- a/arch/m68k/ifpsp060/os.S
|
||||
+++ b/arch/m68k/ifpsp060/os.S
|
||||
@@ -379,11 +379,11 @@ _060_real_access:
|
||||
|
||||
|
||||
| Execption handling for movs access to illegal memory
|
||||
- .section .fixup,#alloc,#execinstr
|
||||
+ .section .fixup,"ax"
|
||||
.even
|
||||
1: moveq #-1,%d1
|
||||
rts
|
||||
-.section __ex_table,#alloc
|
||||
+.section __ex_table,"a"
|
||||
.align 4
|
||||
.long dmrbuae,1b
|
||||
.long dmrwuae,1b
|
||||
diff --git a/arch/m68k/kernel/relocate_kernel.S b/arch/m68k/kernel/relocate_kernel.S
|
||||
index ab0f1e7d4653..f7667079e08e 100644
|
||||
--- a/arch/m68k/kernel/relocate_kernel.S
|
||||
+++ b/arch/m68k/kernel/relocate_kernel.S
|
||||
@@ -26,7 +26,7 @@ ENTRY(relocate_new_kernel)
|
||||
lea %pc@(.Lcopy),%a4
|
||||
2: addl #0x00000000,%a4 /* virt_to_phys() */
|
||||
|
||||
- .section ".m68k_fixup","aw"
|
||||
+ .section .m68k_fixup,"aw"
|
||||
.long M68K_FIXUP_MEMOFFSET, 2b+2
|
||||
.previous
|
||||
|
||||
@@ -49,7 +49,7 @@ ENTRY(relocate_new_kernel)
|
||||
lea %pc@(.Lcont040),%a4
|
||||
5: addl #0x00000000,%a4 /* virt_to_phys() */
|
||||
|
||||
- .section ".m68k_fixup","aw"
|
||||
+ .section .m68k_fixup,"aw"
|
||||
.long M68K_FIXUP_MEMOFFSET, 5b+2
|
||||
.previous
|
||||
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -0,0 +1,97 @@
|
||||
From 0bb6b7477f5dcfafbdd76eea9c7aa7a5f78d7613 Mon Sep 17 00:00:00 2001
|
||||
From: Ben Hutchings <benh@debian.org>
|
||||
Date: Fri, 16 Jun 2023 17:36:10 +0200
|
||||
Subject: [PATCH] m68k: Fix invalid .section syntax
|
||||
|
||||
gas supports several different forms for .section for ELF targets,
|
||||
including:
|
||||
.section NAME [, "FLAGS"[, @TYPE[,FLAG_SPECIFIC_ARGUMENTS]]]
|
||||
and:
|
||||
.section "NAME"[, #FLAGS...]
|
||||
|
||||
In several places we use a mix of these two forms:
|
||||
.section NAME, #FLAGS...
|
||||
|
||||
A current development snapshot of binutils (2.40.50.20230611) treats
|
||||
this mixed syntax as an error.
|
||||
|
||||
Change to consistently use:
|
||||
.section NAME, "FLAGS"
|
||||
as is used elsewhere in the kernel.
|
||||
|
||||
Link: https://buildd.debian.org/status/fetch.php?pkg=linux&arch=m68k&ver=6.4%7Erc6-1%7Eexp1&stamp=1686907300&raw=1
|
||||
Signed-off-by: Ben Hutchings <benh@debian.org>
|
||||
Tested-by: Jan-Benedict Glaw <jbglaw@lug-owl.de>
|
||||
Link: https://lore.kernel.org/r/ZIyBaueWT9jnTwRC@decadent.org.uk
|
||||
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
|
||||
Upstream: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=922a9bd138101e3e5718f0f4d40dba68ef89bb43
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
arch/m68k/fpsp040/skeleton.S | 4 ++--
|
||||
arch/m68k/ifpsp060/os.S | 4 ++--
|
||||
arch/m68k/kernel/relocate_kernel.S | 4 ++--
|
||||
3 files changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/arch/m68k/fpsp040/skeleton.S b/arch/m68k/fpsp040/skeleton.S
|
||||
index 439395aa6fb4..081922c72daa 100644
|
||||
--- a/arch/m68k/fpsp040/skeleton.S
|
||||
+++ b/arch/m68k/fpsp040/skeleton.S
|
||||
@@ -499,13 +499,13 @@ in_ea:
|
||||
dbf %d0,morein
|
||||
rts
|
||||
|
||||
- .section .fixup,#alloc,#execinstr
|
||||
+ .section .fixup,"ax"
|
||||
.even
|
||||
1:
|
||||
jbsr fpsp040_die
|
||||
jbra .Lnotkern
|
||||
|
||||
- .section __ex_table,#alloc
|
||||
+ .section __ex_table,"a"
|
||||
.align 4
|
||||
|
||||
.long in_ea,1b
|
||||
diff --git a/arch/m68k/ifpsp060/os.S b/arch/m68k/ifpsp060/os.S
|
||||
index 7a0d6e428066..89e2ec224ab6 100644
|
||||
--- a/arch/m68k/ifpsp060/os.S
|
||||
+++ b/arch/m68k/ifpsp060/os.S
|
||||
@@ -379,11 +379,11 @@ _060_real_access:
|
||||
|
||||
|
||||
| Execption handling for movs access to illegal memory
|
||||
- .section .fixup,#alloc,#execinstr
|
||||
+ .section .fixup,"ax"
|
||||
.even
|
||||
1: moveq #-1,%d1
|
||||
rts
|
||||
-.section __ex_table,#alloc
|
||||
+.section __ex_table,"a"
|
||||
.align 4
|
||||
.long dmrbuae,1b
|
||||
.long dmrwuae,1b
|
||||
diff --git a/arch/m68k/kernel/relocate_kernel.S b/arch/m68k/kernel/relocate_kernel.S
|
||||
index ab0f1e7d4653..f7667079e08e 100644
|
||||
--- a/arch/m68k/kernel/relocate_kernel.S
|
||||
+++ b/arch/m68k/kernel/relocate_kernel.S
|
||||
@@ -26,7 +26,7 @@ ENTRY(relocate_new_kernel)
|
||||
lea %pc@(.Lcopy),%a4
|
||||
2: addl #0x00000000,%a4 /* virt_to_phys() */
|
||||
|
||||
- .section ".m68k_fixup","aw"
|
||||
+ .section .m68k_fixup,"aw"
|
||||
.long M68K_FIXUP_MEMOFFSET, 2b+2
|
||||
.previous
|
||||
|
||||
@@ -49,7 +49,7 @@ ENTRY(relocate_new_kernel)
|
||||
lea %pc@(.Lcont040),%a4
|
||||
5: addl #0x00000000,%a4 /* virt_to_phys() */
|
||||
|
||||
- .section ".m68k_fixup","aw"
|
||||
+ .section .m68k_fixup,"aw"
|
||||
.long M68K_FIXUP_MEMOFFSET, 5b+2
|
||||
.previous
|
||||
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
Run the emulation with:
|
||||
|
||||
qemu-system-ppc64 -M powernv9 -kernel vmlinux -append "console=hvc0 rootwait root=/dev/nvme0n1" -device nvme,bus=pcie.3,addr=0x0,drive=drive0,serial=1234 -drive file=./rootfs.ext2,if=none,id=drive0,format=raw,cache=none -device e1000e,netdev=net0,mac=C0:FF:EE:00:01:03,bus=pcie.1,addr=0x0 -netdev user,id=net0 -serial mon:stdio -nographic # qemu_ppc64le_powernv8_defconfig
|
||||
qemu-system-ppc64 -M powernv9 -kernel output/images/vmlinux -append "console=hvc0 rootwait root=/dev/nvme0n1" -device nvme,bus=pcie.3,addr=0x0,drive=drive0,serial=1234 -drive file=output/images/rootfs.ext2,if=none,id=drive0,format=raw,cache=none -device e1000e,netdev=net0,mac=C0:FF:EE:00:01:03,bus=pcie.1,addr=0x0 -netdev user,id=net0 -serial mon:stdio -nographic # qemu_ppc64le_powernv8_defconfig
|
||||
|
||||
The login prompt will appear in the terminal window.
|
||||
|
||||
@@ -1 +1,4 @@
|
||||
CONFIG_R8169=y
|
||||
# Disable Rockchip specific WiFi drivers, as the kernel
|
||||
# code cannot be build with GCC 12 due to several Werrors
|
||||
# CONFIG_WL_ROCKCHIP is not set
|
||||
|
||||
@@ -0,0 +1,64 @@
|
||||
From 2618a0dae09ef37728dab89ff60418cbe25ae6bd Mon Sep 17 00:00:00 2001
|
||||
From: Kees Cook <keescook@chromium.org>
|
||||
Date: Sat, 12 Feb 2022 09:14:49 -0800
|
||||
Subject: etherdevice: Adjust ether_addr* prototypes to silence
|
||||
-Wstringop-overead
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
With GCC 12, -Wstringop-overread was warning about an implicit cast from
|
||||
char[6] to char[8]. However, the extra 2 bytes are always thrown away,
|
||||
alignment doesn't matter, and the risk of hitting the edge of unallocated
|
||||
memory has been accepted, so this prototype can just be converted to a
|
||||
regular char *. Silences:
|
||||
|
||||
net/core/dev.c: In function ‘bpf_prog_run_generic_xdp’: net/core/dev.c:4618:21: warning: ‘ether_addr_equal_64bits’ reading 8 bytes from a region of size 6 [-Wstringop-overread]
|
||||
4618 | orig_host = ether_addr_equal_64bits(eth->h_dest, > skb->dev->dev_addr);
|
||||
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
net/core/dev.c:4618:21: note: referencing argument 1 of type ‘const u8[8]’ {aka ‘const unsigned char[8]’}
|
||||
net/core/dev.c:4618:21: note: referencing argument 2 of type ‘const u8[8]’ {aka ‘const unsigned char[8]’}
|
||||
In file included from net/core/dev.c:91: include/linux/etherdevice.h:375:20: note: in a call to function ‘ether_addr_equal_64bits’
|
||||
375 | static inline bool ether_addr_equal_64bits(const u8 addr1[6+2],
|
||||
| ^~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Reported-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
Tested-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
Link: https://lore.kernel.org/netdev/20220212090811.uuzk6d76agw2vv73@pengutronix.de
|
||||
Cc: Jakub Kicinski <kuba@kernel.org>
|
||||
Cc: "David S. Miller" <davem@davemloft.net>
|
||||
Cc: netdev@vger.kernel.org
|
||||
Signed-off-by: Kees Cook <keescook@chromium.org>
|
||||
Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
Upstream: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=2618a0dae09ef37728dab89ff60418cbe25ae6bd
|
||||
Signed-off-by: Kilian Zinnecker <kilian.zinnecker@mail.de>
|
||||
---
|
||||
include/linux/etherdevice.h | 5 ++---
|
||||
1 file changed, 2 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/include/linux/etherdevice.h b/include/linux/etherdevice.h
|
||||
index 2ad71cc90b37d..92b10e67d5f87 100644
|
||||
--- a/include/linux/etherdevice.h
|
||||
+++ b/include/linux/etherdevice.h
|
||||
@@ -134,7 +134,7 @@ static inline bool is_multicast_ether_addr(const u8 *addr)
|
||||
#endif
|
||||
}
|
||||
|
||||
-static inline bool is_multicast_ether_addr_64bits(const u8 addr[6+2])
|
||||
+static inline bool is_multicast_ether_addr_64bits(const u8 *addr)
|
||||
{
|
||||
#if defined(CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS) && BITS_PER_LONG == 64
|
||||
#ifdef __BIG_ENDIAN
|
||||
@@ -372,8 +372,7 @@ static inline bool ether_addr_equal(const u8 *addr1, const u8 *addr2)
|
||||
* Please note that alignment of addr1 & addr2 are only guaranteed to be 16 bits.
|
||||
*/
|
||||
|
||||
-static inline bool ether_addr_equal_64bits(const u8 addr1[6+2],
|
||||
- const u8 addr2[6+2])
|
||||
+static inline bool ether_addr_equal_64bits(const u8 *addr1, const u8 *addr2)
|
||||
{
|
||||
#if defined(CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS) && BITS_PER_LONG == 64
|
||||
u64 fold = (*(const u64 *)addr1) ^ (*(const u64 *)addr2);
|
||||
--
|
||||
cgit
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
From ca831f29f8f25c97182e726429b38c0802200c8f Mon Sep 17 00:00:00 2001
|
||||
From: Xiongwei Song <sxwjean@gmail.com>
|
||||
Date: Fri, 14 Jan 2022 14:07:24 -0800
|
||||
Subject: mm: page_alloc: fix building error on -Werror=array-compare
|
||||
|
||||
Arthur Marsh reported we would hit the error below when building kernel
|
||||
with gcc-12:
|
||||
|
||||
CC mm/page_alloc.o
|
||||
mm/page_alloc.c: In function `mem_init_print_info':
|
||||
mm/page_alloc.c:8173:27: error: comparison between two arrays [-Werror=array-compare]
|
||||
8173 | if (start <= pos && pos < end && size > adj) \
|
||||
|
|
||||
|
||||
In C++20, the comparision between arrays should be warned.
|
||||
|
||||
Link: https://lkml.kernel.org/r/20211125130928.32465-1-sxwjean@me.com
|
||||
Signed-off-by: Xiongwei Song <sxwjean@gmail.com>
|
||||
Reported-by: Arthur Marsh <arthur.marsh@internode.on.net>
|
||||
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
|
||||
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
Upstream: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=ca831f29f8f25c97182e726429b38c0802200c8f
|
||||
Signed-off-by: Kilian Zinnecker <kilian.zinnecker@mail.de>
|
||||
---
|
||||
mm/page_alloc.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
|
||||
index 806f317c2e7e2..c4ef450ac4428 100644
|
||||
--- a/mm/page_alloc.c
|
||||
+++ b/mm/page_alloc.c
|
||||
@@ -8228,7 +8228,7 @@ void __init mem_init_print_info(void)
|
||||
*/
|
||||
#define adj_init_size(start, end, size, pos, adj) \
|
||||
do { \
|
||||
- if (start <= pos && pos < end && size > adj) \
|
||||
+ if (&start[0] <= &pos[0] && &pos[0] < &end[0] && size > adj) \
|
||||
size -= adj; \
|
||||
} while (0)
|
||||
|
||||
--
|
||||
cgit
|
||||
|
||||
@@ -60,3 +60,23 @@ Enter 'root' as login user, and the prompt is ready.
|
||||
wiki link:
|
||||
----------
|
||||
https://forum.radxa.com/c/rock5
|
||||
|
||||
Issues:
|
||||
=======
|
||||
|
||||
The custom Radxa kernel provides custom code to support WiFi. However,
|
||||
that code does not compile with GCC 12, which is the current default
|
||||
version in buildroot. Hence, the WiFi kernel drivers are disabled, until
|
||||
the issues get fixed (if ever). If they are desperately needed, one may
|
||||
apply the following workaround, as long as buildroot still supports GCC
|
||||
version 11:
|
||||
|
||||
1. Set GCC version 11, by adding the following line to
|
||||
configs/rock5b_defconfig:
|
||||
|
||||
BR2_GCC_VERSION_11_X=y
|
||||
|
||||
2. Re-enable custom WiFi drivers by removing the following line from
|
||||
board/radxa/rock5b/linux.fragment:
|
||||
|
||||
# CONFIG_WL_ROCKCHIP is not set
|
||||
|
||||
@@ -8,6 +8,11 @@ if [ -e ${TARGET_DIR}/etc/inittab ]; then
|
||||
grep -qE '^tty1::' ${TARGET_DIR}/etc/inittab || \
|
||||
sed -i '/GENERIC_SERIAL/a\
|
||||
tty1::respawn:/sbin/getty -L tty1 0 vt100 # HDMI console' ${TARGET_DIR}/etc/inittab
|
||||
# systemd doesn't use /etc/inittab, enable getty.tty1.service instead
|
||||
elif [ -d ${TARGET_DIR}/etc/systemd ]; then
|
||||
mkdir -p "${TARGET_DIR}/etc/systemd/system/getty.target.wants"
|
||||
ln -sf /lib/systemd/system/getty@.service \
|
||||
"${TARGET_DIR}/etc/systemd/system/getty.target.wants/getty@tty1.service"
|
||||
fi
|
||||
|
||||
# exnsure overlays exists for genimage
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
# By default U-Boot loads DTB from a file named "devicetree.dtb", so
|
||||
# By default U-Boot loads DTB from a file named "system.dtb", so
|
||||
# let's use a symlink with that name that points to the *first*
|
||||
# devicetree listed in the config.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user