diff options
author | Steven Whitehouse <swhiteho@redhat.com> | 2009-12-08 10:25:33 +0000 |
---|---|---|
committer | Steven Whitehouse <swhiteho@redhat.com> | 2010-01-08 13:42:27 +0000 |
commit | 56aa616a03feca630d5afce647367a5d8cfc67b8 (patch) | |
tree | a4b4feb0d2ac0f329b98748445adb90a6458a2e9 /fs/gfs2/ops_inode.c | |
parent | 74d2e4f8d79ae0c4b6ec027958d5b18058662eea (diff) | |
download | blackbird-op-linux-56aa616a03feca630d5afce647367a5d8cfc67b8.tar.gz blackbird-op-linux-56aa616a03feca630d5afce647367a5d8cfc67b8.zip |
GFS2: Ensure uptodate inode size when using O_APPEND
The VFS reads the inode size during generic_file_aio_write() but
with no locking around it. In order to get the expected result
from O_APPEND opens, this patch updated the inode size before
calling generic_file_aio_write()
There is of course still a race here, in that there is nothing to
prevent another node coming in and extending the file in the
mean time. On the other hand, when used with file locking this
will ensure that the expected results are obtained.
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Diffstat (limited to 'fs/gfs2/ops_inode.c')
0 files changed, 0 insertions, 0 deletions