public inbox for fstests@vger.kernel.org
 help / color / mirror / Atom feed
From: Dave Chinner <david@fromorbit.com>
To: Zirong Lang <zlang@redhat.com>
Cc: Eryu Guan <eguan@redhat.com>,
	fstests@vger.kernel.org, sandeen@redhat.com, cem@redhat.com
Subject: Re: [PATCH v4 2/2] xfs/006: new case to test xfs fail_at_unmount error handling
Date: Wed, 22 Jun 2016 13:04:22 +1000	[thread overview]
Message-ID: <20160622030422.GI27480@dastard> (raw)
In-Reply-To: <241381551.489652.1466559773511.JavaMail.zimbra@redhat.com>

On Tue, Jun 21, 2016 at 09:42:53PM -0400, Zirong Lang wrote:
> The umount doesn't hang because in _dmerror_load_error_table(), it use
> "--nolockfs" option for dmsetup suspend operation. If drop this option,
> umount will hang.
> 
> As I test, mount/pull device/unmount can cause a hang, because unmount will
> try to writeback something to root inode? But yes, do more fsstress load
> can help to trigger the hang easier:)
> 
> I haven't known why "--nolockfs" will cause this situation. "--nolockfs" will
> make suspend don't attempt to synchronize filesystem when suspending a device.
> Maybe some uncompleted I/Os cause xfs shutdown, after resume error table?

when dm loads the new table, it first suspends the device. This
freezes the filesystem, which means it completely clean. Hence after
this there is nothing to write back on unmount and it doesn't hang.

Using --nolockfs means dm does not suspend the device and hence the
filesystem is not frozen before loading the new table. That means
unmount occurs with dirty metadata still in memory, and so umount
will try to write it and behaviour is then determined by the sysfs
attribute.

Cheers,

Dave.
-- 
Dave Chinner
david@fromorbit.com

  reply	other threads:[~2016-06-22  3:05 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-20 13:24 [PATCH v4 1/2] common/rc: add functions to check or write objects under /sys/fs/$FSTYP Zorro Lang
2016-06-20 13:24 ` [PATCH v4 2/2] xfs/006: new case to test xfs fail_at_unmount error handling Zorro Lang
2016-06-21  7:08   ` Eryu Guan
2016-06-22  0:00     ` Dave Chinner
2016-06-22  1:42       ` Zirong Lang
2016-06-22  3:04         ` Dave Chinner [this message]
2016-06-22  3:15           ` Zirong Lang
2016-06-22  3:04         ` Eric Sandeen
2016-06-22  3:17           ` Zirong Lang
2016-06-21  6:54 ` [PATCH v4 1/2] common/rc: add functions to check or write objects under /sys/fs/$FSTYP Eryu Guan

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=20160622030422.GI27480@dastard \
    --to=david@fromorbit.com \
    --cc=cem@redhat.com \
    --cc=eguan@redhat.com \
    --cc=fstests@vger.kernel.org \
    --cc=sandeen@redhat.com \
    --cc=zlang@redhat.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