Daeseok Youn
2015-Feb-27 23:51 UTC
[Ocfs2-devel] [PATCH 3/4 RESEND] ocfs2: need to handle error for ocfs2_journal_access_di() call
There is no error handle when ocfs2_journal_access_di() is failed.
And also it doesn't need to call ocfs2_dx_dir_insert() when
ocfs2_journal_access_db() is failed.
Signed-off-by: Daeseok Youn <daeseok.youn at gmail.com>
---
RESEND: this patch rebased by 1/4
fs/ocfs2/dir.c | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/fs/ocfs2/dir.c b/fs/ocfs2/dir.c
index c1ab24f..c63f2b6 100644
--- a/fs/ocfs2/dir.c
+++ b/fs/ocfs2/dir.c
@@ -1703,15 +1703,15 @@ int __ocfs2_add_entry(handle_t *handle,
insert_bh,
OCFS2_JOURNAL_ACCESS_WRITE);
- if (ocfs2_dir_indexed(dir)) {
+ if (!retval && ocfs2_dir_indexed(dir))
retval = ocfs2_dx_dir_insert(dir,
handle,
lookup);
- if (retval)
- goto bail;
- }
}
+ if (retval)
+ goto bail;
+
/* By now the buffer is marked for journaling */
offset += le16_to_cpu(de->rec_len);
if (le64_to_cpu(de->inode)) {
--
1.7.1
Joseph Qi
2015-Mar-19 11:00 UTC
[Ocfs2-devel] [PATCH 3/4 RESEND] ocfs2: need to handle error for ocfs2_journal_access_di() call
On 2015/2/28 7:51, Daeseok Youn wrote:> There is no error handle when ocfs2_journal_access_di() is failed. > And also it doesn't need to call ocfs2_dx_dir_insert() when > ocfs2_journal_access_db() is failed. > > Signed-off-by: Daeseok Youn <daeseok.youn at gmail.com> > --- > RESEND: this patch rebased by 1/4 > > fs/ocfs2/dir.c | 8 ++++---- > 1 files changed, 4 insertions(+), 4 deletions(-) > > diff --git a/fs/ocfs2/dir.c b/fs/ocfs2/dir.c > index c1ab24f..c63f2b6 100644 > --- a/fs/ocfs2/dir.c > +++ b/fs/ocfs2/dir.c > @@ -1703,15 +1703,15 @@ int __ocfs2_add_entry(handle_t *handle, > insert_bh, > OCFS2_JOURNAL_ACCESS_WRITE); > > - if (ocfs2_dir_indexed(dir)) { > + if (!retval && ocfs2_dir_indexed(dir)) > retval = ocfs2_dx_dir_insert(dir, > handle, > lookup); > - if (retval) > - goto bail; > - } > } > > + if (retval) > + goto bail; > + > /* By now the buffer is marked for journaling */ > offset += le16_to_cpu(de->rec_len); > if (le64_to_cpu(de->inode)) { >I agree with you that we should do the corresponding check. But I don't think we need remove the mlog as described in my previous mail.