diff options
Diffstat (limited to 'recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.23/0043-ocfs2-clear-unaligned-io-flag-when-dio-fails.patch')
-rw-r--r-- | recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.23/0043-ocfs2-clear-unaligned-io-flag-when-dio-fails.patch | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.23/0043-ocfs2-clear-unaligned-io-flag-when-dio-fails.patch b/recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.23/0043-ocfs2-clear-unaligned-io-flag-when-dio-fails.patch new file mode 100644 index 00000000..c07be0da --- /dev/null +++ b/recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.23/0043-ocfs2-clear-unaligned-io-flag-when-dio-fails.patch | |||
@@ -0,0 +1,38 @@ | |||
1 | From 605e639247e5f40be06b013748769bd2cc252e04 Mon Sep 17 00:00:00 2001 | ||
2 | From: Junxiao Bi <junxiao.bi@oracle.com> | ||
3 | Date: Wed, 27 Jun 2012 17:09:55 +0800 | ||
4 | Subject: [PATCH 43/49] ocfs2: clear unaligned io flag when dio fails | ||
5 | |||
6 | commit 3e5d3c35a68c9a933bdbdd8685bd1a205b57e806 upstream. | ||
7 | |||
8 | The unaligned io flag is set in the kiocb when an unaligned | ||
9 | dio is issued, it should be cleared even when the dio fails, | ||
10 | or it may affect the following io which are using the same | ||
11 | kiocb. | ||
12 | |||
13 | Signed-off-by: Junxiao Bi <junxiao.bi@oracle.com> | ||
14 | Signed-off-by: Joel Becker <jlbec@evilplan.org> | ||
15 | Signed-off-by: Ben Hutchings <ben@decadent.org.uk> | ||
16 | --- | ||
17 | fs/ocfs2/file.c | 4 +++- | ||
18 | 1 file changed, 3 insertions(+), 1 deletion(-) | ||
19 | |||
20 | diff --git a/fs/ocfs2/file.c b/fs/ocfs2/file.c | ||
21 | index 6e39668..07ee5b4 100644 | ||
22 | --- a/fs/ocfs2/file.c | ||
23 | +++ b/fs/ocfs2/file.c | ||
24 | @@ -2422,8 +2422,10 @@ out_dio: | ||
25 | unaligned_dio = 0; | ||
26 | } | ||
27 | |||
28 | - if (unaligned_dio) | ||
29 | + if (unaligned_dio) { | ||
30 | + ocfs2_iocb_clear_unaligned_aio(iocb); | ||
31 | atomic_dec(&OCFS2_I(inode)->ip_unaligned_aio); | ||
32 | + } | ||
33 | |||
34 | out: | ||
35 | if (rw_level != -1) | ||
36 | -- | ||
37 | 1.7.10 | ||
38 | |||