On Sun, Aug 20, 2017 at 9:36 PM, Nathan Rossi <[email protected]> wrote: > On 19 August 2017 at 03:11, Alistair Francis > <[email protected]> wrote: >> On Fri, Aug 18, 2017 at 9:29 AM, Alistair Francis >> <[email protected]> wrote: >>> The meta layer has moved to glibc 2.26 so these bbappends no longer >>> apply. As these patches don't apply to glibc 2.26 and some other similar >>> patches have been merged just remove these patches. >>> >>> Signed-off-by: Alistair Francis <[email protected]> >>> --- >> >> Ah, my under the line was lost. >> >> I'm a little unsure about this one. Once this patch is applied I can't >> boot the QEMU machines on QEMU. I'm not sure that is broken by this >> though, or master just doesn't work as I can't build master without >> this patch. > > This change is expected, I've had it on my nrossi/next branch for a > little while now > (https://github.com/nathanrossi/meta-xilinx/commit/1f59c6ca4b8a00b7a4c93e781e4022d4bfd09206). > I will add your signed off by on that commit (so as to keep the > slightly more specific commit message info).
Great! Thanks. > > Glibc 2.26 resolved the pt-vfork symbol issues. So no patches needed > for glibc as of 2.26. > > As for broken linux boot (at least on the userspace side), that's a > gcc issue, need to update the patches for 7.2. I'm working on that > though. Ah ok. I'll test your patches then. Thanks, Alistair > > Thanks, > Nathan > >> >> Thanks, >> Alistair >> >>> ...oBlaze-fix-up-pt-vfork-symbol-definitions.patch | 105 >>> --------------------- >>> .../glibc/glibc-initial_2.25.bbappend | 4 - >>> recipes-microblaze/glibc/glibc_2.25.bbappend | 4 - >>> 3 files changed, 113 deletions(-) >>> delete mode 100644 >>> recipes-microblaze/glibc/files/MicroBlaze-fix-up-pt-vfork-symbol-definitions.patch >>> delete mode 100644 recipes-microblaze/glibc/glibc-initial_2.25.bbappend >>> delete mode 100644 recipes-microblaze/glibc/glibc_2.25.bbappend >>> >>> diff --git >>> a/recipes-microblaze/glibc/files/MicroBlaze-fix-up-pt-vfork-symbol-definitions.patch >>> >>> b/recipes-microblaze/glibc/files/MicroBlaze-fix-up-pt-vfork-symbol-definitions.patch >>> deleted file mode 100644 >>> index ed37d63..0000000 >>> --- >>> a/recipes-microblaze/glibc/files/MicroBlaze-fix-up-pt-vfork-symbol-definitions.patch >>> +++ /dev/null >>> @@ -1,105 +0,0 @@ >>> -From 873fc4bf58d6cc8d579a65224350ce3adddc6c2a Mon Sep 17 00:00:00 2001 >>> -From: Nathan Rossi <[email protected]> >>> -Date: Wed, 23 Nov 2016 22:30:29 +1000 >>> -Subject: [PATCH] MicroBlaze: fix up pt-vfork symbol definitions >>> - >>> -Due to the reuse of the alpha/pt-vfork.S implementation additional >>> -symbols are emitted for libpthread which are invalid due to the >>> -non-existence of a '__libc_vfork' symbol/implementation. A symbol is >>> -emitted which references __libc_vfork and is invalid which causes the >>> -linker to emit a corrupt symbol entry: >>> - >>> - 180: 00000000 0x24a91 NOTYPE LOCAL DEFAULT UND <corrupt> >>> - >>> -Depending on the internals of the linker this corrupt symbol is either a >>> -valid symbol as above or an completely invalid symbol that causes issues >>> -when linking against libpthread.so: >>> - >>> - 179: 0000564b 0x825fd688 <OS specific>: 11 <unknown>: 4 HIDDEN >>> - [<other>: 54] UND <corrupt> >>> - >>> -In both cases this is the 'vfork@GLIBC_2.18' compat_symbol which is >>> -aliased as the local '__libc_vfork'. (in libpthread.so) >>> - >>> - 12: 00000000 0 NOTYPE GLOBAL DEFAULT UND vfork@GLIBC_2.18 >>> - >>> -Due to how MicroBlaze differs from other architectures, it is special in >>> -that it only implements '__vfork' and due to the weak_alias in vfork.S >>> -also defines 'vfork' for both libc and libpthread. No other symbols >>> -(e.g. '__vfork_compat') are part of the ABI. >>> - >>> -This change removes the compatible symbol generation provided by >>> -alpha/pt-vfork.S and sets up the 'vfork' and '__vfork' symbols to be >>> -provided in libpthread based on SHLIB_COMPAT. This avoids the generation >>> -of invalid symbols but maintains the expected libc and libpthread vfork >>> -ABIs. >>> - >>> -Signed-off-by: Nathan Rossi <[email protected]> >>> -Upstream-Status: Pending >>> ---- >>> - sysdeps/unix/sysv/linux/microblaze/pt-vfork.S | 40 >>> ++++++++++++++++++++++++++- >>> - sysdeps/unix/sysv/linux/microblaze/vfork.S | 4 ++- >>> - 2 files changed, 42 insertions(+), 2 deletions(-) >>> - >>> -diff --git a/sysdeps/unix/sysv/linux/microblaze/pt-vfork.S >>> b/sysdeps/unix/sysv/linux/microblaze/pt-vfork.S >>> -index 65cc3823ac..82bc36eecc 100644 >>> ---- a/sysdeps/unix/sysv/linux/microblaze/pt-vfork.S >>> -+++ b/sysdeps/unix/sysv/linux/microblaze/pt-vfork.S >>> -@@ -1 +1,39 @@ >>> --#include <sysdeps/unix/sysv/linux/alpha/pt-vfork.S> >>> -+/* vfork ABI-compatibility entry points for libpthread. >>> -+ Copyright (C) 2014-2016 Free Software Foundation, Inc. >>> -+ This file is part of the GNU C Library. >>> -+ >>> -+ The GNU C Library is free software; you can redistribute it and/or >>> -+ modify it under the terms of the GNU Lesser General Public >>> -+ License as published by the Free Software Foundation; either >>> -+ version 2.1 of the License, or (at your option) any later version. >>> -+ >>> -+ The GNU C Library is distributed in the hope that it will be useful, >>> -+ but WITHOUT ANY WARRANTY; without even the implied warranty of >>> -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU >>> -+ Lesser General Public License for more details. >>> -+ >>> -+ You should have received a copy of the GNU Lesser General Public >>> -+ License along with the GNU C Library; if not, see >>> -+ <http://www.gnu.org/licenses/>. */ >>> -+ >>> -+#include <shlib-compat.h> >>> -+ >>> -+/* libpthread used to have its own vfork implementation that differed >>> -+ from libc's only in having a pointless micro-optimization. There >>> -+ is no longer any use to having a separate copy in libpthread, but >>> -+ the historical ABI requires it. For static linking, there is no >>> -+ need to provide anything here--the libc version will be linked in. >>> -+ For shared library ABI compatibility, there must be __vfork and >>> -+ vfork symbols in libpthread.so. */ >>> -+ >>> -+#if (SHLIB_COMPAT (libpthread, GLIBC_2_0, GLIBC_2_20) \ >>> -+ || SHLIB_COMPAT (libpthread, GLIBC_2_1_2, GLIBC_2_20)) >>> -+ >>> -+#include <vfork.S> >>> -+ >>> -+#endif >>> -+ >>> -+#if SHLIB_COMPAT (libpthread, GLIBC_2_0, GLIBC_2_20) >>> -+weak_alias (__vfork, vfork) >>> -+#endif >>> -+ >>> -diff --git a/sysdeps/unix/sysv/linux/microblaze/vfork.S >>> b/sysdeps/unix/sysv/linux/microblaze/vfork.S >>> -index 9592cb4f28..b537f1ce34 100644 >>> ---- a/sysdeps/unix/sysv/linux/microblaze/vfork.S >>> -+++ b/sysdeps/unix/sysv/linux/microblaze/vfork.S >>> -@@ -40,6 +40,8 @@ ENTRY (__vfork) >>> - nop >>> - >>> - PSEUDO_END (__vfork) >>> --libc_hidden_def (__vfork) >>> - >>> -+#if IS_IN (libc) >>> - weak_alias (__vfork, vfork) >>> -+libc_hidden_def (__vfork) >>> -+#endif >>> --- >>> -2.10.2 >>> - >>> diff --git a/recipes-microblaze/glibc/glibc-initial_2.25.bbappend >>> b/recipes-microblaze/glibc/glibc-initial_2.25.bbappend >>> deleted file mode 100644 >>> index a4beb0b..0000000 >>> --- a/recipes-microblaze/glibc/glibc-initial_2.25.bbappend >>> +++ /dev/null >>> @@ -1,4 +0,0 @@ >>> - >>> -FILESEXTRAPATHS_prepend := "${THISDIR}/files:" >>> -SRC_URI += "file://MicroBlaze-fix-up-pt-vfork-symbol-definitions.patch" >>> - >>> diff --git a/recipes-microblaze/glibc/glibc_2.25.bbappend >>> b/recipes-microblaze/glibc/glibc_2.25.bbappend >>> deleted file mode 100644 >>> index a4beb0b..0000000 >>> --- a/recipes-microblaze/glibc/glibc_2.25.bbappend >>> +++ /dev/null >>> @@ -1,4 +0,0 @@ >>> - >>> -FILESEXTRAPATHS_prepend := "${THISDIR}/files:" >>> -SRC_URI += "file://MicroBlaze-fix-up-pt-vfork-symbol-definitions.patch" >>> - >>> -- >>> 2.11.0 >>> >>> -- >>> _______________________________________________ >>> meta-xilinx mailing list >>> [email protected] >>> https://lists.yoctoproject.org/listinfo/meta-xilinx > -- > _______________________________________________ > meta-xilinx mailing list > [email protected] > https://lists.yoctoproject.org/listinfo/meta-xilinx -- _______________________________________________ meta-xilinx mailing list [email protected] https://lists.yoctoproject.org/listinfo/meta-xilinx
