[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v15 19/21] osdep: Add qemu_lock_fd and qemu_unlo
From: |
Kevin Wolf |
Subject: |
Re: [Qemu-devel] [PATCH v15 19/21] osdep: Add qemu_lock_fd and qemu_unlock_fd |
Date: |
Wed, 26 Apr 2017 14:57:14 +0200 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
Am 26.04.2017 um 05:34 hat Fam Zheng geschrieben:
> They are wrappers of POSIX fcntl "file private locking", with a
> convenient "try lock" wrapper implemented with F_OFD_GETLK.
>
> Signed-off-by: Fam Zheng <address@hidden>
> Reviewed-by: Max Reitz <address@hidden>
> ---
> include/qemu/osdep.h | 3 +++
> util/osdep.c | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
> 2 files changed, 51 insertions(+)
>
> diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h
> index 122ff06..1c9f5e2 100644
> --- a/include/qemu/osdep.h
> +++ b/include/qemu/osdep.h
> @@ -341,6 +341,9 @@ int qemu_close(int fd);
> #ifndef _WIN32
> int qemu_dup(int fd);
> #endif
> +int qemu_lock_fd(int fd, int64_t start, int64_t len, bool exclusive);
> +int qemu_unlock_fd(int fd, int64_t start, int64_t len);
> +int qemu_lock_fd_test(int fd, int64_t start, int64_t len, bool exclusive);
For the record: On IRC, I proposed adding something like the following:
#ifndef F_OFD_SETLK
#define F_OFD_SETLK F_SETLK
#define F_OFD_GETLK F_GETLK
#endif
F_OFD_* are still relatively new and e.g. RHEL 7 doesn't support it yet.
Using process-based locks is suboptimal because we can easily lose them
earlier than we want, but it's still better than nothing and covers the
common simple cases.
Kevin
- Re: [Qemu-devel] [PATCH v15 16/21] file-posix: Add 'locking' option, (continued)
[Qemu-devel] [PATCH v15 19/21] osdep: Add qemu_lock_fd and qemu_unlock_fd, Fam Zheng, 2017/04/25
- Re: [Qemu-devel] [PATCH v15 19/21] osdep: Add qemu_lock_fd and qemu_unlock_fd,
Kevin Wolf <=
[Qemu-devel] [PATCH v15 20/21] file-posix: Add image locking to perm operations, Fam Zheng, 2017/04/25