Package: trafficserver
Version: 4.1.2-1.2
Severity: normal
Tags: patch
User: [email protected]
Usertags: ppc64el
Dear maintainer,
I would like to have this patch included in order to add support for ppc64el in
the trafficserver package. Currently it fails with this build log.
http://ftp.unicamp.br/pub/ppc64el/debian/buildd-upstream/build_logs/logs/trafficserver_5.0.0-1_ppc64el.build
The barriers definition, all using the 'sync' word come from the Linux kernel
file arch/powerpc/include/asm/barrier.h
I am also sending the same patch to trafficserver upstream (in JIRA). As soon
as it get merged, I will comment in this bug.
Thank you,
Breno
-- System Information:
Debian Release: jessie/sid
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: ppc64el (ppc64le)
Kernel: Linux 3.13-1-powerpc64le (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Index: trafficserver-4.1.2/plugins/experimental/geoip_acl/lulu.h
===================================================================
--- a/plugins/experimental/geoip_acl/lulu.h 2014-07-07 19:16:43.000000000 +0000
+++ b/plugins/experimental/geoip_acl/lulu.h 2014-07-07 19:40:25.000000000 +0000
@@ -46,6 +46,10 @@
#define mb() __asm__ __volatile__ ( "sync" : : : "memory")
#define rmb() __asm__ __volatile__ ( "sync" : : : "memory")
#define wmb() __asm__ __volatile__ ( "" : : : "memory")
+#elif defined(__powerpc64__)
+#define mb() __asm__ __volatile__ ("sync" : : : "memory")
+#define rmb() __asm__ __volatile__ ("sync" : : : "memory")
+#define wmb() __asm__ __volatile__ ("sync" : : : "memory")
#else
#error "Define barriers"
#endif
Index: trafficserver-4.1.2/plugins/header_filter/lulu.h
===================================================================
--- a/plugins/header_filter/lulu.h 2014-07-07 19:16:43.000000000 +0000
+++ b/plugins/header_filter/lulu.h 2014-07-07 19:39:47.000000000 +0000
@@ -45,6 +45,10 @@
#define mb() __asm__ __volatile__ ( "sync" : : : "memory")
#define rmb() __asm__ __volatile__ ( "sync" : : : "memory")
#define wmb() __asm__ __volatile__ ( "" : : : "memory")
+#elif defined(__powerpc64__)
+#define mb() __asm__ __volatile__ ("sync" : : : "memory")
+#define rmb() __asm__ __volatile__ ("sync" : : : "memory")
+#define wmb() __asm__ __volatile__ ("sync" : : : "memory")
#elif defined(__arm__)
#else
#error "Define barriers"
Index: trafficserver-4.1.2/plugins/header_rewrite/lulu.h
===================================================================
--- a/plugins/header_rewrite/lulu.h 2014-07-07 19:16:43.000000000 +0000
+++ b/plugins/header_rewrite/lulu.h 2014-07-07 19:39:26.000000000 +0000
@@ -43,6 +43,10 @@
#define mb() __asm__ __volatile__ ( "sync" : : : "memory")
#define rmb() __asm__ __volatile__ ( "sync" : : : "memory")
#define wmb() __asm__ __volatile__ ( "" : : : "memory")
+#elif defined(__powerpc64__)
+#define mb() __asm__ __volatile__ ("sync" : : : "memory")
+#define rmb() __asm__ __volatile__ ("sync" : : : "memory")
+#define wmb() __asm__ __volatile__ ("sync" : : : "memory")
#else
#error "Define barriers"
#endif
Index: trafficserver-4.1.2/lib/ts/ink_queue.h
===================================================================
--- a/lib/ts/ink_queue.h 2014-07-07 19:16:43.000000000 +0000
+++ b/lib/ts/ink_queue.h 2014-07-07 20:44:34.000000000 +0000
@@ -134,7 +134,7 @@
#define FREELIST_VERSION(_x) (_x).s.version
#define SET_FREELIST_POINTER_VERSION(_x,_p,_v) \
(_x).s.pointer = _p; (_x).s.version = _v
-#elif defined(__x86_64__) || defined(__ia64__)
+#elif defined(__x86_64__) || defined(__ia64__) || defined(__powerpc64__)
#define FREELIST_POINTER(_x) ((void*)(((((intptr_t)(_x).data)<<16)>>16) | \
(((~((((intptr_t)(_x).data)<<16>>63)-1))>>48)<<48))) // sign extend
#define FREELIST_VERSION(_x) (((intptr_t)(_x).data)>>48)