qemu-block
[Top][All Lists]
Advanced

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

Re: [Qemu-block] [PATCH v6 06/22] osdep: Introduce qemu_dup


From: Kevin Wolf
Subject: Re: [Qemu-block] [PATCH v6 06/22] osdep: Introduce qemu_dup
Date: Fri, 17 Jun 2016 14:32:38 +0200
User-agent: Mutt/1.5.21 (2010-09-15)

Am 03.06.2016 um 10:49 hat Fam Zheng geschrieben:
> This takes care of both the CLOEXEC flag and fd-path mapping for image
> locking.
> 
> Signed-off-by: Fam Zheng <address@hidden>
> ---
>  include/qemu/osdep.h | 3 +++
>  util/osdep.c         | 9 +++++++++
>  2 files changed, 12 insertions(+)
> 
> diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h
> index 749214a..89c63c7 100644
> --- a/include/qemu/osdep.h
> +++ b/include/qemu/osdep.h
> @@ -281,6 +281,9 @@ int qemu_madvise(void *addr, size_t len, int advice);
>  int qemu_open(const char *name, int flags, ...);
>  int qemu_close(int fd);
>  int qemu_lock_fd(int fd, int64_t start, int64_t len, bool exclusive);
> +#ifndef _WIN32
> +int qemu_dup(int fd);
> +#endif
>  int qemu_unlock_fd(int fd, int64_t start, int64_t len);
>  
>  #if defined(__HAIKU__) && defined(__i386__)
> diff --git a/util/osdep.c b/util/osdep.c
> index 085ed52..1c87c1e 100644
> --- a/util/osdep.c
> +++ b/util/osdep.c
> @@ -133,6 +133,15 @@ fail:
>      return -1;
>  }
>  
> +int qemu_dup(int fd)
> +{
> +    int r = qemu_dup_flags(fd, 0);

This clears all file status flags that might be set. I don't think we
use any of them (on Linux at least, raw-posix still seems to use it for
platform without O_DIRECT), but isn't this still surprising?

> +    if (r == -1) {
> +        return -errno;
> +    }
> +    return r;
> +}

Kevin



reply via email to

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