From: Joseph Myers <joseph@codesourcery.com>
To: Lukasz Majewski <lukma@denx.de>
Cc: Adhemerval Zanella <adhemerval.zanella@linaro.org>,
Florian Weimer <fweimer@redhat.com>,
libc-alpha <libc-alpha@sourceware.org>
Subject: Re: [PATCH] dl: Use "adr" assembler command to get proper load address
Date: Fri, 17 Sep 2021 13:27:49 +0000 [thread overview]
Message-ID: <alpine.DEB.2.22.394.2109171316050.3813920@digraph.polyomino.org.uk> (raw)
In-Reply-To: <20210917102918.49b2d79a@ktm>
On Fri, 17 Sep 2021, Lukasz Majewski wrote:
> Can we make a decision regarding this fix?
I don't think we've yet seen a thorough analysis of the issue.
Involvement of QEMU is probably not relevant. Either the dynamic linker
binary generated is correct, according to the instruction semantics in the
Arm ARM and the relocation semantics in AAELF, or it isn't. If it's
incorrect, either the (static) linker inputs are correct and there's a
linker bug, or the linker inputs are incorrect ("correct" here might be a
bit fuzzier, involving things that are not fully specified).
So start from working out whether the generated binary is correct or not,
with an appropriate description of the relevant instruction sequences
executed and why they do or do not work in each case.
QEMU only becomes relevant if you have a binary that works when executed
on hardware but not on QEMU (or vice versa).
(a) Do you have such a binary working on hardware but not on QEMU?
(b) Have you tested using the same binaries with both QEMU and hardware?
(c) Have you tested with the glibc testsuite, using a prebuilt system
image with known good glibc rather than building init with the new QEMU?
That's a better starting point than building a whole system with the new
glibc, though if the result is "all tests fail execution" you may not be
much further forward (but at least you can run the dynamic linker, good
and bad versions, under gdbserver, and step individual instructions to see
exactly what happens when the problem code is executed).
(d) Likewise, but with --enable-hardcoded-path-in-tests? The point of
this question is that one thing that's different by default between a
glibc testsuite run and running binaries outside the glibc testsuite is
whether new binaries are run directly or via ld.so --library-path. It's
possible some dynamic linker bugs might show up in one configuration but
not the other. So if the glibc testsuite passes in a default
configuration (which I assume it did, if the submitter of the original
patch tested it properly), but init fails in a newly built system image,
one possible explanation would be such a bug - and running the glibc
testsuite with --enable-hardcoded-path-in-tests is one way of checking for
that kind of issue.
--
Joseph S. Myers
joseph@codesourcery.com
next prev parent reply other threads:[~2021-09-17 13:27 UTC|newest]
Thread overview: 62+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-07 13:16 Lukasz Majewski
2021-09-07 16:49 ` Fangrui Song
2021-09-07 17:32 ` Lukasz Majewski
2021-09-07 17:44 ` Fangrui Song
2021-09-08 15:05 ` Lukasz Majewski
2021-09-08 17:41 ` Fāng-ruì Sòng
2021-09-08 19:19 ` Adhemerval Zanella
2021-09-08 20:34 ` Lukasz Majewski
2021-09-09 7:18 ` Lukasz Majewski
2021-09-09 9:49 ` Lukasz Majewski
2021-09-10 10:10 ` Lukasz Majewski
2021-09-17 8:29 ` Lukasz Majewski
2021-09-17 13:27 ` Joseph Myers [this message]
2021-09-17 16:17 ` Andreas Schwab
2021-09-26 19:58 ` Lukasz Majewski
2021-09-27 16:00 ` Joseph Myers
2021-10-05 7:45 ` Lukasz Majewski
2021-10-06 7:57 ` Fangrui Song
2021-10-06 9:03 ` Lukasz Majewski
2021-10-06 11:43 ` Lukasz Majewski
2021-10-06 12:55 ` Szabolcs Nagy
2021-10-07 9:19 ` Lukasz Majewski
2021-10-07 10:00 ` Lukasz Majewski
2021-10-07 14:15 ` Szabolcs Nagy
2021-10-07 14:58 ` Lukasz Majewski
2021-10-07 14:16 ` Adhemerval Zanella
2021-10-07 14:29 ` H.J. Lu
2021-10-07 15:57 ` Szabolcs Nagy
2021-10-07 16:22 ` H.J. Lu
2021-10-07 16:53 ` Adhemerval Zanella
2021-10-07 17:05 ` H.J. Lu
2021-10-07 17:24 ` Fāng-ruì Sòng
2021-10-08 9:15 ` Szabolcs Nagy
2021-10-11 8:56 ` Lukasz Majewski
2021-10-11 10:18 ` Szabolcs Nagy
2021-10-11 11:47 ` Lukasz Majewski
2021-10-11 12:01 ` H.J. Lu
2021-10-11 13:10 ` Lukasz Majewski
2021-10-11 13:22 ` H.J. Lu
2021-10-11 14:31 ` Lukasz Majewski
2021-10-11 13:34 ` Adhemerval Zanella
2021-10-11 12:48 ` Szabolcs Nagy
2021-10-15 7:54 ` [PATCH v2] dl: Use "adr" assembler command to get proper load address on ARM Lukasz Majewski
2021-10-15 12:09 ` Szabolcs Nagy
2021-10-15 12:21 ` H.J. Lu
2021-10-15 12:59 ` Lukasz Majewski
2021-10-15 23:53 ` Fāng-ruì Sòng
2021-10-18 11:08 ` Szabolcs Nagy
2021-10-18 11:35 ` Florian Weimer
2021-10-19 12:03 ` Lukasz Majewski
2021-10-25 10:18 ` Lukasz Majewski
2021-10-25 10:25 ` Florian Weimer
2021-10-25 10:53 ` Lukasz Majewski
2021-10-25 13:34 ` Szabolcs Nagy
2021-10-25 14:04 ` Lukasz Majewski
2021-10-25 15:09 ` Szabolcs Nagy
2021-10-25 17:26 ` Joseph Myers
2021-10-26 13:52 ` Lukasz Majewski
2021-10-26 20:55 ` Joseph Myers
2021-10-27 9:38 ` Szabolcs Nagy
2021-10-25 18:25 ` Lukasz Majewski
2021-10-15 13:59 ` Lukasz Majewski
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=alpine.DEB.2.22.394.2109171316050.3813920@digraph.polyomino.org.uk \
--to=joseph@codesourcery.com \
--cc=adhemerval.zanella@linaro.org \
--cc=fweimer@redhat.com \
--cc=libc-alpha@sourceware.org \
--cc=lukma@denx.de \
/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).