[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 2/5] hax: Fix setting of FD_CLOEXEC
From: |
Eric Blake |
Subject: |
[PULL 2/5] hax: Fix setting of FD_CLOEXEC |
Date: |
Mon, 13 Jul 2020 09:21:03 -0500 |
Blindly setting FD_CLOEXEC without a read-modify-write will
inadvertently clear any other intentionally-set bits, such as a
proposed new bit for designating a fd that must behave in 32-bit mode.
Use our wrapper function instead of an incorrect hand-rolled version.
Signed-off-by: Eric Blake <eblake@redhat.com>
Message-Id: <20200420175309.75894-2-eblake@redhat.com>
Reviewed-by: Colin Xu <colin.xu@intel.com>
---
target/i386/hax-posix.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/target/i386/hax-posix.c b/target/i386/hax-posix.c
index 3bad89f13337..5f9d1b803dec 100644
--- a/target/i386/hax-posix.c
+++ b/target/i386/hax-posix.c
@@ -23,7 +23,7 @@ hax_fd hax_mod_open(void)
fprintf(stderr, "Failed to open the hax module\n");
}
- fcntl(fd, F_SETFD, FD_CLOEXEC);
+ qemu_set_cloexec(fd);
return fd;
}
@@ -147,7 +147,7 @@ hax_fd hax_host_open_vm(struct hax_state *hax, int vm_id)
fd = open(vm_name, O_RDWR);
g_free(vm_name);
- fcntl(fd, F_SETFD, FD_CLOEXEC);
+ qemu_set_cloexec(fd);
return fd;
}
@@ -200,7 +200,7 @@ hax_fd hax_host_open_vcpu(int vmid, int vcpuid)
if (fd < 0) {
fprintf(stderr, "Failed to open the vcpu devfs\n");
}
- fcntl(fd, F_SETFD, FD_CLOEXEC);
+ qemu_set_cloexec(fd);
return fd;
}
--
2.27.0
- [PULL 0/5] NBD patches for 2020-07-13, Eric Blake, 2020/07/13
- [PULL 1/5] nbd: Avoid off-by-one in long export name truncation, Eric Blake, 2020/07/13
- [PULL 3/5] iotests: QemuIoInteractive: use qemu_io_args_no_fmt, Eric Blake, 2020/07/13
- [PULL 4/5] iotests.py: QemuIoInteractive: print output on failure, Eric Blake, 2020/07/13
- [PULL 5/5] iotests.py: filter_testfiles(): filter SOCK_DIR too, Eric Blake, 2020/07/13
- [PULL 2/5] hax: Fix setting of FD_CLOEXEC,
Eric Blake <=
- Re: [PULL 0/5] NBD patches for 2020-07-13, Peter Maydell, 2020/07/14