qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] main: Hide F_GETFD and FD_CLOEXEC use for _WIN3


From: Corey Bryant
Subject: Re: [Qemu-devel] [PATCH] main: Hide F_GETFD and FD_CLOEXEC use for _WIN32
Date: Mon, 22 Oct 2012 13:35:40 -0400
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:16.0) Gecko/20121009 Thunderbird/16.0



On 10/22/2012 12:28 PM, Stefan Weil wrote:
Am 22.10.2012 15:53, schrieb Corey Bryant:
Signed-off-by: Corey Bryant<address@hidden>
---
  vl.c | 2 ++
  1 file changed, 2 insertions(+)

diff --git a/vl.c b/vl.c
index 200d849..94c667d 100644
--- a/vl.c
+++ b/vl.c
@@ -812,11 +812,13 @@ static int parse_add_fd(QemuOpts *opts, void
*opaque)
          return -1;
      }

+#ifndef _WIN32
      if (fcntl(fd, F_GETFD)&  FD_CLOEXEC) {
          qerror_report(ERROR_CLASS_GENERIC_ERROR,
                        "fd is not valid or already in use");
          return -1;
      }
+#endif

      if (fdset_id<  0) {
          qerror_report(ERROR_CLASS_GENERIC_ERROR,


Are you sure that all other hosts provide F_GETFD and FD_CLOEXEC
and that MinGW will never do that?

I don't know for sure but use of F_GETFD and FD_CLOEXEC broke the build for MinGW.

Maybe testing those two macros instead of _WIN32 would be better:

#if defined(F_GETFD) && defined(FD_CLOEXEC)
...
#endif

I also think that this patch should be merged with the one which adds
that code and not applied as a separate patch (otherwise git bisect would
be broken).

Kevin ended up providing a fix for this in "[PATCH v5] qemu-config: Add new -add-fd command line option" which fails the -add-fd command for Windows. This is in-line with how the QMP add-fd command behaves.

--
Regards,
Corey Bryant




reply via email to

[Prev in Thread] Current Thread [Next in Thread]