commit 81f1306bc80a41375c89804eeffb7d3ebbece4cb
Author: Jakub Bogusz <qbo...@pld-linux.org>
Date:   Sat Jul 8 16:02:09 2023 +0200

    - added time patch (adjust types for 64-bit time_t on x32)

 dpdk-time.patch | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 dpdk.spec       |  2 ++
 2 files changed, 67 insertions(+)
---
diff --git a/dpdk.spec b/dpdk.spec
index 87d08e2..25a1d92 100644
--- a/dpdk.spec
+++ b/dpdk.spec
@@ -36,6 +36,7 @@ Group:                Libraries
 Source0:       https://fast.dpdk.org/rel/%{name}-%{version}.tar.xz
 # Source0-md5: 3cf8ebbcd412d5726db230f2eeb90cc9
 Patch0:                %{name}-opt.patch
+Patch1:                %{name}-time.patch
 URL:           https://www.dpdk.org/
 # pkgconfig(libelf)
 BuildRequires: elfutils-devel
@@ -140,6 +141,7 @@ Dokumentacja API bibliotek DPDK.
 %prep
 %setup -q
 %patch0 -p1
+%patch1 -p1
 
 %{__sed} -i -e '1s,/usr/bin/env python3,%{__python3},' \
        usertools/dpdk-{devbind,hugepages,pmdinfo,telemetry}.py \
diff --git a/dpdk-time.patch b/dpdk-time.patch
new file mode 100644
index 0000000..6d5ea02
--- /dev/null
+++ b/dpdk-time.patch
@@ -0,0 +1,65 @@
+--- dpdk-23.03/lib/eal/include/rte_trace_point.h.orig  2023-03-31 
15:38:06.000000000 +0200
++++ dpdk-23.03/lib/eal/include/rte_trace_point.h       2023-07-08 
12:24:27.334779583 +0200
+@@ -429,6 +429,16 @@ do { \
+ #define rte_trace_point_emit_float(in) __rte_trace_point_emit(in, float)
+ #define rte_trace_point_emit_double(in) __rte_trace_point_emit(in, double)
+ #define rte_trace_point_emit_ptr(in) __rte_trace_point_emit(in, uintptr_t)
++#ifdef __USE_TIME_BITS64
++#define rte_trace_point_emit_time(in) __rte_trace_point_emit(in, __time64_t)
++#else
++#define rte_trace_point_emit_time(in) __rte_trace_point_emit(in, time_t)
++#endif
++#if defined(__x86_64__) && defined(__ILP32__)
++#define rte_trace_point_emit_nsec(in) __rte_trace_point_emit(in, int64_t)
++#else
++#define rte_trace_point_emit_nsec(in) __rte_trace_point_emit(in, long)
++#endif
+ 
+ #endif /* __DOXYGEN__ */
+ 
+--- dpdk-23.03/lib/ethdev/ethdev_trace.h.orig  2023-03-31 15:38:06.000000000 
+0200
++++ dpdk-23.03/lib/ethdev/ethdev_trace.h       2023-07-08 12:25:12.775041333 
+0200
+@@ -1121,8 +1121,8 @@ RTE_TRACE_POINT(
+       RTE_TRACE_POINT_ARGS(uint16_t port_id, const struct timespec *time,
+               int ret),
+       rte_trace_point_emit_u16(port_id);
+-      rte_trace_point_emit_size_t(time->tv_sec);
+-      rte_trace_point_emit_long(time->tv_nsec);
++      rte_trace_point_emit_time(time->tv_sec);
++      rte_trace_point_emit_nsec(time->tv_nsec);
+       rte_trace_point_emit_int(ret);
+ )
+ 
+@@ -2159,8 +2159,8 @@ RTE_TRACE_POINT_FP(
+       RTE_TRACE_POINT_ARGS(uint16_t port_id, const struct timespec *timestamp,
+               uint32_t flags, int ret),
+       rte_trace_point_emit_u16(port_id);
+-      rte_trace_point_emit_size_t(timestamp->tv_sec);
+-      rte_trace_point_emit_long(timestamp->tv_nsec);
++      rte_trace_point_emit_time(timestamp->tv_sec);
++      rte_trace_point_emit_nsec(timestamp->tv_nsec);
+       rte_trace_point_emit_u32(flags);
+       rte_trace_point_emit_int(ret);
+ )
+@@ -2171,8 +2171,8 @@ RTE_TRACE_POINT_FP(
+       RTE_TRACE_POINT_ARGS(uint16_t port_id, const struct timespec *timestamp,
+               int ret),
+       rte_trace_point_emit_u16(port_id);
+-      rte_trace_point_emit_size_t(timestamp->tv_sec);
+-      rte_trace_point_emit_long(timestamp->tv_nsec);
++      rte_trace_point_emit_time(timestamp->tv_sec);
++      rte_trace_point_emit_nsec(timestamp->tv_nsec);
+       rte_trace_point_emit_int(ret);
+ )
+ 
+@@ -2182,8 +2182,8 @@ RTE_TRACE_POINT_FP(
+       RTE_TRACE_POINT_ARGS(uint16_t port_id, const struct timespec *time,
+               int ret),
+       rte_trace_point_emit_u16(port_id);
+-      rte_trace_point_emit_size_t(time->tv_sec);
+-      rte_trace_point_emit_long(time->tv_nsec);
++      rte_trace_point_emit_time(time->tv_sec);
++      rte_trace_point_emit_nsec(time->tv_nsec);
+       rte_trace_point_emit_int(ret);
+ )
+ 
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/dpdk.git/commitdiff/81f1306bc80a41375c89804eeffb7d3ebbece4cb

_______________________________________________
pld-cvs-commit mailing list
pld-cvs-commit@lists.pld-linux.org
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to