summaryrefslogtreecommitdiffstats
path: root/fs/fat/fat.h
diff options
context:
space:
mode:
authorNamjae Jeon2013-04-30 01:21:12 +0200
committerLinus Torvalds2013-04-30 03:28:41 +0200
commit8fceb4e0171f6bf64db756c65b2ce5f15aed8b4d (patch)
treed5dcc788292169e2bf4b9cd96111d2c2c46777fb /fs/fat/fat.h
parentfat: restructure export_operations (diff)
downloadkernel-qcow2-linux-8fceb4e0171f6bf64db756c65b2ce5f15aed8b4d.tar.gz
kernel-qcow2-linux-8fceb4e0171f6bf64db756c65b2ce5f15aed8b4d.tar.xz
kernel-qcow2-linux-8fceb4e0171f6bf64db756c65b2ce5f15aed8b4d.zip
fat (exportfs): rebuild inode if ilookup() fails
If the cache lookups fail,use the i_pos value to find the directory entry of the inode and rebuild the inode.Since this involves accessing the FAT media, do this only if the nostale_ro nfs mount option is specified. Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com> Signed-off-by: Ravishankar N <ravi.n1@samsung.com> Signed-off-by: Amit Sahrawat <a.sahrawat@samsung.com> Acked-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/fat/fat.h')
-rw-r--r--fs/fat/fat.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/fat/fat.h b/fs/fat/fat.h
index c517fc066cf7..413eaaf30ed5 100644
--- a/fs/fat/fat.h
+++ b/fs/fat/fat.h
@@ -75,6 +75,7 @@ struct msdos_sb_info {
unsigned long root_cluster; /* first cluster of the root directory */
unsigned long fsinfo_sector; /* sector number of FAT32 fsinfo */
struct mutex fat_lock;
+ struct mutex nfs_build_inode_lock;
struct mutex s_lock;
unsigned int prev_free; /* previously allocated cluster number */
unsigned int free_clusters; /* -1 if undefined */