[dm-devel] Ext4 and xfs problems in dm-thin on allocation and discard

Mike Snitzer snitzer at redhat.com
Tue Jun 19 20:44:28 UTC 2012


On Tue, Jun 19 2012 at  3:58pm -0400,
Ted Ts'o <tytso at mit.edu> wrote:

> On Tue, Jun 19, 2012 at 11:28:56AM -0400, Mike Snitzer wrote:
> > 
> > That is an lvm2 BZ but there is further kernel work needed.
> > 
> > It should be noted that the "external origin" feature was added to the
> > thinp target with this commit: 
> > http://git.kernel.org/linus/2dd9c257fbc243aa76ee6d
> > 
> > It is start, but external origin is kept read-only and any writes
> > trigger allocation of new blocks within the thin-pool.
> 
> Hmm... maybe this is what I had been told.  I thought there was some
> feature where you could take a read-only thinp snapshot of an external
> volume (i.e., a pre-existing LVM2 volume, or a block device), and then
> after that, make read-write snapshots using the read-only snapshot as
> a base?  Is that something that works today, or is planned?  Or am I
> totally confused?

The commit I referenced basically provides that capability.

> And if it is something that works today, is there a web site or
> documentation file that gives a recipe for how to use it if we want to
> do some performance experiments (i.e., it doesn't have to be a user
> friendly interface if that's not ready yet).

Documentation/device-mapper/thin-provisioning.txt has details on how to
use dmsetup to create a thin device that uses a read-only external
origin volume (so all reads to unprovisioned areas of the thin device
will be remapped to the external origin -- "external" meaning the volume
outside of the thin-pool).

The creation of a thin device w/ a read-only external origin gets you
started with a thin device that is effectively a snapshot of the origin
volume.  That thin device is read-write -- all writes are provisioned
from the thin-pool that is backing the thin device.  And you can take
snapshots (or recursive snapshots) of that thin device.




More information about the dm-devel mailing list