mailing list of musl libc
 help / color / mirror / code / Atom feed
From: Markus Wichmann <nullplan@gmx.net>
To: musl@lists.openwall.com
Subject: Re: [musl] Minor style patch to exit.c
Date: Sun, 19 Jan 2020 13:17:43 +0100	[thread overview]
Message-ID: <20200119121743.GF2020@voyager> (raw)
In-Reply-To: <20200119113134.GJ23985@port70.net>

On Sun, Jan 19, 2020 at 12:31:34PM +0100, Szabolcs Nagy wrote:
> this has undefined behaviour.
>
> the original code was carefully written to avoid that.
> you need to keep the uintptr_t cast since -- and > are
> undefined for pointers that go out of bound or don't
> point to the same object (and the _start, _end symbols
> don't represent the same c language object, they are
> independent).
>

So there was something I missed. Those linker symbols sure cause
trouble.

FTR: The problem is that we are taking the addresses of ostensibly
independent objects and comparing them. The only way to make the change
I'd like to make would be to get the linker to generate an actual
pointer object with a value, instead of generating some external
variable whose address is meaningful. And even if that were possible (I
think you can get the linker to write something into a section), that is
not part of the ABI, or of the normal linker script. So then you'd
always require a custom linker script. All for the convenience of not
having to do this conversion.

Oh well, at least I learned something.

Ciao,
Markus

  reply	other threads:[~2020-01-19 12:17 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-19 11:07 Markus Wichmann
2020-01-19 11:12 ` Markus Wichmann
2020-01-19 11:31 ` Szabolcs Nagy
2020-01-19 12:17   ` Markus Wichmann [this message]
2020-01-19 13:33   ` Alexander Cherepanov
2020-01-19 14:24     ` Markus Wichmann
2020-01-19 14:49       ` Pascal Cuoq
2020-01-19 15:53       ` Alexander Cherepanov
2020-01-19 16:22         ` Rich Felker
2020-01-19 21:02           ` Alexander Cherepanov
2020-01-19 14:46     ` Alexander Monakov
2020-01-19 16:18       ` Rich Felker
2020-01-19 17:11         ` Alexander Monakov
2020-01-19 17:17           ` Alexander Monakov
2020-01-19 17:19           ` Rich Felker
2020-01-19 17:32             ` Alexander Monakov
2020-01-19 17:38               ` Rich Felker
2020-01-19 19:13                 ` Alexander Monakov
2020-01-19 16:33       ` Alexander Cherepanov
2020-01-19 16:39         ` Rich Felker
2020-01-19 21:34           ` Alexander Cherepanov

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=20200119121743.GF2020@voyager \
    --to=nullplan@gmx.net \
    --cc=musl@lists.openwall.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.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

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 NNTP newsgroup(s).