diff --git a/cmake/BuildLibEV.cmake b/cmake/BuildLibEV.cmake
index c9e3a90bdce956dabcd346e6e233f4b70e2d4d34..f8216991c0f20af65989f3dac38d894fb9024546 100644
--- a/cmake/BuildLibEV.cmake
+++ b/cmake/BuildLibEV.cmake
@@ -29,6 +29,8 @@ macro(libev_build)
         #
         # Enable Linux-specific event notification API (man inotify)
         set(ev_compile_flags "${ev_compile_flags} -DEV_USE_INOTIFY")
+        set(ev_compile_flags "${ev_compile_flags} -DEV_USE_EVENTFD")
+        set(ev_compile_flags "${ev_compile_flags} -DEV_USE_SIGNALFD")
     elseif (TARGET_OS_FREEBSD OR TARGET_OS_DARWIN)
         #
         # On FreeBSD build libev loop on top of
diff --git a/third_party/tarantool_ev.h b/third_party/tarantool_ev.h
index 0b1556efcf5df3ce12ee1f49cabfbd639e6f3ec0..639dd0eca1f3654f9125dc8f32862400b08d2b9b 100644
--- a/third_party/tarantool_ev.h
+++ b/third_party/tarantool_ev.h
@@ -43,11 +43,13 @@
 #define EV_USE_POLL 1
 #define EV_USE_NANOSLEEP 1
 #define EV_USE_REALTIME 1
+#define EV_USE_MONOTONIC 1
 #define EV_PERIODIC_ENABLE 1
 #define EV_IDLE_ENABLE 1
 #define EV_STAT_ENABLE 1
 #define EV_FORK_ENABLE 1
 #define EV_CONFIG_H 0
+#define EV_USE_FLOOR 1
 #include "third_party/libev/ev.h"
 #else /* !defined(ENABLE_BUNDLED_LIBEV) */
 #include <ev.h>