[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 Andreas Krebbel changed: What|Removed |Added Status|WAITING |RESOLVED Resolution|--- |INVALID
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #25 from Sarah Julia Kriesch --- The kernel bug fix in combination with higher constraints (12GB of memory) has helped. It is strange, that we had this error message instead of an oom. BUT that should be only a workaround. 12GB for s390x in comparison to 4GB for x86 for PostgreSQL? I suggest a new bug report for the memory requirements of GCC. Where is the power of the mainframe? Thank you for the support! It should be possible to reproduce it again on Fedora in the future. The problem was a dependency of the kernel and cross-epiphany-gcc11-bootstrap.
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #24 from Sarah Julia Kriesch --- There can be a dependency to this kernel bug: https://bugzilla.suse.com/show_bug.cgi?id=1188896 We want to integrate the patch from your colleague and look, what will be changed.
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #23 from Sarah Julia Kriesch --- I had problems yesterday with uploading the dump. (In reply to Andreas Krebbel from comment #22) > I did run these commands on a z15 Lpar with Fedora33 installed. Thank you for this hint! One question to you as a compiler Expert: Do you know any dependencies between gcc or other compilers and dependencies to sub operating systems in virtualization? SUSE people tried today the same with SLES 15 SP3 and it is not reproducible. You tried it both with containerization and qemu (therefore, that can not be a qemu issue, if both has been on s390x together with Fedora). Additionally, you have been needing 12GB of memory for virtualization in comparison to 4GB on openSUSE Tumbleweed. Anything is going wrong here with GCC together with the sub operating system. I have started a discussion about that (together with Fedora and Debian people) on our factory mailing list: https://lists.opensuse.org/archives/list/fact...@lists.opensuse.org/thread/4LJCHQ3YJ3TFEAN5S5DUE3ITCNPPC4MO/ If you are open to additional experiments in this direction for reproducing based on Fedora (I can not run Fedora in the LinuxONE Community Cloud). Fedora has released Fedora 35 in the last weeks. Have you got any possibilities to upgrade and run these commands based on that?
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #22 from Andreas Krebbel --- (In reply to Sarah Julia Kriesch from comment #21) > Did you use a mainframe as a local system? I did run these commands on a z15 Lpar with Fedora33 installed.
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #21 from Sarah Julia Kriesch --- Did you use a mainframe as a local system? I will rerun my build commands again and create dumps of the VM. You should receive them today in the evening.
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #20 from Andreas Krebbel --- (In reply to Sarah Julia Kriesch from comment #18) ... > sudo zypper in osc build obs-service-format_spec_file bsdtar #also possible > with other Linux distributions > osc co openSUSE:Factory:zSystems/postgresql14 > cd openSUSE\:Factory\:zSystems/postgresql14/ > osc build --vm-type=kvm --vm-memory=4G Tried with these commands. Build fails due to OOM killer with 4GB and 8GB. Package builds fine starting with 12GB. In none of the cases I got the ld error.
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #19 from Sarah Julia Kriesch --- Expanding memory also did not help with 12GB.
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #18 from Sarah Julia Kriesch --- (In reply to Andreas Krebbel from comment #17) > (In reply to Sarah Julia Kriesch from comment #12) > > that is happening during the build process in OBS with a really minimal > > openSUSE Tumbleweed. We are using VMs using QEMU and with 4GB of memory. > > Why only 4GB? Isn't this way too low for building things like rust with lto > and everything? > We are sharing the LinuxONE together with SUSE. Not only OBS is using it. It is also used for automated tests with openQA. Therefore, the resources are kept minimal for build processes. The highest amount of memory for openSUSE based builds is 12GB. I had to argue at the beginning of my time for s390x, that we can receive it. Rust is using 8GB split into two 4GB processes. That is given by a constraints file. The OBS is choosing a free worker node matching the requirements. But also 8GB did not help for PostgreSQL14. We are receiving the same error message. And about the topic "too slow": x86 is using the same at PostgreSQL14 and is much faster than s390x for most builds. > I've successfully built rust1.54 and postgresql14 several times in an > opensuse tumbleweed container. So I would suspect either the kernel or the > guest setup you are using. Could it perhaps be that ld processes got oom > killed and have left half-complete binaries which triggered the error then? > I checked the container images. They are updated continuously. Therefore, that should be reproducible with that (if you are using my list with packages incl. LLVM13). The kernel version can not be the issue. We are receiving this error since multiple kernel versions and only with s390x. I have checked the infrastructure with a build in the LinuxONE Community Cloud. I am receiving the same issue with following commands: sudo zypper in osc build obs-service-format_spec_file bsdtar #also possible with other Linux distributions osc co openSUSE:Factory:zSystems/postgresql14 cd openSUSE\:Factory\:zSystems/postgresql14/ osc build --vm-type=kvm --vm-memory=4G > In the current logs I don't see the ld issue anymore. Apparently you already > gave it more memory and the behavior changed due to that? That was another issue between. The issue came back this weekend. I tested it already with 8GB. I will test it also with 12GB in my mainframe VM over night now. But I do not expect any change there.
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #17 from Andreas Krebbel --- (In reply to Sarah Julia Kriesch from comment #12) > that is happening during the build process in OBS with a really minimal > openSUSE Tumbleweed. We are using VMs using QEMU and with 4GB of memory. Why only 4GB? Isn't this way too low for building things like rust with lto and everything? I've successfully built rust1.54 and postgresql14 several times in an opensuse tumbleweed container. So I would suspect either the kernel or the guest setup you are using. Could it perhaps be that ld processes got oom killed and have left half-complete binaries which triggered the error then? In the current logs I don't see the ld issue anymore. Apparently you already gave it more memory and the behavior changed due to that?
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #16 from Sarah Julia Kriesch --- Sorry! I thought I have created these links as a logged out user. Here are the public links. PostgreSQL14: https://build.opensuse.org/public/build/openSUSE:Factory:zSystems/standard/s390x/postgresql14/_log Rust1.54: https://build.opensuse.org/public/build/openSUSE:Factory:zSystems/standard/s390x/rust1.54/_log
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #15 from Andreas Krebbel --- (In reply to Sarah Julia Kriesch from comment #0) ... > Full PostgreSQL log: > https://build.opensuse.org/build/openSUSE:Factory:zSystems/standard/s390x/ > postgresql14/_log > > Full Rust log: > https://build.opensuse.org/build/openSUSE:Factory:zSystems/standard/s390x/ > rust1.54/_log No access
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #14 from Sarah Julia Kriesch --- We are exporting all the flags and start the build process with the following: CFLAGS='-O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables' [ 34s] + export CFLAGS [ 34s] + CXXFLAGS='-O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables' [ 34s] + export CXXFLAGS [ 34s] + FFLAGS='-O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables ' [ 34s] + export FFLAGS [ 34s] + FCFLAGS='-O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables ' [ 34s] + export FCFLAGS [ 34s] + LDFLAGS='-flto=auto -ffat-lto-objects' [ 34s] + export LDFLAGS [ 34s] + ./configure --host=s390x-suse-linux-gnu --build=s390x-suse-linux-gnu --program-prefix= --disable-dependency-tracking --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info --disable-dependency-tracking --bindir=/usr/lib/postgresql14/bin --libdir=/usr/lib/postgresql14/lib64 --includedir=/usr/include/pgsql --datadir=/usr/share/postgresql14 --docdir=/usr/share/doc/packages/postgresql14 --mandir=/usr/share/man --disable-rpath --enable-nls --enable-thread-safety --enable-integer-datetimes --with-python --with-perl --with-tcl --with-tclconfig=/usr/lib64 --with-pam --with-uuid=e2fs --with-libxml --with-libxslt --with-systemd --with-selinux --with-icu --with-llvm --with-openssl --with-ldap --with-gssapi --with-krb5 --with-system-tzdata=/usr/share/zoneinfo [ 34s] configure: WARNING: unrecognized options: --disable-dependency-tracking, --disable-dependency-tracking, --with-krb5
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #13 from Sarah Julia Kriesch --- The following packages are preinstalled: [ 13s] [1/211] preinstalled aaa_base-84.87+git20211102.80d7177-1.1 [ 13s] [2/211] preinstalled aaa_base-malloccheck-84.87+git20211102.80d7177-1.1 [ 13s] [3/211] preinstalled attr-2.5.1-1.3 [ 13s] [4/211] preinstalled bash-5.1.8-2.1 [ 13s] [5/211] preinstalled binutils-2.37-3.1 [ 13s] [6/211] preinstalled brp-check-suse-84.87+git2026.6c5fe09-1.1 [ 13s] [7/211] preinstalled build-compare-20210921T214418.86d06d9-1.1 [ 13s] [8/211] preinstalled build-mkbaselibs-20211025-1.1 [ 13s] [9/211] preinstalled bzip2-1.0.8-3.1 [ 13s] [10/211] preinstalled chkstat-1550_20210901-29.1 [ 13s] [11/211] preinstalled compat-usrmerge-build-84.87-5.1 [ 13s] [12/211] preinstalled compat-usrmerge-tools-84.87-5.1 [ 13s] [13/211] preinstalled coreutils-9.0-2.1 [ 13s] [14/211] preinstalled cpio-2.13-4.1 [ 13s] [15/211] preinstalled cpp-11-4.1 [ 13s] [16/211] preinstalled cpp11-11.2.1+git610-1.1 [ 13s] [17/211] cumulate crypto-policies-20210917.c9d86d1-1.1 [ 13s] [18/211] preinstalled diffutils-3.8-2.1 [ 13s] [19/211] preinstalled dwz-0.14-1.3 [ 13s] [20/211] cumulate fdupes-2.1.2-1.41 [ 13s] [21/211] preinstalled file-5.41-1.1 [ 13s] [22/211] preinstalled file-magic-5.41-1.1 [ 13s] [23/211] preinstalled filesystem-84.87-3.1 [ 13s] [24/211] preinstalled fillup-1.42-276.4 [ 13s] [25/211] preinstalled findutils-4.8.0-3.1 [ 13s] [26/211] preinstalled gawk-5.1.1-2.1 [ 13s] [27/211] preinstalled gcc-11-4.1 [ 13s] [28/211] preinstalled gcc-PIE-11-4.1 [ 13s] [29/211] preinstalled gcc11-11.2.1+git610-1.1 [ 13s] [30/211] preinstalled gettext-runtime-mini-0.21-2.5 [ 13s] [31/211] preinstalled gettext-tools-mini-0.21-2.5 [ 13s] [32/211] preinstalled glibc-2.34-2.1 [ 13s] [33/211] preinstalled glibc-devel-2.34-2.1 [ 13s] [34/211] preinstalled glibc-locale-2.34-2.1 [ 13s] [35/211] preinstalled glibc-locale-base-2.34-2.1 [ 13s] [36/211] preinstalled grep-3.7-1.1 [ 13s] [37/211] preinstalled gzip-1.11-1.1 [ 13s] [38/211] preinstalled hostname-3.23-2.4 [ 13s] [39/211] preinstalled iproute2-5.15-1.1 [ 13s] [40/211] preinstalled kernel-obs-build-5.15.2-1.3 [ 13s] [41/211] preinstalled libacl1-2.3.1-1.3 [ 13s] [42/211] preinstalled libasan6-11.2.1+git610-1.1 [ 13s] [43/211] preinstalled libatomic1-11.2.1+git610-1.1 [ 13s] [44/211] preinstalled libattr1-2.5.1-1.3 [ 13s] [45/211] preinstalled libaudit1-3.0.6-1.1 [ 13s] [46/211] preinstalled libblkid1-2.36.2-3.1 [ 13s] [47/211] preinstalled libbz2-1-1.0.8-3.1 [ 13s] [48/211] preinstalled libcap-ng0-0.7.10-1.68 [ 13s] [49/211] preinstalled libcap2-2.59-1.1 [ 13s] [50/211] cumulate libcom_err2-1.46.4-3.1 [ 13s] [51/211] preinstalled libcrypt1-4.4.25-1.1 [ 13s] [52/211] preinstalled libctf-nobfd0-2.37-3.1 [ 13s] [53/211] preinstalled libctf0-2.37-3.1 [ 13s] [54/211] preinstalled libdb-4_8-4.8.30-38.148 [ 13s] [55/211] preinstalled libdw1-0.186-1.1 [ 13s] [56/211] preinstalled libeconf0-0.4.2+git2021.c7a2c52-1.1 [ 13s] [57/211] cumulate libedit0-3.1.snap20180525-4.6 [ 13s] [58/211] preinstalled libelf1-0.186-1.1 [ 13s] [59/211] cumulate libexpat1-2.4.1-1.1 [ 13s] [60/211] preinstalled libfdisk1-2.36.2-3.1 [ 13s] [61/211] cumulate libffi8-3.3.git30-1.91 [ 13s] [62/211] preinstalled libgcc_s1-11.2.1+git610-1.1 [ 13s] [63/211] preinstalled libgcrypt20-1.9.4-1.1 [ 13s] [64/211] preinstalled libgdbm6-1.20-1.1 [ 13s] [65/211] preinstalled libgdbm_compat4-1.20-1.1 [ 13s] [66/211] preinstalled libgmp10-6.2.1-4.1 [ 13s] [67/211] preinstalled libgomp1-11.2.1+git610-1.1 [ 13s] [68/211] preinstalled libgpg-error0-1.43-1.1 [ 13s] [69/211] cumulate libicu69-bedata-69.1-2.2 [ 13s] [70/211] preinstalled libisl23-0.24-1.3 [ 13s] [71/211] preinstalled libitm1-11.2.1+git610-1.1 [ 13s] [72/211] cumulate libkeyutils1-1.6.3-3.1 [ 13s] [73/211] cumulate libltdl7-2.4.6-8.152 [ 13s] [74/211] preinstalled liblua5_3-5-5.3.6-1.30 [ 13s] [75/211] preinstalled liblua5_4-5-5.4.3-4.1 [ 13s] [76/211] preinstalled liblzma5-5.2.5-2.1 [ 13s] [77/211] preinstalled libmagic1-5.41-1.1 [ 13s] [78/211] preinstalled libmnl0-1.0.4-2.6 [ 13s] [79/211] preinstalled libmount1-2.36.2-3.1 [ 13s] [80/211] preinstalled libmpc3-1.2.1-1.23 [ 13s] [81/211] cumulate libmpdec3-2.5.1-2.1 [ 13s] [82/211] preinstalled libmpfr6-4.1.0-2.3 [ 13s] [83/211] preinstalled libncurses6-6.3.2025-4.1 [ 13s] [84/211] preinstalled libpcre1-8.45-1.1 [ 13s] [85/211] cumulate libpcre2-16-0-10.38-1.1 [ 13s] [86/211] cumulate libpcre2-32-0-10.38-1.1 [ 13s] [87/211] preinstalled libpcre2-8-0-10.38-1.1 [ 13s] [88/211] cumulate libpcre2-posix3-10.38-1.1 [ 13s] [89/211] preinstalled libpkgconf3-1.8.0-1.1 [ 13s] [90/211] preinstalled libpopt0-1.18-2.28 [ 13s] [91/211] preinstalled libreadline8-8.1-2.3 [ 13s] [92/211] preinstalled librpmbuild9-4.17.0-2.1 [
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #12 from Sarah Julia Kriesch --- Hi Andreas, that is happening during the build process in OBS with a really minimal openSUSE Tumbleweed. We are using VMs using QEMU and with 4GB of memory. You can find the latest build of the kernel under: http://download.opensuse.org/ports/zsystems/tumbleweed/repo/oss/s390x/ PostgreSQL is based on the postgresql-14.1.tar.bz2 from https://ftp.postgresql.org/pub/source/v14.1/
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #11 from Andreas Krebbel --- Could you please provide the steps to reproduce the issue. I just tried real quick with a container image and couldn't reproduce it.
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #10 from Sarah Julia Kriesch --- Hi Andreas, that is an s390x issue related to multiple packages and which is stopping our releases. Can you give it a special priority, please?
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #9 from Sarah Julia Kriesch --- Yes. It works on x86. Only s390x is affected. Therefore, I have added s390x into the title.
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #8 from H.J. Lu --- Does it work on x86-64?
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #7 from Sarah Julia Kriesch --- Used LLVM: libLLVM13-13.0.0-2.1
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #6 from Sarah Julia Kriesch --- (In reply to Sarah Julia Kriesch from comment #1) > gcc version: 11-4.1 > operating system: openSUSE Tumbleweed (build process of PostgreSQL14 and > Rust1.54) > architecture: s390x
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 Andrew Pinski changed: What|Removed |Added See Also||https://sourceware.org/bugz ||illa/show_bug.cgi?id=12323 --- Comment #5 from Andrew Pinski --- Looks like bfd ld is still broken: https://sourceware.org/bugzilla/show_bug.cgi?id=12323
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #4 from Andrew Pinski --- https://gcc.gnu.org/bugzilla/show_bug.cgi?id=45375#c11
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 --- Comment #3 from Andrew Pinski --- I really doubt this would be a gcc issue. Binutils has check is: if (oldbfd != NULL && (oldbfd->flags & BFD_PLUGIN) == 0 && (abfd->flags & BFD_PLUGIN) == 0 && ELF_ST_TYPE (sym->st_info) != h->type && (ELF_ST_TYPE (sym->st_info) == STT_TLS || h->type == STT_TLS))
[Bug middle-end/103364] s390x: TLS reference in /usr/lib64/libLLVM.so mismatches non-TLS reference in /usr/lib64/libLLVM.so
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103364 Andrew Pinski changed: What|Removed |Added Status|UNCONFIRMED |WAITING Ever confirmed|0 |1 Last reconfirmed||2021-11-23 --- Comment #2 from Andrew Pinski --- I wonder if this was caused by the known bug in GCC 11.1.0 where some thread_local (and __thread) variables lose they are TLS variables with the C++ front-end. Can you supply what version of GCC you are using? And try to see if openSUSE has a new one and if they have a new version of LLVM that is compiled with the new version of GCC?