diff mbox

qemu-kvm: add compat eventfd

Message ID 20090816142432.GA5572@redhat.com (mailing list archive)
State New, archived
Headers show

Commit Message

Michael S. Tsirkin Aug. 16, 2009, 2:24 p.m. UTC
Support build on rhel 5.3 where we have syscall for eventfd but not
userspace wrapper.

Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
---
 compat/sys/eventfd.h |   13 +++++++++++++
 configure            |    1 +
 2 files changed, 14 insertions(+), 0 deletions(-)
 create mode 100644 compat/sys/eventfd.h

Comments

Avi Kivity Aug. 17, 2009, 8:06 a.m. UTC | #1
On 08/16/2009 05:24 PM, Michael S. Tsirkin wrote:
> Support build on rhel 5.3 where we have syscall for eventfd but not
> userspace wrapper.
>
> Signed-off-by: Michael S. Tsirkin<mst@redhat.com>
> ---
>   compat/sys/eventfd.h |   13 +++++++++++++
>   configure            |    1 +
>   2 files changed, 14 insertions(+), 0 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..f55d96a
> --- /dev/null
> +++ b/compat/sys/eventfd.h
> @@ -0,0 +1,13 @@
> +#ifndef _COMPAT_SYS_EVENTFD
> +#define _COMPAT_SYS_EVENTFD
> +
> +#include<unistd.h>
> +#include<syscall.h>
> +
> +
> +static inline int eventfd (int count, int flags)
> +{
> +    return syscall(SYS_eventfd, count, flags);
> +}
> +
> +#endif
> diff --git a/configure b/configure
> index 84af8bd..bb2680f 100755
> --- a/configure
> +++ b/configure
> @@ -866,6 +866,7 @@ if test "$kvm" = "yes" ; then
>
>   kvm_cflags="-I$source_path/kvm/include"
>   kvm_cflags="$kvm_cflags -I$source_path/kvm/include/$kvm_arch"
> +kvm_cflags="$kvm_cflags -I$source_path/compat"
>
>    
er, that will override sys/eventfd.h even if it does exist.  We need to prefer the system eventfd.h to ours.
Michael S. Tsirkin Aug. 17, 2009, 8:13 a.m. UTC | #2
On Mon, Aug 17, 2009 at 11:06:05AM +0300, Avi Kivity wrote:
>> diff --git a/configure b/configure
>> index 84af8bd..bb2680f 100755
>> --- a/configure
>> +++ b/configure
>> @@ -866,6 +866,7 @@ if test "$kvm" = "yes" ; then
>>
>>   kvm_cflags="-I$source_path/kvm/include"
>>   kvm_cflags="$kvm_cflags -I$source_path/kvm/include/$kvm_arch"
>> +kvm_cflags="$kvm_cflags -I$source_path/compat"
>>
>>    
> er, that will override sys/eventfd.h even if it does exist.  We need to prefer the system eventfd.h to ours.

OK, -idirafter does this.

>
> -- 
> error compiling committee.c: too many arguments to function
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/compat/sys/eventfd.h b/compat/sys/eventfd.h
new file mode 100644
index 0000000..f55d96a
--- /dev/null
+++ b/compat/sys/eventfd.h
@@ -0,0 +1,13 @@ 
+#ifndef _COMPAT_SYS_EVENTFD
+#define _COMPAT_SYS_EVENTFD
+
+#include <unistd.h>
+#include <syscall.h>
+
+
+static inline int eventfd (int count, int flags)
+{
+    return syscall(SYS_eventfd, count, flags);
+}
+
+#endif
diff --git a/configure b/configure
index 84af8bd..bb2680f 100755
--- a/configure
+++ b/configure
@@ -866,6 +866,7 @@  if test "$kvm" = "yes" ; then
 
 kvm_cflags="-I$source_path/kvm/include"
 kvm_cflags="$kvm_cflags -I$source_path/kvm/include/$kvm_arch"
+kvm_cflags="$kvm_cflags -I$source_path/compat"
 
 # test for KVM_CAP_PIT