Please apply this patch. libev-using programs are otherwise undebuggagble wih valgrind on i386.
-- -- Matthias Urlichs
From: Matthias Urlichs <matth...@urlichs.de> Date: Tue, 14 Mar 2017 01:44:51 +0100 X-Dgit-Generated: 1:4.22-2 9775ccac9c1ba148676b5b97658b4728647aab16 Subject: Don't use -1(%esp). It upsets valgrind and violates the i386 ABI. Unfortunately, the author of libev refuses to fix this. --- --- libev-4.22.orig/ev.c +++ libev-4.22/ev.c @@ -656,8 +656,8 @@ struct signalfd_siginfo #ifndef ECB_MEMORY_FENCE #if ECB_GCC_VERSION(2,5) || defined __INTEL_COMPILER || (__llvm__ && __GNUC__) || __SUNPRO_C >= 0x5110 || __SUNPRO_CC >= 0x5110 #if __i386 || __i386__ - #define ECB_MEMORY_FENCE __asm__ __volatile__ ("lock; orb $0, -1(%%esp)" : : : "memory") - #define ECB_MEMORY_FENCE_ACQUIRE __asm__ __volatile__ ("" : : : "memory") + #define ECB_MEMORY_FENCE __asm__ __volatile__ ("lock; orb $0, 0(%%esp)" : : : "memory") + #define ECB_MEMORY_FENCE_ACQUIRE __asm__ __volatile__ ("" : : : "memory") #define ECB_MEMORY_FENCE_RELEASE __asm__ __volatile__ ("") #elif ECB_GCC_AMD64 #define ECB_MEMORY_FENCE __asm__ __volatile__ ("mfence" : : : "memory")
signature.asc
Description: OpenPGP digital signature