diff options
author | Erez Zadok <ezk@cs.sunysb.edu> | 2009-12-03 21:56:09 -0500 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2009-12-17 10:58:17 -0500 |
commit | 1b8ab8159ef8f818f870a1d2e3b6953d80eefd3f (patch) | |
tree | 97fdfc87493d5077c4c510e4defedccc483477af /include | |
parent | 9afa2fb6c13501e5b3536d15344fce4e5442c469 (diff) |
VFS/fsstack: handle 32-bit smp + preempt + large files in fsstack_copy_inode_size
Copy the inode size and blocks from one inode to another correctly on 32-bit
systems with CONFIG_SMP, CONFIG_PREEMPT, or CONFIG_LBDAF. Use proper inode
spinlocks only when i_size/i_blocks cannot fit in one 32-bit word.
Signed-off-by: Hugh Dickins <hugh.dickins@tiscali.co.uk>
Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/fs_stack.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/fs_stack.h b/include/linux/fs_stack.h index aa60311900dd..da317c7163ab 100644 --- a/include/linux/fs_stack.h +++ b/include/linux/fs_stack.h | |||
@@ -9,7 +9,7 @@ | |||
9 | 9 | ||
10 | /* externs for fs/stack.c */ | 10 | /* externs for fs/stack.c */ |
11 | extern void fsstack_copy_attr_all(struct inode *dest, const struct inode *src); | 11 | extern void fsstack_copy_attr_all(struct inode *dest, const struct inode *src); |
12 | extern void fsstack_copy_inode_size(struct inode *dst, const struct inode *src); | 12 | extern void fsstack_copy_inode_size(struct inode *dst, struct inode *src); |
13 | 13 | ||
14 | /* inlines */ | 14 | /* inlines */ |
15 | static inline void fsstack_copy_attr_atime(struct inode *dest, | 15 | static inline void fsstack_copy_attr_atime(struct inode *dest, |