| Bug #72225 | HAVE_IB_LINUX_FUTEX test broken in debug builds, futexes disabled | ||
|---|---|---|---|
| Submitted: | 3 Apr 2014 15:45 | Modified: | 25 Jul 2014 12:52 |
| Reporter: | Laurynas Biveinis (OCA) | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | MySQL Server: InnoDB storage engine | Severity: | S3 (Non-critical) |
| Version: | 5.7.4 | OS: | Any |
| Assigned to: | CPU Architecture: | Any | |
| Tags: | cmake, innodb | ||
[5 Apr 2014 8:21]
MySQL Verification Team
Hello Laurynas, Thank you for the bug report. Verified as described. Thanks, Umesh
[25 Jul 2014 12:52]
Daniel Price
Fixed as of the upcoming 5.7.5 release, and here's the changelog entry: Included "unistd.h" in "innodb.cmake" to enable futexes in debug builds. Thank you for the bug report.

Description: cmake -DWITH_DEBUG=ON ... ... -- Performing Test HAVE_IB_LINUX_FUTEX -- Performing Test HAVE_IB_LINUX_FUTEX - Failed ... In the cmake log /home/laurynas/percona/src/5.7/obj-debug/CMakeFiles/CMakeTmp/src.c: In function ‘futex_wait’: /home/laurynas/percona/src/5.7/obj-debug/CMakeFiles/CMakeTmp/src.c:9:2: error: implicit declaration of function ‘syscall’ [-Werror=implicit-function-declaration] return(syscall(SYS_futex, futex, FUTEX_WAIT_PRIVATE, v, NULL, NULL, 0)); ^ cc1: all warnings being treated as errors How to repeat: See above Suggested fix: $ bzr diff === modified file 'storage/innobase/innodb.cmake' --- storage/innobase/innodb.cmake 2014-02-26 05:42:26 +0000 +++ storage/innobase/innodb.cmake 2014-04-01 21:17:13 +0000 @@ -205,6 +205,7 @@ #include <errno.h> #include <assert.h> #include <linux/futex.h> + #include <unistd.h> #include <sys/syscall.h> int futex_wait(int* futex, int v) {