From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
To: Szabolcs Nagy <szabolcs.nagy@arm.com>,
Florian Weimer <fweimer@redhat.com>
Cc: GNU C Library <libc-alpha@sourceware.org>
Subject: Re: Newer hwcap failures
Date: Fri, 29 Jan 2021 08:53:46 -0300 [thread overview]
Message-ID: <ba402959-cdfa-dbb0-6174-7489f3deaf1c@linaro.org> (raw)
In-Reply-To: <20210129105111.GV3445@arm.com>
On 29/01/2021 07:51, Szabolcs Nagy wrote:
> The 01/29/2021 11:48, Florian Weimer wrote:
>> * Szabolcs Nagy:
>>
>>> The 01/29/2021 10:20, Florian Weimer via Libc-alpha wrote:
>>>> * Adhemerval Zanella:
>>>>
>>>>> The issue is test-container is copying the ld.so.cache from system into
>>>>> testroot and thus _dl_sysdep_read_whole_file does not fail.
>>>>>
>>>>> For 32-bit builds, there is not ld.so.cache then _dl_sysdep_read_whole_file
>>>>> fails and further ldconfig does not change the process map (since
>>>>> _dl_load_cache_lookup won't reload the cache after an initial failure).
>>>>>
>>>>> That's explain why I am seeing this only on system with default 64-bit
>>>>> userland. I don't know exactly why I haven't see this before, neither
>>>>> if it were some testing regression added recently.
>>>>
>>>> I can't reproduce this (with an x86-64 host and a multilib toolchain).
>>>> Does it require an i386 chroot to reproduce?
>>>
>>> i see those tests fail with a config.make that has
>>>
>>> cross-compiling = maybe
>>>
>>> then /etc/ld.so.cache is missing from the install
>>> directory (since ldconfig is not run)
>>>
>>> i normally use a i686-linux-gnu toolchain on an
>>> x86_64 machine to test i686, not a chroot/container.
>>> in an i686 container with native gcc the tests pass.
>>
>> Hmm, how do you get that maybe? Do you rebuild ./configure using
>> autoconf 2.70 or later?
>>
>> I see this in the configure file we ship:
>>
>> # There might be people who depend on the old broken behavior: `$host'
>> # used to hold the argument of --host etc.
>> # FIXME: To remove some day.
>> build=$build_alias
>> host=$host_alias
>> target=$target_alias
>>
>> # FIXME: To remove some day.
>> if test "x$host_alias" != x; then
>> if test "x$build_alias" = x; then
>> cross_compiling=maybe
>> elif test "x$build_alias" != "x$host_alias"; then
>> cross_compiling=yes
>> fi
>> fi
>>
>> I configure glibc with --build=i686-linux-gnu, and that gives me
>> “cross-compiling = no” in config.make.
>
> hm ok i use --host=i686-linux-gnu but not build
> may be i should add --build too.
>
> (but in case of real cross compiling when i
> run the tests with cross-wrapper+ssh then i
> cannot change the --build and the tests will
> fail)
>
In my environment I use '--build=x86_64-linux-gnu --host=i686-linux-gnu' and
CFLAGS="x86_64-glibc-linux-gnu-gcc -m32" with a multiarch gcc built with
build-many-glibcs.py:
$ x86_64-glibc-linux-gnu-gcc -v
[...]
Configure with: [...] --with-multilib-list=m64,m32,mx32 [...]
This results in:
$ grep cross-compiling config.make
cross-compiling = yes
In most cases it does not interfere because cache won't be used. But I
still think we should fix to the test that actually check ldconfig
and ld.so.cache.
My idea to handle it is to add a new 'ldconfig' rule to *.script to
trigger a new ld.so.cache creation for container tests.
next prev parent reply other threads:[~2021-01-29 11:53 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-28 18:47 Adhemerval Zanella
2021-01-28 18:52 ` Adhemerval Zanella
2021-01-28 19:53 ` Florian Weimer
2021-01-28 20:01 ` Adhemerval Zanella
2021-01-28 20:21 ` Adhemerval Zanella
2021-01-28 20:30 ` Adhemerval Zanella
2021-01-28 21:23 ` Adhemerval Zanella
2021-01-28 22:03 ` DJ Delorie
2021-01-29 5:56 ` Florian Weimer
2021-01-29 6:07 ` DJ Delorie
2021-01-29 6:09 ` DJ Delorie
2021-01-29 9:20 ` Florian Weimer
2021-01-29 10:43 ` Szabolcs Nagy
2021-01-29 10:48 ` Florian Weimer
2021-01-29 10:51 ` Szabolcs Nagy
2021-01-29 11:53 ` Adhemerval Zanella [this message]
2021-01-29 12:46 ` H.J. Lu
2021-01-29 12:31 ` Florian Weimer
2021-01-29 13:06 ` Adhemerval Zanella
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ba402959-cdfa-dbb0-6174-7489f3deaf1c@linaro.org \
--to=adhemerval.zanella@linaro.org \
--cc=fweimer@redhat.com \
--cc=libc-alpha@sourceware.org \
--cc=szabolcs.nagy@arm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).