diff options
author | jmbills <jason.m.bills@intel.com> | 2021-10-04 22:42:48 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-10-04 22:42:48 +0300 |
commit | 0c9e31989c615598b5d042ffab385606660c93c0 (patch) | |
tree | 8019999b0ca042482e5193d6cabc06220c71d776 /meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/sys_futex.patch | |
parent | 04cd92067d2481643df5010cb39b2134b648cf4d (diff) | |
parent | ffe6d597d9e3d4407cf8062b5d6505a80ce08f41 (diff) | |
download | openbmc-1-0.75.tar.xz |
Update
Diffstat (limited to 'meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/sys_futex.patch')
-rw-r--r-- | meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/sys_futex.patch | 27 |
1 files changed, 14 insertions, 13 deletions
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/sys_futex.patch b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/sys_futex.patch index 3277a3eee..3244ab8da 100644 --- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/sys_futex.patch +++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/sys_futex.patch @@ -1,22 +1,23 @@ - Use SYS_futex for syscall +Use SYS_futex for syscall glibc defines SYS_futex and on newer 32bit CPUs like RISCV-32, arc there is no 32bit time_t therefore define SYS_futex in terms of SYS_futex_time64 Upstream-Status: Pending Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- a/storage/innobase/include/ib0mutex.h -+++ b/storage/innobase/include/ib0mutex.h -@@ -150,6 +150,12 @@ private: - #include <linux/futex.h> - #include <sys/syscall.h> - + +--- a/storage/innobase/sync/srw_lock.cc ++++ b/storage/innobase/sync/srw_lock.cc +@@ -210,6 +210,12 @@ void ssux_lock_low::wake() { WakeByAddre + # ifdef __linux__ + # include <linux/futex.h> + # include <sys/syscall.h> +/** Newer 32bit CPUs eg. RISCV-32 are defaulting to 64bit time_t from get go and + therefore do not define __NR_futex */ -+#if !defined(SYS_futex) && defined(SYS_futex_time64) -+# define SYS_futex SYS_futex_time64 -+#endif ++# if !defined(SYS_futex) && defined(SYS_futex_time64) ++# define SYS_futex SYS_futex_time64 ++# endif + - /** Mutex implementation that used the Linux futex. */ - template <template <typename> class Policy> - struct TTASFutexMutex { + # define SRW_FUTEX(a,op,n) \ + syscall(SYS_futex, a, FUTEX_ ## op ## _PRIVATE, n, nullptr, nullptr, 0) + # elif defined __OpenBSD__ |