summaryrefslogtreecommitdiffstats
path: root/fs/fat
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2008-11-12 07:48:01 +0900
committerOGAWA Hirofumi <hirofumi@mail.parknet.co.jp>2008-11-12 08:51:22 +0900
commit5a6bb10393eb9a1985e97af12f0cb2906bcbf1af (patch)
tree66fa9d4dd4c2469d871d4a452634f8ed2f3ada7b /fs/fat
parent985eafcc5480b0d98419b96869f2560abb2764c7 (diff)
downloadlinux-stable-5a6bb10393eb9a1985e97af12f0cb2906bcbf1af.tar.gz
linux-stable-5a6bb10393eb9a1985e97af12f0cb2906bcbf1af.tar.bz2
linux-stable-5a6bb10393eb9a1985e97af12f0cb2906bcbf1af.zip
fat: make sure to set d_ops in fat_get_parent
fat_get_parent needs to setup the dentry operations, otherwise we might lose them when the NFS server needs to reconnect out of cache inodes. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Diffstat (limited to 'fs/fat')
-rw-r--r--fs/fat/inode.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/fat/inode.c b/fs/fat/inode.c
index bdd8fb7be2ca..37a8af159a13 100644
--- a/fs/fat/inode.c
+++ b/fs/fat/inode.c
@@ -749,6 +749,8 @@ static struct dentry *fat_get_parent(struct dentry *child)
brelse(bh);
parent = d_obtain_alias(inode);
+ if (!IS_ERR(parent))
+ parent->d_op = sb->s_root->d_op;
out:
unlock_super(sb);