diff options
author | Brian Behlendorf <[email protected]> | 2015-02-20 10:28:25 -0800 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2015-02-24 11:21:54 -0800 |
commit | 1efdc45ea805e61de2c54736cd1b2a4a5f48a913 (patch) | |
tree | 864346e155a41ce191030482021f8545db1a877c /module/unicode | |
parent | 1d966336f5095c7e0345360c3862577642670d2d (diff) |
Fix O_APPEND open(2) flag
As described in flags section of open(2):
O_APPEND:
The file is opened in append mode. Before each write(2), the
file offset is positioned at the end of the file, as if with
lseek(2). O_APPEND may lead to corrupted files on NFS filesys-
tems if more than one process appends data to a file at once.
This is because NFS does not support appending to a file, so the
client kernel has to simulate it, which can't be done without a
race condition.
This issue was originally overlooked because normally the generic
VFS code handles this for a filesystem. However, because ZFS explictly
registers a zpl_write() function it's responsible for the seek.
Signed-off-by: Brian Behlendorf <[email protected]>
Closes #3124
Diffstat (limited to 'module/unicode')
0 files changed, 0 insertions, 0 deletions