* [PATCH] add time64 copies of system calls @ 2024-11-18 19:16 Marcin Juszkiewicz 2024-11-18 22:51 ` Alejandro Colomar 0 siblings, 1 reply; 8+ messages in thread From: Marcin Juszkiewicz @ 2024-11-18 19:16 UTC (permalink / raw) To: Alejandro Colomar; +Cc: Marcin Juszkiewicz, linux-man During work on y2038 problem several time related system calls got "64" or "_time64" copies. It happened only on 32-bit architectures as there was no problem on 64-bit ones. Signed-off-by: Marcin Juszkiewicz <marcin@juszkiewicz.com.pl> --- man/man2/clock_adjtime64.2 | 1 + man/man2/clock_getres64.2 | 1 + man/man2/clock_gettime64.2 | 1 + man/man2/clock_nanosleep_time64.2 | 1 + man/man2/clock_settime64.2 | 1 + man/man2/futex_time64.2 | 1 + man/man2/mq_timedreceive_time64.2 | 2 ++ man/man2/mq_timedsend_time64.2 | 2 ++ man/man2/ppoll_time64.2 | 1 + man/man2/pselect6_time64.2 | 1 + man/man2/recvmmsg_time64.2 | 1 + man/man2/rt_sigtimedwait_time64.2 | 1 + man/man2/sched_rr_get_interval_time64.2 | 1 + man/man2/semtimedop_time64.2 | 1 + man/man2/timer_gettime64.2 | 1 + man/man2/timer_settime64.2 | 1 + man/man2/timerfd_gettime64.2 | 1 + man/man2/timerfd_settime64.2 | 1 + man/man2/utimensat_time64.2 | 1 + 19 files changed, 21 insertions(+) create mode 100644 man/man2/clock_adjtime64.2 create mode 100644 man/man2/clock_getres64.2 create mode 100644 man/man2/clock_gettime64.2 create mode 100644 man/man2/clock_nanosleep_time64.2 create mode 100644 man/man2/clock_settime64.2 create mode 100644 man/man2/futex_time64.2 create mode 100644 man/man2/mq_timedreceive_time64.2 create mode 100644 man/man2/mq_timedsend_time64.2 create mode 100644 man/man2/ppoll_time64.2 create mode 100644 man/man2/pselect6_time64.2 create mode 100644 man/man2/recvmmsg_time64.2 create mode 100644 man/man2/rt_sigtimedwait_time64.2 create mode 100644 man/man2/sched_rr_get_interval_time64.2 create mode 100644 man/man2/semtimedop_time64.2 create mode 100644 man/man2/timer_gettime64.2 create mode 100644 man/man2/timer_settime64.2 create mode 100644 man/man2/timerfd_gettime64.2 create mode 100644 man/man2/timerfd_settime64.2 create mode 100644 man/man2/utimensat_time64.2 diff --git a/man/man2/clock_adjtime64.2 b/man/man2/clock_adjtime64.2 new file mode 100644 index 000000000..b08b9c801 --- /dev/null +++ b/man/man2/clock_adjtime64.2 @@ -0,0 +1 @@ +.so man2/adjtimex.2 diff --git a/man/man2/clock_getres64.2 b/man/man2/clock_getres64.2 new file mode 100644 index 000000000..5a599b4b9 --- /dev/null +++ b/man/man2/clock_getres64.2 @@ -0,0 +1 @@ +.so man2/clock_getres.2 diff --git a/man/man2/clock_gettime64.2 b/man/man2/clock_gettime64.2 new file mode 100644 index 000000000..5a599b4b9 --- /dev/null +++ b/man/man2/clock_gettime64.2 @@ -0,0 +1 @@ +.so man2/clock_getres.2 diff --git a/man/man2/clock_nanosleep_time64.2 b/man/man2/clock_nanosleep_time64.2 new file mode 100644 index 000000000..b69e18aaa --- /dev/null +++ b/man/man2/clock_nanosleep_time64.2 @@ -0,0 +1 @@ +.so man2/clock_nanosleep.2 diff --git a/man/man2/clock_settime64.2 b/man/man2/clock_settime64.2 new file mode 100644 index 000000000..5a599b4b9 --- /dev/null +++ b/man/man2/clock_settime64.2 @@ -0,0 +1 @@ +.so man2/clock_getres.2 diff --git a/man/man2/futex_time64.2 b/man/man2/futex_time64.2 new file mode 100644 index 000000000..5dbcdeae1 --- /dev/null +++ b/man/man2/futex_time64.2 @@ -0,0 +1 @@ +.so man2/futex.2 diff --git a/man/man2/mq_timedreceive_time64.2 b/man/man2/mq_timedreceive_time64.2 new file mode 100644 index 000000000..b4184f8c2 --- /dev/null +++ b/man/man2/mq_timedreceive_time64.2 @@ -0,0 +1,2 @@ +.so man3/mq_timedreceive.3 +.\" Because mq_timedreceive(3) is layered on a system call of the same name diff --git a/man/man2/mq_timedsend_time64.2 b/man/man2/mq_timedsend_time64.2 new file mode 100644 index 000000000..db95863ad --- /dev/null +++ b/man/man2/mq_timedsend_time64.2 @@ -0,0 +1,2 @@ +.so man3/mq_timedsend.3 +.\" Because mq_timedsend(3) is layered on a system call of the same name diff --git a/man/man2/ppoll_time64.2 b/man/man2/ppoll_time64.2 new file mode 100644 index 000000000..227cd0e47 --- /dev/null +++ b/man/man2/ppoll_time64.2 @@ -0,0 +1 @@ +.so man2/poll.2 diff --git a/man/man2/pselect6_time64.2 b/man/man2/pselect6_time64.2 new file mode 100644 index 000000000..e17784318 --- /dev/null +++ b/man/man2/pselect6_time64.2 @@ -0,0 +1 @@ +.so man2/select.2 diff --git a/man/man2/recvmmsg_time64.2 b/man/man2/recvmmsg_time64.2 new file mode 100644 index 000000000..8b9c14ff3 --- /dev/null +++ b/man/man2/recvmmsg_time64.2 @@ -0,0 +1 @@ +.so man2/recvmmsg.2 diff --git a/man/man2/rt_sigtimedwait_time64.2 b/man/man2/rt_sigtimedwait_time64.2 new file mode 100644 index 000000000..ca098e5fc --- /dev/null +++ b/man/man2/rt_sigtimedwait_time64.2 @@ -0,0 +1 @@ +.so man2/sigtimedwait.2 diff --git a/man/man2/sched_rr_get_interval_time64.2 b/man/man2/sched_rr_get_interval_time64.2 new file mode 100644 index 000000000..27c946363 --- /dev/null +++ b/man/man2/sched_rr_get_interval_time64.2 @@ -0,0 +1 @@ +.so man2/sched_rr_get_interval.2 diff --git a/man/man2/semtimedop_time64.2 b/man/man2/semtimedop_time64.2 new file mode 100644 index 000000000..8a4061874 --- /dev/null +++ b/man/man2/semtimedop_time64.2 @@ -0,0 +1 @@ +.so man2/semop.2 diff --git a/man/man2/timer_gettime64.2 b/man/man2/timer_gettime64.2 new file mode 100644 index 000000000..42015ca6b --- /dev/null +++ b/man/man2/timer_gettime64.2 @@ -0,0 +1 @@ +.so man2/timer_settime.2 diff --git a/man/man2/timer_settime64.2 b/man/man2/timer_settime64.2 new file mode 100644 index 000000000..42015ca6b --- /dev/null +++ b/man/man2/timer_settime64.2 @@ -0,0 +1 @@ +.so man2/timer_settime.2 diff --git a/man/man2/timerfd_gettime64.2 b/man/man2/timerfd_gettime64.2 new file mode 100644 index 000000000..6d1294048 --- /dev/null +++ b/man/man2/timerfd_gettime64.2 @@ -0,0 +1 @@ +.so man2/timerfd_create.2 diff --git a/man/man2/timerfd_settime64.2 b/man/man2/timerfd_settime64.2 new file mode 100644 index 000000000..6d1294048 --- /dev/null +++ b/man/man2/timerfd_settime64.2 @@ -0,0 +1 @@ +.so man2/timerfd_create.2 diff --git a/man/man2/utimensat_time64.2 b/man/man2/utimensat_time64.2 new file mode 100644 index 000000000..a365c7b53 --- /dev/null +++ b/man/man2/utimensat_time64.2 @@ -0,0 +1 @@ +.so man2/utimensat.2 -- 2.47.0 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH] add time64 copies of system calls 2024-11-18 19:16 [PATCH] add time64 copies of system calls Marcin Juszkiewicz @ 2024-11-18 22:51 ` Alejandro Colomar 2024-11-19 8:23 ` Marcin Juszkiewicz 0 siblings, 1 reply; 8+ messages in thread From: Alejandro Colomar @ 2024-11-18 22:51 UTC (permalink / raw) To: Marcin Juszkiewicz; +Cc: linux-man [-- Attachment #1: Type: text/plain, Size: 7071 bytes --] Hi Marcin, On Mon, Nov 18, 2024 at 08:16:24PM +0100, Marcin Juszkiewicz wrote: > During work on y2038 problem several time related system calls got "64" > or "_time64" copies. It happened only on 32-bit architectures as there > was no problem on 64-bit ones. > > Signed-off-by: Marcin Juszkiewicz <marcin@juszkiewicz.com.pl> This only adds link pages, but doesn't add any documentation for them. Should we add anything? Maybe to the SYNOPSIS and VERSIONS (or HISTORY)? Cheers, Alex > --- > man/man2/clock_adjtime64.2 | 1 + > man/man2/clock_getres64.2 | 1 + > man/man2/clock_gettime64.2 | 1 + > man/man2/clock_nanosleep_time64.2 | 1 + > man/man2/clock_settime64.2 | 1 + > man/man2/futex_time64.2 | 1 + > man/man2/mq_timedreceive_time64.2 | 2 ++ > man/man2/mq_timedsend_time64.2 | 2 ++ > man/man2/ppoll_time64.2 | 1 + > man/man2/pselect6_time64.2 | 1 + > man/man2/recvmmsg_time64.2 | 1 + > man/man2/rt_sigtimedwait_time64.2 | 1 + > man/man2/sched_rr_get_interval_time64.2 | 1 + > man/man2/semtimedop_time64.2 | 1 + > man/man2/timer_gettime64.2 | 1 + > man/man2/timer_settime64.2 | 1 + > man/man2/timerfd_gettime64.2 | 1 + > man/man2/timerfd_settime64.2 | 1 + > man/man2/utimensat_time64.2 | 1 + > 19 files changed, 21 insertions(+) > create mode 100644 man/man2/clock_adjtime64.2 > create mode 100644 man/man2/clock_getres64.2 > create mode 100644 man/man2/clock_gettime64.2 > create mode 100644 man/man2/clock_nanosleep_time64.2 > create mode 100644 man/man2/clock_settime64.2 > create mode 100644 man/man2/futex_time64.2 > create mode 100644 man/man2/mq_timedreceive_time64.2 > create mode 100644 man/man2/mq_timedsend_time64.2 > create mode 100644 man/man2/ppoll_time64.2 > create mode 100644 man/man2/pselect6_time64.2 > create mode 100644 man/man2/recvmmsg_time64.2 > create mode 100644 man/man2/rt_sigtimedwait_time64.2 > create mode 100644 man/man2/sched_rr_get_interval_time64.2 > create mode 100644 man/man2/semtimedop_time64.2 > create mode 100644 man/man2/timer_gettime64.2 > create mode 100644 man/man2/timer_settime64.2 > create mode 100644 man/man2/timerfd_gettime64.2 > create mode 100644 man/man2/timerfd_settime64.2 > create mode 100644 man/man2/utimensat_time64.2 > > diff --git a/man/man2/clock_adjtime64.2 b/man/man2/clock_adjtime64.2 > new file mode 100644 > index 000000000..b08b9c801 > --- /dev/null > +++ b/man/man2/clock_adjtime64.2 > @@ -0,0 +1 @@ > +.so man2/adjtimex.2 > diff --git a/man/man2/clock_getres64.2 b/man/man2/clock_getres64.2 > new file mode 100644 > index 000000000..5a599b4b9 > --- /dev/null > +++ b/man/man2/clock_getres64.2 > @@ -0,0 +1 @@ > +.so man2/clock_getres.2 > diff --git a/man/man2/clock_gettime64.2 b/man/man2/clock_gettime64.2 > new file mode 100644 > index 000000000..5a599b4b9 > --- /dev/null > +++ b/man/man2/clock_gettime64.2 > @@ -0,0 +1 @@ > +.so man2/clock_getres.2 > diff --git a/man/man2/clock_nanosleep_time64.2 b/man/man2/clock_nanosleep_time64.2 > new file mode 100644 > index 000000000..b69e18aaa > --- /dev/null > +++ b/man/man2/clock_nanosleep_time64.2 > @@ -0,0 +1 @@ > +.so man2/clock_nanosleep.2 > diff --git a/man/man2/clock_settime64.2 b/man/man2/clock_settime64.2 > new file mode 100644 > index 000000000..5a599b4b9 > --- /dev/null > +++ b/man/man2/clock_settime64.2 > @@ -0,0 +1 @@ > +.so man2/clock_getres.2 > diff --git a/man/man2/futex_time64.2 b/man/man2/futex_time64.2 > new file mode 100644 > index 000000000..5dbcdeae1 > --- /dev/null > +++ b/man/man2/futex_time64.2 > @@ -0,0 +1 @@ > +.so man2/futex.2 > diff --git a/man/man2/mq_timedreceive_time64.2 b/man/man2/mq_timedreceive_time64.2 > new file mode 100644 > index 000000000..b4184f8c2 > --- /dev/null > +++ b/man/man2/mq_timedreceive_time64.2 > @@ -0,0 +1,2 @@ > +.so man3/mq_timedreceive.3 > +.\" Because mq_timedreceive(3) is layered on a system call of the same name > diff --git a/man/man2/mq_timedsend_time64.2 b/man/man2/mq_timedsend_time64.2 > new file mode 100644 > index 000000000..db95863ad > --- /dev/null > +++ b/man/man2/mq_timedsend_time64.2 > @@ -0,0 +1,2 @@ > +.so man3/mq_timedsend.3 > +.\" Because mq_timedsend(3) is layered on a system call of the same name > diff --git a/man/man2/ppoll_time64.2 b/man/man2/ppoll_time64.2 > new file mode 100644 > index 000000000..227cd0e47 > --- /dev/null > +++ b/man/man2/ppoll_time64.2 > @@ -0,0 +1 @@ > +.so man2/poll.2 > diff --git a/man/man2/pselect6_time64.2 b/man/man2/pselect6_time64.2 > new file mode 100644 > index 000000000..e17784318 > --- /dev/null > +++ b/man/man2/pselect6_time64.2 > @@ -0,0 +1 @@ > +.so man2/select.2 > diff --git a/man/man2/recvmmsg_time64.2 b/man/man2/recvmmsg_time64.2 > new file mode 100644 > index 000000000..8b9c14ff3 > --- /dev/null > +++ b/man/man2/recvmmsg_time64.2 > @@ -0,0 +1 @@ > +.so man2/recvmmsg.2 > diff --git a/man/man2/rt_sigtimedwait_time64.2 b/man/man2/rt_sigtimedwait_time64.2 > new file mode 100644 > index 000000000..ca098e5fc > --- /dev/null > +++ b/man/man2/rt_sigtimedwait_time64.2 > @@ -0,0 +1 @@ > +.so man2/sigtimedwait.2 > diff --git a/man/man2/sched_rr_get_interval_time64.2 b/man/man2/sched_rr_get_interval_time64.2 > new file mode 100644 > index 000000000..27c946363 > --- /dev/null > +++ b/man/man2/sched_rr_get_interval_time64.2 > @@ -0,0 +1 @@ > +.so man2/sched_rr_get_interval.2 > diff --git a/man/man2/semtimedop_time64.2 b/man/man2/semtimedop_time64.2 > new file mode 100644 > index 000000000..8a4061874 > --- /dev/null > +++ b/man/man2/semtimedop_time64.2 > @@ -0,0 +1 @@ > +.so man2/semop.2 > diff --git a/man/man2/timer_gettime64.2 b/man/man2/timer_gettime64.2 > new file mode 100644 > index 000000000..42015ca6b > --- /dev/null > +++ b/man/man2/timer_gettime64.2 > @@ -0,0 +1 @@ > +.so man2/timer_settime.2 > diff --git a/man/man2/timer_settime64.2 b/man/man2/timer_settime64.2 > new file mode 100644 > index 000000000..42015ca6b > --- /dev/null > +++ b/man/man2/timer_settime64.2 > @@ -0,0 +1 @@ > +.so man2/timer_settime.2 > diff --git a/man/man2/timerfd_gettime64.2 b/man/man2/timerfd_gettime64.2 > new file mode 100644 > index 000000000..6d1294048 > --- /dev/null > +++ b/man/man2/timerfd_gettime64.2 > @@ -0,0 +1 @@ > +.so man2/timerfd_create.2 > diff --git a/man/man2/timerfd_settime64.2 b/man/man2/timerfd_settime64.2 > new file mode 100644 > index 000000000..6d1294048 > --- /dev/null > +++ b/man/man2/timerfd_settime64.2 > @@ -0,0 +1 @@ > +.so man2/timerfd_create.2 > diff --git a/man/man2/utimensat_time64.2 b/man/man2/utimensat_time64.2 > new file mode 100644 > index 000000000..a365c7b53 > --- /dev/null > +++ b/man/man2/utimensat_time64.2 > @@ -0,0 +1 @@ > +.so man2/utimensat.2 > -- > 2.47.0 > -- <https://www.alejandro-colomar.es/> [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] add time64 copies of system calls 2024-11-18 22:51 ` Alejandro Colomar @ 2024-11-19 8:23 ` Marcin Juszkiewicz 2024-11-20 22:40 ` Carlos O'Donell 0 siblings, 1 reply; 8+ messages in thread From: Marcin Juszkiewicz @ 2024-11-19 8:23 UTC (permalink / raw) To: Alejandro Colomar; +Cc: linux-man W dniu 18.11.2024 o 23:51, Alejandro Colomar pisze: > Hi Marcin, > > On Mon, Nov 18, 2024 at 08:16:24PM +0100, Marcin Juszkiewicz wrote: >> During work on y2038 problem several time related system calls got "64" >> or "_time64" copies. It happened only on 32-bit architectures as there >> was no problem on 64-bit ones. >> >> Signed-off-by: Marcin Juszkiewicz <marcin@juszkiewicz.com.pl> > > This only adds link pages, but doesn't add any documentation for them. > Should we add anything? Maybe to the SYNOPSIS and VERSIONS (or HISTORY)? Will look into it. ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] add time64 copies of system calls 2024-11-19 8:23 ` Marcin Juszkiewicz @ 2024-11-20 22:40 ` Carlos O'Donell 2025-02-26 14:48 ` Marcin Juszkiewicz 0 siblings, 1 reply; 8+ messages in thread From: Carlos O'Donell @ 2024-11-20 22:40 UTC (permalink / raw) To: Marcin Juszkiewicz, Alejandro Colomar; +Cc: linux-man On 11/19/24 3:23 AM, Marcin Juszkiewicz wrote: > W dniu 18.11.2024 o 23:51, Alejandro Colomar pisze: >> Hi Marcin, >> >> On Mon, Nov 18, 2024 at 08:16:24PM +0100, Marcin Juszkiewicz wrote: >>> During work on y2038 problem several time related system calls got "64" >>> or "_time64" copies. It happened only on 32-bit architectures as there >>> was no problem on 64-bit ones. >>> >>> Signed-off-by: Marcin Juszkiewicz <marcin@juszkiewicz.com.pl> >> >> This only adds link pages, but doesn't add any documentation for them. >> Should we add anything? Maybe to the SYNOPSIS and VERSIONS (or HISTORY)? > > Will look into it. We absolutely can and should add documentation for the kernel syscalls since they are unique syscalls that take 64-bit time_t variants for a 32-bit userspace. These syscalls are the 64-bit time_t variants to allow userspace to build 32-bit targets that have 64-bit time_t e.g. alternate ABI i686 with 64-bit time_t. The userspace interfaces are hidden behind a 64-bit time_t though and shouldn't change (though the ABI changes). -- Cheers, Carlos. ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] add time64 copies of system calls 2024-11-20 22:40 ` Carlos O'Donell @ 2025-02-26 14:48 ` Marcin Juszkiewicz 2025-02-26 15:23 ` Alejandro Colomar 0 siblings, 1 reply; 8+ messages in thread From: Marcin Juszkiewicz @ 2025-02-26 14:48 UTC (permalink / raw) To: Carlos O'Donell, Alejandro Colomar; +Cc: linux-man W dniu 20.11.2024 o 23:40, Carlos O'Donell pisze: > On 11/19/24 3:23 AM, Marcin Juszkiewicz wrote: >> W dniu 18.11.2024 o 23:51, Alejandro Colomar pisze: >>> Hi Marcin, >>> >>> On Mon, Nov 18, 2024 at 08:16:24PM +0100, Marcin Juszkiewicz wrote: >>>> During work on y2038 problem several time related system calls got "64" >>>> or "_time64" copies. It happened only on 32-bit architectures as there >>>> was no problem on 64-bit ones. >>>> >>>> Signed-off-by: Marcin Juszkiewicz <marcin@juszkiewicz.com.pl> >>> >>> This only adds link pages, but doesn't add any documentation for them. >>> Should we add anything? Maybe to the SYNOPSIS and VERSIONS (or HISTORY)? >> >> Will look into it. > > We absolutely can and should add documentation for the kernel syscalls since they are > unique syscalls that take 64-bit time_t variants for a 32-bit userspace. > > These syscalls are the 64-bit time_t variants to allow userspace to build 32-bit targets > that have 64-bit time_t e.g. alternate ABI i686 with 64-bit time_t. > > The userspace interfaces are hidden behind a 64-bit time_t though and shouldn't change > (though the ABI changes). I started looking at it - wondering how much info should be there. Simple like patch below or more complex one? troff is awful... 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 .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. .SH NOTES In struct .IR timex , ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH] add time64 copies of system calls 2025-02-26 14:48 ` Marcin Juszkiewicz @ 2025-02-26 15:23 ` Alejandro Colomar 2025-02-27 9:52 ` Marcin Juszkiewicz 0 siblings, 1 reply; 8+ messages in thread From: Alejandro Colomar @ 2025-02-26 15:23 UTC (permalink / raw) To: Marcin Juszkiewicz; +Cc: Carlos O'Donell, linux-man [-- Attachment #1: Type: text/plain, Size: 2437 bytes --] Hi Marcin, On Wed, Feb 26, 2025 at 03:48:19PM +0100, Marcin Juszkiewicz wrote: > > We absolutely can and should add documentation for the kernel syscalls since they are > > unique syscalls that take 64-bit time_t variants for a 32-bit userspace. > > > > These syscalls are the 64-bit time_t variants to allow userspace to build 32-bit targets > > that have 64-bit time_t e.g. alternate ABI i686 with 64-bit time_t. > > > > The userspace interfaces are hidden behind a 64-bit time_t though and shouldn't change > > (though the ABI changes). > > I started looking at it - wondering how much info should be there. Simple > like patch below or more complex one? > > troff is awful... :-) > 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): // Only in 32-bit systems: ...; or #if (...) ...; #endif > .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. Maybe a new Y2038(7) manual page would be a good place for that. Have a lovely day! Alex > .SH NOTES > In struct > .IR timex , -- <https://www.alejandro-colomar.es/> [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] add time64 copies of system calls 2025-02-26 15:23 ` Alejandro Colomar @ 2025-02-27 9:52 ` Marcin Juszkiewicz 2025-02-27 10:53 ` Alejandro Colomar 0 siblings, 1 reply; 8+ messages in thread From: Marcin Juszkiewicz @ 2025-02-27 9:52 UTC (permalink / raw) To: Alejandro Colomar; +Cc: Carlos O'Donell, linux-man W dniu 26.02.2025 o 16:23, Alejandro Colomar pisze: > On Wed, Feb 26, 2025 at 03:48:19PM +0100, Marcin Juszkiewicz wrote: >> 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 > >> .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. ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] add time64 copies of system calls 2025-02-27 9:52 ` Marcin Juszkiewicz @ 2025-02-27 10:53 ` Alejandro Colomar 0 siblings, 0 replies; 8+ messages in thread From: Alejandro Colomar @ 2025-02-27 10:53 UTC (permalink / raw) To: Marcin Juszkiewicz; +Cc: Carlos O'Donell, linux-man [-- Attachment #1: Type: text/plain, Size: 2801 bytes --] Hi Marcin, On Thu, Feb 27, 2025 at 10:52:16AM +0100, Marcin Juszkiewicz wrote: > W dniu 26.02.2025 o 16:23, Alejandro Colomar pisze: > > On Wed, Feb 26, 2025 at 03:48:19PM +0100, Marcin Juszkiewicz wrote: > > > > 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. Can we use something like #if (PLATFORM_BITS == 32)? I guess there's some macro that will determine that a platform is 32-bit, right? > 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 > > > > > .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. :) Have a lovely day! Alex -- <https://www.alejandro-colomar.es/> [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2025-02-27 10:53 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2024-11-18 19:16 [PATCH] add time64 copies of system calls Marcin Juszkiewicz 2024-11-18 22:51 ` Alejandro Colomar 2024-11-19 8:23 ` Marcin Juszkiewicz 2024-11-20 22:40 ` Carlos O'Donell 2025-02-26 14:48 ` Marcin Juszkiewicz 2025-02-26 15:23 ` Alejandro Colomar 2025-02-27 9:52 ` Marcin Juszkiewicz 2025-02-27 10:53 ` Alejandro Colomar
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox