[Bug 273962] copy_file_range does not work on shared memory objects

From: <bugzilla-noreply_at_freebsd.org>
Date: Sat, 23 Sep 2023 10:06:57 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=273962

--- Comment #10 from Konstantin Belousov <kib@FreeBSD.org> ---
(In reply to David Chisnall from comment #9)
From IEEE Standard for Information Technology—
Portable Operating System Interface (POSIX®)
Base Specifications, Issue 7

2.9.7 Thread Interactions with Regular File Operations
All of the following functions shall be atomic with respect to each other in
the effects specified in
POSIX.1-2017 when they operate on regular files or symbolic links:
chmod( )
chown( )
close( )
creat( )
dup2( )
fchmod( )
fchmodat( )
fchown( )
fchownat( )
fcntl( )
fstat( )
fstatat( )
ftruncate( )
lchown( )
link( )
linkat( )
lseek( )
lstat( )
open( )
openat( )
pread( )
read( )
readlink( )
readlinkat( )
readv( )
pwrite( )
rename( )
renameat( )
stat( )
symlink( )
symlinkat( )
truncate( )
unlink( )
unlinkat( )
utime( )
utimensat( )
utimes( )
write( )
writev( )

If two threads each call one of these functions, each call shall either see all
of the specified effects
of the other call, or none of them. The requirement on the close( ) function
shall also apply
whenever a file descriptor is successfully closed, however caused (for example,
as a consequence
of calling close( ), calling dup2( ), or of process termination).

-- 
You are receiving this mail because:
You are on the CC list for the bug.