mirror of
https://gitee.com/bianbu-linux/linux-6.6
synced 2025-04-26 14:17:26 -04:00
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>
This commit is contained in:
parent
9afa2fb6c1
commit
1b8ab8159e
2 changed files with 52 additions and 4 deletions
|
@ -9,7 +9,7 @@
|
|||
|
||||
/* externs for fs/stack.c */
|
||||
extern void fsstack_copy_attr_all(struct inode *dest, const struct inode *src);
|
||||
extern void fsstack_copy_inode_size(struct inode *dst, const struct inode *src);
|
||||
extern void fsstack_copy_inode_size(struct inode *dst, struct inode *src);
|
||||
|
||||
/* inlines */
|
||||
static inline void fsstack_copy_attr_atime(struct inode *dest,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue