[dm-devel] Re: possible regression by the barrier patch in 2.6.30-rc2
Mikulas Patocka
mpatocka at redhat.com
Mon Apr 20 06:20:10 UTC 2009
On Mon, 20 Apr 2009, Kiyoshi Ueda wrote:
> Hi Alasdair, Mikulas,
>
> On 2009/04/17 22:22 +0900, Alasdair G Kergon wrote:
> > On Fri, Apr 17, 2009 at 01:57:02PM +0900, Kiyoshi Ueda wrote:
> >> 1. The semantics of flush suspend has been changed.
> >
> > We absolutely must complete any I/O issued as a result of the lock_fs()
> > call in dm_suspend().
>
> I think that lock_fs() waits for I/O to complete, so no semantics change
> in case of LOCKFS && FLUSH. (All I/O issued from lock_fs() are flushed.)
True. It waits, so there's no problem with it.
> But in case of NO_LOCKFS && FLUSH, the semantics is changed:
> from: I/Os submitted before the suspend invocation are flushed
> to: I/Os submitted even before the suspend invocation may not be flushed
>
> I have no idea whether someone gets real damage by this semantics change.
I have no idea whether it hurts too. I think it doesn't hurt because
suspend may come only from ioctl and that ioctl syscall doesn't submit any
requests prior to suspend.
It would be trivial to fix, but I don't know about any case where it could
cause a bug.
Mikulas
More information about the dm-devel
mailing list