summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorErich Eckner <git@eckner.net>2019-01-23 15:26:39 +0100
committerErich Eckner <git@eckner.net>2019-01-23 15:26:39 +0100
commit6b91ecc4af39a553228cc2703e4eac1b49cef6ee (patch)
tree8c2c8a89efa7c55a048cff88e8b0f665e7e8711f
parent0851af94d584a1e875a1380363c48d5569f84e1b (diff)
downloadpackages-6b91ecc4af39a553228cc2703e4eac1b49cef6ee.tar.xz
community/percona-server: fix padding of LF_PINS
-rw-r--r--community/percona-server/LF_PINS-size.patch11
-rw-r--r--community/percona-server/PKGBUILD9
2 files changed, 20 insertions, 0 deletions
diff --git a/community/percona-server/LF_PINS-size.patch b/community/percona-server/LF_PINS-size.patch
new file mode 100644
index 00000000..49518579
--- /dev/null
+++ b/community/percona-server/LF_PINS-size.patch
@@ -0,0 +1,11 @@
+--- a/include/lf.h 2019-01-23 14:23:40.167072246 +0000
++++ b/include/lf.h 2019-01-23 14:20:59.600689484 +0000
+@@ -88,7 +88,7 @@
+ std::atomic<uint64> link;
+ /* we want sizeof(LF_PINS) to be 64 to avoid false sharing */
+ #if 2 * 8 + SIZEOF_CHARP * (LF_PINBOX_PINS + 2) != 64
+- char pad[64 - sizeof(uint32) * 2 - sizeof(void *) * (LF_PINBOX_PINS + 2)];
++ char pad[64 - (2 * 8 + SIZEOF_CHARP * (LF_PINBOX_PINS + 2))];
+ #endif
+ };
+
diff --git a/community/percona-server/PKGBUILD b/community/percona-server/PKGBUILD
new file mode 100644
index 00000000..43528729
--- /dev/null
+++ b/community/percona-server/PKGBUILD
@@ -0,0 +1,9 @@
+source+=('LF_PINS-size.patch')
+sha256sums+=('c77f581059ee6a9b248c45194d392f45f311b3b755a9de20c274e13bb1a4d28c')
+
+eval "$(
+ declare -f prepare | \
+ sed '
+ $ i patch -p1 -i "$srcdir/LF_PINS-size.patch"
+ '
+)"