Patchwork qemu-common: Add definition for O_NONBLOCK

login
register
mail settings
Submitter Stefan Weil
Date Nov. 17, 2012, 4:40 p.m.
Message ID <1353170443-18168-1-git-send-email-sw@weilnetz.de>
Download mbox | patch
Permalink /patch/199861/
State Superseded
Headers show

Comments

Stefan Weil - Nov. 17, 2012, 4:40 p.m.
backends/rng-random.c which was added by commit
5c74521d249486fa3e749dbbf6d56a70d4d7235f needs
macro O_NONBLOCK.

The macro O_NONBLOCK is not defined for all hosts.
Adding a default definition fixes builds for MinGW.

Signed-off-by: Stefan Weil <sw@weilnetz.de>
---

This is a build fix. Therefore I'd appreciate if it could be
committed soon.

Thanks
Stefan W.

 qemu-common.h |    3 +++
 1 file changed, 3 insertions(+)
Paolo Bonzini - Nov. 18, 2012, 8:55 a.m.
Il 17/11/2012 17:40, Stefan Weil ha scritto:
> backends/rng-random.c which was added by commit
> 5c74521d249486fa3e749dbbf6d56a70d4d7235f needs
> macro O_NONBLOCK.
> 
> The macro O_NONBLOCK is not defined for all hosts.
> Adding a default definition fixes builds for MinGW.
> 
> Signed-off-by: Stefan Weil <sw@weilnetz.de>
> ---
> 
> This is a build fix. Therefore I'd appreciate if it could be
> committed soon.

This would make things blocking when they were supposed to be
nonblocking, so I'd prefer not including it.  I thought Anthony had a
fix too?

Paolo
Stefan Weil - Nov. 18, 2012, 10:41 a.m.
Am 18.11.2012 09:55, schrieb Paolo Bonzini:
> Il 17/11/2012 17:40, Stefan Weil ha scritto:
>> backends/rng-random.c which was added by commit
>> 5c74521d249486fa3e749dbbf6d56a70d4d7235f needs
>> macro O_NONBLOCK.
>>
>> The macro O_NONBLOCK is not defined for all hosts.
>> Adding a default definition fixes builds for MinGW.
>>
>> Signed-off-by: Stefan Weil<sw@weilnetz.de>
>> ---
>>
>> This is a build fix. Therefore I'd appreciate if it could be
>> committed soon.
>
> This would make things blocking when they were supposed to be
> nonblocking, so I'd prefer not including it.  I thought Anthony had a
> fix too?
>
> Paolo

Yes, my patch is only a quick fix to enable builds with MinGW again.

Anthony's patch solves the same problem by omitting the code in
comiplations for non-POSIX builds.

My primary goal was fixing the build, so any of these two patches
is fine for me.

A backends/rng-random.c which compiles with MinGW would be even better,
but maybe that needs a little more time. /dev/random is available with
MinGW, so there is no basic problem doing this.

Stefan
Stefan Hajnoczi - Dec. 3, 2012, 12:52 p.m.
On Sun, Nov 18, 2012 at 11:41:20AM +0100, Stefan Weil wrote:
> Am 18.11.2012 09:55, schrieb Paolo Bonzini:
> >Il 17/11/2012 17:40, Stefan Weil ha scritto:
> >>backends/rng-random.c which was added by commit
> >>5c74521d249486fa3e749dbbf6d56a70d4d7235f needs
> >>macro O_NONBLOCK.
> >>
> >>The macro O_NONBLOCK is not defined for all hosts.
> >>Adding a default definition fixes builds for MinGW.
> >>
> >>Signed-off-by: Stefan Weil<sw@weilnetz.de>
> >>---
> >>
> >>This is a build fix. Therefore I'd appreciate if it could be
> >>committed soon.
> >
> >This would make things blocking when they were supposed to be
> >nonblocking, so I'd prefer not including it.  I thought Anthony had a
> >fix too?
> >
> >Paolo
> 
> Yes, my patch is only a quick fix to enable builds with MinGW again.
> 
> Anthony's patch solves the same problem by omitting the code in
> comiplations for non-POSIX builds.
> 
> My primary goal was fixing the build, so any of these two patches
> is fine for me.
> 
> A backends/rng-random.c which compiles with MinGW would be even better,
> but maybe that needs a little more time. /dev/random is available with
> MinGW, so there is no basic problem doing this.

Anthony's rng POSIX build patch was merged, dropping this.

Stefan

Patch

diff --git a/qemu-common.h b/qemu-common.h
index ac9985c..3a5616c 100644
--- a/qemu-common.h
+++ b/qemu-common.h
@@ -55,6 +55,9 @@  typedef struct MigrationParams MigrationParams;
 #ifndef O_BINARY
 #define O_BINARY 0
 #endif
+#ifndef O_NONBLOCK
+#define O_NONBLOCK 0
+#endif
 #ifndef MAP_ANONYMOUS
 #define MAP_ANONYMOUS MAP_ANON
 #endif