Thread (7980 messages) 7980 messages, 3 authors, 2025-02-27

Re: [PATCH] add time64 copies of system calls

From: Marcin Juszkiewicz <hidden>
Date: 2025-02-27 09:52:21

W dniu 26.02.2025 o 16:23, Alejandro Colomar pisze:
On Wed, Feb 26, 2025 at 03:48:19PM +0100, Marcin Juszkiewicz wrote:
quoted
diff --git a/man/man2/adjtimex.2 b/man/man2/adjtimex.2
index 7a87ac654..6dde493aa 100644
--- a/man/man2/adjtimex.2
+++ b/man/man2/adjtimex.2
@@ -10,7 +10,7 @@
  .\"
  .TH adjtimex 2 (date) "Linux man-pages (unreleased)"
  .SH NAME
-adjtimex, clock_adjtime, ntp_adjtime \- tune kernel clock
+adjtimex, clock_adjtime, clock_adjtime64, ntp_adjtime \- tune kernel clock
  .SH LIBRARY
  Standard C library
  .RI ( libc ,\~ \-lc )
@@ -22,6 +22,8 @@ .SH SYNOPSIS
  .P
  .BI "int clock_adjtime(clockid_t " clk_id, " struct timex *" "buf" );
  .P
+.BI "int clock_adjtime64(clockid_t " clk_id, " struct timex *" "buf" );
+.P
I'd move it to the bottom of the SYNOPSYS, and add a comment above
saying it's only available on 32-bit systems (if there are exact macros
that define those platforms, it would be interesting to use that):
It is on all 32-bit architectures supported by Linux 5.1+ so probably 
there is no point in listing them in man page.

Now they are: arm/armoabi, i386, powerpc, s390, arc, csky, hexagon, 
m68k, microblaze, mips64n32/mipso32, nios2, openrisc, parisc, riscv32, 
sh, sparc and xtensa.

https://gpages.juszkiewicz.com.pl/syscalls-table/syscalls.html shows all 
system calls and allows to disable/reorder columns. Everything from 
'avr32' to the right is no longer present in Linux kernel.
	// Only in 32-bit systems:
	...;

or

	#if (...)
	...;
	#endif
quoted
  .BI "int ntp_adjtime(struct timex *" buf );
  .fi
  .SH DESCRIPTION
@@ -557,6 +559,10 @@ .SH STANDARDS
  .P
  The preferred API for the NTP daemon is
  .BR ntp_adjtime ().
+.SH HISTORY
+Linux 5.1 added
+.BR clock_adjtime64()
+call on 32-bit architectures as part of handling Y2038 problem.
For a start, this should be enough.  We can later add some more details
if needed.  I also don't want to waste much space in the manual pages
about these.  Maybe we could have a generic description for xxx64() APIs
elsewhere, which clarifies what all of these are. 
Thanks.

 > Maybe a new Y2038(7) manual page would be a good place for that.

Good idea.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help