From b973c61e6fd464864ad5c1083c0a1846978ff96d Mon Sep 17 00:00:00 2001 From: Al Viro Date: Fri, 25 Jan 2013 16:08:53 -0500 Subject: [PATCH] --- yaml --- r: 359002 b: refs/heads/master c: 69f24eac55725859a89c440ee2d19f36fa09e8fc h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/fs/f2fs/dir.c | 11 +++++------ 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/[refs] b/[refs] index f8d2c276bb16..ca6b4b1c8863 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: c004363dd6aa89f1ccbebd694f261f86db0c840a +refs/heads/master: 69f24eac55725859a89c440ee2d19f36fa09e8fc diff --git a/trunk/fs/f2fs/dir.c b/trunk/fs/f2fs/dir.c index ca7948a2770d..208a804180d6 100644 --- a/trunk/fs/f2fs/dir.c +++ b/trunk/fs/f2fs/dir.c @@ -281,13 +281,12 @@ void init_dent_inode(const struct qstr *name, struct page *ipage) set_page_dirty(ipage); } -static int init_inode_metadata(struct inode *inode, struct dentry *dentry) +static int init_inode_metadata(struct inode *inode, + struct inode *dir, const struct qstr *name) { - struct inode *dir = dentry->d_parent->d_inode; - if (is_inode_flag_set(F2FS_I(inode), FI_NEW_INODE)) { int err; - err = new_inode_page(inode, &dentry->d_name); + err = new_inode_page(inode, name); if (err) return err; @@ -310,7 +309,7 @@ static int init_inode_metadata(struct inode *inode, struct dentry *dentry) if (IS_ERR(ipage)) return PTR_ERR(ipage); set_cold_node(inode, ipage); - init_dent_inode(&dentry->d_name, ipage); + init_dent_inode(name, ipage); f2fs_put_page(ipage, 1); } if (is_inode_flag_set(F2FS_I(inode), FI_INC_LINK)) { @@ -433,7 +432,7 @@ int f2fs_add_link(struct dentry *dentry, struct inode *inode) ++level; goto start; add_dentry: - err = init_inode_metadata(inode, dentry); + err = init_inode_metadata(inode, dir, &dentry->d_name); if (err) goto fail;