From: Mike Snitzer <snitzer@redhat.com>
To: Johannes Bauer <dfnsonfsduifb@gmx.de>
Cc: dm-devel@redhat.com, thornber@redhat.com
Subject: Re: dm-cache coherence issue
Date: Mon, 26 Jun 2017 17:34:36 -0400 [thread overview]
Message-ID: <20170626213436.GA1003@redhat.com> (raw)
In-Reply-To: <5319af39-68eb-a732-0818-26f7d21ecbf1@gmx.de>
On Mon, Jun 26 2017 at 4:36pm -0400,
Johannes Bauer <dfnsonfsduifb@gmx.de> wrote:
> On 26.06.2017 21:56, Mike Snitzer wrote:
>
> >> Interesting, I did *not* change to writethrough. However, there
> >> shouldn't have been any I/O on the device (it was not accessed by
> >> anything after I switched to the cleaner policy).
> [...]
> >> Anyways, I'll try to replicate my scenario again because I'm actually
> >> quite sure that I did everything correctly (I did it a few times).
> >
> > Except you didn't first switch to writethrough -- which is _not_
> > correct.
>
> Absolutely, very good to know. So even without any I/O being request,
> dm-cache is allowed to "hold back" pages as long as the dm-cache device
> is in writeback mode?
s/pages/blocks/
The "dmsetup status" output for a DM cache device is showing dirty
accounting is in terms of cache blocks.
> Would this also explain why the "dmsetup wait" hung indefinitely?
You need to read the dmsetup man page, dmsetup wait" has _nothing_ to do
with waiting for IO to complete. It is about DM events, without
specifying an event_nr you're just waiting for the device's event
counter to increment (which may never happen if you aren't doing
anything that'd trigger an event). See:
" wait [--noflush] device_name [event_nr]
Sleeps until the event counter for device_name exceeds
event_nr. Use -v to see the event number returned. To
wait until the next event is triggered, use info to find
the last event number. With --noflush, the thin target
(from version 1.3.0) doesn't commit any
outstanding changes to disk before reporting its statistics."
> I do think I followed a tutorial that I found on the net regarding this.
> Scary that such a crucial fact is missing there. The fact that dirty
> pages are reported as zero just gives the impression that everything is
> coherent, when in fact it's not.
I'll concede that it is weird that you're seeing a different md5sum for
the origin vs the cache (that is in writeback mode yet reports 0 dirty
blocks).
But I think there is some important detail that would explain it; sadly
I'd need to dig in and reproduce on a testbed to identify it. Maybe Joe
will be able to offer a quick answer?
next prev parent reply other threads:[~2017-06-26 21:34 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-06-24 13:56 dm-cache coherence issue Johannes Bauer
2017-06-24 18:21 ` Johannes Bauer
2017-06-26 11:33 ` Joe Thornber
2017-06-26 15:58 ` Joe Thornber
2017-06-26 19:08 ` Johannes Bauer
2017-06-26 19:56 ` Mike Snitzer
2017-06-26 20:36 ` Johannes Bauer
2017-06-26 21:34 ` Mike Snitzer [this message]
2017-06-27 9:44 ` Joe Thornber
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=20170626213436.GA1003@redhat.com \
--to=snitzer@redhat.com \
--cc=dfnsonfsduifb@gmx.de \
--cc=dm-devel@redhat.com \
--cc=thornber@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 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.