[dm-devel] Snapshot target and DAX-capable devices

Mike Snitzer snitzer at redhat.com
Wed Dec 12 22:43:22 UTC 2018


On Wed, Dec 12 2018 at  4:15pm -0500,
Theodore Y. Ts'o <tytso at mit.edu> wrote:

> On Wed, Dec 12, 2018 at 12:50:47PM -0500, Mike Snitzer wrote:
> > On Wed, Dec 12 2018 at 11:12am -0500,
> > Christoph Hellwig <hch at infradead.org> wrote:
> > 
> > > Does it really make sense to enhance dm-snapshot?  I thought all serious
> > > users of snapshots had moved on to dm-thinp?
> > 
> > There are cases where dm-snapshot is still useful for people.  But those
> > are very niche users.  I'm not opposed to others proposing enhancements
> > for dm-snapshot in general but it is definitely not a priority (Google's
> > dm-bow is an example of a case where dm-snapshot may get extended to
> > fulfill google's needs).
> 
> I would expect that dm-snapshot will be used quite a lot for
> short-lived snapshots (that only live during a database backup or an
> fsck run).  I would hardly call that a "niche use case".

dm-snapshot is only ~60% performant for 1 snapshot.  Try to do
additional snapshots and performance crawls to a stop (though I haven't
reassessed performance in a while).

dm-snapshot has been in Linux since before 2005, I don't know of all the
users of it -- maybe there are a ton of users who only take a single
temporary snapshot and we're all oblivious.

Definitely not seeing many bugs against it (but it has been around
forever).  I do know that there are relatively few people showing
interest in it.  But for 4.21 I did stage a couple useful performance
fixes:
https://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm.git/commit/?h=dm-4.21&id=61d594bb7e1cf86dca49cbc9524eb80169d9fca6
https://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm.git/commit/?h=dm-4.21&id=d1f7898c7a1b24aa9ae670f9cc21b65e730827eb

> One other major advantage that dm-snapshot has is that you can take a
> snapshot for any LVM volume.  For dm-thinp you have migrate your
> storage to a thinp pool, and that adds a fair amount of friction to
> users migrating to dm-thinp.

dm-thinp has the concept of an "external origin".  Changes to origin LVM
volume get copied out to the thin-pool (same copy cost as old
dm-snapshot).  But IIRC from that point on your LVM volume is a dm-thin
device.

Mike




More information about the dm-devel mailing list