summaryrefslogtreecommitdiff
path: root/linux-Fix-missing-__convert_scm_timestamps-BZ-28860.patch
diff options
context:
space:
mode:
Diffstat (limited to 'linux-Fix-missing-__convert_scm_timestamps-BZ-28860.patch')
-rw-r--r--linux-Fix-missing-__convert_scm_timestamps-BZ-28860.patch37
1 files changed, 37 insertions, 0 deletions
diff --git a/linux-Fix-missing-__convert_scm_timestamps-BZ-28860.patch b/linux-Fix-missing-__convert_scm_timestamps-BZ-28860.patch
new file mode 100644
index 0000000..bcfed33
--- /dev/null
+++ b/linux-Fix-missing-__convert_scm_timestamps-BZ-28860.patch
@@ -0,0 +1,37 @@
+From 0351c75c5f94134fcec0e778e8cf86d149f8bbfb Mon Sep 17 00:00:00 2001
+From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
+Date: Thu, 3 Feb 2022 16:52:52 -0300
+Subject: [PATCH] linux: Fix missing __convert_scm_timestamps (BZ #28860)
+
+Commit 948ce73b31 made recvmsg/recvmmsg to always call
+__convert_scm_timestamps for 64 bit time_t symbol, so adjust it to
+always build it for __TIMESIZE != 64.
+
+It fixes build for architecture with 32 bit time_t support when
+configured with minimum kernel of 5.1.
+
+(cherry-picked from 798d716df71fb23dc89d1d5dba1fc26a1b5c0024)
+---
+ sysdeps/unix/sysv/linux/convert_scm_timestamps.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/sysdeps/unix/sysv/linux/convert_scm_timestamps.c b/sysdeps/unix/sysv/linux/convert_scm_timestamps.c
+index 5d3c4199e0..953ce97bd2 100644
+--- a/sysdeps/unix/sysv/linux/convert_scm_timestamps.c
++++ b/sysdeps/unix/sysv/linux/convert_scm_timestamps.c
+@@ -16,9 +16,10 @@
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+-#include <kernel-features.h>
++#include <bits/wordsize.h>
++#include <bits/timesize.h>
+
+-#ifndef __ASSUME_TIME64_SYSCALLS
++#if __TIMESIZE != 64
+ # include <stdint.h>
+ # include <string.h>
+ # include <sys/socket.h>
+--
+2.27.0
+