All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alasdair G Kergon <agk@redhat.com>
To: Takashi Sato <t-sato@yk.jp.nec.com>
Cc: axboe@kernel.dk, mtk.manpages@googlemail.com,
	linux-kernel@vger.kernel.org, xfs@oss.sgi.com,
	Christoph Hellwig <hch@infradead.org>,
	dm-devel@redhat.com, viro@ZenIV.linux.org.uk,
	linux-fsdevel@vger.kernel.org,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-ext4@vger.kernel.org
Subject: Re: Re: [PATCH 3/3] Add timeout feature
Date: Thu, 3 Jul 2008 13:47:10 +0100	[thread overview]
Message-ID: <20080703124709.GI22522@agk.fab.redhat.com> (raw)
In-Reply-To: <9942A69CB65D4A41B39F36AF8EEF6F22@nsl.ad.nec.co.jp>

On Thu, Jul 03, 2008 at 09:11:05PM +0900, Takashi Sato wrote:
> If the freezer accesses the frozen filesystem and causes a deadlock,
> the above ideas can't solve it

But you could also say that if the 'freezer' process accesses the frozen
filesystem and deadlocks then that's just a bug and that userspace code
should be fixed and there's no need to introduce the complexity of a
timeout parameter.

> >Similarly if a device-mapper device is involved, how should the following
> >sequence behave - A, B or C?
> >
> >1. dmsetup suspend (freezes)
> >2. FIFREEZE
> >3. FITHAW
> >4. dmsetup resume (thaws)
> [...]
> >C:
> > 1 succeeds, freezes
> > 2 fails, remains frozen
> > 3 fails (because device-mapper owns the freeze/thaw), remains frozen
> > 4 succeeds, thaws
> 
> I think C is appropriate and the following change makes it possible.
> How do you think?
 
The point I'm trying to make here is:
  Under what real-world circumstances might multiple concurrent freezing
  attempts occur, and which of A, B or C (or other variations) would be
  the most appropriate way of handling such situations?

A common example is people running xfs_freeze followed by an lvm command
which also attempts to freeze the filesystem.

I can see a case for B or C, but personally I prefer A:

> > 1 succeeds, freezes
> > 2 succeeds, remains frozen
> > 3 succeeds, remains frozen
> > 4 succeeds, thaws

Alasdair
-- 
agk@redhat.com

WARNING: multiple messages have this Message-ID (diff)
From: Alasdair G Kergon <agk@redhat.com>
To: Takashi Sato <t-sato@yk.jp.nec.com>
Cc: Christoph Hellwig <hch@infradead.org>,
	linux-ext4@vger.kernel.org,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-fsdevel@vger.kernel.org, viro@ZenIV.linux.org.uk,
	dm-devel@redhat.com, xfs@oss.sgi.com,
	linux-kernel@vger.kernel.org, mtk.manpages@googlemail.com,
	axboe@kernel.dk
Subject: Re: [dm-devel] Re: [PATCH 3/3] Add timeout feature
Date: Thu, 3 Jul 2008 13:47:10 +0100	[thread overview]
Message-ID: <20080703124709.GI22522@agk.fab.redhat.com> (raw)
In-Reply-To: <9942A69CB65D4A41B39F36AF8EEF6F22@nsl.ad.nec.co.jp>

On Thu, Jul 03, 2008 at 09:11:05PM +0900, Takashi Sato wrote:
> If the freezer accesses the frozen filesystem and causes a deadlock,
> the above ideas can't solve it

But you could also say that if the 'freezer' process accesses the frozen
filesystem and deadlocks then that's just a bug and that userspace code
should be fixed and there's no need to introduce the complexity of a
timeout parameter.

> >Similarly if a device-mapper device is involved, how should the following
> >sequence behave - A, B or C?
> >
> >1. dmsetup suspend (freezes)
> >2. FIFREEZE
> >3. FITHAW
> >4. dmsetup resume (thaws)
> [...]
> >C:
> > 1 succeeds, freezes
> > 2 fails, remains frozen
> > 3 fails (because device-mapper owns the freeze/thaw), remains frozen
> > 4 succeeds, thaws
> 
> I think C is appropriate and the following change makes it possible.
> How do you think?
 
The point I'm trying to make here is:
  Under what real-world circumstances might multiple concurrent freezing
  attempts occur, and which of A, B or C (or other variations) would be
  the most appropriate way of handling such situations?

A common example is people running xfs_freeze followed by an lvm command
which also attempts to freeze the filesystem.

I can see a case for B or C, but personally I prefer A:

> > 1 succeeds, freezes
> > 2 succeeds, remains frozen
> > 3 succeeds, remains frozen
> > 4 succeeds, thaws

Alasdair
-- 
agk@redhat.com

  reply	other threads:[~2008-07-03 12:47 UTC|newest]

