summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/recipes-core/systemd/systemd/0001-timesync-changes-type-of-drift_freq-to-int64_t.patch49
-rw-r--r--meta/recipes-core/systemd/systemd_239.bb1
2 files changed, 50 insertions, 0 deletions
diff --git a/meta/recipes-core/systemd/systemd/0001-timesync-changes-type-of-drift_freq-to-int64_t.patch b/meta/recipes-core/systemd/systemd/0001-timesync-changes-type-of-drift_freq-to-int64_t.patch
new file mode 100644
index 0000000000..8d395c2fa3
--- /dev/null
+++ b/meta/recipes-core/systemd/systemd/0001-timesync-changes-type-of-drift_freq-to-int64_t.patch
@@ -0,0 +1,49 @@
1Backport patch to fix systemd build failure on x32.
2
3Upstream-Status: Backport [https://github.com/systemd/systemd/commit/75ca162]
4
5Signed-off-by: Kai Kang <kai.kang@windriver.com>
6
7From 75ca1621db4647a4d62d7873cd6715e28fe0f9fa Mon Sep 17 00:00:00 2001
8From: Yu Watanabe <watanabe.yu+github@gmail.com>
9Date: Sat, 23 Jun 2018 09:41:55 +0900
10Subject: [PATCH] timesync: changes type of drift_freq to int64_t
11
12drift_freq is used for storing timex.freq, and is a 64bit integer.
13To support x32 ABI, this changes the type of drift_freq to int64_t.
14
15Fixes #9387.
16---
17 src/timesync/timesyncd-manager.c | 2 +-
18 src/timesync/timesyncd-manager.h | 2 +-
19 2 files changed, 2 insertions(+), 2 deletions(-)
20
21diff --git a/src/timesync/timesyncd-manager.c b/src/timesync/timesyncd-manager.c
22index 2b731af9e..404a2b189 100644
23--- a/src/timesync/timesyncd-manager.c
24+++ b/src/timesync/timesyncd-manager.c
25@@ -604,7 +604,7 @@ static int manager_receive_response(sd_event_source *source, int fd, uint32_t re
26 m->dest_time = *recv_time;
27 m->spike = spike;
28
29- log_debug("interval/delta/delay/jitter/drift " USEC_FMT "s/%+.3fs/%.3fs/%.3fs/%+"PRI_TIMEX"ppm%s",
30+ log_debug("interval/delta/delay/jitter/drift " USEC_FMT "s/%+.3fs/%.3fs/%.3fs/%+"PRIi64"ppm%s",
31 m->poll_interval_usec / USEC_PER_SEC, offset, delay, m->samples_jitter, m->drift_freq / 65536,
32 spike ? " (ignored)" : "");
33
34diff --git a/src/timesync/timesyncd-manager.h b/src/timesync/timesyncd-manager.h
35index d8d97cc1e..18347416d 100644
36--- a/src/timesync/timesyncd-manager.h
37+++ b/src/timesync/timesyncd-manager.h
38@@ -79,7 +79,7 @@ struct Manager {
39 /* last change */
40 bool jumped;
41 bool sync;
42- long drift_freq;
43+ int64_t drift_freq;
44
45 /* watch for time changes */
46 sd_event_source *event_clock_watch;
47--
482.17.0
49
diff --git a/meta/recipes-core/systemd/systemd_239.bb b/meta/recipes-core/systemd/systemd_239.bb
index c53ce0d78e..a40c89973a 100644
--- a/meta/recipes-core/systemd/systemd_239.bb
+++ b/meta/recipes-core/systemd/systemd_239.bb
@@ -34,6 +34,7 @@ SRC_URI += "file://touchscreen.rules \
34 file://0001-chown-recursive-let-s-rework-the-recursive-logic-to-.patch \ 34 file://0001-chown-recursive-let-s-rework-the-recursive-logic-to-.patch \
35 file://0001-dhcp6-make-sure-we-have-enough-space-for-the-DHCP6-o.patch \ 35 file://0001-dhcp6-make-sure-we-have-enough-space-for-the-DHCP6-o.patch \
36 file://0001-Revert-sysctl.d-request-ECN-on-both-in-and-outgoing-.patch \ 36 file://0001-Revert-sysctl.d-request-ECN-on-both-in-and-outgoing-.patch \
37 file://0001-timesync-changes-type-of-drift_freq-to-int64_t.patch \
37 " 38 "
38 39
39# patches made for musl are only applied on TCLIBC is musl 40# patches made for musl are only applied on TCLIBC is musl