From ab1ebdc9ba58a1fe3a51dcc24de0e68ced80fa54 Mon Sep 17 00:00:00 2001 From: Alistair Francis Date: Mon, 18 Mar 2019 13:44:45 -0700 Subject: [PATCH] glibc: Update 32-bit glibc We can also remove the 32-bit fix that was included in the kernel. Signed-off-by: Alistair Francis --- recipes-core/glibc/glibc_%.bbappend | 2 +- ...revert-Remove-stat64-family-from-def.patch | 51 ------------------- recipes-kernel/linux/linux-yocto-dev.bbappend | 4 -- recipes-kernel/linux/linux-yocto_5.0.bbappend | 4 -- 4 files changed, 1 insertion(+), 60 deletions(-) delete mode 100644 recipes-kernel/linux/files/0001-riscv-Partially-revert-Remove-stat64-family-from-def.patch diff --git a/recipes-core/glibc/glibc_%.bbappend b/recipes-core/glibc/glibc_%.bbappend index cca0c96..f259e93 100644 --- a/recipes-core/glibc/glibc_%.bbappend +++ b/recipes-core/glibc/glibc_%.bbappend @@ -3,4 +3,4 @@ # This is the most recent port sent to the glibc mailing list GLIBC_GIT_URI_qemuriscv32 = "git://github.com/riscv/riscv-glibc.git" SRCBRANCH_qemuriscv32 = "riscv-glibc-2.29" -SRCREV_qemuriscv32 = "04fdd476160a55792a75375ba2bf56c761f811c2" +SRCREV_qemuriscv32 = "06983fe52cfe8e4779035c27e8cc5d2caab31531" diff --git a/recipes-kernel/linux/files/0001-riscv-Partially-revert-Remove-stat64-family-from-def.patch b/recipes-kernel/linux/files/0001-riscv-Partially-revert-Remove-stat64-family-from-def.patch deleted file mode 100644 index 90d2649..0000000 --- a/recipes-kernel/linux/files/0001-riscv-Partially-revert-Remove-stat64-family-from-def.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 558c286b9cad300a9265a4517025414ab46993fb Mon Sep 17 00:00:00 2001 -From: Alistair Francis -Date: Thu, 7 Feb 2019 14:40:38 -0800 -Subject: [PATCH] riscv: Partially revert "Remove stat64 family from default - syscall set" - -To fix systemd/sysVinit crashes enable __ARCH_WANT_STAT64. - -systemd failed to start with this error for 32-bit RISC-V: -[ 2.833864] Run /sbin/init as init process -/sbin/init: error while loading shared libraries: libsystemd-shared-239.so: cannot stat shared object: Error 38 -[ 2.933593] Kernel panic - not syncing: Attempted to kill init! exitcode=0x00007f00 -[ 2.934120] CPU: 0 PID: 1 Comm: init Not tainted 5.0.0-rc4-yoctodev-standard #1 -[ 2.934589] Call Trace: -[ 2.934919] [] walk_stackframe+0x0/0xa0 -[ 2.935243] [] show_stack+0x28/0x32 -[ 2.935518] [] dump_stack+0x68/0x88 -[ 2.935788] [] panic+0xf0/0x252 -[ 2.936041] [] do_exit+0x7de/0x7fc -[ 2.936387] [] do_group_exit+0x2a/0x82 -[ 2.936674] [] __wake_up_parent+0x0/0x22 -[ 2.936982] [] ret_from_syscall+0x0/0xe -[ 2.937673] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x00007f00 ]--- - -sysVinit had a similar problem as well. By enabling __ARCH_WANT_STAT64 -for 32-bit RISC-V the problem disapears and 32-bit RISC-V is able to -boot. - -Signed-off-by: Alistair Francis -Upstream-Status: Inappropriate [other] ---- - arch/riscv/include/uapi/asm/unistd.h | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/arch/riscv/include/uapi/asm/unistd.h b/arch/riscv/include/uapi/asm/unistd.h -index 1f3bd3ebbb0d..031b7d78e11c 100644 ---- a/arch/riscv/include/uapi/asm/unistd.h -+++ b/arch/riscv/include/uapi/asm/unistd.h -@@ -20,6 +20,9 @@ - #endif /* __LP64__ */ - - #include -+#if __BITS_PER_LONG == 32 -+#define __ARCH_WANT_STAT64 -+#endif - - /* - * Allows the instruction cache to be flushed from userspace. Despite RISC-V --- -2.20.1 - diff --git a/recipes-kernel/linux/linux-yocto-dev.bbappend b/recipes-kernel/linux/linux-yocto-dev.bbappend index a17527e..7acf9a2 100644 --- a/recipes-kernel/linux/linux-yocto-dev.bbappend +++ b/recipes-kernel/linux/linux-yocto-dev.bbappend @@ -1,5 +1 @@ COMPATIBLE_MACHINE_append = "|qemuriscv32|qemuriscv64" - -FILESEXTRAPATHS_prepend := "${THISDIR}/files:" - -SRC_URI_append_qemuriscv32 = " file://0001-riscv-Partially-revert-Remove-stat64-family-from-def.patch" diff --git a/recipes-kernel/linux/linux-yocto_5.0.bbappend b/recipes-kernel/linux/linux-yocto_5.0.bbappend index a17527e..7acf9a2 100644 --- a/recipes-kernel/linux/linux-yocto_5.0.bbappend +++ b/recipes-kernel/linux/linux-yocto_5.0.bbappend @@ -1,5 +1 @@ COMPATIBLE_MACHINE_append = "|qemuriscv32|qemuriscv64" - -FILESEXTRAPATHS_prepend := "${THISDIR}/files:" - -SRC_URI_append_qemuriscv32 = " file://0001-riscv-Partially-revert-Remove-stat64-family-from-def.patch"