Re: [Ocfs2-devel] [PATCH v4 2/2] ocfs2: clear unaligned io flagwhen dio fails

From: Joel Becker
Date: Thu Jul 05 2012 - 05:22:06 EST


On Wed, Jul 04, 2012 at 03:51:57PM +0800, Junxiao Bi wrote:
> On 07/04/2012 03:34 PM, Joel Becker wrote:
> > On Wed, Jun 27, 2012 at 05:09:55PM +0800, Junxiao Bi wrote:
> >> 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@xxxxxxxxxx>
> >> Cc: stable@xxxxxxxxxxxxxxx
> > This patch is now part of the 'fixes' branch of ocfs2.git.
> Thank you. Are you going to merge my first patch "[PATCH v4 1/2] aio:
> make kiocb->private NUll in init_sync_kiocb()"? Though Andrew's cleanup
> patch covered this fix, but it can't tell how this fix a ocfs2 hang bug.
> Also merging it will make it into stable branch.

Pushed that too.

Joel

> >
> > Joel
> >
> >> ---
> >> fs/ocfs2/file.c | 4 +++-
> >> 1 file changed, 3 insertions(+), 1 deletion(-)
> >>
> >> 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)
> >> --
> >> 1.7.9.5
> >>
> >>
> >> _______________________________________________
> >> Ocfs2-devel mailing list
> >> Ocfs2-devel@xxxxxxxxxxxxxx
> >> https://oss.oracle.com/mailman/listinfo/ocfs2-devel
>

--

A good programming language should have features that make the
kind of people who use the phrase "software engineering" shake
their heads disapprovingly.
- Paul Graham

http://www.jlbec.org/
jlbec@xxxxxxxxxxxx
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/