All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] Fix missing time64 wrappers
@ 2026-10-12 16:49 François Legal
  2026-10-12 19:54 ` Florian Bezdeka
  0 siblings, 1 reply; 2+ messages in thread
From: François Legal @ 2026-10-12 16:49 UTC (permalink / raw)
  To: xenomai

There are missing wrappers for 64 bits time in xenomai 3.3 :
- __recvmsg64
- __sendmsg64
- __sendmmsg64

For __recvmsg64, the only options which shall write to msghdr.msg_control are :
-RTCAN_RTIOC_TAKE_TIMESTAMP which always writes RTCAN_TIMESTAMP_SIZE (64) bits
so it is correct to route the time64 service to ne native "time_t" syscall.

Signed-off-by: François LEGAL <devel@thom.fr.eu.org>
---
diff --git a/lib/cobalt/cobalt-glibc-time64.wrappers b/lib/cobalt/cobalt-glibc-time64.wrappers
index 0bf895ca9..483a8ce24 100644
--- a/lib/cobalt/cobalt-glibc-time64.wrappers
+++ b/lib/cobalt/cobalt-glibc-time64.wrappers
@@ -8,7 +8,10 @@
 --wrap __mq_timedsend_time64
 --wrap __mq_timedreceive_time64
 --wrap __sigtimedwait64
+--wrap __recvmsg64
 --wrap __recvmmsg64
+--wrap __sendmsg64
+--wrap __sendmmsg64
 --wrap __pthread_cond_timedwait64
 --wrap __timer_settime64
 --wrap __timer_gettime64
diff --git a/lib/cobalt/rtdm.c b/lib/cobalt/rtdm.c
index 00c1aaf4b..264de8ace 100644
--- a/lib/cobalt/rtdm.c
+++ b/lib/cobalt/rtdm.c
@@ -254,7 +256,7 @@ static ssize_t do_recvmsg(int fd, struct msghdr *msg, int flags)
 	return ret;
 }

-COBALT_IMPL(ssize_t, recvmsg, (int fd, struct msghdr *msg, int flags))
+COBALT_IMPL_TIME64(ssize_t, recvmsg, __recvmsg64,
+		(int fd,struct msghdr *msg, int flags))
 {
 	int ret;

@@ -301,7 +301,7 @@ static ssize_t do_sendmsg(int fd, const struct msghdr *msg, int flags)
 	return ret;
 }

-COBALT_IMPL(ssize_t, sendmsg, (int fd, const struct msghdr *msg, int flags))
+COBALT_IMPL_TIME64(ssize_t, sendmsg, __sendmsg64,
+		(int fd, const struct msghdr *msg, int flags))
 {
 	int ret;

@@ -312,7 +312,7 @@ COBALT_IMPL(ssize_t, sendmsg, (int fd, const struct msghdr *msg, int flags))
 	return __STD(sendmsg(fd, msg, flags));
 }

-COBALT_IMPL(int, sendmmsg, (int fd, struct mmsghdr *msgvec,
+COBALT_IMPL_TIME64(int, sendmmsg, sendmmsg64, (int fd, struct mmsghdr *msgvec,
 			    unsigned int vlen, unsigned int flags))
 {
 	int ret, oldtype;


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-10-12 21:34 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-12 16:49 [PATCH v2] Fix missing time64 wrappers François Legal
2026-10-12 19:54 ` Florian Bezdeka

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.