Date: Mon, 17 Feb 2025 18:08:18 +0100 From: Kristof Provost <kp@FreeBSD.org> To: John Baldwin <jhb@FreeBSD.org> Cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: 7e7f88001d7d - main - pf: use time_t for storing time_t values Message-ID: <1B3E8B07-037B-4DA9-A8D7-81F866078A39@FreeBSD.org> In-Reply-To: <5c019c51-949b-4255-bc44-926ac973a1af@FreeBSD.org> References: <202502141750.51EHoOFm061342@gitrepo.freebsd.org> <5c019c51-949b-4255-bc44-926ac973a1af@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --] On 17 Feb 2025, at 16:24, John Baldwin wrote: > On 2/14/25 12:50, Kristof Provost wrote: >> The branch main has been updated by kp: >> >> URL: >> https://cgit.FreeBSD.org/src/commit/?id=7e7f88001d7dfec83cd7568369be6a587d4a51ff >> >> commit 7e7f88001d7dfec83cd7568369be6a587d4a51ff >> Author: Kristof Provost <kp@FreeBSD.org> >> AuthorDate: 2025-02-07 10:29:26 +0000 >> Commit: Kristof Provost <kp@FreeBSD.org> >> CommitDate: 2025-02-14 17:47:52 +0000 >> >> pf: use time_t for storing time_t values >> No change to the underlying type, so no ABI change. >> We define __time_t as uint64_t if __LP64__, otherwise >> uint32_t, >> and only define __LP64__ if long is 64 bits. >> In other words: __time_t == long. >> ok henning@ deraadt@ >> Obtained from: OpenBSD, guenther <guenther@openbsd.org>, >> 6c1b69a0ff >> Sponsored by: Rubicon Communications, LLC ("Netgate") >> Differential Revision: https://reviews.freebsd.org/D48963 > > This is an ABI change on non-i386 32-bit platforms in FreeBSD since > they > all use a 64-bit type for time_t that is not the same size as long. > Not > sure if the ABI change matters on FreeBSD though? > It wasn’t intended to be an ABI change, hence the commit message. It appears that’s only correct for x86 though. So we’re only talking about armv7 and ppc32, if I’m not forgetting anything. The former is on the removal list already, and the latter .. well, I don’t know how many users there are. Both are likely to be embedded platforms where the ABI change is going to be even less relevant (because it really only matters if the kernel and userspace are not updated together, and these are going to be embedded devices that are far more likely to have everything updated simultaneously). So I’m unsure about what to do. I can revert this and we can just carry this (trivial) diff to OpenBSD forever, or we can ignore the ABI breakage given the above. I’m not inclined to do anything more involved though. Do you have any thoughts? Best regards, Kristof [-- Attachment #2 --] <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/xhtml; charset=utf-8"> </head> <body><div style="font-family: sans-serif;"><div class="markdown" style="white-space: normal;"> <p dir="auto">On 17 Feb 2025, at 16:24, John Baldwin wrote:</p> <blockquote style="margin: 0 0 5px; padding-left: 5px; border-left: 2px solid #136BCE; color: #136BCE;"> <p dir="auto">On 2/14/25 12:50, Kristof Provost wrote:</p> <blockquote style="margin: 0 0 5px; padding-left: 5px; border-left: 2px solid #136BCE; border-left-color: #4B89CF; color: #4B89CF;"> <p dir="auto">The branch main has been updated by kp:</p> <p dir="auto">URL: <a href="https://cgit.FreeBSD.org/src/commit/?id=7e7f88001d7dfec83cd7568369be6a587d4a51ff">https://cgit.FreeBSD.org/src/commit/?id=7e7f88001d7dfec83cd7568369be6a587d4a51ff</a></p> <p dir="auto">commit 7e7f88001d7dfec83cd7568369be6a587d4a51ff<br> Author: Kristof Provost <a href="mailto:kp@FreeBSD.org">kp@FreeBSD.org</a><br> AuthorDate: 2025-02-07 10:29:26 +0000<br> Commit: Kristof Provost <a href="mailto:kp@FreeBSD.org">kp@FreeBSD.org</a><br> CommitDate: 2025-02-14 17:47:52 +0000</p> <pre style="margin-left: 15px; margin-right: 15px; padding: 5px; border: thin solid gray; overflow-x: auto; max-width: 90vw; background-color: #E4E4E4;"><code style="padding: 0 0.25em; background-color: #E4E4E4;"> pf: use time_t for storing time_t values No change to the underlying type, so no ABI change. We define __time_t as uint64_t if __LP64__, otherwise uint32_t, and only define __LP64__ if long is 64 bits. In other words: __time_t == long. ok henning@ deraadt@ Obtained from: OpenBSD, guenther <guenther@openbsd.org>, 6c1b69a0ff Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D48963 </code></pre> </blockquote> <p dir="auto">This is an ABI change on non-i386 32-bit platforms in FreeBSD since they<br> all use a 64-bit type for time_t that is not the same size as long. Not<br> sure if the ABI change matters on FreeBSD though?</p> </blockquote> <p dir="auto">It wasn’t intended to be an ABI change, hence the commit message. It appears that’s only correct for x86 though.</p> <p dir="auto">So we’re only talking about armv7 and ppc32, if I’m not forgetting anything. The former is on the removal list already, and the latter .. well, I don’t know how many users there are. Both are likely to be embedded platforms where the ABI change is going to be even less relevant (because it really only matters if the kernel and userspace are not updated together, and these are going to be embedded devices that are far more likely to have everything updated simultaneously).</p> <p dir="auto">So I’m unsure about what to do. I can revert this and we can just carry this (trivial) diff to OpenBSD forever, or we can ignore the ABI breakage given the above. I’m not inclined to do anything more involved though.</p> <p dir="auto">Do you have any thoughts?</p> <p dir="auto">Best regards,<br> Kristof</p> </div> </div> </body> </html>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1B3E8B07-037B-4DA9-A8D7-81F866078A39>
