From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:48217) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QcJdX-0000yp-NO for qemu-devel@nongnu.org; Thu, 30 Jun 2011 11:58:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QcJdW-0000Fv-5b for qemu-devel@nongnu.org; Thu, 30 Jun 2011 11:58:39 -0400 Received: from mx1.redhat.com ([209.132.183.28]:34705) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QcJdV-0000Fn-LQ for qemu-devel@nongnu.org; Thu, 30 Jun 2011 11:58:37 -0400 Message-ID: <4E0C9D22.1060408@redhat.com> Date: Thu, 30 Jun 2011 17:58:26 +0200 From: Paolo Bonzini MIME-Version: 1.0 References: <20110630155725.GA9765@redhat.com> In-Reply-To: <20110630155725.GA9765@redhat.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCHv2] Add compat eventfd header List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Michael S. Tsirkin" Cc: Blue Swirl , Alexander Graf , qemu-devel@nongnu.org, Aurelien Jarno , Stefan Hajnoczi On 06/30/2011 05:57 PM, Michael S. Tsirkin wrote: > Support build on rhel 5.X where we have syscall for eventfd but not > userspace wrapper. > > (cherry-picked from commit 9e3269181e9bc56feb43bcd4e8ce0b82cd543e65 > in qemu-kvm.git). > > Signed-off-by: Michael S. Tsirkin > --- > > Changes from v1: > checkpatch fix > address comments by agraf > verify we are on linux > > compat/sys/eventfd.h | 20 ++++++++++++++++++++ > configure | 6 ++++-- > 2 files changed, 24 insertions(+), 2 deletions(-) > create mode 100644 compat/sys/eventfd.h > > diff --git a/compat/sys/eventfd.h b/compat/sys/eventfd.h > new file mode 100644 > index 0000000..1801a5f > --- /dev/null > +++ b/compat/sys/eventfd.h > @@ -0,0 +1,20 @@ > +#ifndef _COMPAT_SYS_EVENTFD > +#define _COMPAT_SYS_EVENTFD > + > +#ifdef CONFIG_EVENTFD > + > +#ifndef __linux__ > +#error __linux__ is not defined: eventfd is only supported on linux > +#endif > + > +#include > +#include > + > +static inline int eventfd(int count, int flags) > +{ > + return syscall(SYS_eventfd, count, flags); > +} > + > +#endif > + > +#endif > diff --git a/configure b/configure > index 856b41e..6f7dd74 100755 > --- a/configure > +++ b/configure > @@ -822,7 +822,6 @@ esac > > [ -z "$guest_base" ]&& guest_base="$host_guest_base" > > - > default_target_list="" > > # these targets are portable > @@ -891,6 +890,9 @@ sparc64-bsd-user \ > " > fi > > +#compat headers > +QEMU_CFLAGS="$QEMU_CFLAGS -idirafter $source_path/compat" > + > if test x"$show_help" = x"yes" ; then > cat<< EOF > > @@ -2122,7 +2124,7 @@ int main(void) > return 0; > } > EOF > -if compile_prog "" "" ; then > +if compile_prog "-DCONFIG_EVENTFD" "" ; then > eventfd=yes > fi > Acked-by: Paolo Bonzini Paolo