public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Andi Kleen <andi@firstfloor.org>
To: Mikulas Patocka <mpatocka@redhat.com>
Cc: Andi Kleen <andi@firstfloor.org>,
	linux-kernel@vger.kernel.org, xfs@oss.sgi.com,
	Alasdair G Kergon <agk@redhat.com>,
	Andi Kleen <andi-suse@firstfloor.org>,
	Milan Broz <mbroz@redhat.com>
Subject: Re: Device loses barrier support (was: Fixed patch for simple barriers.)
Date: Thu, 4 Dec 2008 15:58:10 +0100	[thread overview]
Message-ID: <20081204145810.GR6703@one.firstfloor.org> (raw)
In-Reply-To: <Pine.LNX.4.64.0812040913510.6118@hs20-bc2-1.build.redhat.com>

> You start pvmove. The filesystem doesn't know about pvmove.
> 
> The next time filesystem does somethig, it submits these 3 requests and 
> the 2nd fill unexpectedly fail.

Again the file systems handle failing barriers and they expect it.

> 
> So the fact that pvmove drains the request queue won't help you.

Help you against what? 

> 
> > > finished after the 2nd write) and you are in an interrupt context, where 
> > > you can't reissue -EOPNOTSUPP request. So what do you want to do?
> > 
> > The barrier aware file systems I know of just resubmit synchronously when 
> > a barrier fails.
> 
> ... and produce structure corruption for certain period in time, because 
> the writes meant to be ordered are submitted unordered.

No there is nothing unordered. The file system path typically looks like

commit of a transaction
	if (i have never seen a barrier failing) 
		write block with barrier
		if (EOPNOTSUPP) {
			record failure
			submit synchronously
		}
	} else
		submit synchronously


So if a pvmove barrier fails it will just submit synchronously.

The write block with barrier bit varies, jbd/gfs2 do it synchronously
too and xfs does it asynchronously (with io done callbacks), but
in both cases they handle an EOPNOTSUPP comming out in the final
io done.

When the pvmove migrates from no barrier support to barrier support
there won't be any barrier on the file system for the time of the
current mount, but that's also fine.

-Andi

  reply	other threads:[~2008-12-04 14:47 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <Pine.LNX.4.64.0812040009340.15169@hs20-bc2-1.build.redhat.com>
     [not found] ` <20081204100050.GN6703@one.firstfloor.org>
2008-12-04 14:00   ` Device loses barrier support (was: Fixed patch for simple barriers.) Mikulas Patocka
2008-12-04 14:20     ` Andi Kleen
2008-12-04 14:17       ` Mikulas Patocka
2008-12-04 14:58         ` Andi Kleen [this message]
2008-12-04 16:45           ` Mikulas Patocka
2008-12-04 17:48             ` Andi Kleen
2008-12-04 17:53               ` Christoph Hellwig
2008-12-04 19:37               ` Mikulas Patocka
2008-12-04 22:15                 ` Andi Kleen
2008-12-04 23:08                   ` Mikulas Patocka
2008-12-05  0:48                     ` Andi Kleen
2008-12-05  1:16                       ` Mikulas Patocka
2008-12-05  1:37                         ` Andi Kleen
2008-12-05  2:21                           ` Mikulas Patocka
2008-12-05  3:09                             ` Andi Kleen
2008-12-05 11:52                           ` Alan Cox
2008-12-05 12:29                             ` Andi Kleen
2008-12-05  3:26                 ` Device loses barrier support Eric Sandeen
2008-12-07  4:17             ` Device loses barrier support (was: Fixed patch for simple barriers.) Dave Chinner
2008-12-05  5:44           ` Device loses barrier support Timothy Shimmin
     [not found] <bFnGM-7mA-5@gated-at.bofh.it>
     [not found] ` <bFpyX-1jh-15@gated-at.bofh.it>
     [not found]   ` <bFquY-2x2-5@gated-at.bofh.it>
     [not found]     ` <bFsnc-51o-37@gated-at.bofh.it>
     [not found]       ` <bFuyC-7Zt-11@gated-at.bofh.it>
     [not found]         ` <bFvuI-L8-29@gated-at.bofh.it>
     [not found]           ` <bFwTJ-2oc-13@gated-at.bofh.it>
     [not found]             ` <bFxwq-3g7-1@gated-at.bofh.it>
     [not found]               ` <bFxGa-3pz-1@gated-at.bofh.it>
     [not found]                 ` <bFHvW-7up-5@gated-at.bofh.it>
     [not found]                   ` <bFHPd-84I-13@gated-at.bofh.it>
2008-12-05 18:21                     ` Device loses barrier support (was: Fixed patch for simple barriers.) Bodo Eggert
2008-12-05 18:41                       ` Andi Kleen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20081204145810.GR6703@one.firstfloor.org \
    --to=andi@firstfloor.org \
    --cc=agk@redhat.com \
    --cc=andi-suse@firstfloor.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mbroz@redhat.com \
    --cc=mpatocka@redhat.com \
    --cc=xfs@oss.sgi.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox