[dm-devel] [PATCH RFC] dm snapshot: shared exception store

FUJITA Tomonori fujita.tomonori at lab.ntt.co.jp
Tue Aug 12 23:24:41 UTC 2008


On Tue, 12 Aug 2008 12:00:36 -0700
Daniel Phillips <phillips at phunq.net> wrote:

> On Tuesday 12 August 2008 06:14, FUJITA Tomonori wrote:
> > >  You just want to use getblk for alloc_chunk_buffer,
> > > not vmalloc.
> > 
> > I think that it means that we cache all the chunks, both btree chunks
> > and the data chunks (which are passed to the upper layer such as file
> > systems). I think that we don't want cache the latter in dm.
> 
> That is true.  However your code should not be reading data chunks into
> memory at all.  The only time the snapshot code has to read a data
> chunk is when performing the copy from origin to snapshot store in
> make_unique.  Your code does not directly perform this task as far as I
> can see.  That would be done in a part of the dm snapshot code your
> patch does not touch, which I seem to recall uses the kcopyd mechanism.

Yes, dm-snapshot doesn't access to data chunks. However, dm does for
dm-snapshot (by using submit_bio friends). So if dm-snapshot uses
__getblk, we use both __getblk and submit_bio with a single device at
the same time. I think that it's the right thing.




More information about the dm-devel mailing list