[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 0/2] fix fcntl(F_SETFD) usage
From: |
Eric Blake |
Subject: |
[PATCH 0/2] fix fcntl(F_SETFD) usage |
Date: |
Mon, 20 Apr 2020 12:53:06 -0500 |
As recently pointed out:
https://lists.gnu.org/archive/html/qemu-devel/2020-04/msg03133.html
code that blindly calls fcntl(fd, F_SETFD, 1) rather than performing a
read-modify-write when it intends to add FD_CLOEXEC is broken, in that
it can inadvertently clear other bits.
Thankfully, the culprits fixed in this series are unlikely to be
clearing either FD_CLOFORK (if Linux ever follows Solaris' lead in
adding that), or the new FD_32BIT_MODE being proposed (as the fds in
question are unlikely to have that set) - but it is still better to
write proper code than to set up a bad example prone to copy-and-paste
propagation. And as these usages are not new to 5.0, I don't see any
reason against waiting until 5.1 to apply them.
Eric Blake (2):
hax: Fix setting of FD_CLOEXEC
tools: Fix use of fcntl(F_SETFD) during socket activation
target/i386/hax-posix.c | 6 +++---
util/systemd.c | 4 +++-
2 files changed, 6 insertions(+), 4 deletions(-)
--
2.26.1
- [PATCH 0/2] fix fcntl(F_SETFD) usage,
Eric Blake <=