diff options
author | Tao Ma <tao.ma@oracle.com> | 2010-04-16 13:59:25 +0800 |
---|---|---|
committer | Joel Becker <joel.becker@oracle.com> | 2010-04-16 03:10:54 -0700 |
commit | 79681842e160c3211eeeb47ea31b061038d1e41e (patch) | |
tree | ebc5fbbd91e33fa633903b784d6bf0b4d068bb76 /fs/ocfs2/file.c | |
parent | a42ab8e1a37257da37e0f018e707bf365ac24531 (diff) | |
download | lwn-79681842e160c3211eeeb47ea31b061038d1e41e.tar.gz lwn-79681842e160c3211eeeb47ea31b061038d1e41e.zip |
ocfs2: Reset status if we want to restart file extension.
In __ocfs2_extend_allocation, we will restart our file extension
if ((!status) && restart_func). But there is a bug that the
status is still left as -EGAIN. This is really an old bug,
but it is masked by the return value of ocfs2_journal_dirty.
So it show up when we make ocfs2_journal_dirty void.
Signed-off-by: Tao Ma <tao.ma@oracle.com>
Signed-off-by: Joel Becker <joel.becker@oracle.com>
Diffstat (limited to 'fs/ocfs2/file.c')
-rw-r--r-- | fs/ocfs2/file.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/ocfs2/file.c b/fs/ocfs2/file.c index 2b4235c5831d..20e0ee58dd39 100644 --- a/fs/ocfs2/file.c +++ b/fs/ocfs2/file.c @@ -684,6 +684,7 @@ restarted_transaction: if (why == RESTART_META) { mlog(0, "restarting function.\n"); restart_func = 1; + status = 0; } else { BUG_ON(why != RESTART_TRANS); |