This is the per-I/O equivalent of O_APPEND to support atomic append operations on any open file. If a file is opened with O_APPEND, pwrite() ignores the offset and always appends data to the end of the file. RWF_APPEND enables atomic append and pwrite() with offset on a single file descriptor.
Showing the changes to include/uapi/linux (1 of 2 files). Show all
Unified · Split
| @@ -377,7 +377,11 @@ typedef int __bitwise __kernel_rwf_t; · 376 unmodified lines | ||
| 377 | 377 | /* per-IO, return -EAGAIN if operation would block */ |
| 378 | 378 | #define RWF_NOWAIT ((__force __kernel_rwf_t)0x00000008) |
| 379 | 379 | |
| 380 | +/* per-IO O_APPEND */ | |
| 381 | +#define RWF_APPEND ((__force __kernel_rwf_t)0x00000010) | |
| 382 | + | |
| 380 | 383 | /* mask of flags supported by the kernel */ |
| 381 | −#define RWF_SUPPORTED (RWF_HIPRI | RWF_DSYNC | RWF_SYNC | RWF_NOWAIT) | |
| 384 | +#define RWF_SUPPORTED (RWF_HIPRI | RWF_DSYNC | RWF_SYNC | RWF_NOWAIT |\ | |
| 385 | + RWF_APPEND) | |
| 382 | 386 | |
| 383 | 387 | #endif /* _UAPI_LINUX_FS_H */ |