[dm-devel] dm-userspace (no in-kernel cache version)

FUJITA Tomonori fujita.tomonori at lab.ntt.co.jp
Thu Sep 14 15:51:38 UTC 2006


From: Dan Smith <danms at us.ibm.com>
Subject: Re: [dm-devel] dm-userspace (no in-kernel cache version)
Date: Wed, 13 Sep 2006 06:39:25 -0700

> FT> I'm not sure how this works. Have you explained the details of
> FT> this feature in the earlier thread?
> 
> For example, in our CoW case:
> 
> A write is made to a previously unremapped block.  We queue that block
> and let userspace make a mapping.  Then, we allow the write to happen,
> but intercept the completion (endio) and notify userspace that it has
> completed.  Then, userspace flushes its metadata to disk and notifies
> the kernel to allow the endio to complete.  Without this, a crash
> could result in an inconsistent CoW device.  (Note this only needs to
> happen on the _initial_ write to a block)

I see. Thanks.


> FT> I see. I don't think that you need to implement it now (simple
> FT> code is always better for mainline inclusion), however, it would
> FT> be nice to have dmu_event structure for this.
> 
> Well, it's crucial for our CoW work, so unless Alasdair would prefer
> me to leave it out in the initial upstream push, I would like to
> include it.  It was already implemented and working in my original
> version.

Of course, no problem if the maintainer agrees on it. I just meant
that user-kernel APIs must be ready for the future extensions because
you cannot change them easily after inclusion.




More information about the dm-devel mailing list