From: Joseph Myers Date: Wed, 7 Aug 2019 17:01:13 +0000 (+0000) Subject: Add SYNC_FILE_RANGE_WRITE_AND_WAIT from Linux 5.2 to bits/fcntl-linux.h. X-Git-Tag: changelog-ends-here~145 X-Git-Url: https://sourceware.org/git/?a=commitdiff_plain;h=a02cd8e4e091201cb395a805a9f3e2a9981cae37;p=glibc.git Add SYNC_FILE_RANGE_WRITE_AND_WAIT from Linux 5.2 to bits/fcntl-linux.h. This patch adds the SYNC_FILE_RANGE_WRITE_AND_WAIT constant from Linux 5.2 (a new name for a combination of existing bits, not actually a new kernel interface) to bits/fcntl-linux.h. Tested for x86_64. * sysdeps/unix/sysv/linux/bits/fcntl-linux.h [__USE_GNU] (SYNC_FILE_RANGE_WRITE_AND_WAIT): New macro. --- diff --git a/ChangeLog b/ChangeLog index 53ccbf5e9e..760698b440 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2019-08-07 Joseph Myers + + * sysdeps/unix/sysv/linux/bits/fcntl-linux.h [__USE_GNU] + (SYNC_FILE_RANGE_WRITE_AND_WAIT): New macro. + 2019-08-06 Joseph Myers * io/fcntl.h [__USE_GNU] (AT_RECURSIVE): New macro. diff --git a/sysdeps/unix/sysv/linux/bits/fcntl-linux.h b/sysdeps/unix/sysv/linux/bits/fcntl-linux.h index 3f32eb328b..ad9bf1b24b 100644 --- a/sysdeps/unix/sysv/linux/bits/fcntl-linux.h +++ b/sysdeps/unix/sysv/linux/bits/fcntl-linux.h @@ -334,6 +334,11 @@ struct f_owner_ex # define SYNC_FILE_RANGE_WAIT_AFTER 4 /* Wait upon writeout of all pages in the range after performing the write. */ +/* SYNC_FILE_RANGE_WRITE_AND_WAIT ensures all pages in the range are + written to disk before returning. */ +# define SYNC_FILE_RANGE_WRITE_AND_WAIT (SYNC_FILE_RANGE_WRITE \ + | SYNC_FILE_RANGE_WAIT_BEFORE \ + | SYNC_FILE_RANGE_WAIT_AFTER) /* Flags for SPLICE and VMSPLICE. */ # define SPLICE_F_MOVE 1 /* Move pages instead of copying. */