[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