diff options
author | Anton Altaparmakov <aia21@cantab.net> | 2004-11-18 08:46:45 -0500 |
---|---|---|
committer | Anton Altaparmakov <aia21@cantab.net> | 2005-05-05 05:30:29 -0400 |
commit | 367636772f094fd840d2d79e75257bcfaa28e70f (patch) | |
tree | a8d8f3154eea80710a8cad2b7de082046aa012f0 /fs/ntfs/inode.c | |
parent | 899101aebb9ab3692aa8efe2805174ee0ee3edb5 (diff) |
NTFS: - In fs/ntfs/compress.c, use i_size_read() at the start and then use the
cached value everywhere. Cache the initialized_size in the same way
and protect the critical region where the two sizes are read using the
new size_lock of the ntfs inode.
- Add the new size_lock to the ntfs_inode structure (fs/ntfs/inode.h)
and initialize it (fs/ntfs/inode.c).
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
Diffstat (limited to 'fs/ntfs/inode.c')
-rw-r--r-- | fs/ntfs/inode.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/ntfs/inode.c b/fs/ntfs/inode.c index 31840ba0b38c..a02d8d9f0439 100644 --- a/fs/ntfs/inode.c +++ b/fs/ntfs/inode.c | |||
@@ -376,6 +376,7 @@ static void ntfs_destroy_extent_inode(ntfs_inode *ni) | |||
376 | void __ntfs_init_inode(struct super_block *sb, ntfs_inode *ni) | 376 | void __ntfs_init_inode(struct super_block *sb, ntfs_inode *ni) |
377 | { | 377 | { |
378 | ntfs_debug("Entering."); | 378 | ntfs_debug("Entering."); |
379 | rwlock_init(&ni->size_lock); | ||
379 | ni->initialized_size = ni->allocated_size = 0; | 380 | ni->initialized_size = ni->allocated_size = 0; |
380 | ni->seq_no = 0; | 381 | ni->seq_no = 0; |
381 | atomic_set(&ni->count, 1); | 382 | atomic_set(&ni->count, 1); |