Filipe David Borba Manana
2013-Aug-05 00:25 UTC
[PATCH] Btrfs: don''t ignore errors from btrfs_run_delayed_items
tree-log.c was ignoring the return value from btrfs_run_delayed_items() in several places. Signed-off-by: Filipe David Borba Manana <fdmanana@gmail.com> --- fs/btrfs/tree-log.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c index ff60d89..f919f26 100644 --- a/fs/btrfs/tree-log.c +++ b/fs/btrfs/tree-log.c @@ -747,7 +747,8 @@ static noinline int drop_one_dir_item(struct btrfs_trans_handle *trans, ret = btrfs_unlink_inode(trans, root, dir, inode, name, name_len); if (ret) goto out; - btrfs_run_delayed_items(trans, root); + else + ret = btrfs_run_delayed_items(trans, root); out: kfree(name); iput(inode); @@ -923,7 +924,9 @@ again: kfree(victim_name); if (ret) return ret; - btrfs_run_delayed_items(trans, root); + ret = btrfs_run_delayed_items(trans, root); + if (ret) + return ret; *search_done = 1; goto again; } @@ -990,7 +993,8 @@ again: inode, victim_name, victim_name_len); - btrfs_run_delayed_items(trans, root); + if (!ret) + ret = btrfs_run_delayed_items(trans, root); } iput(victim_parent); kfree(victim_name); @@ -1810,7 +1814,7 @@ again: ret = btrfs_unlink_inode(trans, root, dir, inode, name, name_len); if (!ret) - btrfs_run_delayed_items(trans, root); + ret = btrfs_run_delayed_items(trans, root); kfree(name); iput(inode); if (ret) -- 1.7.9.5 -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Miao Xie
2013-Aug-05 02:21 UTC
Re: [PATCH] Btrfs: don''t ignore errors from btrfs_run_delayed_items
On mon, 5 Aug 2013 01:25:26 +0100, Filipe David Borba Manana wrote:> tree-log.c was ignoring the return value from btrfs_run_delayed_items() > in several places. > > Signed-off-by: Filipe David Borba Manana <fdmanana@gmail.com> > --- > fs/btrfs/tree-log.c | 12 ++++++++---- > 1 file changed, 8 insertions(+), 4 deletions(-) > > diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c > index ff60d89..f919f26 100644 > --- a/fs/btrfs/tree-log.c > +++ b/fs/btrfs/tree-log.c > @@ -747,7 +747,8 @@ static noinline int drop_one_dir_item(struct btrfs_trans_handle *trans, > ret = btrfs_unlink_inode(trans, root, dir, inode, name, name_len); > if (ret) > goto out; > - btrfs_run_delayed_items(trans, root); > + else > + ret = btrfs_run_delayed_items(trans, root); > out: > kfree(name); > iput(inode); > @@ -923,7 +924,9 @@ again: > kfree(victim_name); > if (ret) > return ret; > - btrfs_run_delayed_items(trans, root); > + ret = btrfs_run_delayed_items(trans, root); > + if (ret) > + return ret; > *search_done = 1; > goto again; > } > @@ -990,7 +993,8 @@ again: > inode, > victim_name, > victim_name_len); > - btrfs_run_delayed_items(trans, root); > + if (!ret) > + ret = btrfs_run_delayed_items(trans, root);checkpatch.pl reported: WARNING: line over 80 characters #141: FILE: fs/btrfs/tree-log.c:997: + ret = btrfs_run_delayed_items(trans, root); The other code is OK. Thanks Miao> } > iput(victim_parent); > kfree(victim_name); > @@ -1810,7 +1814,7 @@ again: > ret = btrfs_unlink_inode(trans, root, dir, inode, > name, name_len); > if (!ret) > - btrfs_run_delayed_items(trans, root); > + ret = btrfs_run_delayed_items(trans, root); > kfree(name); > iput(inode); > if (ret) >-- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Filipe David Borba Manana
2013-Aug-05 08:25 UTC
[PATCH v2] Btrfs: don''t ignore errors from btrfs_run_delayed_items
tree-log.c was ignoring the return value from btrfs_run_delayed_items() in several places. Signed-off-by: Filipe David Borba Manana <fdmanana@gmail.com> --- V2: Ensure no line exceeds 80 characters. fs/btrfs/tree-log.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c index ff60d89..f90ae35 100644 --- a/fs/btrfs/tree-log.c +++ b/fs/btrfs/tree-log.c @@ -747,7 +747,8 @@ static noinline int drop_one_dir_item(struct btrfs_trans_handle *trans, ret = btrfs_unlink_inode(trans, root, dir, inode, name, name_len); if (ret) goto out; - btrfs_run_delayed_items(trans, root); + else + ret = btrfs_run_delayed_items(trans, root); out: kfree(name); iput(inode); @@ -923,7 +924,9 @@ again: kfree(victim_name); if (ret) return ret; - btrfs_run_delayed_items(trans, root); + ret = btrfs_run_delayed_items(trans, root); + if (ret) + return ret; *search_done = 1; goto again; } @@ -990,7 +993,9 @@ again: inode, victim_name, victim_name_len); - btrfs_run_delayed_items(trans, root); + if (!ret) + ret = btrfs_run_delayed_items( + trans, root); } iput(victim_parent); kfree(victim_name); @@ -1810,7 +1815,7 @@ again: ret = btrfs_unlink_inode(trans, root, dir, inode, name, name_len); if (!ret) - btrfs_run_delayed_items(trans, root); + ret = btrfs_run_delayed_items(trans, root); kfree(name); iput(inode); if (ret) -- 1.7.9.5 -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Miao Xie
2013-Aug-05 08:45 UTC
Re: [PATCH v2] Btrfs: don''t ignore errors from btrfs_run_delayed_items
On mon, 5 Aug 2013 09:25:47 +0100, Filipe David Borba Manana wrote:> tree-log.c was ignoring the return value from btrfs_run_delayed_items() > in several places. > > Signed-off-by: Filipe David Borba Manana <fdmanana@gmail.com> > --- > > V2: Ensure no line exceeds 80 characters.Looks good to me. Reviewed-by: Miao Xie <miaox@cn.fujitsu.com>> > fs/btrfs/tree-log.c | 13 +++++++++---- > 1 file changed, 9 insertions(+), 4 deletions(-) > > diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c > index ff60d89..f90ae35 100644 > --- a/fs/btrfs/tree-log.c > +++ b/fs/btrfs/tree-log.c > @@ -747,7 +747,8 @@ static noinline int drop_one_dir_item(struct btrfs_trans_handle *trans, > ret = btrfs_unlink_inode(trans, root, dir, inode, name, name_len); > if (ret) > goto out; > - btrfs_run_delayed_items(trans, root); > + else > + ret = btrfs_run_delayed_items(trans, root); > out: > kfree(name); > iput(inode); > @@ -923,7 +924,9 @@ again: > kfree(victim_name); > if (ret) > return ret; > - btrfs_run_delayed_items(trans, root); > + ret = btrfs_run_delayed_items(trans, root); > + if (ret) > + return ret; > *search_done = 1; > goto again; > } > @@ -990,7 +993,9 @@ again: > inode, > victim_name, > victim_name_len); > - btrfs_run_delayed_items(trans, root); > + if (!ret) > + ret = btrfs_run_delayed_items( > + trans, root); > } > iput(victim_parent); > kfree(victim_name); > @@ -1810,7 +1815,7 @@ again: > ret = btrfs_unlink_inode(trans, root, dir, inode, > name, name_len); > if (!ret) > - btrfs_run_delayed_items(trans, root); > + ret = btrfs_run_delayed_items(trans, root); > kfree(name); > iput(inode); > if (ret) >-- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html