Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190802214433.GA25193@brightrain.aerifal.cx>
Date: Fri, 2 Aug 2019 17:44:33 -0400
From: Rich Felker <dalias@...c.org>
To: musl@...ts.openwall.com
Subject: [RFC] final time64 switch-over patch series

Final in the sense of "final steps needed", not "final version of
patch". These are very much drafts, and subject to change. The time64
commits I've already pushed added time64 syscall backends and removed
assumptions that time_t matches the type used by syscalls; the ones
attached here deal with changing over the public types in a way
compatible with existing code.

I'm looking for feedback on all of this. There are particularly a few
structs not yet adapted yet, where it's not clear what the best way to
lay them out is or how the definition should be selected (based on
_REDIR_TIME64 macro? new bits files? a separate macro controlling
struct layout? ...). There may be significant mistakes in the time32
compat shims, which would break old binaries but otherwise be
inconsequential; it wouldn't result in unfixable ABI breakage.
Analysis of possible things that might go wrong even if everything is
done right are also welcome at this point.

Schedule for going forward with this is open right now. I'm not sure
if it makes sense to quickly put out an experimental release with
this, marked as experimental in case there turn out to be ABI problems
we need to correct, or if it might be better to put out a fairly safe
release soon with the internal time64 support changes and other work,
and publish time64 switchover patches separately as something users
can try applying experimentally. Either 1.1.24 or 1.1.25 should ship
with fully 64-bit time_t, though.

Rich

View attachment "0001-add-time64-symbol-name-redirects-to-public-headers-u.patch" of type "text/plain" (12509 bytes)

View attachment "0002-disable-lfs64-aliases-for-remapped-time64-functions.patch" of type "text/plain" (2764 bytes)

View attachment "0003-make-fstatat-fill-in-old-time32-stat-fields-too.patch" of type "text/plain" (2014 bytes)

View attachment "0004-add-time32-ABI-compat-shims-compat-source-tree.patch" of type "text/plain" (48070 bytes)

View attachment "0005-RFC-POC-switch-i386-to-64-bit-time_t.patch" of type "text/plain" (7575 bytes)

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.