summaryrefslogtreecommitdiff
path: root/fs/ocfs2
diff options
context:
space:
mode:
authorJunxiao Bi <junxiao.bi@oracle.com>2012-06-27 09:09:55 (GMT)
committerJoel Becker <jlbec@evilplan.org>2012-07-04 06:26:50 (GMT)
commit3e5d3c35a68c9a933bdbdd8685bd1a205b57e806 (patch)
treeb84d21201792d9aa31a3bd2ef142d95e739f59d4 /fs/ocfs2
parent9e85a6f9dc231f3ed3c1dc1b12217505d970142a (diff)
downloadlinux-3e5d3c35a68c9a933bdbdd8685bd1a205b57e806.tar.xz
ocfs2: clear unaligned io flag when dio fails
The unaligned io flag is set in the kiocb when an unaligned dio is issued, it should be cleared even when the dio fails, or it may affect the following io which are using the same kiocb. Signed-off-by: Junxiao Bi <junxiao.bi@oracle.com> Cc: stable@vger.kernel.org Signed-off-by: Joel Becker <jlbec@evilplan.org>
Diffstat (limited to 'fs/ocfs2')
-rw-r--r--fs/ocfs2/file.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/ocfs2/file.c b/fs/ocfs2/file.c
index 061591a..98513c8 100644
--- a/fs/ocfs2/file.c
+++ b/fs/ocfs2/file.c
@@ -2422,8 +2422,10 @@ out_dio:
unaligned_dio = 0;
}
- if (unaligned_dio)
+ if (unaligned_dio) {
+ ocfs2_iocb_clear_unaligned_aio(iocb);
atomic_dec(&OCFS2_I(inode)->ip_unaligned_aio);
+ }
out:
if (rw_level != -1)