From: Adhemerval Zanella Netto <adhemerval.zanella@linaro.org>
To: Florian Weimer <fweimer@redhat.com>, Rich Felker <dalias@libc.org>
Cc: "Antonios Salios via Libc-help" <libc-help@sourceware.org>,
"Antonios Salios" <antonios@mwa.re>,
"Jan Henrik Weinstock" <jan@mwa.re>,
"Lukas Jünger" <lukas@mwa.re>
Subject: Re: 64 bit time_t on riscv32
Date: Tue, 16 Jan 2024 13:29:51 -0300 [thread overview]
Message-ID: <a225083b-466f-479d-9667-4939ec95c869@linaro.org> (raw)
In-Reply-To: <87r0ih1c4g.fsf@oldenburg.str.redhat.com>
On 16/01/24 13:22, Florian Weimer wrote:
> * Rich Felker:
>
>> On Tue, Jan 16, 2024 at 04:46:17PM +0100, Florian Weimer wrote:
>>> * Adhemerval Zanella Netto:
>>>
>>>> My understanding was __USE_TIME_BITS64 would be required only for ABIs
>>>> that actually would multiple time_t sizes and the glibc 64 bit time_t
>>>> supported was added on this assumption. However, the design document
>>>> does state __USE_TIME_BITS64 would be defined even for architectures
>>>> where is does not require it. I it was not really caught in development
>>>> because the design creator was not really much involved at the time.
>>>>
>>>> I think it should be feasible to fix it, although backporting it would
>>>> generate a quite large patch.
>>>
>>> It will break applications that use __USE_TIME_BITS64 with glibc's
>>> current semantics centered on time64 redirects (incorrectly, of
>>> course—it's an internal macro). I think the use in the kernel is
>>> probably easier to address, and it has to be changed for compatibility
>>> with other libcs anyway.
>>
>> If there are applications assuming __USE_TIME_BITS64 implies redirects
>> and doing some hack around that, they really need to be fixed not to
>> do that. It will break on musl with (not yet merged) rv32 port as well
>> as any future 32-bit ports, which won't have any redirects because
>> there is no legacy 32-bit time_t ABI to support.
>
> That's actually not a problem because __USE_TIME_BITS64 is not defined
> on rv32 et al. (hence the complaint about what the UAPI headers are
> doing).
A possible fix would just check the redirection with
if __USE_TIME_BITS64 && __TIMESIZE == 32
The code is already poking an implementation detail, so it can just
continue to mimic what the installed header would do.
next prev parent reply other threads:[~2024-01-16 16:29 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-15 12:52 Antonios Salios
2024-01-15 13:40 ` Florian Weimer
2024-01-15 19:55 ` Adhemerval Zanella Netto
2024-01-15 20:15 ` Adhemerval Zanella Netto
2024-01-15 20:29 ` Arnd Bergmann
2024-01-15 22:26 ` Rich Felker
2024-01-16 11:19 ` Adhemerval Zanella Netto
2024-01-16 15:46 ` Florian Weimer
2024-01-16 15:56 ` Rich Felker
2024-01-16 16:22 ` Florian Weimer
2024-01-16 16:29 ` Adhemerval Zanella Netto [this message]
2024-01-16 20:43 ` Rich Felker
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=a225083b-466f-479d-9667-4939ec95c869@linaro.org \
--to=adhemerval.zanella@linaro.org \
--cc=antonios@mwa.re \
--cc=dalias@libc.org \
--cc=fweimer@redhat.com \
--cc=jan@mwa.re \
--cc=libc-help@sourceware.org \
--cc=lukas@mwa.re \
/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).