Thread overview: 85+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-06-30 12:24 [PATCH 3/3] Add timeout feature Takashi Sato
2008-06-30 12:24 ` Takashi Sato
2008-07-01  8:10 ` Christoph Hellwig
2008-07-01 10:52   ` Alasdair G Kergon
2008-07-01 10:52     ` [dm-devel] " Alasdair G Kergon
2008-07-03 12:11     ` Takashi Sato
2008-07-03 12:11       ` [dm-devel] " Takashi Sato
2008-07-03 12:11       ` Takashi Sato
2008-07-03 12:47       ` Alasdair G Kergon [this message]
2008-07-03 12:47         ` Alasdair G Kergon
2008-07-03 22:11         ` Dave Chinner
2008-07-03 22:11           ` Dave Chinner
2008-07-04 12:08           ` Takashi Sato
2008-07-04 12:08             ` Takashi Sato
2008-07-03 22:11         ` Dave Chinner
2008-07-03 14:45       ` [dm-devel] " Eric Sandeen
2008-07-07 11:07   ` Pavel Machek
2008-07-08 23:10     ` Dave Chinner
2008-07-08 23:10       ` Dave Chinner
2008-07-08 23:20       ` Pavel Machek
2008-07-08 23:20       ` Pavel Machek
2008-07-08 23:20         ` Pavel Machek
2008-07-09  0:52         ` Dave Chinner
2008-07-09  1:09           ` Theodore Tso
2008-07-09  1:09           ` Theodore Tso
2008-07-09  1:09             ` Theodore Tso
2008-07-09  4:21             ` Brad Boyer
2008-07-09  4:21             ` Brad Boyer
2008-07-09  4:21             ` Brad Boyer
2008-07-09  4:21               ` Brad Boyer
2008-07-09  6:13             ` Miklos Szeredi
2008-07-09  6:16               ` Christoph Hellwig
2008-07-09  6:22                 ` Miklos Szeredi
2008-07-09  6:22                   ` Miklos Szeredi
2008-07-09  6:22                   ` Miklos Szeredi
2008-07-09  6:41                   ` Arjan van de Ven
2008-07-09  6:41                     ` Arjan van de Ven
2008-07-09  6:41                     ` Arjan van de Ven
2008-07-09  6:48                     ` Miklos Szeredi
2008-07-09  6:48                       ` Miklos Szeredi
2008-07-09  6:55                       ` Arjan van de Ven
2008-07-09  6:55                         ` Arjan van de Ven
2008-07-09  6:55                         ` Arjan van de Ven
2008-07-09  7:08                         ` Miklos Szeredi
2008-07-09  7:08                           ` Miklos Szeredi
2008-07-09 20:48                           ` Pavel Machek
2008-07-09  7:13                         ` Dave Chinner
2008-07-09 11:09                           ` Theodore Tso
2008-07-09 11:09                           ` Theodore Tso
2008-07-09 11:09                             ` Theodore Tso
2008-07-09 11:49                             ` Dave Chinner
2008-07-09 11:49                             ` Dave Chinner
2008-07-09 11:49                               ` Dave Chinner
2008-07-09 12:24                               ` Theodore Tso
2008-07-09 12:24                               ` Theodore Tso
2008-07-09 12:24                                 ` Theodore Tso
2008-07-09 12:59                                 ` Olaf Frączyk
2008-07-09 13:57                                   ` Arjan van de Ven
2008-07-09 13:57                                     ` Arjan van de Ven
2008-07-09 13:55                               ` Arjan van de Ven
2008-07-09 13:58                               ` jim owens
2008-07-09 14:13                                 ` jim owens
2008-07-13 12:06                                 ` Pavel Machek
2008-07-13 17:15                                   ` jim owens
2008-07-14  6:36                                     ` Pavel Machek
2008-07-14 13:17                                       ` jim owens
2008-07-14 13:12                                 ` Takashi Sato
2008-07-14 13:12                                   ` Takashi Sato
2008-07-14 14:04                                   ` jim owens
2008-07-09 11:49                             ` Dave Chinner
2008-07-09 13:53                           ` Arjan van de Ven
2008-07-09  6:59                     ` Dave Chinner
2008-07-09  7:13                       ` Miklos Szeredi
2008-07-09  7:33                         ` Dave Chinner
2008-07-09  7:33                           ` Dave Chinner
2008-07-09  8:11                           ` Miklos Szeredi
2008-07-09  8:11                             ` Miklos Szeredi
2008-07-09 11:15                             ` Dave Chinner
2008-07-09 11:15                               ` Dave Chinner
2008-07-09  1:09           ` Theodore Tso
2008-07-09 20:44           ` Pavel Machek
2008-07-09 20:44           ` Pavel Machek
2008-07-09 20:44           ` Pavel Machek
2008-07-09 20:44             ` Pavel Machek
2008-07-08 23:20       ` Pavel Machek

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=20080703124709.GI22522@agk.fab.redhat.com \
    --to=agk@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=axboe@kernel.dk \
    --cc=dm-devel@redhat.com \
    --cc=hch@infradead.org \
    --cc=linux-ext4@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mtk.manpages@googlemail.com \
    --cc=t-sato@yk.jp.nec.com \
    --cc=viro@ZenIV.linux.org.uk \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.